什么是不安全的直接對(duì)象引用
不安全的直接對(duì)象引用時(shí)战得,Web 應(yīng)用程序公開給用戶內(nèi)部實(shí)現(xiàn)對(duì)象担映。內(nèi)部實(shí)現(xiàn)對(duì)象的一些例子是數(shù)據(jù)庫(kù)記錄、 Url 或文件灶搜。
攻擊者可以修改內(nèi)部實(shí)現(xiàn)對(duì)象中企圖濫用此對(duì)象上的訪問(wèn)控制邀桑。當(dāng)攻擊者這樣做他們可能有能力訪問(wèn)開發(fā)人員不希望公開訪問(wèn)的功能瞎疼。
舉個(gè)栗子
不安全的直接對(duì)象引用是很多種類別的漏洞。有許多例子這些類型的由其他名字在野外發(fā)現(xiàn)的漏洞概漱。開放重定向和目錄遍歷是不安全的直接對(duì)象引用漏洞的兩個(gè)典型的例子丑慎。
開放重定向
這是在 Web 應(yīng)用程序有一個(gè)參數(shù),允許其他地方的用戶重定向到網(wǎng)站瓤摧。如果此參數(shù)不實(shí)現(xiàn)正確使用白名單竿裂,攻擊者可使用這一網(wǎng)絡(luò)釣魚攻擊引誘到他們選擇的站點(diǎn)的潛在受害者。
目錄遍歷
假設(shè) Web 應(yīng)用程序允許為要呈現(xiàn)給用戶存儲(chǔ)在本地計(jì)算機(jī)上的文件照弥。如果應(yīng)用程序不驗(yàn)證應(yīng)訪問(wèn)哪些文件腻异,攻擊者可以請(qǐng)求其他文件系統(tǒng)上的文件和那些也會(huì)顯示。
例如这揣,如果攻擊者通知 URL:
https://oneasp.com/file.jsp?file=report.txt
攻擊者可以修改文件參數(shù)使用目錄遍歷攻擊悔常。他修改的 URL:
https://oneasp.com/file.jsp?file=../../../etc/shadow
這樣 /etc/陰影文件返回并且呈現(xiàn)由 file.jsp 演示頁(yè)面容易受到目錄遍歷攻擊。
如何防止不安全的直接對(duì)象引用
一如往常给赞,Web 應(yīng)用程序開發(fā)人員可以防止這些攻擊通過(guò)良好的規(guī)劃机打。
開發(fā)人員應(yīng)使用間接引用映射。直接映射很容易被攻擊者猜對(duì)了片迅。開發(fā)人員應(yīng)該避免暴露給用戶的私有對(duì)象残邀。文件名稱,內(nèi)部/外部 URL 和數(shù)據(jù)庫(kù)鍵都是不應(yīng)顯示給用戶的事情的例子柑蛇。
如果必須使用直接對(duì)象芥挣,然后開發(fā)人員應(yīng)確保通過(guò)驗(yàn)證,用戶有權(quán)查看他們正在試圖訪問(wèn)耻台。在目錄遍歷示例中空免,確定哪些文件用戶應(yīng)該訪問(wèn)并僅授予他們對(duì)這些文件的權(quán)限。這被稱為「接受已知良好」的方法盆耽,始終是一個(gè)好主意蹋砚,當(dāng)它來(lái)到開發(fā)安全應(yīng)用程序扼菠。
如今,多樣化的攻擊手段層出不窮都弹,傳統(tǒng)安全解決方案越來(lái)越難以應(yīng)對(duì)網(wǎng)絡(luò)安全攻擊娇豫。OneASP 自適應(yīng)安全平臺(tái)集成了預(yù)測(cè)、預(yù)防畅厢、檢測(cè)和響應(yīng)的能力,為您提供精準(zhǔn)氮昧、持續(xù)框杜、可視化的安全防護(hù)。想閱讀更多技術(shù)文章袖肥,請(qǐng)?jiān)L問(wèn) OneAPM 官方技術(shù)博客
本文轉(zhuǎn)自 OneAPM 官方博客