本篇介紹了以下代碼安全問題
1、Struts:錯誤驗證方法
2、不安全的信息傳輸
3、缺少Receiver權限
4、缺少API權限
5、缺少Content Provider權限
6、缺少Intent權限
7、不安全的文件操作模式
8、固定的Session ID
9、系統信息泄露:外部
10、郵件服務器建立未加密的連接
1、Struts:錯誤驗證方法
詳細信息
該表單的驗證方法validate()
未調用父類的驗證方法super.validate()
,這將導致校驗框架無法對照校驗表單來校驗表單中的內容。換言之,針對某個特定的表單,校驗框架失效。輸入檢查是例如SQL注入、跨站腳本攻擊、任意文件操縱等常見漏洞的基本防範手段。對錶單來說,校驗框架失效會使應用程序完全暴露在各種攻擊之下。
修復建議
爲表單定義一個驗證方法validate()
需要覆蓋父類的驗證方法super.validate()
。struts校驗框架使用表單的validate()方法,對照那些在相關校驗表單中定義的約束條件來檢測表單屬性的內容,validate()是struts校驗框架的一部分。
2、不安全的信息傳輸
詳細信息
程序使用HTTP、FTP等協議進行通信,未對通信信息進行加密和驗證,可能會受到危害,尤其是移動設備利用WiFi連接不安全的、公共的無線網絡。
例如:下面代碼片段中表示將使用HTTP進行連接,傳遞的敏感信息容易被攻擊者竊取。
..