Windows客戶端攻擊面分析
一、客戶端側的攻擊
1. 檔案分析
說明:識別語言和開發框架,不同使用者瘦客戶端和胖客戶端
舉例:配置不合理將敏感資料放著在客戶端配置檔案中
防禦:請勿將相關配置憑證放置在客戶端使用者目錄
2. 二進位制分析反編譯分析
說明:反編譯靜態分析,動態除錯分析
舉例:硬編碼寫死在客戶端
防禦:請勿寫死在客戶端程式碼中
3. 記憶體分析
說明:客戶端與伺服器進行通訊的過程中,將明文資料臨時儲存在記憶體中
舉例:記憶體中抓取明文傳輸的憑證
防禦:資料通過密碼傳輸,特別是跟使用者憑證相關的資料
4. DLL劫持
說明:DLL劫持漏洞(DLL Hijacking Exploit),這個名字緣起微軟在2010年8月23日釋出的2269637號安全公告。通俗點說,這個漏洞就像是去年炒的沸沸揚揚的深圳526車禍中總會提到的“掉包”;嚴格點說,它是通過一些手段來劫持或者替換正常的DLL,欺騙正常程式載入預先準備好的惡意DLL的一類漏洞的統稱。利用DLL劫持漏洞,病毒木馬可以隨著文件的開啟(或者其他一些程式正常行為)而啟用自身,進而獲得系統的控制權。
舉例:檢測系統中存在DLL劫持的程式
防禦:對於系統共享的DLL(如user32.dll,mfc80loc.dll等),不能放到程式目錄下時,應該:使用絕對路徑載入
二、網路傳輸側的攻擊
1. 明文傳輸
說明:HTTP明文傳輸或者明文通過TCP傳輸都可能造成被嗅探攻擊
舉例:HTTP明文介面傳輸
防禦:HTTPS 傳輸或者使用對稱加密通過TCP協議進行傳輸互動
2.API 安全
說明:程式碼邏輯在客戶端可見,可進行靜態分析除錯
舉例:使用者登入介面,SQL注入漏洞
防禦:使用預編譯的SQL介面,或者引數化查詢來執行SQL查詢
三、服務端側的攻擊
1. TCP/UDP 攻擊
說明:
舉例:FTP客戶端DOS溢位漏洞
防禦:
1. 通過作業系統使得緩衝區不可執行,從而阻止攻擊者植入攻擊程式碼
2. 利用編譯器的邊界檢查,來實現緩衝區的保護
3. 在程式指標失效前進行完整性檢查
2. 應用層攻擊
說明:應用層攻擊介面相關的攻擊型別
舉例:OWASP top 10
防禦:特殊字元過濾,使用成熟框架來防止通用型的漏洞攻擊