【web安全】Web应用隔离防护之Web弱口令爆破
背景
近些年來,國內政府和企業網站被篡改的類似黑客攻擊入侵事件頻出,造成的社會影響及經濟損失巨大,越來越多的企事業單位高度重視Web應用安全。
其中,黑客針對Web應用資產發起的弱口令攻擊尤為常見。
即黑客通過已有的大量賬號信息,快速批量驗證能夠訪問目標Web資產的賬號。這種攻擊方式由于利用難度不大,且一旦獲取到目標系統的弱口令,進入目標Web系統,可以擴大攻擊者的攻擊范圍,被廣為使用。
【學習資料】
常見的Web弱口令攻擊場景
一類是為了獲取目標應用的訪問權限,對賬號(如Admin、Root等)的密碼進行嘗試;
另一類是為了獲取到目標系統的用戶群體信息,如通過對大量手機號的嘗試登錄,碰撞目標系統可能存在的用戶群體,并對碰撞出的用戶群,進行有針對性的商業活動。
Web弱口令攻擊手法
Web弱口令常見的攻擊手法有:準備攻擊字典、執行爆破。
準備攻擊字典
進行Web弱口令攻擊前,黑客需要預先準備攻擊用的賬號/密碼字典。最常見的途徑,是通過之前各大網站泄露的口令,進行分類統計和匯總。
2021年初NordPass發布了2020年的弱口令調查統計結果,第一位的還是連續多年霸榜的123456。
圖3-1 弱口令排名
基于歷年外泄的用戶密碼信息,很多攻擊者會按照不同的維度,整理出常見用戶和常用密碼的字典。
圖3-2 口令字典樣例
很多Web應用系統出廠時,提供的默認賬號口令,也會成為攻擊者利用的對象。
圖3-3 部分常用安全設備弱口令
對特定攻擊目標的賬號和密碼,黑客可利用社工手段進行收集和生成,如對用戶賬號的信息收集,通過社交站點、脈脈、領英、招聘類網站等,都可以或多或少找到相關目標的人員信息。【網絡安全學習資料·攻略】
圖3-4 某站點可搜索到的人員信息
一般情況下,能夠獲取到企業人員信息,企業內各Web系統的賬號基本也能獲取到。雖然各家企業的賬號命名方式略有不同,但是據統計,最常使用的是姓名的全拼。
而且,存在部分公司在開通員工賬號時,會使用統一的初始密碼,且沒有強制要求賬號在初始登錄后就修改密碼。
圖3-5 某系統默認密碼
一些企業會使用一種常見也被廣泛使用的口令生成方式,是根據目標系統所在公司名稱、域名等內容,進行有針對性的拼接生成。
圖3-6 口令生成工具
3.2 執行爆破
字典準備完成之后,實施攻擊的核心是查找和抓取登錄接口,將字典內容填入接口內,進行快速的登錄嘗試,根據目標站點的響應內容,判斷攻擊結果。
相關接口的來源比較多,部分場景下,直接通過Web頁面內的登錄/注冊頁面就可以定位到,某些則可能需要目錄爆破以及搜索JS內容才能獲取到。
圖3-7 獲取登錄接口
如果相關登錄接口需要調整的內容不多,可直接利用Burpsuite之類的發包工具完成,或者需要預先編寫腳本,對要使用的登錄信息進行預處理,如對用戶名進行Base64編碼,以滿足服務端對此接口的接收要求。
圖3-8 Burpsuite爆破攻擊
常見應對方式
針對長久以來的Web弱口令攻擊問題,防守方也形成了眾多的防御方法。
4.1 口令生成強制安全策略
在口令生成的時候,需要滿足一定的安全策略,才會被系統接受,如常見的口令生成安全策略:
1)長度大于8;
2)包含數字和字母;
3)字母包含大小寫;
4)包含特殊字符。
4.2 口令管理安全策略
常見的口令安全管理策略,主要有以下方面:
1)定期修改密碼,如每三月一改;
2)建立統一賬號登錄系統;
3)雙因子認證;
4)驗證碼;
上述的口令生成策略并不能完全規避弱口令的生成,比如Qwer1234就符合上述的生成策略,但是因為其“便利”的鍵盤順序,為很多人所使用。
口令管理安全策略,如果實現或者管理不當,同樣會出現問題。定期修改的密碼,新密碼與舊密碼相比,可能只是最后的尾數做了修改;
雙因子的具體實現中,如果雙重驗證因子沒有進行有效的限制,同樣存在被爆破的可能;驗證碼的自動識別以及人工打碼,已經形成了一條黑色產業。
Web應用隔離防護
鈦星Web應用隔離系統采用了另外一種防護方式,將用戶與實際的Web應用系統隔離,對用戶隱藏與Web服務端的交互細節,能有效防護針對Web應用的弱口令攻擊行為。
5.1 架構說明
【網絡安全學習資料·攻略】
圖5-1 Web應用隔離架構
在架構上,Web應用隔離系統串接于用戶瀏覽器與真實的Web應用服務器之間,對用戶透明,用戶端瀏覽器不需做任何配置上的調整。
Web隔離系統與Web服務器之間保持原有的訪問交互方式,對用戶提供原有服務的“鏡像”,隱藏服務端的所有代碼層面的細節,基于用戶在瀏覽器端的行為與真實服務器進行交互。
基于這種架構,Web應用隔離主要完成兩方面的任務:
任務一,接收用戶在瀏覽器上觸發的鼠標鍵盤操作事件及Get請求,將鼠標鍵盤事件轉化成真實的請求(比如Post、Put等),以及Get請求,發送給Web服務器;
任務二,將源網站所有的活動腳本及API在Web隔離平臺執行,重構網頁內容,返回給用戶瀏覽器,即用戶側瀏覽器上,隔離系統展示的Web頁面,與用戶直接訪問原網站相同,但是不含源網站活動腳本及API等信息。
5.2 防御原理
傳統的防御方式,一是增加身份驗證接口的訪問難度,從多個維度上,對用戶身份進行鑒定,只有多個維度都滿足條件,才會允許通過。二是不斷對來自用戶的請求進行檢測,當發現有大量的異常請求時,再通過安全設備對相關請求進行攔截。
鈦星的Web應用隔離防護產品,采用了不同的防御方式。
5.2.1 腳本及API隱藏
Web弱口令攻擊的前提及核心是能夠找到口令輸入的接口,并且接口的響應內容,能夠對賬號或密碼的可用狀態進行區分。
Web應用隔離系統會把Web應用服務器的內容,以視覺流的方式,發送給用戶端的瀏覽器,隱藏真實的活動腳本及API,讓攻擊者無法探測到具體的API,從而無法進行攻擊。
正常訪問模式下,JS代碼中通常包含了大量的接口地址和參數,甚至有的站點因為配置不當,導致Webpack信息對外可見。
圖5-2 JS信息暴露
Web應用隔離模式下,相關JS代碼止步于Web應用隔離服務端,Web用戶的瀏覽器側只保存有少量客戶瀏覽器與隔離服務端的交互JS。
圖5-3 隔離模式源碼差異
5.2.2 HTTP請求類型過濾
即使通過某種方式,攻擊者拿到了真實服務器的認證API,也無法利用。
隔離系統只接受Get請求和用戶產生的鼠標鍵盤操作事件,其它類型如Post、Option、Head等,隔離平臺不接受并丟棄,不會傳遞相關請求到真實Web服務器,這將攔截大部分的爆破流量。【網絡安全學習資料·攻略】
圖5-4 構造請求數據被攔截
5.2.3 請求URL加密
Web應用隔離模式下,Web瀏覽器與Web應用隔離設備之間進行交互,以HTTP Get的方式進行。
即Web應用隔離設備只接收客戶瀏覽器發送過來的Get請求,其它類型的請求不再處理。且URL采用了加密,對于通過URL實現的一些攻擊方式實現了完全免疫。
圖5-5 URL加密工作原理
下圖為加密后的效果,瀏覽器地址欄,原有的URL地址中,Host保持不變,但其后的Path內容,以加密字符串的方式展示和使用,原有URL不再可用。
圖5-6 URL加密效果
5.2.4 弱口令輸入檢查
Web應用隔離系統能夠對頁面中的密碼輸入進行識別,并對輸入的口令進行檢測。當檢測到弱口令時,可根據系統預置安全策略(阻止、提示用戶修改、僅記錄)進行處理。這種方式不需對業務系統進行改造,可有效防范和檢測弱口令的生成和使用。
綜上,Web應用隔離系統可以完全防護對Web應用系統的弱口令攻擊,從根本上解決問題,讓服務方從容應對外部安全威脅,為Web用戶提供安全穩定的服務。
最后
關注我,持續更新!!!私我獲取【網絡安全學習資料·攻略】
總結
以上是生活随笔為你收集整理的【web安全】Web应用隔离防护之Web弱口令爆破的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 国内网络安全这门行业人才会不会饱和呢?
- 下一篇: 常见的钓鱼招式,可千万别入坑哦