AWVS工具介绍
AWVS基本操作
AWVS工具在网络安全行业中占据着举足轻重的地位,作为一名安全服务工程师,AWVS这款工具在给安全人员做渗透测试工作时带来了巨大的方便,大大的提高了工作效率。
AWVS工具介绍
Acunetix Web Vulnerability Scanner(简称AWVS)是一款知名的Web网络漏洞扫描工具,它通过网络爬虫测试你的网站安全,检测流行安全漏洞。它包含有收费和免费两种版本,AWVS官方网站是:http://www.acunetix.com/,官方下载地址:https://www.acunetix.com/vulnerability-scanner/download/,官方免费下载的是试用14天的版本。
AWVS界面介绍
AWVS的界面主要分为六个部分,分别是:标题栏、菜单栏、工具栏、主要操作区域、主界面、状态区域。
AWVS主要操作区域简介
AWVS的功能及特点的功能及特点
a)、自动的客户端脚本分析器,允许对 Ajax 和 Web 2.0 应用程序进行安全性测试。
b)、业内最先进且深入的 SQL 注入和跨站脚本测试
c)、高级渗透测试工具,例如 HTTP Editor 和 HTTP Fuzzer
d)、可视化宏记录器帮助您轻松测试 web 表格和受密码保护的区域
e)、支持含有 CAPTHCA 的页面,单个开始指令和 Two Factor(双因素)验证机制f)、丰富的报告功能,包括 VISA PCI 依从性报告
h)、高速的多线程扫描器轻松检索成千上万个页面
i)、智能爬行程序检测 web 服务器类型和应用程序语言
j)、Acunetix 检索并分析网站,包括 flash 内容、SOAP 和 AJAX
k)、端口扫描 web 服务器并对在服务器上运行的网络服务执行安全检查
l)、可导出网站漏洞文件
AWVS的菜单栏,工具栏简介
菜单栏
File——New——Web Site Scan :新建一次网站扫描
File——New——Web Site Crawl:新建一次网站爬行
File——New——Web Services Scan:新建一个WSDL扫描
Load Scan Results:加载一个扫描结果
Sava Scan Results:保存一个扫描结果
Exit:退出程序
Tools:参考主要操作区域的tools
Configuration——Application Settings:程序设置
Configuration——Scan Settings:扫描设置
Configuration——Scanning Profiles:侧重扫描的设置
Help——Check for Updates:检查更新
Help——Application Directories——Data Directory:数据目录
Help——Application Directories——User Directory:用户目录
Help——Application Directories——Scheduler Sava Directory:计划任务保存目录
Help——Schedule Wen Interface:打开WEB形式计划任务扫描处
Help——Update License:更新AWVS的许可信息
Help——Acunetix Support——User Mannul(html):用户HTML版手册
Help——Acunetix Support——User Mannul(PDF):用户PDF版手册
Help——Acunetix Support——Acunetix home page:AWVS官网
Help——Acunetix Support——HTTP Status:HTTP状态码简介
工具栏
从左到右分别是(这些都可以在主要操作区域找到,所以不常用):
新建扫描——网站扫描——网站爬行——目标查找——目标探测——子域名扫描——SQL盲注——HTTP编辑——HTTP嗅探——HTTP Fuzzer——认证测试——结果对比——WSDL扫描——WSDL编辑测试——程序设置——扫描设置——侧重扫描设置——计划任务——报告
AWVS基本功能介绍
AWVS的蜘蛛爬虫功能
Site Crawler
点击Start对所输入的URL进行爬取,但是有的页面需要登录,不登录有些文件爬不到,就可以选择可以登录的login sequence进行登录(login sequence在处Application Settings处详细说明),爬网结果可以保存为cwl文件,以便后续站点扫描使用。
AWVS目标目标探测工具
Target Finder
相当于一款加强版(针对WEB渗透测试)的端口、banner探测工具功能:
- 探测指定IP/IP段开放特定端口的IP
- 探测出IP后,探测该端口的banner信息,可探测出该端口上运行的WEB服务的中间件的版本信息
- 可以指定IP地址段进行端口扫描(类似于Nmap),可以用与信息收集。
- 进行了端口扫描后会进行服务发现,得到端口上对应的服务。
AWVS的子域名探测工具
Subdomain Scanner
用DNS进行域名解析,找域名下的子域及其主机名(用于信息收集)
可选择使用操作系统默认配置的DNS服务器或自定义的一个DNS服务器(谷歌:8.8.8.8)
AWVS的的HTTP嗅探工具
HTTP Sniffer和BP proxy类似,首先要设置代理(Application Settings->HTTP Sniffer),截取数据包,修改数据包提交或者丢弃。
利用代理功能进行手动爬网(保存为slg文件,在Site Crawler页面点击Build structure from HTTP sniffer log),得到自动爬网爬取不到的文件。
AWVS的的HTTP模糊测试工具
HTTP Fuzzer
类似于BP intruder,进行暴力破解,点击+选择类型,点击insert插入。
注意:插入字母的时候选取字母的范围填写的是字母对应的ASCII码。
AWVS基本操作基本操作—站点扫描(重点)
创建扫描项目创
第一步Scan Type:
如图5-2-1,首先选择图中的第一个红框New Scan,然后在弹出的窗口中选择图中的第二个红框,在输入框里边输入将要检测的目标网站的URL,然后点击下边的Next即可。篮框是我们要额外讲的,这个的内容就是说如果我们之前曾经使用爬虫爬过目标网站,我们就可以使用蓝框来加载保存的文件继续爬行,不过这个实验因为我们是第一次爬行这个网站,所以并不需要使用这个。
图5-2-1
第二步:如图5-2-2,这个界面是让我们选择攻击模块的,可以根据不同的攻击要求,选择不同的攻击模块,这里我们选择Default(默认),使用默认模块即可。
图5-2-2
awvs一共有提供16种攻击模块,如下表:
Defalut 默认,全部检测
AcuSensor Acunetix传感器机制,可提升漏洞审查能力,需要在网站上安装文件,目前针对ASP.NET/PHP
Blind SQL Injertion SQL盲注检测
CSRF 检测跨站请求伪造
Directory_And_File_Checks 目录与文件检测
Empty 不使用任何检测
GHDB 利用Google hacking数据库检测
High Risk Alerts 高风险警告
Network Scripts 网络脚本检测
Parameter Manipulations 参数操作
Sql Injection SQL注入检测
Text Search 文本搜索
Weak Passwords 检测弱口令
Web Applicationsweb 应用检测
XSS 跨站请求伪造
File Upload检测文件上传漏洞
如果想要调整或修改攻击模块,根据路径Configuration >> Scanning Profiles修改,如图5-2-3:
图5-2-3
第三步:
如图5-2-4,awvs会自动识别被检测站点的信息,在这个页面显示出来,还可以选择目标网站的脚本语言,如果不知道,可以不选择,直接点击下一步即可。
其中target information中的内容是:
base path:扫描目标的根路径
server banner:服务的banner
target URL:目标url
operating system:目标操作系统
webserver:目标的web服务器
图5-2-4
第四步:
如图5-2-5,根据需求,可以录入或者填写登录信息,如果没有的话,直接按照默认设置,然后点击“Next”
PS:如果网站需要登录,则需要提供登录信息,否则有些需要登录才能操作的页面就无法探测到.
1)Use pre-recorded login sequence选项,第一个红圈:
黄色圈内:可直接打开AWVS的内置浏览器,录制登录被测网站的脚本
蓝色圈内:可导入已经录制好的登录脚本
2)Try to auto-login into the site选项,第二个红圈:
可直接输入登录网站所需的账户名和密码,然后AWVS用自动探测技术进行识别,不需要手工录入登录过程。
这里因为我们将要访问的网站是不需要直接登录就能访问的网站,所以这里就不在细说。
图5-2-5
第五步:
如图5-2-6,直接点击Finish即可。之后awvs就会对目标网站进行扫描,然后需要耐心等待扫描完成。
图5-2-6
使用使用awvs检测扫描结果
查看扫描结果
如图5-2-7,既是在上一节中创建的扫描项目“www.any.com”的扫描结果。因为目标网站太大,所以要完全扫描完成需要较长的时间,所以这次就先在扫到10%的时候暂停,使用已经扫描得到的结果检测网站的漏洞。暂停按钮在界面的右上方的Pause(暂停),图片上是已经点击暂停之后的界面,所以显示的是Resume(继续)。
图5-2-7
在成功暂停之后,观察图5-2-8,可以看到,一共分为了三个板块,左边红框框起来的是已经发现的漏洞详情,右侧上方红框框起来的是发现的高中低危漏洞以及无关紧要的信息。通过颜色也可以看出来,高危漏洞是红色的,中危漏洞是黄色的,低危漏洞是蓝色的,而绿色的是危害很小的信息。右侧下方中划红线的是扫描进度,可以看出来我们这次扫描只进行了10.23%就结束了。
图5-2-8
检测扫描结果
验证漏洞:如图5-2-9我们随便点开一个漏洞,然后将划红线的写入浏览器的url中,如图5-2-10。从图5-2-10中可以看到,在错误信息中,该系统使用的数据库与数据表的名字泄露了,而这些本来应该是非常机密的信息
图5-2-9
图5-2-10
查看扫描出的网站结构:如图5-2-11,随便找一个普通的网站信息,比如说选择site struckure→/→member→index.php,选择第一个,点击之后,可以看到右边栏里出现的信息,能看到第二行pagetitle的内容是“白露的空间”,初步推测这是一个用户的个人空间,从第五行显示的返回的状态码200推断是可以登录的,所以,复制第四行的URL,然后呢进入浏览器,将复制的URL粘贴进地址栏。
图5-2-11
从图5-2-12可以看到,通过在地址栏输入URL之后,就可以直接进入用户“白露”的空间,并不需要进行登录的操作。
图5-2-12
保存扫描结果
在扫描完成后(必须是扫描全部完成后,才可以保存扫描结果。因为目标网站实在太大,扫描用时过长,同学们可以选择新建对www.any.com/2.php进行扫描,很快就可以扫描完成,然后就可以针对这次扫描保存扫描结果,在本节课的图片中我使用的还是www.any.com这个网站),选择File→Save Scan Results,如图5-2-13:
图5-2-13
输入文件名称后,选择保存即可。如图5-2-14:
图5-2-14
导出扫描报告
在扫描完成后,找到工具栏里的report,如图5-2-15:
图5-2-15
然后就会出现扫描报告的预览图,如图5-2-16,其中红色框起来的位置就是扫描报告的预览图,选择保存按钮进行保存。
图5-2-16
输入文件名称后,选择保存即可。如图5-2-17:
Acunetix WVS站点扫描(实验)
第一步,启动我们的环境后,在实验工具里找到Acunetix wvs工具。
第二步,我们点击左上角菜单栏”New Scan”,输入url:www.any.com,点击Next进入Options。
第三步,我们一路默认,点击Next,进入Target。
Scanning profile中的扫描类型如下,有用户也可以到主界面左边栏的Configuration >> Scanning profile中建立新的扫描类型。
Scan Settings默认只有一种,Default。用户可以到Configuration >> Scan Settings中建立新的扫描设置,也可以点击旁边的Customize自定义。
第四步,在Target选项中可以看到要扫描的网站的信息,从上到下分别为:Base path(网站根目录)、Server banner(Apache、PHP版本,OpenSSL版本)、Target URL(最终目标URL)、Operating system(服务器OS)、WebServer(服务器中间件)。继续点击Next进入Login。
第五步:在login选项中继续点击Next直到出现Finish,点击Finish开始扫描。
第六步,我们可以看到站点扫描正在进行。
扫描结束后,我们打开一个漏洞记录,点击后,左边的部分会出现漏洞详情,包括漏洞介绍、站点漏洞描述、漏洞编号和的相关信息等。右击漏洞站点,有五个选项:在HTTP Editor中进行编辑;输出到HTTP Fuzzer中进行模糊测试;输出到Blind SQL Injector中进行注入测试,这一项只有在SQL注入类的漏洞中有效,否则为灰色;重新进行测试;将警报标记为误报。下方为操作日志,可以看到停止扫描的字样。
将左半部分的滚动条下拉,可以看到网站目录,选择一个网页,可以看到右侧显示出网页信息,从上到下分别是:文件名、网页标题、页面文件目录、URL、HTTP状态码、页面是否要被扫描、内容类型(图片中的是文本)、发现的位置(Discovered from)、连接深度(网站根目录下第几级目录)、页面状态、检测到应用(Detected application)。在右侧的下边,我们还可以选择查看网页的Referers、HTTP请求头、输入变量、源代码等。右击左侧的网页,弹出菜单中的选项分别是:将位置复制到chipboard、在浏览器中打开网页、在HTTP Editor中进行编辑、输出到HTTP Fuzzer中进行模糊测试、查找http状态代码。