-2
任何人都知道一個修復程序,它會使Fortify掃描開心,並且不會將下面的「print(x)」標記爲易受跨站腳本攻擊?Fortify Scan,Java print()字符串,跨站腳本
public void println(String x) {
synchronized (lock) {
print(x);
println();
}
}
任何人都知道一個修復程序,它會使Fortify掃描開心,並且不會將下面的「print(x)」標記爲易受跨站腳本攻擊?Fortify Scan,Java print()字符串,跨站腳本
public void println(String x) {
synchronized (lock) {
print(x);
println();
}
}
Fortify的認爲輸入到該被污染的(也許是因爲它來自一個參數),並尋找哪個驗證或編碼,以防止XSS值的例程。
注意驗證最好的白名單驗證完成,並且編碼應在輸出的時間內完成,當你知道了編碼的情況下(HTML屬性?使用Javascript?)
它如果不明確在這個例程中你有足夠的背景來完成其中的任何一個。因此,您可能需要在數據流中更合適的地方進行此操作。您還需要告訴Fortify(通過規則)您用於驗證或編碼的例程是XSS的清理例程。
然後 - Fortify會很高興,你的代碼會更安全。
我很確定這個工具正在使用大量的上下文信息來做出這個決定。你甚至不會給我們一瞥。你如何看待我們能夠提供幫助? – GhostCat
可能的x來自某個http請求參數,並且此PrintWriter外觀類正在寫入http響應流。 – MeBigFatGuy
MeBigFatGuy是正確的。該類擴展了java.io.PrintWriter,併爲javax.servlet.http.HttpServletResponse生成輸出。 –