接入層上傳
上傳問題
- 上傳檔案
- 再次訪問上傳的檔案
- 上傳的檔案被當成程式決議
上傳問題防御
- 限制上傳后綴
let ext = path.extname(file.name);
if (ext === ".js") {
throw new Error("不要上傳壞檔案");
}
但是可以通過改后綴名的方式,達到攻擊的目的
- 檔案型別檢查
if (file.type != "image/png") {
throw new Error("只允許PNG");
}
型別是從瀏覽器讀取的,可以不經過瀏覽器上傳檔案,依然不安全
- 檔案內容檢查
var fileBuffer = fs.readerFileSync(file.path);
fileBuffer[0] == 0x5b;
但是可以通過在檔案頭部寫入對應的內容
GIF89a
<?php
所以還是不安全
- 程式輸出
- 比較保險,但是對性能可能會有很大的影響
- 權限控制-可寫可執行互斥
- 這還少一個原則,是安全的一個最低保障
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/3948.html
標籤:訊息安全
上一篇:前端-接入層注入問題
