XSS學習總結(jié)

什么是XSS

XSS(Cross Site Scripting)会钝,跨站腳本攻擊澜沟。
目標網(wǎng)站目標用戶的瀏覽器,渲染HTML文檔過程中,出現(xiàn)非預(yù)期腳本指令,并且被執(zhí)行時蘑辑,XSS就發(fā)生了。

XSS攻擊能做什么坠宴?

Cookie
攻擊者通過document.cookie訪問受害者與網(wǎng)站關(guān)聯(lián)的cookie以躯,然后傳送到攻擊者自己的服務(wù)器,接著從cookie中提取敏感信息啄踊,如Session ID。

Keylogging
攻擊者可以使用addEventListener方法注冊用于監(jiān)聽鍵盤事件的回調(diào)函數(shù)刁标,并且把所有用戶的敲擊行為發(fā)送到他自己的服務(wù)器颠通,這些敲擊行為可能記錄著用戶的敏感信息,比如密碼和信用卡密碼膀懈。

Phishing
攻擊者可以通過修改DOM在頁面上插入一個假的登陸框顿锰,也可以把表單的action屬性指向他自己的服務(wù)器地址,案后欺騙用戶提交自己的敏感信息启搂。

等等……

XSS攻擊類型

持續(xù)型XSS攻擊

惡意文本來源于網(wǎng)站的數(shù)據(jù)庫硼控。


持續(xù)型XSS攻擊流程原理

反射型XSS攻擊

惡意文本來源于受害者的請求。


反射型XSS攻擊流程原理

基于DOM的XSS攻擊

利用客戶端而不是服務(wù)端代碼漏洞發(fā)動攻擊胳赌。


基于DOM的XSS攻擊流程原理

常見輸入點

document.URL
document.URLUnencoded
document.location
document.referrer
document.cookie
window.location
window.name
xhr請求回來的數(shù)據(jù)
表單項的值

常見輸出點

直接輸出HTML內(nèi)容

document.write()
document.writeln()
document.body.innerHtml

直接修改DOM樹

document.forms[0].action 其他屬性集合也可以牢撼,例如src、href等
document.attachEvent()
document.create()
document.execCommand()
document.body 通過body訪問對象DOM
window.attachEvent()

替換document.URL

document.location
document.location.hostname
document.location.replace()
document.location.assign()
document.URL
window.navigate()

打開或修改新窗口

document.open()
window.open()
window.location
window.location.href
window.location.host
window.location.hostname

直接執(zhí)行腳本

eval()
window.execScript()
window.setInterval()
window.setTimeout()

常見繞過方法及實例

示例來源:XSS Challenges
XSS最基本的就是閉合標簽疑苫、可以跨域請求的方法熏版。后面就是繞過姿勢、同源和CSP之類的了捍掺。
一點一點來撼短,慌不要慌。

輸出點在標簽之間

關(guān)鍵: 閉合標簽挺勿,構(gòu)造新標簽曲横。
繞過姿勢:
<script src=””></script>
<img onerror="alert()" src= />

實例:

輸出點在標簽之間

關(guān)注一下GIF中用鼠標選中的部分。我們首先隨便輸入內(nèi)容search看看不瓶,發(fā)現(xiàn)源碼的變化禾嫉,輸出點在標簽之間。在這里輸出點為HTML標簽湃番。

本題Payload:

  1. 通過閉合標簽<b>構(gòu)造payload:
    </b><img onerror="alert(document.domain)" src= />

  2. 通過在html標簽內(nèi)使用JavaScript標簽構(gòu)造payload:
    <script>alert(document.domain)</script>

輸出點在標簽屬性內(nèi)

關(guān)鍵: 閉合引號

引號沒有被過濾時

繞過姿勢:
text" onclick="alert()" />

實例:

輸出點在標簽屬性內(nèi)_引號未被過濾

輸出點在HTML的input標簽的value屬性值中夭织。

本題Payload: nice" onclick="alert(document.domain)" />

引號被過濾時

繞過姿勢:
javascript:alert()

實例:

輸出點在標簽屬性內(nèi)_引號被過濾

輸出在HTML的a標簽的harf屬性值中,但是引號被過濾吠撮。

本題Payload: javascript:alert(document.domain)

注意: 當引號被過濾尊惰,并且輸出點在屬性中時讲竿,還可以使用src屬性添加外部JS腳本來實現(xiàn)彈框。

尖括號被過濾時

繞過姿勢:
在IE環(huán)境下弄屡,使用``讓我們自己設(shè)置的屬性逃逸出來题禀,不然會被當成字符串。
格式樣例: `` onclick=alert()

因為今天IE不知道為啥膀捷,瓦特了迈嘹,這一部分示例就不放了。具體應(yīng)該是在XSS Challenges的第12關(guān)全庸。

關(guān)鍵字被過濾時

繞過姿勢:

  1. 把被繞過的關(guān)鍵字中的其中一個字母進行hex轉(zhuǎn)義秀仲;
  2. 在被過濾的關(guān)鍵字中間插入hex轉(zhuǎn)義后的不可見字符,例如制表符壶笼、空格等神僵。

