mysql max_allowed_packet 反复被重置,原来是服务器被黑客攻击了。
Posted 野马也有梦
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql max_allowed_packet 反复被重置,原来是服务器被黑客攻击了。相关的知识,希望对你有一定的参考价值。
最近做个项目,由于团队人员不在同一个办公地点,就弄了一台外网挂靠机做开发和测试环境。
在开发和测试的过长中,mysql 频繁的报:Caused by: com.mysql.jdbc.PacketTooBigException: Packet for query is too large (1354 > 1024). You can change this value on the server by setting the max_allowed_packet\' variable。
设置 max_allowed_packet 的值后,过一会儿后,又会被重置为默认值。
最后我发现是被黑客攻击了。
一、开启mysql日志,记录所有sql执行命令。
mysql> show variables like \'%log%\'; +-----------------------------------------+---------------------------------+ | Variable_name | Value | +-----------------------------------------+---------------------------------+ | back_log | 50 | | binlog_cache_size | 32768 | | binlog_direct_non_transactional_updates | OFF | | binlog_format | STATEMENT | | expire_logs_days | 0 | | general_log | OFF | | general_log_file | /var/run/mysqld/mysqld.log | | innodb_flush_log_at_trx_commit | 1 | | innodb_locks_unsafe_for_binlog | OFF | | innodb_log_buffer_size | 1048576 | | innodb_log_file_size | 5242880 | | innodb_log_files_in_group | 2 | | innodb_log_group_home_dir | ./ | | innodb_mirrored_log_groups | 1 | | log | OFF | | log_bin | OFF | | log_bin_trust_function_creators | OFF | | log_bin_trust_routine_creators | OFF | | log_error | /var/log/mysqld.log | | log_output | FILE | | log_queries_not_using_indexes | OFF | | log_slave_updates | OFF | | log_slow_queries | OFF | | log_warnings | 1 | | max_binlog_cache_size | 18446744073709547520 | | max_binlog_size | 1073741824 | | max_relay_log_size | 0 | | relay_log | | | relay_log_index | | | relay_log_info_file | relay-log.info | | relay_log_purge | ON | | relay_log_space_limit | 0 | | slow_query_log | OFF | | slow_query_log_file | /var/run/mysqld/mysqld-slow.log | | sql_log_bin | ON | | sql_log_off | OFF | | sql_log_update | ON | | sync_binlog | 0 | +-----------------------------------------+---------------------------------+ 38 rows in set (0.00 sec)
mysql> set global general_log = ON;
Query OK, 0 rows affected (0.01 sec)
二、第二天拿到log文件(/var/run/mysqld/mysqld-slow.log)
发现大量修改痕迹和sql注入。
从log中得知,有很多ip登录,有全国各地的,还有美国的,主要进行了这些操作:修改mysql相关安全参数,设置了一些变量值,从某一地址下载脚本,并执行(应该是挂木马)。
三、临时解决方案:
1、重装系统,或者下载杀毒软件。
2、开启防火墙,只开放提供服务的端口。
3、用户名和密码都设置复杂一点。
以上是关于mysql max_allowed_packet 反复被重置,原来是服务器被黑客攻击了。的主要内容,如果未能解决你的问题,请参考以下文章