感恩是朵淡淡的茉莉花作文
如果應(yīng)用程序使用用戶可控制的數(shù)據(jù),以危險(xiǎn)的方式訪問位于應(yīng)用服務(wù)器或其它后端文件系統(tǒng)的文件或目錄,就會(huì)出現(xiàn)路徑遍歷

String rurl = request.getParameter(“rurl”);
BufferedWriter utput2 = new BufferedWriter(new FileWriter(new File(“/home/chenyz/”+rurl)));
攻擊者可以將路徑遍歷序列放入文件名內(nèi),向上回溯,從而訪問服務(wù)器上的任何文件,路徑遍歷序列叫“點(diǎn)-點(diǎn)-斜線”(..\)
/pic/go.action?file=..\..\etc\passwd
避開過濾
第一種是過濾文件名參數(shù)中是否存在任何路徑遍歷序列(..\)
如果程序嘗試刪除(..\)來凈化用戶輸入,可以用
…./pic/ …./\ ….\\
進(jìn)行URL編碼
點(diǎn)–>%2e 反斜杠–>%2f 正斜杠–>%5c
進(jìn)行16為Unicode編碼
點(diǎn)–>%u002e 反斜杠–>%u2215 正斜杠–>%u2216
進(jìn)行雙倍URL編碼
點(diǎn)–>%252e 反斜杠–>%u252f 正斜杠–>%u255c
進(jìn)行超長(zhǎng)UTF-8 Unicode編碼
點(diǎn)–>%c0%2e %e0$40%ae %c0ae
反斜杠–>%c0af %e0%80af %c0%af
正斜杠–>%c0%5c %c0%80%5c
預(yù)防路徑遍歷的方法:
1.對(duì)用戶提交的文件名進(jìn)行相關(guān)解碼與規(guī)范化
2.程序使用一個(gè)硬編碼,被允許訪問的文件類型列表
3.使用getCanonicalPath方法檢查訪問的文件是否位于應(yīng)用程序指定的起始位置
【感恩是朵淡淡的茉莉花作文】相關(guān)文章:
好一朵美麗的茉莉花作文(精選31篇)03-12
好一朵美麗的茉莉花初中作文(通用33篇)02-28
感恩那朵紅云作文(精選21篇)11-22
淡淡的友情,淡淡的愛05-06
淡淡的陽(yáng)光作文04-10
淡淡的微笑作文02-24
茉莉花開了作文08-12
茉莉花開作文02-03
茉莉花作文(精選31篇)08-13
茉莉花作文(精選50篇)08-13
- 相關(guān)推薦