實例:

輸出點在標簽屬性內(nèi)_關(guān)鍵字被過濾

on開頭的動作、script關(guān)鍵字覆劈、style關(guān)鍵字都被過濾保礼,轉(zhuǎn)義關(guān)鍵字中其中一個字符來實現(xiàn)彈框。

本題Payload: "><a href=javascript:alert(document.domain)>test</a>

今天也是莫得技術(shù)责语,莫得頭發(fā)炮障,還更不完內(nèi)容的白小胖。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末坤候,一起剝皮案震驚了整個濱河市胁赢,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌铐拐,老刑警劉巖徘键,帶你破解...
    沈念sama閱讀 211,042評論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異遍蟋,居然都是意外死亡吹害,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 89,996評論 2 384
  • 文/潘曉璐 我一進店門虚青,熙熙樓的掌柜王于貴愁眉苦臉地迎上來它呀,“玉大人,你說我怎么就攤上這事棒厘∽荽” “怎么了?”我有些...
    開封第一講書人閱讀 156,674評論 0 345
  • 文/不壞的土叔 我叫張陵奢人,是天一觀的道長谓媒。 經(jīng)常有香客問我,道長何乎,這世上最難降的妖魔是什么句惯? 我笑而不...
    開封第一講書人閱讀 56,340評論 1 283
  • 正文 為了忘掉前任土辩,我火速辦了婚禮,結(jié)果婚禮上抢野,老公的妹妹穿的比我還像新娘拷淘。我一直安慰自己,他們只是感情好指孤,可當我...
    茶點故事閱讀 65,404評論 5 384
  • 文/花漫 我一把揭開白布启涯。 她就那樣靜靜地躺著,像睡著了一般恃轩。 火紅的嫁衣襯著肌膚如雪结洼。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,749評論 1 289
  • 那天补君,我揣著相機與錄音,去河邊找鬼昧互。 笑死,一個胖子當著我的面吹牛伟桅,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播溃列,決...
    沈念sama閱讀 38,902評論 3 405
  • 文/蒼蘭香墨 我猛地睜開眼劲厌,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了听隐?” 一聲冷哼從身側(cè)響起补鼻,我...
    開封第一講書人閱讀 37,662評論 0 266
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎雅任,沒想到半個月后风范,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,110評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡沪么,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,451評論 2 325
  • 正文 我和宋清朗相戀三年硼婿,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片禽车。...
    茶點故事閱讀 38,577評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡寇漫,死狀恐怖刊殉,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情猪腕,我是刑警寧澤冗澈,帶...
    沈念sama閱讀 34,258評論 4 328
  • 正文 年R本政府宣布,位于F島的核電站陋葡,受9級特大地震影響亚亲,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜腐缤,卻給世界環(huán)境...
    茶點故事閱讀 39,848評論 3 312
  • 文/蒙蒙 一捌归、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧岭粤,春花似錦惜索、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,726評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至虎囚,卻和暖如春角塑,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背淘讥。 一陣腳步聲響...
    開封第一講書人閱讀 31,952評論 1 264
  • 我被黑心中介騙來泰國打工圃伶, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人蒲列。 一個月前我還...
    沈念sama閱讀 46,271評論 2 360
  • 正文 我出身青樓窒朋,卻偏偏與公主長得像,于是被迫代替她去往敵國和親蝗岖。 傳聞我的和親對象是個殘疾皇子侥猩,可洞房花燭夜當晚...
    茶點故事閱讀 43,452評論 2 348

推薦閱讀更多精彩內(nèi)容

  • 2018-07-13 接觸保險的這段時間以來,很多朋友咨詢抵赢,首先給到的建議就是規(guī)劃一個全面方案拭宁,包括重疾,意外瓣俯,醫(yī)...
    AIA何鈺銘閱讀 381評論 0 0
  • 愛是什么彩匕?愛僅僅是一個條件和背景腔剂。我們都知道動物也愛它自己的孩子,我們知道動物對自己孩子的愛驼仪,可能在某種程度上要...
    VanAllen閱讀 359評論 0 0
  • 一位朋友正在坐月子,打電話來跟我吐槽湾碎。 她吐槽的不是別人宙攻,是她的親媽。 別人坐月子都是婆婆照顧介褥。親媽照顧座掘,應(yīng)該是更...
    清風朗月7204閱讀 329評論 0 0
  • 不僅僅是戲劇帶有戲劇性,故事在它的發(fā)展過程中也摻雜著戲劇的因子柔滔。你能說牛郎和織女的那段姻緣沒有老牛的功勞溢陪?你能說梁...
    三石與三心閱讀 170評論 0 0
  • 寫這篇文的時候是2018年六一兒童節(jié),我坐在車后座睛廊,看著窗外匆匆劃過的綠色形真,音樂播放器里悠悠然地傳出玄子的《舍不得...
    鹿小語閱讀 348評論 0 1