AWS EC2 Windows实例上XAMPP数据库遭频繁删除的排查与解决求助
AWS EC2 Windows实例上XAMPP数据库遭频繁删除的排查与解决求助
Hey 大家好,碰到这种恶意删库的情况真的太闹心了!我来给你梳理几个排查方向和解决办法,希望能帮你搞定这个问题:
一、先排查数据库与phpMyAdmin的安全配置
- 收紧MySQL远程访问权限:你把数据库设为全局可访问后,是不是给了过于宽松的权限?赶紧登录MySQL执行
SELECT user, host FROM mysql.user;查看所有用户的访问范围,把不必要的%(任意IP)权限改成指定IP,直接禁用root账号的远程访问,再创建一个仅能访问目标业务数据库的低权限账号对外提供服务。 - 加固phpMyAdmin安全:除了密码,建议开启双因素认证;把默认的
/phpmyadmin访问路径改成自定义的复杂路径(比如/my-db-admin-2024),降低被扫描到的概率;同时修改phpMyAdmin的config.inc.php配置文件,添加IP白名单,只允许你自己或信任的IP访问后台。
二、AWS EC2层面的安全加固
- 检查安全组规则:你的EC2安全组是不是把3306端口开放给了所有IP(0.0.0.0/0)?赶紧把3306端口的入站规则改成仅允许业务需要的IP访问;如果是网站服务用的80/443端口,也要确认没有被滥用。
- 查看云日志与系统日志:去AWS CloudWatch查看EC2的系统日志,同时打开Windows的事件查看器(重点看安全日志),排查有没有陌生IP尝试远程桌面或登录MySQL的记录;也可以通过VPC Flow Logs查看有没有异常流量访问3306端口。
三、排查服务器本身的异常
- 扫描恶意程序:用Windows Defender或第三方杀毒软件对服务器做全面扫描,检查是否被植入后门或木马;同时查看Windows任务计划,确认有没有陌生的定时任务(可能是攻击者设置了定时删库脚本)。
- 分析XAMPP日志:重点看MySQL的
mysql_error.log、mysql_general.log和Apache的access.log,里面肯定藏着线索——比如有没有异常的DROP DATABASE执行记录,或者陌生IP访问phpMyAdmin的日志,顺着这些信息追踪攻击来源。
四、应急补救措施
- 开启自动备份:用MySQL的
mysqldump写个定时脚本,每天自动把数据库备份到AWS S3或其他安全存储,就算被删也能快速恢复。 - 临时限制访问:如果暂时找不到问题根源,可以先把3306端口的安全组规则改成仅允许你自己的IP访问,先保证业务能正常运行,再慢慢排查漏洞。
希望这些方法能帮你找到问题根源,解决这个烦人的问题!
备注:内容来源于stack exchange,提问作者Mustafa Ahmad




