前言

短连接是相对于长链接而言的概念,指的是数据在传送过程中,只在需要发送数据时,才去建立一个链接,数据发送完成之后,则断开连接,即每次连接只完成一项业务的发送,在系统维护中,一般很难去觉察,需要借助网络安全设备或者抓包分析,才能够去发现。

应急场景

网络管理员在出口WAF检测到某台服务器不断向香港IP发起Request,感到很好奇,登录服务器排查,想找到发起段链接的进程。

日志分析

登录服务器查看端口,进程,并未发现服务器异常,但是当多次刷新端口时,可以查看该连接。有时候一直刷这条命令好几次才会发现,像这种的短连接极其难以捕捉到对应的进程和源文件,

手动估计没戏,很暗追踪于是动手写了一小段脚本来捕捉短连接对应的pid和源文件。

脚本文件如下:

#!/bin/bash
ip=x.x.x.x
i=1
while :
do
   tmp=`netstat -anplt|grep $ip|awk -F '[/]' '{print $1}'|awk 

'{print $7}'`

   #echo $tmp
   if test -z "$tmp"
   then
​       ((i=i+1)) 
   else
​       for pid in $tmp; do
​           echo "PID: "${pid}
​          result=`ls -lh /proc/$pid|grep exe`
​          echo "Process: "${result}
​          kill -9 $pid
​       done
​       break
   fi 
done
echo "Total number of times: "${i}

最终得到了运行结果,发现短连接每次发起的进程pid一直在变,但已经捕捉到发起异常连接的文件为:

/usr/lib/nfsiod

处理了即可。

最后修改:2022 年 03 月 15 日 10 : 04 PM
如果觉得这篇文章不错,不妨赏我碎银几两。