centos

nginx日志中如何识别攻击

小樊
90
2025-02-13 22:19:17
栏目: 网络安全

在Nginx日志中识别攻击可以通过以下几种方法:

识别异常活跃的IP地址

cat access.log | awk '{print $1}' | sort | uniq -c | sort -rn | head -10

这条命令的作用是读取access.log文件,从每一行中提取出第一个字段(即客户端IP地址),对这些字段进行排序,统计每个字段出现的次数,并去除连续的重复项,按照出现次数从高到低排序,输出出现次数最多的前10个IP地址。

分析高频访问IP的行为

grep '104.28.229.11' /var/log/nginx/access.log-20240428

这条命令将目光聚焦在特定IP地址上,查看该IP在特定时间段内的访问记录,从而发现可能的攻击行为。

检测常见的攻击类型

使用脚本自动化分析

#!/bin/bash

if [ "$1" == "sql" ]; then
    grep -E ' (200302301500) ' access.log | grep -i -E "('and and%20and\and-and@and\(or or%20or\or-or@or\(--selectif\(case whenmake_setelt extractvalueupdatexmlcast\(sleep\(benchmarkgenerate_seriesunionorder by).*?HTTP/1.1"
elif [ "$1" == "xss" ]; then
    grep -v ' (200302301500) ' access.log | grep -i -E "(javascriptdata:vbscriptexpressioned2konerroronmouseroveronloadonclickonbluronfocuseval\(fromCharCode%3E%3C%25%27%0a).*?HTTP/1.1"
fi

封锁攻击IP

0
看了该问题的人还看了