linux - 使用 CentOS 6 对 WHM 进行 DDOS 攻击

标签 linux apache bash tcp awk

我有以下命令来连接当前 IP:

netstat -ntu | awk '{print $5}' | egrep -o -e '[0-9]*\.[0-9]*\.[0-9]*\.[0-9]*' | sort | uniq -c  | awk '{if ($1 > 50) print $2" # "$1" times."}' | sort -n

当我运行上面的命令时会得到如下结果:

68.4.90.74 # 185 times.
77.42.241.230 # 258 times.
78.40.177.38 # 658 times.
79.171.81.237 # 798 times.
79.172.252.26 # 435 times.

运行此命令以获取上述 IP 的详细信息

netstat -noap | grep 68.4.90.74

会给你(简单的):

tcp        0      0 xxx.xxx.xxx.xxx:80          68.4.90.74:56484            ESTABLISHED 10561/httpd         keepalive (6398.07/0/0)
tcp        0      0 xxx.xxx.xxx.xxx:53          68.4.90.74:56480            ESTABLISHED 10519/httpd         keepalive (6379.57/0/0)
tcp        0      0 xxx.xxx.xxx.xxx:53          68.4.90.74:56481            ESTABLISHED 9817/httpd          keepalive (6379.56/0/0)
tcp        0      0 xxx.xxx.xxx.xxx:53          68.4.90.74:56483            ESTABLISHED 9838/httpd          keepalive (6379.56/0/0)
tcp        0      0 xxx.xxx.xxx.xxx:80          68.4.90.74:56482            ESTABLISHED 10505/httpd         keepalive (6379.34/0/0)

我的问题是如何更新第一个代码以通过非端口 80 连接 IP 尽管以下代码可以通过特定端口连接 IP:

netstat -ntu | awk '/\:80\ / {print $5}' | egrep -o -e '[0-9]*\.[0-9]*\.[0-9]*\.[0-9]*' | sort | uniq -c  | awk '{if ($1 > 50) print $2" # "$1" times."}' | sort -n

最佳答案

此 awk 脚本为您完成大部分工作:

netstat -ntu | awk '/[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+/ && !($5 ~ /:80$/){split($5,a,":");++seen[a[1]]}END{for(i in seen)print i, "#", seen[i], "times."}'

第一个模式与您的相似,但我使用 + 而不是 * 来匹配一个或多个数字。第二种模式确保第 5 个字段不以 :80 结尾。只处理匹配第一个模式但不匹配第二个模式的线。

将第 5 个字段拆分到数组 a 中,并保留数组中所有 IP 地址的计数 seen。最后,遍历 seen 中的所有元素并打印输出。

关于linux - 使用 CentOS 6 对 WHM 进行 DDOS 攻击,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27892793/

相关文章:

json - 预接收钩子(Hook),Bash + Git

linux - 找不到 flocker 插件,来自守护程序的错误响应

linux - 从远程服务器上的空文件夹复制

linux - gnuplot 中的列名和行名格式

php - 如何使用htaccess在nginx的子文件夹中运行index.php?

php - 访问 Apache 的 Mime 类型到扩展映射

bash - Bash case 语句中的起始括号有意义吗?

linux - poll()函数检查GPIO中断返回错误如何解决

php - shell_exec 不运行某些 shell 命令

bash - 使用sed,如何进一步转换group back引用?