3 回答

TA貢獻(xiàn)1866條經(jīng)驗(yàn) 獲得超5個(gè)贊
有幾種解決方案:
使用白名單進(jìn)行驗(yàn)證,但使用來自入口點(diǎn)的輸入 正如我們?cè)谑褂糜簿幋a值列表中提到的那樣。
使用簡單的正則表達(dá)式白名單進(jìn)行驗(yàn)證
規(guī)范化輸入并驗(yàn)證路徑
我使用了第一個(gè)和第二個(gè)解決方案并且工作正常。

TA貢獻(xiàn)1851條經(jīng)驗(yàn) 獲得超4個(gè)贊
本文檔提供了有關(guān)建議的補(bǔ)救措施的詳細(xì)信息,任何明確的自定義解決方案。就我而言,我在提供的方法參數(shù)中嘗試了白名單或黑名單模式,但這仍然沒有解決 CWE-73 風(fēng)險(xiǎn)。我認(rèn)為這是預(yù)料之中的,文檔確實(shí)說明了這一點(diǎn):
靜態(tài)引擎的檢測(cè)范圍有限。它只能掃描您的代碼,實(shí)際上不會(huì)運(yùn)行您的代碼(與動(dòng)態(tài)掃描不同)。所以它不會(huì)選擇任何自定義驗(yàn)證(if 條件、正則表達(dá)式等)。但這并不意味著這不是消除風(fēng)險(xiǎn)的完全有效的解決方案!
我嘗試了基于自定義黑名單模式的解決方案,并使用 FilePathCleanser 對(duì)該方法進(jìn)行了注釋,如此處所述,它解決了 CWE-73 問題,veracode 不再將其顯示為風(fēng)險(xiǎn)。

TA貢獻(xiàn)1780條經(jīng)驗(yàn) 獲得超1個(gè)贊
嘗試使用推薦的 OWASP ESAPI 驗(yàn)證器方法驗(yàn)證此 PROP 字符串,如下所示。
例子:
String PropParam= ESAPI.validator().getValidInput("",System.getProperty("PROP", ""),"FileRegex",false);
FileRegex
是用于驗(yàn)證 PROP 字符串(即文件路徑)的正則表達(dá)式。
在 Validator.properties 中定義FileRegex = ^(.+)\/([^\/]+)$
。
添加回答
舉報(bào)