- ·上一篇文章:黑客工具介绍之DDoS攻击工具TFN2K分析
- ·下一篇文章:Telnet高级入侵攻略及原理
黑客工具介绍之DDoS攻击工具Trinoo分析
# set default values
$opt_i = ($opt_i) ? $opt_i : "eth0";
$s_port = ($opt_s) ? $opt_s : int rand 65535;
$d_port = ($opt_d) ? $opt_d : 27444;
$pass = ($opt_p) ? $opt_p : "l44adsl";
# choose network card
if($opt_e) { $opt_e);
} else {ethnew($opt_i);
}
$cmd = ($opt_P) ? "png $pass" :
($opt_S) ? "shi $pass" :
($opt_D) ? "d1e $pass" :
"d1e $pass";
$s_host = ($opt_f) ? $opt_f : $hostname;
if ($opt_l) {
open(I,"<$opt_l") || die "could not open file: '$opt_l'";
while () {
chop;
push(@ARGV,$_);
}
close(I);
}
foreach $d_host (@ARGV) { $d_host}, $cmd}
});
print "sending '$cmd' to $d_host\n" if $opt_v;send;
}
exit(0);
------------------------------- cut here -----------------------------------
附录C - 参考文摘
TCP/IP Illustrated, Vol. I, II, and III. W. Richard Stevens and Gary
R. Wright., Addison-Wesley.
lsof:
ftp://vic.cc.purdue.edu/pub/tools/unix/lsof/
tcpdump:
ftp://ftp.ee.lbl.gov/tcpdump.tar.Z
hunt:
http://www.cri.cz/kra/index.html
sniffit:
http://sniffit.rug.ac.be/sniffit/sniffit.html
ngrep:
http://www.packetfactory.net/ngrep/
loki client/server:
Phrack Magazine, Volume Seven, Issue Forty-Nine,
File 06 of 16, [ Project Loki ]
http://www.phrack.com/search.phtml?view&article=p49-6
Phrack Magazine Volume 7, Issue 51 September 01, 1997,
article 06 of 17 [ L O K I 2 (the implementation) ]
http://www.phrack.com/search.phtml?view&article=p51-6
LibNet:
http://www.packetfactory.net/libnet/
Net::RawIP:
http://quake.skif.net/RawIP
crack:
http://www.crypto.dircon.co.uk/
Password cracking utilities:
http://packetstorm.securify.com/Crackers/
targa.c:
http://packetstorm.securify.com/exploits/DoS/targa.c
附录D - Trinoo攻击报告(略).
附录E - 更多的监测trinoo方法
作者: David Brumley
David Dittrich
George Weaver
监测Trinoo
现在的Trinoo有几个特征可以用于对IP数据流记录进行监测
Trinoo守护程序 (ns.c) -
1. Trinoo守护程序缺省的监听端口为UDP 27444
2. Trinoo守护程序的所有通讯必须包含字符串l44
3. SYN flood攻击机制使用如下算法确定目标端口:
to.syn_port = htons(rand() % 65534)
可以获得以下特征
a. randomize()/srandom()从未被调用,因此目标端口总是满足以下算法:
SYN 包1的目标端口为 x
SYN 包2的目标端口y为:
srandom(x); y = rand();
SYN 包3的目标端口z为:
srandom(y); z = rand();
b. 因为取模为65534,则目标端口0有效,而65535则无效。
IDS系统监测daemon(守护程序):
1. 监视目标端口为27444的UDP连接。此连接为控制会话。
2. 字符串"l44"经常中数据包中出现意味着存在trinoo控制会话。
3. 运行trinoo的DoS攻击(SYN Floods)时可用上面提到的第3个特征识别。另外,如果你能够捕获第一个SYN包,其目标端口号总是srand(1);rand();的返回的结果。在作者的手提电脑中,目标端口序列的
一个例子如下:
32540
48264
58208
56084
46021
37263
6890
38941
17766
40714
虽然这不能阻止拒绝服务,但可证实trinoo攻击的存在,你就应该开始寻找它的主服务器了!
在网络中识别trinoo守护程序:
1. 主服务器保留了一份trinoo守护程序列表索引,这是通过主服务器发送"png"ming令,而激活(可用)的守护程序将回应"PONG"字符串来确定的。最初的设计者可能是想让主服务器能够知道哪些守护程序是可用的。你可以编写可发送定制UDP数据包的程序来扫描一个网络,如果存在trinoo守护程序,则会收到相应的回应。
Trinoo主服务器(master.c) -
以下网络通讯说明存在trinoo主服务器:
1. 发送目标端口为27444的UDP数据包
2. UDP数据包中包含字符串(l44adsl)
3. 有服务器绑定到端口27665
IDS系统监测trinoo主服务器:
1. 寻找协议类型17(UDP)的数据流
2. 到端口27665(trinoo主服务器)的TCP连接(协议类型6)
在网络中监测Trinoo主服务器
1. 如果服务器口令没有被修改,也没有修改监听端口,可以使用nmap工具监听27655端口以捕获所有监听该端口的主机。如:
nmap -PI -sT -p 27655 -m logfile "you.subnet.*.*"
在得到可疑的主机清单后,可以使用自动登录的方法进行识别。使用netcat程序进行自动登录的方法如下:
echo "betaalmostdone" | nc 27665
黑客工具介绍之DDoS攻击工具Trinoo分析