大家還在迷信工具麼?

2021-12-30 08:24:39 字數 1683 閱讀 7650

做web的安全測試也有些日子了,以前沒有到這個版塊來過,今天看了看版面上大家都在討論工具如何如何使用,而很少討論安全漏洞的原理,我就給大家潑潑涼水,談談工具的侷限。

先說下掃瞄工具的原理:

掃瞄工具可以看做由兩部分組成:爬蟲+校驗機構。爬蟲的作用是蒐集整個被採集物件的鏈結,然後校驗機構對這些鏈結逐一進行驗證。

然後說掃瞄工具的侷限:

侷限1:掃瞄未必全面

乙個**,能不能被掃瞄全面,很大程度取決於爬蟲蒐集鏈結的能力。我做過爬蟲的測試,所以大致知道爬蟲的原理,就是對給定的入口位址發起請求,然後從返回的內容中抽取鏈結,然後再請求抽取到的鏈結,如此反覆。包含在html中的鏈結,很容易被抽取到,但是由js生成的鏈結,抽取的時候就有些難度了,由flash生成的鏈結,更是難於被抽取到。此時有人想說驗證碼了吧?我們做測試可以要求**開綠燈,暫時遮蔽驗證碼,這個倒可以不考慮。目前ajax技術的流行,更讓爬蟲蒐集鏈結的能力顯得捉襟見肘。所以這就暴露出了掃瞄工具的第乙個侷限,掃瞄未必全面。

侷限2:對遮蔽錯誤資訊的**效果不好

如果你覺得掃瞄不全面可以通過多分析和從不同的入口位址多測試幾遍可以克服的話,這個侷限就稍微比上邊那個有點難度了。這個主要是「校驗機構」的侷限,校驗機構的工作原理是對特定格式的鏈結或者特定格式的表單匹配特定的模擬攻擊用例,模擬攻擊。我們知道,攻擊是乙個請求的過程,也就是乙個request,而攻擊的結果怎麼看?只能從response裡看了。以sql注入為例,當傳送乙個1'這樣的引數值到後台之後,如果返回頁面內容中包含了sqlexception,那麼掃瞄工具就認定它是乙個sql注入漏洞。但是如果**設定了錯誤頁面,在有異常發生時直接跳轉到乙個錯誤頁面,告訴你「出錯啦!」,然後再沒其它資訊,採集工具怎麼判斷是否存在漏洞?難道你去跟研發人員說「麻煩您把錯誤頁面去掉」嗎?要真說了,我們高傲的研發人員肯定不會給你好臉色的。

侷限3:對特定的場景不適合

侷限3跟侷限2多少有些類似,但性質不太一樣,侷限3是指某些特定場景。掃瞄工具掃瞄bug的原理,1和2裡敘述的差不多了,這裡我們舉兩個例子吧,看了例子大家看看怎麼用掃瞄工具來發現這倆漏洞,要是不能發現,那就是掃瞄工具的侷限了。第乙個:有個**允許使用者註冊,使用者註冊後還允許使用者修改個人資訊,但是修改個人資訊的這個地方有個sql注入漏洞。我們知道,一般修改個人資訊的sql大致是這樣的update [userinfo] set password='1111', email='[email protected]' where uid='男孩子',如果乙個使用者修改自己密碼的時候把密碼設為了1111'--,這樣,如果存在sql注入漏洞,所有註冊使用者的密碼都變成了1111。這裡有漏洞嗎?有!但是工具能發現嗎?除非檢視資料庫,否則根本發現不了這問題。

再看第二個:站內訊息我們很多時候都用到,假設站內訊息存在xss漏洞,那麼a給b發了這麼一段惡意的指令碼,但是從a那邊看跟普通資訊的傳送是沒什麼區別的,所以掃瞄工具就發現不了這個問題,除非再用賬號b來登入進行掃瞄。但是,這個看著簡單,實際上操作起來卻比較難。你怎麼知道掃瞄工具模擬攻擊的時候發訊息給了b,而沒給c或者d或者e呢?所以這個時限起來也是不現實的。同樣道理的還有在外網提交了留言,到管理臺審核這種模式,都存在類似問題。

以上只是列舉了3點,算是提醒大家多注意一點工具以外的事兒吧,測試這個東西,不是拿個工具就能搞定的。我說這些不是說大家以後不要用工具,而是要正確的用工具。乙個測試申請提交以後,應該首先分析哪些地方可能是工具覆蓋不到的,把這些地方先人工檢查,剩下的再用工具做全站覆蓋掃瞄。

你還在抱怨麼?

我們總是在抱怨。當我們的事業面臨失敗的時候,好像所有的矛盾的焦點都指向了周圍,而我們,似乎永遠是受害者。惡劣的工作環境,領導錯誤的決策,無能的同事,拖後腿的下屬 這一切都是我們向朋友,同事抱怨的資本,我們可以把一切壞的形容詞給我們曾經指導過我們的老師,領導,給和我們曾經一起奮鬥的同事們。給我們自己的...

奇瑞風雲, 你還在路上麼

我研一的時候,家裡買的,奇瑞風雲1.6,據說是老寶馬產品線上過時的發動機,掀背版,東西特能裝,搬家超方便,1檔起步從來不用給油,抬離合就走絕不滅車.陪了我和家人16萬公里,大毛病也幾乎沒有,因為車破,從不擔心車被刮之類的,想怎麼開怎麼開.真是好,現在給我輛5,60萬的車,我也體會不到那種幸福感了.現...

你還在為這件事煩惱麼

你還在乙個個手動輸入 複製 同學的姓名和學號麼?你還在為重複勞動的工作煩惱麼?今天這篇文章為辛苦的你們提供個小tip 我們平常拿到的檔案通常是這樣的 路人甲 好想從裡一鍵提取文字啊.我 ummmmm這是另乙個問題了,我們改天再談hhhhh 今天我們講個蠢方法 step1 按住shift鍵,游標瞄準這...