![]() ![]() ![]() ![]() |
|||||
|
|||||
樓主 yi ![]()
![]() |
為了防止xss , 要是在最後發出給user 前,取得還沒送出前的repose ,然後做htmlencode ,那該有多好xd? 不過,說實在,我並沒有很了解xss ,感覺上光是htmlencode reponse ,源碼檢測認為還不夠,非得要連response 的參數,也要htmlencode才行 而且有的時候,傳出去是個物件,對物件的成員屬性做htmlencode 是件多迂迴的事情啊,還不如最終的request字串做htmlencode 總之,就是如果可以掌控reponse request 的那個關卡,就好了 |
別忘捐VP感謝幫助你的人 | 新手會員瞧一瞧 |
1樓
作者回應
yi ![]() |
不知道怎麼修改文章,再發一次
為了防止xss , 要是在最後發出給client 前,取得reponse ,然後做htmlencode ,那該有多好xd? 不過,說實在,我並沒有很了解xss ,感覺上光是htmlencode reponse ,源碼檢測認為還不夠,非得要連request的參數,也要htmlencode才行 而且有的時候,萬一傳出去是個物件,而對物件的成員屬性做htmlencode 是件多迂迴的事情啊,還不如最終的request字串做htmlencode 總之,就是如果可以掌控reponse request 的那個關卡,就好了
本篇文章回覆於2018-12-05 22:44
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
2樓 |
我總覺得你是被源碼檢測卡死...
某些源碼檢測, 偵測到 Response.Write(變數) 時, 會要你去注意這個變數是否有可能被修改... (但這並不表示有異常) 如果你是為了檢測不出問題(就像是為了無障礙而無障礙), 那你要做的是, 不要寫任何的Response.Write... ======================================== 像上述的問題, 有一種作弊方式就是直接寫一個class, 打包成dll(讓源碼檢測測不到), 這個class就用來response.write...........
本篇文章回覆於2018-12-05 23:18
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
3樓
作者回應
yi ![]() |
沒有response.write 有點難啊…,這鬼程式沒人知道細節,我得儘量維持原來的輸出>_<
哈 作弊方法…真的太作弊啦…
本篇文章回覆於2018-12-05 23:35
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
4樓 |
重點應該是關注在Request的接入資料,而不是最後Response出去的內容
因為XSS的攻擊,他的輸出與正常的輸出都一樣是HTML+CSS+Javascript 但Request進入的資料,不該是帶有HTML,Javascript等 所以處理方式,或許可以從PageBase或者Handler來著手 PageBase的方式概念請參考以下小喵這一篇 https://dotblogs.com.tw/topcat/2008/03/05/1250 至於處理的方式∼ 或許可以在PageLoad的時候,用For回圈,針對所有Request(包含QueryString,Form)進行HtmlEncode與UrlEncode 以上只是初略的想法,我還沒實際測試過 樓主不妨測試看看 ^.^a
本篇文章回覆於2018-12-06 10:24
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
5樓 |
補充一下,處理後,對應的是滲透測試,也就是人工去滲透時,會無作用
但如果用工具去掃(原始碼掃描、弱點測試) 還是可能被誤判為有問題 ^.^a
本篇文章回覆於2018-12-06 11:47
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
6樓 |
微軟有提供套件,防堵XSS
.NET 4.5版起內建了 請參閱 https://mis2000lab.pixnet.net/blog/post/35340562 Microsoft Anti-XSS (Anti-Cross Site Scripting Library) 避免XSS攻擊 希望有幫上忙 :-)
本篇文章回覆於2018-12-09 22:15
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
回覆 |
如要回應,請先登入. |