發表文章

目前顯示的是有「MVC」標籤的文章

[MVC] 使用 Html.Raw 從Model 產出 JSON 字串

Checkmarx 弱點:Reflected XSS All Clients 該元素的值於程式流程中沒有被正確地過濾(Filter)或驗證,並最終顯示於使用者端方法DisplayDetails()這可能為跨站腳本(Cross-Site-Scripting)攻擊 一般在輸出網頁時內嵌 JSON 轉成 JavaScript <script> var DataItem = @Html.Raw(Newtonsoft.Json.JsonConvert.SerializeObject(Model.DataItem)); </script> 但如果model 裡有含html字串,會導致XSS 風險 宣告產出如下: <script> var DataItem = @Html.Raw( Newtonsoft.Json.JsonConvert.SerializeObject(Model.DataItem, new Newtonsoft.Json.JsonSerializerSettings { StringEscapeHandling = Newtonsoft.Json.StringEscapeHandling.EscapeHtml })); </script> JsonConvert.DefaultSettings = () => new JsonSerializerSettings { StringEscapeHandling = Newtonsoft.Json.StringEscapeHandling.EscapeHtml };

在VS專案中,看到資料夾下的檔案

 <PropertyGroup> 中加入 <ProjectView>ShowAllFiles</ProjectView> 即可清楚知道資料夾下有什麼檔案未加入專案