[英]HTML Encoding Form Post
一個用戶向我發送了一些信息,他們將這些信息發布到我的頁面中,這些信息可能存在XSS問題,但是從服務器端代碼的角度來看,我認為它永遠不會順利通過我的代碼。
他們說他們發送了這個:
forminfo=%27+%7C%7C+%27%27+%7C%7C+%27%25booleantest%3Atrue%2Ctrue%2Ctrue
我看了看,發現%27是Apostrophy,%7C是Pipe字符,可能有風險。
但是,如果數據以這種格式進入我的應用程序,則會因為對發布的信息進行字符串處理而崩潰。 它在冒號(:)字符上進行字符串分割。 forminfo是我的HTML輸入元素之一的名稱
如果它以
forminfo=' || '' || '%booleantest:true,true,true
然后它更清晰,我可以更好地看到它們發送了什么以及代碼將如何處理輸入。
因此,他們是說他們以加密方式發布數據嗎? 我的應用程序會知道如何處理加密的發布數據並以某種方式對其進行解密嗎?
他們沒有收到錯誤,但是如果我自己運行代碼,它將出錯。
你能解釋可能發生了什么嗎?
十六進制和base64編碼的JavaScript可以在您的頁面中解碼和呈現-如果您的頁面將表單數據(注入的JavaScript)發送回瀏覽器。
為了更好地保護您的站點,您可能需要查看XSS(跨站點腳本)備忘單或跨站點腳本(XSS)
以下是URLEncoded數據:
forminfo=%27+%7C%7C+%27%27+%7C%7C+%27%25booleantest%3Atrue%2Ctrue%2Ctrue
如果您的應用程序存在以下問題:
forminfo=' || '' || '%booleantest:true,true,true
然后您確實有一個問題,因為這是您的有用用戶試圖告訴您的。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.