漏洞解析——通用異常缺陷及字串比較缺陷
本期主題為丟擲通用異常缺陷漏洞和字串比較缺陷漏洞的相關介紹,歡迎大家一起探討!
▲ 丟擲通用異常缺陷漏洞
丟擲過於寬泛的異常會導致複雜的錯誤處理程式碼,這些程式碼很可能包含安全漏洞。
宣告丟擲Exception或Throwable的方法會使呼叫方難以執行正確的錯誤處理和錯誤恢復。例如,Java的異常機制的設定使呼叫者能夠輕鬆地預測可能出現的錯誤,並編寫程式碼來處理每個特定的異常情況。
二、丟擲通用異常缺陷的構成條件有哪些?
丟擲過於寬泛的異常。
三、丟擲通用異常缺陷會造成哪些後果?
宣告一個方法丟擲泛型形式的異常會使系統失敗。
四、丟擲通用異常缺陷的防範和修補方法有哪些?
將方法丟擲異常的型別具體詳細化。
五、丟擲通用異常缺陷樣例:
用 上述程式程式碼,則可以發現程式碼中存在著“丟擲通用異常”Secure屬性” 導致的程式碼缺陷,如下圖:
丟擲通用異常缺陷在CWE中被編號為CWE-397:Declaration of Throws for Generic Exception
▲ 使用錯誤的運算子進行字串比較缺陷漏洞
一、什麼是使用錯誤的運算子進行字串比較缺陷?
比較字串時,使用了錯誤的運算子,例如當應使用equals()方法代替時,使用“==”。
二、使用錯誤的運算子進行字串比較缺陷的構成條件有哪些?
使用“==”運算子比較字串。
三、使用錯誤的運算子進行字串比較缺陷會造成哪些後果?
在Java中,使用”==”或”!=”比較兩個字串是否相等,實際上是比較兩個物件是否相等,而不是它們的值。兩個物件很可能永遠不會相等。雖然該缺陷通常隻影響程式的正確性,但如果將相等性用於安全決策,則可能會影響程式的安全性。
四、使用錯誤的運算子進行字串比較缺陷的防範和修補方法有哪些?
使用equals()比較字串。
五、使用錯誤的運算子進行字串比較缺陷樣例:
用Wukong軟體檢測上述程式程式碼,則可以發現程式碼中存在著“使用錯誤的運算子進行字串比較” 導致的程式碼缺陷,如下圖:
使用錯誤的運算子進行字串比較缺陷在CWE中被編號為CWE-597:Use of Wrong Operator in String Comparison
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70000012/viewspace-2789608/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 漏洞分析——變數缺陷漏洞及通用異常捕獲宣告缺陷漏洞變數
- 程式碼缺陷解讀:通用異常捕獲宣告缺陷漏洞
- 使用錯誤的運算子進行字串比較缺陷漏洞字串
- 程式碼安全測試第二十九期:通用異常捕獲宣告缺陷漏洞
- 程式碼安全測試第三十期:丟擲通用異常缺陷
- Lombok生成get/set異常問題(Lombok缺陷)Lombok
- 字串型別存在缺陷字串型別
- Windows 名稱解析機制探究及缺陷利用Windows
- Abp vNext異常處理的缺陷/改造方案
- 缺陷和缺陷報告
- dubbo~全域性異常攔截器的使用與設計缺陷
- dubbo~全域性異常攔截器的使用與設計缺陷~續
- 缺陷描述
- 字串比較字串
- TCP/IP堆疊中的路由漏洞 (BSD,缺陷) (轉)TCP路由
- IMail SMTP 緩衝區溢位漏洞 (APP,缺陷) (轉)AIAPP
- 五種常見的ASP.NET安全缺陷ASP.NET
- 講解SQL Server的複製及缺陷SQLServer
- CWE-58:EmptySynchronized Block空的同步塊缺陷漏洞分析synchronizedBloC
- 安全缺陷持續升高,新系統帶來新缺陷(轉)
- 字串-簡單字串比較字串
- 比較字串和數字串字串
- PHP比較字串PHP字串
- JAVA字串比較Java字串
- 聊聊缺陷逃逸率
- 分享一個你很可能不知道的Java異常實現的缺陷Java
- [個體軟體過程]之缺陷管理--缺陷預測 (轉)
- 比較字串和數字串(續)字串
- halcon缺陷檢測
- 軟體缺陷的案例
- 軟體缺陷管理流程
- ltrim() 函式的缺陷函式
- 聊聊缺陷收斂率
- 【軟體測試】缺陷
- 那些 “被消失” 的缺陷
- Delphi中字串比較大小 VS Oracle-SQL中字串比較大小字串OracleSQL
- 集合差異比較演算法及效能測試演算法
- 空密碼缺陷漏洞CWE-258:Empty Passwordin Configuration File密碼