<pre id="vvttv"><mark id="vvttv"><progress id="vvttv"></progress></mark></pre>
    <pre id="vvttv"></pre>

      <p id="vvttv"></p>

          <p id="vvttv"></p>

                <p id="vvttv"></p>

                <pre id="vvttv"><cite id="vvttv"><progress id="vvttv"></progress></cite></pre>

                  <output id="vvttv"><dfn id="vvttv"><th id="vvttv"></th></dfn></output>

                    <p id="vvttv"></p>

                    原文地址:http://drops.wooyun.org/tips/2498

                    0x00 背景


                    AWVS提供了自定義的腳本編程接口,可是網上的資料很少,只有官方的幾篇介紹和參考手冊,最近研究了一下怎么編寫AWVS的漏洞腳本來寫一篇簡單性的文章,大家有興趣的可以交流。

                    本文以8.0為例,首先呢安裝好Acunetix Web Vulnerability Scanner 8(該破解的破解,該付費的付費),然后我們需要WVS公開的小小的SDK,下載地址:http://www.acunetix.com/download/tools/WVSSDK.zip,下載好了后解壓bin目錄下的WVSS.exe到WVS安裝目錄下面,此即為WVS腳本編寫工具。另外sdk里還有3個簡單的腳本小例子和WVS_SDK_Quick_Introduction.pdf,耐心的可以看看。

                    0x01 細節


                    下面的截圖就是WVS碼腳本工具了

                    2014070400041767163.jpg

                    打開WVS數據目錄,通常是在C:\Documents and Settings\All Users\Application Data\Acunetix WVS 8\Data\Scripts下,可以看到有10個文件夾,Network、PerFile、PerScheme、PostScan、PerFolder、PerServer、PostCrawl、WebApps、XML。我們先來認識一下:

                    2014070400050052332.jpg

                    Network:此目錄下的腳本文件是當掃描器完成了端口掃描模塊后執行,這些腳本可以檢測TCP端口的開放情況,比如檢測FTP的21端口是否開放、是否允許匿名登錄; 
                    PerFile:此目錄下的腳本是當掃描器爬蟲爬到文件后執行,比如你可以檢查當前測試文件是否存在備份文件,當前測試文件的內容等; 
                    PerFolder:此目錄下的腳本是當掃描器爬蟲爬行到目錄后執行,比如你可以檢測當前測試目錄是否存在列目錄漏洞等; 
                    PerScheme:此目錄下的腳本會對每個URL的 GET、POST結構的參數進行檢測,AWVS定義了的參數包括HTTP頭、Cookies、GET/POST參數、文件上傳(multipart/form-data)……比如你可以檢測XSS、SQL注入和其他的應用程序測試; 
                    PerServer:此目錄下的腳本只在掃描開始是執行一次,比如你可以檢測Web服務器中間件類型; 
                    PostScan:此目錄下的腳本只在掃描結束后執行一次,比如你可以檢測存儲型XSS、存儲型SQL注入、存儲型文件包含、存儲型目錄遍歷、存儲型代碼執行、存儲型文件篡改、存儲型php代碼執行等; 
                    XML:漏洞的詳細描述文檔都在這里。 
                    

                    今天演示的漏洞是Discuz 7.2的faq.php SQL注入,關于漏洞:http://ha.cker.in/1087.seo

                    我們就用POC來寫漏洞的腳本吧!

                    檢測原理:

                    根據公開的POC構造出特殊請求,若存在SQL注入則構造的SQL語句將會執行成功并在返回到響應內容,構造POC如下:

                    /faq.php?action=grouppermission&gids[99]='&gids[100][0]=) and (select 1 from (select count(*),concat((select 0x4861636B656442795365636572),floor(rand(0)*2))x from information_schema.tables group by x)a)%23
                    

                    URLEncode編碼一下:

                    faq.php?action=grouppermission&gids[99]='&gids[100][0]=)%20and%20(select%201%20from%20(select%20count(),concat((select%200x4861636B656442795365636572),floor(rand(0)2))x%20from%20information_schema%20.tables%20group%20by%20x)a)%23
                    

                    2014070400052637340.jpg

                    我們需要用WVS的腳本請求此URL并處理返回的內容,以此判斷是否存在漏洞。

                    打開AWVS,Tools -> Vulnerability Editor,右鍵VulnXMLs節點,選擇‘Add Vulnerability’

                    2014070400061580159.jpg

                    新建一個漏洞,VulnXML FILENAME為Discuz7.2FaqSqlinjection,點Add按鈕(新建的VulnXML會被保存到XML文件夾下哦)

                    2014070400063761671.jpg

                    接下來登記下該漏洞的相關信息

                    2014070400072634459.jpg

                    2014070400073990780.jpg

                    然后進入wvss寫腳本,保存為Discuz7.2FaqSqlinjection.script放入PerServer文件夾吧。

                    測試腳本:

                    使用AWVS的網站爬蟲爬行網站并保存結果,

                    2014070400081569530.jpg

                    這里選擇根目錄

                    2014070400083732484.jpg

                    點擊小三角按鈕測試

                    2014070400091625586.jpg

                    2014070400092981770.jpg

                    完整的代碼如下

                    2014070400095916620.jpg

                    測試成功了,我到WVS里掃描去測試掃描看看~

                    我們新建的漏洞腳本在這里,Scanning Profiles –》 PerFolder目錄下,新建一個掃描模板勾選要測試的腳本并保存,這里保存為“test_HA.CKER.IN”,然后用這個模板掃描目標站測試吧

                    2014070400102959221.jpg

                    選擇模板并開始掃描

                    2014070400105090725.jpg

                    掃描完成后,結果如圖

                    2014070400112465943.jpg

                    漏洞腳本重復檢測了很多次,下次更新修復下這個問題。

                    0x02 總結


                    本人不才,這次對AWVS自定義腳本編寫簡單的介紹就到這了,只是做個示例展示給大家,這些API不是很詳細我也不是很會寫,更多的API等你去挖掘吧!

                    參考:

                    http://www.acunetix.com/vulnerability-scanner/scriptingreference/index.html

                    http://www.acunetix.com/blog/docs/creating-custom-checks-acunetix-web-vulnerability-scanner/

                      <pre id="vvttv"><mark id="vvttv"><progress id="vvttv"></progress></mark></pre>
                      <pre id="vvttv"></pre>

                        <p id="vvttv"></p>

                            <p id="vvttv"></p>

                                  <p id="vvttv"></p>

                                  <pre id="vvttv"><cite id="vvttv"><progress id="vvttv"></progress></cite></pre>

                                    <output id="vvttv"><dfn id="vvttv"><th id="vvttv"></th></dfn></output>

                                      <p id="vvttv"></p>

                                      这里只有精品视频