acunetix的学习.docx
《acunetix的学习.docx》由会员分享,可在线阅读,更多相关《acunetix的学习.docx(61页珍藏版)》请在冰豆网上搜索。
acunetix的学习
关于acunetix的学习
1.背景
多达70%的网络站点存在漏洞,可能会导致公司的敏感数据(例如:
信用卡信息和客户列表等)失窃。
在今天,网站的安全是容易被忽视的,黑客具备广泛的攻击手段,例如SQL注入,XSS,文件包含,目录遍历,参数篡改,认证攻击等,虽然你配置了正确的防火墙和WAF,但是这些安全防御软件仍然存在策略性的绕过。
因此,需要您定期的扫描你的web应用,但是手动检测你所有的web应用是否存在安全漏洞比较复杂和费时,所以您需要一款自动化的web漏洞扫描工具来检测您的web应用是否存在安全漏洞。
2.功能
自动的客户端脚本分析器,允许对Ajax和Web2.0应用程序进行安全性测试。
业内最先进且深入的SQL注入和跨站脚本测试
高级渗透测试工具,例如HTTPEditor和HTTPFuzzer
可视化宏记录器帮助您轻松测试web表格和受密码保护的区域
支持含有CAPTHCA的页面,单个开始指令和TwoFactor(双因素)验证机制
丰富的报告功能,包括VISAPCI依从性报告
高速的多线程扫描器轻松检索成千上万个页面
智能爬行程序检测web服务器类型和应用程序语言
Acunetix检索并分析网站,包括flash内容、SOAP和AJAX
端口扫描web服务器并对在服务器上运行的网络服务执行安全检查
可导出网站漏洞文件
3.安装与破解
4.各菜单讲解
WebScanner
Web扫描器
SiteCrawler
网站爬行
TargetFinder
可扫描指定网段,开放指定端口的服务器
SubdomainScanner
子域名扫描
BlindSQLInjector
盲注手工测试
HTTPEditor
HTTP信息查看
HTTPSniffer
HTTP监听器
HTTPFuzzer
HTTP模糊测试
AuthenticationTester
HTTP验证测试
CompareResults
对比两次Acunetix扫描结果
WebServicesScanner
网站服务扫描,例如WSDL
WebServicesEditor
网站服务手动分析
VulnerabilityEditor
编辑wvs提供的漏洞描述信息
Scheduler
任务计划,访问http:
//localhost:
8181/
Reporter
生成扫描报告
4.1File
序号
菜单名称
菜单用途
1
WebSiteScan
完成一次网站扫描(爬行和漏洞审计)
2
WebSiteCrawl
网站爬行
3
WebServiceScan
网站服务扫描
4
Report
报告
5
LoadScanResults
加载Acunetix的保存结果
6
SaveScanResults
保存Acunetix的扫描结果
4.1.1WebSiteScan
菜单:
File>New>WebSiteScan
网站扫描开始前,需要设定下面选项:
1)Scantype
2)Options
3)Target
4)Login
5)Finsh
4.1.1.1Scantype
●Scansinglewebsite
在websiteURL处填入需要扫描的网站网址,如果你想要扫描一个单独的应用程序,而不是整个网站,可以在填写网址的土方写入完整路径,wvs支持HTTP/HTTPS网站扫描。
●Scanusingsavedcrawlingresults
导入WVS内置sitecrawlertool的爬行结果,然后进行漏洞扫描。
结果生成见4.2.1SiteCrawler
●Accesstheschedulerinterface
如果对多个网站扫描的话,那么可以使用Acunetix的Scheduler功能完成任务,访问http:
//localhost:
8181(可修改),扫描后的文件存放在C:
\Users\Public\Documents\AcunetixWVS9\Saves.
从8.0版本增加此功能。
4.1.1.2.Options
Options部分的设定主要分为两部分:
▪Scanningoptions
▪Crawlingoptions
1)Scanningoptions
-Scanningprofile
可设定扫描重点,配置文件位于C:
\ProgramData\AcunetixWVS8\Data\Profiles默认15种配置如下(建议深入挖掘wvs的检测机制):
AcuSensor
Acunetix传感器机制,可提升漏洞审查能力,需要在网站上安装文件,目前主要针对ASP.NET/PHP.
BlindSQLInjection
盲注扫描
CSRF
检测跨域访问
Default
默认配置(均检测)
DirectoryAndFileChecks
目录与文件检测
Empty
不使用任何检测
FileUpload
文件上传检测
GHDB
利用Googlehacking数据库检测
HighRiskAlerts
高风险警告
NetworkScripts
网络脚本
ParameterManipulation
参数操作
TextSearch
文本搜索
WeakPasswords
弱密码
WebApplications
Web应用程序
Xss
跨站检测
如果需要做调整,请查看菜单Configuration>>ScanningProfiles
-Scansettings
可定制扫描器扫描选项,例如:
▪HeadersandCookies
▪ParameterExclusions
▪GHDB
HeadersandCookies
Testcookiesforallfiles(bydefaultitwillonlycheckfileswithparameters)
访问所有文件,都使用cookie测试(默认情况下,只有带参数的文件才使用cookie进行检测)
ManipulatetheHTTPheaderslistedbelow
操控列表中的cookie,可按照自己的要求定制
ParameterExclusion
有些参数我们无法操纵,但它不会影响会话,应此可进行排除,避免做不必要的扫描测试.
-Crawlingoptions
▪Aftercrawlingletmechoosethefilestoscan
爬行完成后,我们可以选择具体文件进行扫描(可用于选择想要扫描的文件).
▪DefinelistofURL’stobeprocessedbycrawleratstart。
定义爬行起点,自定义哪些文件为开始扫描。
4.1.1.3.Target
有些时候WVS无法判定服务器所用脚本语言,可手动指定.
4.1.1.4Login
这个功能是主要录制登录界面,有些产品,如果不登录的话,爬行结果显示仅是登录界面,所录制的文件很少,so设置登录录制后,在爬行中可以获取爬行后的结果。
通过点击‘NewLoginSequence’链接进行录制并成功自动上传。
4.1.1.5Finish
4.1.1.5.1Customerrorpages
网站存在404定制,WVS主要根据成功确定了模式匹配定制404页,这将使用自动匹配在扫描过程中,为了避免这种情况,定义定制404规则设置指定的URL
4.1.1.5.2AcuSensorsetup
在WVS中已启用技术(AcuSensor),但没有在目标服务器上配置安装技术(AcuSensor),如果安装技术(AcuSensor),为服务器设置正确的密码点击定制,可以验证一个特定的服务器响应通过使用技术(AcuSensor)的测试按钮设置
4.1.1.5.3Serverdifferentiatesbetweenmobileanddesktopbrowsers
针对移动和桌面浏览器的网站不同的响应,下面你可以选择要使用的用户代理扫描期间为了扫描网站的部分显示特定的浏览器。
4.1.1.5.4Additionalhostsdeteted
存在其它网站时,所选择的网站中确保是想要扫描的网站。
4.1.1.5.5Savecustomizedscansetting
以后再次扫描相同文件的话就可以选择所保存的设置,如果你计划扫描更多次相同的网站,可以选择在一个新文件保存设置,点击下面的按钮‘savetoanewtemplate’
了解以上规则,即可开始一次WebSiteScan扫描.
4.1.2.WebSiteCrawl
网站爬行,只需设定网站及是否进行启动会话.
会话设置,请访问Configuration>>ApplicationSettings>>LoginSequenceManager
此处的会话文件位于C:
\Users\Public\Documents\AcunetixWVS9\LoginSequences
4.1.3WebServiceScan
4.1.4Report
使用ConfigurationSettings可定制报告的某些信息,例如logo等.
4.2tools
4.2.1SiteCrawler(网站爬行)
输入地址,然后点击‘start’进行开始爬行,左侧显示所爬行的目录,点击上面的保存图标进行保存下来。
可以在file>websitescan中的Scanusingsavedcrawlingresults中导入所保存的爬行结果
4.2.2TargetFinder(目标搜索工具)
相当于一款加强版(针对WEB渗透测试)的端口、banner探测工具
功能:
1、探测指定IP/IP段开放特定端口的IP
2、探测出IP后,探测该端口的banner信息,可探测出该端口上运行的WEB服务的中间件的版本信息
官方详细介绍:
选择列表中记录,右键也可以导出相关信息。
80,http服务
443,https服务
115.238.171.133-140
4.2.3SubdomainScanner(子域名扫描工具)
官方介绍:
页面地址输入一级域名
二级域名:
一级域名:
根域名:
com
输入一级域名进行扫描,可以扫描出以下的子域名信息。
4.2.4HTTPEditor(HTTP请求编辑器)
EncodeTool:
编码转换工具
官方介绍:
1、构造请求数据包并修改
2、抓取扫描结果中的数据包并修改
步骤如下:
在webScanner中选择所扫描的文件,单击右键弹出的HTTP请求编辑器跳转到相关页面。
可以查看发送请求和返回结果的信息。
4.2.5HttpSniffer(代理型http嗅探工具)
代理型嗅探工具的工作流程:
捕获——截断——显示——重放
首先要设置端口,详见4.3.3.8HTTPSniffer(HTTP代理设置):
ApplicationSettings——HttpSniffer
功能:
1、一般搭配httpeditor或httpfuzzer使用
2、手动爬行目录
4.2.6HTTPFuzzer(漏洞测试工具)
用于批量数据自动提交
4.2.6.1抓包数据
这里的数据包可以从httpsniffer里发送过来,也可以用其他的抓包工具抓包然后直接粘贴进来。
4.2.6.2界面
所抓取来的信息在Request中显示信息
这一块是用来编辑数据包的。
左侧显示有request和textonly两个窗口。
右侧是对添加参数变量的功能。
4.2.6.3参数变量定义说明
4.2.6.3.1Numbergenerator:
数字型,由纯数字组成
Charactergenerator:
字符型,由字符的ASCII值组成(65-90)
Startcharacter(ASCIIvalue):
开始值(ASCII码)
Stopcharacter(ASCIIvalue):
结束值(ASCII码)
Increment:
步长
Encoding:
编码
Increment:
步长添加完毕之后单击选中该变量,在下边的界面举例中就可以编辑该变量的参数了:
如上图,密码为123456,下面解释一下数字型变量各个参数的含义:
Name:
变量的名字,这个只是个标识,自己认识就行了,一般不用修改
StartNumber:
开始值,也就是这个数字型变量从哪个值开始,这里我设定成了123450
StopNumber:
结束值,也就是这个数字型变量到哪个值结束,这里我设定成了123460
Increment:
步长,也就是设置fuzzer的时候从StartNumber到StopNumber之间每次增加多大的值,默认是1,那么意思就是每次在StartNumber的基础上加1,比如我这里的StartNumber是123450,StopNumber是123460,Increment是1,那么生成的字典就是:
123450
123451
123452
…
123459
123460
也就是逐步加1,然后逐次提交。
选择左侧所参数化的地方,点击上图的‘insertintoRequest’中进行设置。
比如:
${Gen_1},然后再点击‘start’按钮即可,结果如下:
看见一个状态码特别的,即是所要寻找的密码。
4.2.6.3.2Charactergenerator:
字符型
由大写字符的ASCII值组成(65-90)小写字符的ASCll值组成(97-122)
Startcharacter(ASCIIvalue):
开始值(ASCII码)
Stopcharacter(ASCIIvalue):
结束值(ASCII码)
举例,密码为m
4.2.6.3.3Filegenerator:
从字典导入
从文件导入要fuzzer的数据(dict.txt)
Filename:
文件名
Filetype:
文件类型
Encoding:
编码
准备包含有十个密码的文件,并导入进去。
举例:
密码为123456
4.2.6.3.4Stringgenerator:
字符串型
由指定长度的字符串组成
Stringlength:
字符串长度,不能大于Characterset的数量
Characterset:
字符设置,不能小于Stringlength的长度
Allowrepetitions:
允许重复
Encoding:
编码
注意:
Stringlength
如果勾选Allowrepetitions时,characterset可以小于Stringlength的长度
举例:
密码为:
5845869
4.2.6.3.5Randomstringgenerator:
随机型
由随机长度的数字/字符串组成
Stringlength:
字符串长度,不能大于Characterset的数量
Characterset:
字符设置,不能小于Stringlength的长度
Allowrepetitions:
允许重复
Numberofstrings:
生成的字符串数量,数量必须要在可生成的排列组合的数量范围内
Encoding:
编码
举例:
密码为m
4.2.6.3.6Characterrepeater:
字符串重复
它将把一个特定的字符串发送一个指定的次数
Character/String:
需要重复发送的字符/字符串
Initialcount:
初始数量
Finalcount:
结束数量
Increment:
步长
Encoding:
编码
举例说明:
密码是sasasasa
4.2.6.4过滤器(FuzzerFilters)
我们还需要设置过滤器,在FuzzFilter选项中,规则描述随意填写,主要是类型,有Include(包含)Exlude(排除)两种类型.在应答(Applyto)中还可以设定判断的类型,是所有Response的数据还是HTTP状态码(Basic验证方式).这就由个人来取舍了,很多判断错误的页面会302.设置完成别忘记Add,图示如下:
4.2.7AuthenticationTester
Authenticationmethod:
支持HTTP/表单验证
Logonhasfailedif:
可设定验证错误返回的HTTPCode
Usernamedictionary/Passworddictionarypath:
设定用户名/密码字典.
4.3Configuration
4.3.1Scanningprofiles(扫描策略配置)
页面默认显示的是Default策略。
可以在Filter选择想要的策略点,然后勾选子节点,点击
新建图标,输入扫描名称,则成功创建新的扫描策略。
可以在4.1.1.2Options中查看。
4.3.2Scansetting(扫描点设置)
4.3.2.1Scanningoptions
在此页面设置后的效果与newScan>option>Scansettings>customize中设置是一样的,区别在于:
在此页面设置后,所有扫描都有效果,而后者设置仅在当前扫描有效果。
1)是否关闭crawler警告(坏链接,文件输入)
2)扫描模式:
Heuristic,Quick、Extensive
Mode
Description
Speed/Depth
Quick
Onlythefirstvaluefromeveryparameterwillbetested.
ScanSpeed
ScanDepth
Heuristic(default)
WVSwilltrytoautomaticallydeterminewhichparametersrequirecomplextesting.
ScanSpeed
ScanDepth
Extensive
Allpossiblecombinationsforeveryparameterwillbetested.
Whentherearealotofparameters/combinations,thismodewillgeneratealotofHTTPrequests.
ScanSpeed
ScanDepth
3)爬行深度,默认为5(此为默认为五级网址:
比如:
4)不发出多于501个相同类型的警告(使用0表示禁用)
5)是否开启端口扫描功能(如果认为端口过慢,扫描过慢时,根据实际情况确定是否开启端口扫描)
6)是否收集不常规的HTTP请求
7)服务器不响应的时候是否忽略扫描,可设定多少次错误以后开始忽略
8)在扫描过程中,是否使用网站cookie
9)添加其它网站服务器文件路径(默认只扫描同域名下的网站文件)
一些网址可能链接其它服务器(比如,),你想要扫描服务器下的网址,可以使用通配符指定服务器名(比如:
’*’or’’)
说明:
如果一个网址为.还有其它的站点如:
*或者,后面两个站与前面的站点有很密切的联系的话,那么需要添加到扫描中去。
具体步骤如下:
在hosts中输入指定的网址,点击‘addHost’后会在下面显示所添加的网址。
点击‘RemoveSelected’可以成功移除所添加的网址。
4.3.2.1.1HeadersandCookies
在这里你可以调整设置头和cookies的操作
1.所有文件的测试(默认情况下它将只检查文件的参数)
2.控制http头部信息
下面提供了6个头部信息,根据实际情况对头部信息进行修改。
点击
后,下面表中最后一行显示新增的记录,单击三次可以编辑修改名称。
4.3.2.1.2ParameterExdusions
如果有些网址中包含的参数值不固定值时,那么扫描时会存在一些错误问题,扫描结果有所影响,为了保证每次扫描结果可比较性,则进行参数配制,把某些参数排除在外。
4.3.2.2CrawlingOptions
扫描参数
StartHTTPSnifferformanualcrawlingattheendofthescanprocess:
爬行完毕之后启动HTTPSniffer,以发现更多的链接
GetfirstURLonly:
只扫描首页
Donotfetchanythingabovestartfolder:
不抓取上级目录
Fetchfilesbelowbasefolder:
抓取子目录
Fetchdirectoryindexesevenifnotlinked:
抓取所有URL,即使该URL并没有体现在网站上
Retrieveandprocessrobots.txt,sitemap.xml:
抓取并分析robots.txt、sitemap.xml中的URL
IgnoreCASEdifferencesinpaths:
忽略大小写敏感
EnableCSA(analyzeandexecuteJavaScript/AJAX):
爬行过程中分析动态脚本,以获得更多URL
Fetchexternalscripts:
抓取外部脚本内容
Fetchdefaultindexfiles(index.php,Default.asp…):
尝试抓取每个目录下的默认文档
Trytopreventinfinitedirectoryrecursion:
防止抓取到死循环无限目录
WarnuserifURLrewriteisdetected: