TCP端口扫描的ASP实现

本文介绍了如何使用ASP中的ADODB.Connection组件曲线实现TCP端口扫描。由于XMLHTTP组件在非HTTP端口上的延迟问题,作者转向利用数据库连接组件,通过设置自定义端口并根据错误描述判断端口状态。通过设置ConnectionTimeout属性为1来提高扫描速度,虽然速度一般,但在webshell上可能具有较高价值。
摘要由CSDN通过智能技术生成
Author:lake2  ( http://lake2.0x54.org )
 
用ASP久了,就会感到有个很郁闷的地方:ASP不像其他脚本语言那样能访问Socket。所以或许你用过PHP、Perl等实现的端口扫描器,惟独没见过ASP的。嘿嘿,所以今天本文的目的就是利用“曲线救国”的策略实现ASP端口扫描器。Only for enjoy!
所谓曲线,呵呵,当然是利用其他的访问网络的组件,那么ASP有哪些组件可以访问网络呢?
第一个很容易想到,对,就是XMLHTTP。这个组件是以HTTP协议访问网络,当然可以用作端口扫描。但存在一个很难解决的问题:如果某端口打开且不是HTTP端口,那么XMLHTTP将会一直挂起,执着的等待返回HTTP数据。扫描就不能进行下去了。只好排除这个“曲线”了。
第二个组件也就是我们要利用的,嘿嘿,很常见哦,服务器上都有的,那就是ADODB.Connection。这个组件就是用于进行数据库连接的。当数据库是MSSQL的时候,Web Server就会访问SQL Server的1433端口……对,就是这里了,只要我们改动端口号,再根据返回的错误描述就可以判断该端口的状态。
下面是一个普通的连接MSSQL的字符串例子:
 
评论 20
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值