天天看點

網站登入接口安全滲透測試分享

從業滲透測試服務已經有十幾年了,在對客戶網站進行漏洞檢測,安全滲透時,尤其網站使用者登入功能上發現的漏洞很多,想總結一下在滲透測試過程中,網站登入功能上都存在哪些網站安全隐患,下面就有請我們SINE安全的工程師老陳來給大家總結一下,讓大家都有更好地了解網站,在對自己網站進行開發的過程中,尤其使用者登入功能上做好網站安全防護,防止網站被攻擊。

網站登入接口安全滲透測試分享

網站登入有安全驗證與校驗,從分支上又可以分出其他代碼功能,包括使用者注冊,忘記密碼,使用者登入框,修改密碼,驗證碼(圖檔以及短信驗證碼,郵箱驗證碼等功能),使用者登入資訊安全提示,密碼錯誤還是輸入的賬号不對,以及賬号頻繁登入的鎖定安全機制功能,大大小小的功能組成了網站的登入功能。那麼我們SINE安全在對客戶網站進行滲透測試服務的時候,在網站登入功能裡到底發現那些緻命的漏洞?下面我們來詳細的舉例說明:

網站登入接口安全滲透測試分享

第一我們從最簡單的一個使用者登入框上來說,很多客戶網站并沒有對使用者前端輸入的參數值進行安全過濾,導緻賬戶名字與密碼裡可以插入惡意的參數值,導緻SQL注入漏洞的發生,再一個就是使用萬能的密碼進行登入,可以繞過資料庫,直接登入網站。SINE安全是如何幫使用者修複這個SQL注入漏洞呢?針對SQL注入的修複辦法是:對使用者登入的賬号密碼字段的參數值進行預編譯,不允許特殊字元的輸入與傳輸,在代碼裡寫入get,post,cookies送出方式的安全攔截,發現惡意的字元包括<,>,\,/,,,",select,update,@,等等進行攔截,并傳回錯誤提示,對特定的sql語句在代碼裡進行預編譯,禁止多餘的參數插入到賬号與密碼字段中。

使用者ID與密碼被暴力破解,很多客戶網站并沒有對網站的登入進行安全判斷,導緻攻擊者可以随意地對其進行任意的賬号密碼嘗試登入,有些甚至有密碼字典,可以不斷去猜解使用者的ID與密碼,導緻網站使用者被惡意登入,資料惡意篡改等情況發生。對這種滲透中發現的漏洞我們SINE安全的修複辦法是:增加驗證碼功能(圖檔驗證碼,或者是短信驗證碼),每次登入都必須輸入對的驗證碼,如果驗證碼不對那就不允許登入,也可以将驗證碼做時間的限制,30秒才能重新擷取。 再一個對使用者ID輸入錯誤的提示,可以混淆攻擊者的視線,提示是密碼錯誤。在使用者登入次數達到6次以上直接鎖定該賬戶的登入。

網站登入接口安全滲透測試分享

XSS跨站攻擊漏洞也會在使用者登入框中發生,比較常見的就是使用者名的參數值中,有些客戶網站沒有對XSS惡意代碼進行安全校驗,導緻可以輸入錯誤的賬号進行登入,當錯誤登入的時候,背景有可能會有錯誤的使用者登入記錄,包括post資料包裡網站來源都會插入XSS攻擊代碼,導緻管理者在檢視使用者登入錯誤日志的時候觸發XSS漏洞。XSS跨站漏洞可以擷取使用者的cookies值,以及網站背景的位址,并可以将浏覽器打開背景進行截圖等功能,如何修複XSS跨站漏洞?對get,post,cookies的送出方式進行安全過濾,攔截掉<,>,,img,"",等字元。

任意使用者注冊漏洞也會在網站登入功能上發生,可以用來猜測網站是否有注冊過該使用者名,進行批量的暴力枚舉。對注冊使用的驗證碼進行繞過,使用正确的短信驗證碼送出注冊即可繞過注冊,手機以及郵箱的驗證碼過于太短,導緻暴力破解,針對于這樣的網站漏洞我們SINE安全的修複建議是對驗證碼和注冊資訊進行同步請求,對驗證碼進行驗證是否正确,然後再來确定注冊的資訊是否與驗證碼是一體的。

網站登入接口安全滲透測試分享

還有很多網站功能在滲透測試過程中出現的漏洞,這裡總結的是上部分,下一部分我們将會在下一篇文章中跟大家揭曉,也希望這些的滲透測試分享能讓大家對網站的安全有所了解,隻有真正的了解了自己的網站,才能把安全做好,知彼知己百戰不殆。在網站上線以及發生安全問題後,一定要做滲透測試服務,提前檢測網站存在的漏洞,以及模拟攻擊者的手法去查找漏洞根源,防患于未然。