您需要 登录 才可以下载或查看,没有账号?立即注册
#!/bin/bash # 设置要检测的日志文件路径 LOG_FILE="/path/to/access.log" # 设置阈值,超过该数量的UA变化就认为是异常 UA_THRESHOLD=5 # 输出异常IP的文件 OUTPUT_FILE="suspicious_ips.txt" # 清空输出文件 > "$OUTPUT_FILE" # 从日志中提取IP和UA并统计UA的种类 awk '{ # 假设IP在日志的第一列,User-Agent在日志的最后一列 ip=$1 ua=$NF # 存储每个IP的UA种类 ip_ua[ip][ua]++ } END { for (ip in ip_ua) { # 计算每个IP的UA数量 ua_count = length(ip_ua[ip]) # 如果UA种类超过阈值,记录该IP if (ua_count > UA_THRESHOLD) { print ip " has " ua_count " different User-Agents" >> "'$OUTPUT_FILE'" } } }' "$LOG_FILE" echo "Suspicious IPs written to $OUTPUT_FILE"
使用道具 举报
本版积分规则 发表回复 回帖后跳转到最后一页
15251
130
15381
|最近更新|Archiver|手机版|小黑屋|DZ插件网! ( 鄂ICP备20010621号-1 )|网站地图 知道创宇云防御
您的IP:18.222.182.195,GMT+8, 2025-1-9 20:40 , Processed in 0.241595 second(s), 77 queries , Gzip On, Redis On.
Powered by Discuz! X5.0 Licensed
© 2001-2025 Discuz! Team.