那些有關專案遇到 XSS 的事情
XSS ( Cross Site Scripting )
前言
會寫這篇是因為,當前的專案遇到了相關的事情,特別寫這篇提醒自己,就算不是自己的部分,也在要檢查與多加留意
XSS 介紹
XSS攻擊通常指的是通過利用網頁開發時留下的漏洞,通過巧妙的方法注入惡意指令代碼到網頁,使用戶載入並執行攻擊者惡意製造的網頁程式。 這些惡意網頁程式通常是JavaScript,但實際上也可以包括Java,VBScript,ActiveX,Flash或者甚至是普通的HTML。
簡單說就是使用者輸入的資料變成程式的一部份
案例
在專案收尾的時候發現了這段
看起來大概就是,把資料拿出來後在輸出畫面
看起來很簡單可是問題很大
當使用者不懷好意的去存一些JS語法
就會有很多問題
如果畫面是用 .html() 或是 .innerHTML() 的語法
那就會直接帶出 JS 效果
這裡的案例是儲存型 XSS( Stored )
這種的殺傷力最大 因為存在 DB 裡面
所有的使用者都會中招
像這種惡意代碼
可以分為在 輸入之前 跟 輸出之前
一般建議是 無論如何、輸出端的檢查一定要做
這裡簡單的做個 escapeHTML
當資料輸出時可以先砍掉一些危險的字元
當然不只這些 只是做個大概寫法



留言
張貼留言