编写AWVS脚本探测web services
最近一直在做渗透测试,发现在使用AWVS去扫描一个使用web services的网站时。最后的扫描结果并没有web services。然而web services由于经常出现一些问题,故我们很有必要去收集到网站的使用web services的信息。下面我们通过编写AWVS脚本的方式去让AWVS探测的网站是否存在。
注意:这里默认大家都了解过AWVS基本语法。如果不了解请移步文章的“编写AWVS脚本资料”部分。
0x01思路
我们让AWVS爬取到的每一个路径都添加/services,然后去访问这个构造好的路径。如果存在该页面,则分析返回结果中是否存在“wdsl”字符,若存在则说明该站点存在web services服务。
0x02编写代码
新建报告模板
AWVS》Tools》Vulnerability Editor
填写好漏洞相关信息
新建探测脚本
找到AWVS的/data/script/folder目录
由于我们需要AWVS在爬取到目录时就检查一次该目录是否存在web services。所以我们需要在该目录下的PerFolder文件夹,新建一个名为Web_Services.script的脚本文件。代码如下:
1 | var target = new THTTPJob(); //实例化一个HTTP任务 |
0x3测试
去网上随便找一个测试站点,该站点/pptx/路径下存在web services的wsdl列表。
为了方便测试,我们新建一个test策略,策略包含我们写的脚本。
扫描选择我们的新建的策略
扫描结果中发现,已经找到web services
后面我在这个代码基础上泄露发现SVN泄露的脚本,大家想让AWVS发现更多漏洞,可以自己尝试去写写。
0x4AWVS脚本编写资料
如果想了解更多编写脚本的资料。可以下载以下推荐的资料,若你有更好,欢淫共享感激不尽。
官方SDK文档
1 | https://www.acunetix.com/resources/sdk/ |
官方开发工具包
工具包里有一个文档,和3个脚本例子。大家可以参考一下。
1 | http://www.acunetix.com/download/tools/WVSSDK.zip |
解密的扫描脚本
大家可能发现在/data/script/文件夹下的所有脚本都加密了,我们无法查看源码。这对于我们想学习编写脚本的童鞋很是不利。这里给大家发个福利:〇〇木一大神解密AWVS 10.5的script文件夹下所有脚本。
1 | https://github.com/c0ny1/awvs_script_decode |
百度云下载(base64)
1 | dXJs77yaaHR0cHM6Ly9wYW4uYmFpZHUuY29tL3MvMXNscjRIUHogcHdk77yaYjNtbw== |