原文:http://www.anying.org/thread-36-1-1.html 轉載必須註明原文地址
最近看到網絡上不少人都在說XSS我就藉着暗影這個平臺發表下本身對這一塊的一些認識。
其實對於XSS不少人都知道利用可是不少人都忽略了漏洞存在的緣由,其實說白了基於dom中的XSS都是一些api代碼審計不嚴所產生的,那麼一下我就整理下可能存在基於dom的XSS攻擊的api吧。
document.location
document.URL
document.URLUnencoded
document.referrer
window.location
這些API可訪問經過一個專門設計的url控制dom的數據,因此咱們大部分用到的都是這些,其實這種dom的XSS彈窗可利用和危害性並非很大,大多用於釣魚什麼的,也就是用戶不主動點擊你的URL你是沒有什麼辦法的。
在代碼中追中相關數據,肯定應用程序對她執行何種操做,若是數據被提交給如下的API的時候,那麼應用程序就可能受到xss。其實這些API主要是用在表單劫持,在用戶提交表單時在其中插入一段xss代碼那麼這產生了咱們所說的存儲型的XSS,漏洞存在危險係數比較高,不少被用於cookie的盜取,交易表單劫持,不少黑產行業對於購物站經常採用這種方式劫持訂單,給本身盈利。
document.write()
document.writeln()
document.boby.innerHtml
eval()
window.execScript()
window.setInterval()
window.setTimeout()
其次就是基於dom的XSS還有一些會被重定向攻擊,重定向攻擊的話危害性可大可小不過我的感受這種XSS的方式在不少地方很容易被人忽略,前段時間提交了2個URL重定向的漏洞給新浪,但是新浪不怎麼在意,我也很差說什麼不過危害對於新浪這種站來講有多大我相信有經驗的人都會知道的。
document.location
document.URL
document.open()
window.location.href
window.navigate()
window.open
以上就是我整理的一些基於dom的xss攻擊漏洞的api,我以爲這些東西羅列出來後能給你們代碼審計的時候一些幫助,最少知道xss漏洞經常出現的一些地方,對於這些api調用的時候應該要給出相對應的安全防禦措施。
而後對於XSS這種攻擊方式不少人都感受防護起來不知道怎麼辦,其實很簡單,在用戶提交數據的時候判斷get和post中是否存在<>’」/這五種符號,基本上屏蔽了這五種符號那麼XSS威脅能力估計會下降不少。
文章牽涉到的技術內容很少,主要是我的的一些經驗和書中看到的一些知識,整理一下以後發表出來但願對你們有用。html