那麼什麼是「完全測試呢」,完全測試就是把上面的兩個步驟整合起來,「探索」+「測試」;在安全測試過程中,可以先只進行探索,不進行測試,目的是了解被測的**結構,評估範圍;然後選擇「繼續僅測試」,只對前面探索過的頁面進行測試,不對新發現的頁面進行測試。「完全測試」就是把兩個步驟結合在一起,一邊探索,一邊測試。
步驟 1:探索(又叫爬行,爬網)
步驟 2:測試(針對找到的頁面,生成測試,進行安全攻擊)
所有訪問到頁面資訊:針對每個發現的頁面,即使沒有進行測試,在探索過程也會訪問該頁面並紀錄 http request/response 資訊;所以如果探索的頁面訪問的時候返回的頁面內容比較多,頁面比較大,那麼即使只做了探索根本沒有掃瞄,整個 scan 檔案也會很大。
我們以 為例,如下就有 74 個變體都發現了 customize 頁面的 lang 引數存在跨站點指令碼執行(xss)型別的安全漏洞:
大型**技術特點分析
什麼叫大型**,顧名思義,**規模大,提供內容多;具體說是頁面很多,內容很全。比如 www.sina.com.cn,比如 **中都有多個頻道,包括上萬個頁面。而且除了頁面多,可能還有乙個特點 --- 頁面引數多,即要填寫的地方多,和使用者的互動多;比如乙個**如果都是靜態頁面(.html、.jpg 等),沒有讓使用者輸入的地方,那麼可以利用,可以作為攻擊點的地方也就不多。如果頁面到處都是有輸入有查詢,要求使用者來參與的,你輸入的越多,可能洩露的資訊也越多,可能被別人利用的攻擊點也就越多,所以和頁面引數也是有關係的。
上面的兩個位址有類似的,「?」號以前的 url 位址完全一樣,「?」號後面帶的引數不同,這種可以認為是重複頁面,那麼對於重複頁面,是否要重複測試呢?
這取決於「冗餘路徑設定」,預設的是最多測試 5 次;即,這種型別 url 出現的前 5 次,那麼就是要測試 1000 個攻擊用例了。
如果再繼續修改下:遇到下面的 url 呢
&item=close
每個 url 裡面都有 2 個引數,測試的次數就更多了。想象下,如果這個網頁裡面的引數如果是 10 個,或者更多的呢?比如很多**提交註冊資訊的時候,要填寫的字段就很多,要進行的安全測試用例也就隨之不斷增加…
這是**規模的影響,還有乙個問題,就出在「每個引數,傳送 200 個安全測試用例」這個假設上。這個假設的前提**於**?**於我們選擇的掃瞄規則庫。即你關心那些安全威脅,這個需要在測試策略裡面選擇。同樣來參照防毒軟體,你會用防毒軟體來查詢一些專用的病毒嗎,比如 cih、木馬;應用安全掃瞄也是一樣的道理,如果有明確的安全指標或者安全規則範圍,那麼就選擇之。這些可能**於企業的規範,**於**的法律法規。就要根據你的理解,在這裡選擇。
**採用多種混合的技術,需要不同的掃瞄設定
一些大型**,往往是乙個統一的入口,在裡面提供不同的內容,而這些內容可能**於不同的技術。如我們熟悉的門戶**,裡面就有「財經」、「體育」、「娛樂」等多個頻道;每個頻道的內容,可能是採用不同的技術,對應不同的伺服器。如乙個**的「論壇」頻道,就有很多類似的頁面:
這裡的 showthread.php 頁面存在多次,每次都是引數值不同,訪問後發現這些頁面除了文字內容外,其他的頁面結構等都相同,則這些頁面只需要選擇幾個典型的掃瞄即可,沒有必要全部掃瞄。
而同時,在另外的一些頻道,存在另外型別的頁面:
這些動態頁面,也是**相同,引數相同,但是具有不同的引數值,訪問時候發現每種型別的引數值都指向了完全不同的頁面,則需要每種引數值都要測試到。這種情況經常存在跳轉頁面中。
而這兩個頻道中,第一種情況,可以選擇典型的頁面掃瞄之,而第二種情況則需要進行完全的掃瞄,每種引數值都需要考慮到。這就需要不同的掃瞄設定。
同時,可能大家也注意到了,第一種情況下的是 php 頁面,而第二種情況下的則是 aspx 頁面,對應不同的開發技術,這也可能需要不同的掃瞄設定。
而對於大型的**,我們經常需要從幾個方面來優化配置
AppScan 工作原理
那麼什麼是 完全測試呢 完全測試就是把上面的兩個步驟整合起來,探索 測試 在安全測試過程中,可以先只進行探索,不進行測試,目的是了解被測的 結構,評估範圍 然後選擇 繼續僅測試 只對前面探索過的頁面進行測試,不對新發現的頁面進行測試。完全測試 就是把兩個步驟結合在一起,一邊探索,一邊測試。步驟 1 ...
MyBatis入門 工作原理
在學習 mybatis 程式之前,讀者需要了解一下 mybatis 工作原理,以便於理解程式。mybatis 的工作原理如圖 所示。圖 mybatis 框架的執行流程圖 下面對圖 中的每步流程進行說明。1 讀取 mybatis 配置檔案 mybatis config.xml 為 mybatis 的全...
VTun 工作原理詳解
寫在前面 開源專案vtun 短小精悍,涉及到了linux下網路程式設計的幾乎所有的東西,包括守護程式 訊號的處理 服務建立子程序等,實現了虛擬lan的功能。個人感覺 vtun 唯一的缺憾是在認證方面,沒有基於x509證書,而是簡陋的在配置檔案進行了金鑰的設定。雖然在捨棄ca方面,做到了 輕型化 但留...