程式碼安全測試第十九期:用不安全的授權建立臨時檔案漏洞
一、什麼是用不安全的授權建立臨時檔案?
在沒有適當措施或控制的情況下開啟臨時檔案可能會使檔案、其內容和任何受它影響的函式容易受到攻擊。
二、用不安全的授權建立臨時檔案漏洞構成條件有哪些?
滿足以下條件,就構成了一個該型別的安全漏洞:
1、使用建立臨時檔案的方法建立了一個可供所有使用者讀寫的臨時檔案;
2、臨時檔案沒有設定讀、寫、執行許可權。
三、用不安全的授權建立臨時檔案漏洞會造成哪些後果?
關鍵詞:讀取應用程式資料;其他;
1、如果攻擊者可以讀取臨時檔案,則該檔案中可能包含敏感資訊,這些資訊可能會被洩露;
2、如果攻擊者可以寫入該檔案,則該檔案可能會移動到攻擊者無法訪問的位置。這將使攻擊者可以獲得選擇性的資源訪問控制特權;
3、根據臨時檔案中儲存的資料,攻擊者可能會獲得一個被信任為非惡意的額外輸入向量。可以對資料結構、使用者資訊甚至程式所有權進行任意更改。
四、用不安全的授權建立臨時檔案漏洞的防範和修補方法有哪些?
1、建立檔案後設定適當的檔案許可權,使用安全的臨時檔案。臨時檔案應該只能由擁有者程式寫入和讀取;
2、隨機化臨時檔名。這也可以透過使用安全的臨時檔案函式來實現,這將確保不會在可預測的位置建立臨時檔案。
五、用不安全的授權建立臨時檔案漏洞樣例:
用悟空 靜態程式碼檢測工具分析上述程式程式碼,則可以發現程式碼中存在著“用不安全的授權建立臨時檔案” 導致的 程式碼缺陷,如下圖:
Java程式碼中使用的createTempFile()方法建立了一個所有使用者都可讀和可寫的臨時檔案,這種方法會將檔案放在預設目錄中。在UNIX系統上,預設目錄通常是"/tmp"或"/var/tmp",在Windows系統上,預設目錄通常是"C:\\Windows\\Temp",攻擊者可能很容易訪問此檔案,從而可以讀取臨時檔案中包含的潛在敏感資訊或修改檔案的內容。
用不安全的授權建立臨時檔案在CWE中被編號為CWE-378: Creation of Temporary File With Insecure Permissions
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70000012/viewspace-2776727/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 用不安全的授權建立臨時檔案漏洞
- My SQL不安全臨時檔案建立漏洞(轉)SQL
- 程式碼安全測試第十六期:使用不安全的隨機值漏洞隨機
- 程式碼安全測試第七期:不安全的反射漏洞缺陷反射
- 安全測試之認證授權
- 程式碼安全測試第六期:XPath注入漏洞
- 程式碼安全測試第五期:OS命令注入漏洞
- 程式碼安全測試第十期:日誌偽造漏洞
- 程式碼安全測試第四期:可逆的單向雜湊漏洞
- 程式碼安全測試第二期:URL重定向(跳轉)漏洞
- 程式碼安全測試第一期:什麼是SQL隱碼攻擊漏洞?SQL
- 網站漏洞測試 檔案上傳漏洞的安全滲透與修復網站
- 程式碼安全測試第三期:路徑遍歷漏洞的防範與檢測
- 程式碼安全測試第十二期:LDAP注入漏洞LDA
- 程式碼安全測試第九期:Switch中省略了break語句導致的程式碼缺陷漏洞
- 程式碼安全測試第十五期:跨站指令碼漏洞指令碼
- 程式碼安全測試第十八期:呼叫System.exit()存在安全漏洞
- 程式碼安全測試第二十九期:通用異常捕獲宣告缺陷漏洞
- [web安全] 檔案包含漏洞Web
- 程式碼安全測試第十七期:物件只定義了Equals和Hashcode方法之一的漏洞物件
- 程式碼安全測試第十三期:敏感資訊的明文傳輸漏洞
- 安全滲透測試中日誌分析技術與授權機制
- 程式碼安全測試第十一期:記憶體洩漏漏洞記憶體
- 使用不安全的隨機值漏洞隨機
- 程式碼安全之上傳檔案
- 程式碼安全之檔案包含
- Java安全漏洞:Druid未授權訪問解決JavaUI
- Web安全-檔案上傳漏洞Web
- WEB安全:檔案上傳漏洞Web
- pycharm建立臨時檔案scatch filePyCharm
- 程式碼安全 兩種程式碼漏洞
- 網站滲透測試安全檢測漏洞網站
- 網站安全測試之APP滲透測試漏洞網站APP
- 程式碼安全測試第八期:Switch中缺少default導致的程式碼缺陷
- DATABASE VAULT授權的安全隱患Database
- 程式碼安全測試第二十八期:未使用的變數缺陷漏洞變數
- web應用安全測試之業務漏洞Web
- 程式碼安全測試第三十期:丟擲通用異常缺陷