清除Linux系統(tǒng)上的蠕蟲程序Ramen
Linux系統(tǒng)中出現(xiàn)了一種稱之為Ramen的蠕蟲程序。它可能會(huì)入侵?jǐn)?shù)千臺(tái)運(yùn)行RedHat 6.2/7.0 操作系統(tǒng)的服務(wù)器。Ramen利用了兩個(gè)已知的Linux安全漏洞。它首先利用 RPC.statd 和 wu-FTP 的漏洞掃描網(wǎng)絡(luò)上使用 RedHat 6.2/7.0 的服務(wù)器,然后嘗試取得系統(tǒng)權(quán)限,一旦取得之后,會(huì)將一些一般的系統(tǒng)服務(wù)加以替換,并且將一個(gè)稱之為“root kit”的程序碼植入安全漏洞中,此外 Ramen 還會(huì)將站點(diǎn)上的首頁給換成 :“RameNCrew--Hackers looooooooooooove noodles”的字樣。最后,Ramen會(huì)寄兩封信給兩個(gè)電子信箱,并且開始入侵其他的RedHat服務(wù)器。
Ramen只針對(duì)RedHat來進(jìn)行侵入,不過危害不大,但是傳播的速度卻驚人,15分鐘內(nèi)可以掃描約 130,000 個(gè)站點(diǎn)。
Ramen是很善良的,在攻擊完成后會(huì)自動(dòng)把它攻擊的3個(gè)漏洞給修補(bǔ)上(Redhat 6.2的rpc.statd、wu-ftpd,Redhat7.0的lpd),但是會(huì)在系統(tǒng)上起一個(gè)進(jìn)程掃描下面的機(jī)器,會(huì)占去大量網(wǎng)絡(luò)帶寬。由此可能造成其他的主機(jī)的誤會(huì)以及大量占用網(wǎng)絡(luò)帶寬,使系統(tǒng)癱瘓。
我們可以看出,該程序其實(shí)并不能稱為病毒,而是一個(gè)利用了安全漏洞的類似蠕蟲的程序。該程序的作者Randy Barrett也站出來聲明說,這只是一個(gè)安全漏洞,類似于這樣的安全漏洞在各種網(wǎng)絡(luò)服務(wù)器上都存在,他在寫Ramen程序的時(shí)候也不是針對(duì)Linux 的。
防治的方法很簡(jiǎn)單,請(qǐng)升級(jí)你的redhat 6.2的 nfs-utils , wu-ftpd , redhat 7.0的LPRng,具體下載可以到ftp://updates.redhat.com/。
檢查系統(tǒng)是否被該程序侵入的方法是,看看有沒有/usr/src/.poop這個(gè)目錄被建立,以及27374端口是否被打開,如果有的話就表明已經(jīng)被Ramen侵入了。
看一個(gè)系統(tǒng)是否感染了Ramen蠕蟲,主要基于以下幾點(diǎn):
1. 存在/usr/src/.poop目錄
2. 存在/sbin/asp文件
3. 本地端口27374被打開(用netstat -an命令)
可以用以下的perl腳本程序檢測(cè):
#!/bin/perl
# Script that checks for signs of ramen infection
# Patrick Oonk, patrick@security.nl
# based on Daniel Martin's description at
# http://www.securityfocus.com/archive/75/156624
# No guarantees, do with this script whatever you like (BSD license)
$detected = 0;
print "Ramen worm checker.\nChecking...\n";
open(F,"/etc/redhat-release") ;
print "You are running ",〈F〉,"\n";;
close(F);
@suspect = ("/usr/src/.poop", "/usr/src/.poop/ramen.tgz","/tmp/ramen.tgz");
foreach (@suspect) {
if(-e) {
print "found $_\n";
$detected++;
}
}
open(N, "/bin/netstat -an|") or print "Could not open /bin/netstat\n"; while(〈N〉) {
if (/:27374.*LISTEN/) {
print "Ramen webserver detected on port 27374\n";
$detected++;
last;
}
}
close(N);
if ($detected) {
print "$detected telltale signs of ramen found. Get professional help\n";
} else {
print "Wheee! No ramen signs found!\n";
}
清除Ramen蠕點(diǎn)的步驟:
1. 刪除/usr/src/.poop目錄和/sbin/asp文件。
2. 如果存在/etc/xinetd.d/目錄,則刪除/etc/xinetd.d/asp。
3. 刪除/etc/rc.d/rc.sysinit文件中涉及到/usr/src/.poop的行。
4. 刪除/etc/inetd.conf文件中涉及到/sbin/asp的行。
5. 重新啟動(dòng)系統(tǒng)和手動(dòng)殺掉以下進(jìn)程synscan,start.sh, scan.sh, hackl.sh, hackw.sh。
6. 升級(jí)ftp, rpc.statd, lpr等程序。
因?yàn)镽amen是通過wu-ftp, rpc.statd, lpr等程序侵入系統(tǒng)的,所以在對(duì)這幾個(gè)程序升級(jí)前最好關(guān)閉這些程序,這樣可以有效地防止被Ramen感染。