瀏覽器常見攻擊方式(XSS和CSRF)

常見的瀏覽器攻擊分為兩種:

(1)第一種為XSS(跨站腳本攻擊)
(2)第二種為CSRF(跨站請求偽造)蝌戒。


1666833107698.jpg

(一)xss(跨站腳本攻擊)

定義:XSS 全稱是 Cross Site Scripting瓶颠,為了與“CSS”區(qū)分開來刺桃,故簡稱 XSS,翻譯過來就是“跨站腳本”瑟慈。XSS 攻擊是指黑客往 HTML 文件中或者 DOM 中注入惡意腳本,從而在用戶瀏覽頁面時(shí)利用注入的惡意腳本對用戶實(shí)施攻擊的一種手段借杰。

存在原因:

瀏覽器為了在安全和自由之間找到一個(gè)平衡點(diǎn)进泼。支持了頁面中的引用第三方資源和 跨域資源共享(CORS),這樣做帶來了很多安全問題乳绕,其中最典型的就是 XSS 攻擊洋措。

攻擊方式

存儲型 XSS 攻擊

1.首先黑客利用站點(diǎn)漏洞將一段惡意 JavaScript 代碼提交到網(wǎng)站的數(shù)據(jù)庫中;
2.然后用戶向網(wǎng)站請求包含了惡意 JavaScript 腳本的頁面;
3.當(dāng)用戶瀏覽該頁面的時(shí)候贺嫂,惡意腳本就會執(zhí)行

反射型 XSS 攻擊

1.惡意 JavaScript 腳本屬于用戶發(fā)送給網(wǎng)站請求中的一部分雁乡。
2.隨后網(wǎng)站又把惡意 JavaScript 腳本返回給用戶。
3.惡意 JavaScript 腳本就可以在用戶頁面中被執(zhí)行

基于 DOM 的 XSS 攻擊

基于 DOM 的 XSS 攻擊是不牽涉到頁面 Web 服務(wù)器的踱稍。黑客通過各種手段將惡意腳本注入用戶的頁面中,比如通過網(wǎng)絡(luò)劫持在頁面?zhèn)鬏斶^程中修改 HTML 頁面的內(nèi)容,這種劫持類型很多桥温,有通過 WiFi 路由器劫持的梁丘,有通過本地惡意軟件來劫持的,它們的共同點(diǎn)是在 Web 資源傳輸過程或者在用戶使用頁面的過程中修改 Web 頁面的數(shù)據(jù)氛谜。

危害

竊取 Cookie 信息

竊取到Cookie后,就可以在其他電腦上模擬用戶的登錄澳腹。

監(jiān)聽用戶行為

可以使用“addEventListener”接口來監(jiān)聽鍵盤事件

修改 DOM

可以通過修改 DOM 偽造假的登錄窗口杨何,用來欺騙用戶輸入用戶名和密碼等信息

防御

服務(wù)器對輸入腳本進(jìn)行過濾或轉(zhuǎn)碼

充分利用 CSP

實(shí)施嚴(yán)格的 CSP 可以有效地防范 XSS 攻擊,具體來講 CSP 有如下幾個(gè)功能:

1.限制加載其他域下的資源文件
2.禁止向第三方域提交數(shù)據(jù)羊娃,這樣用戶數(shù)據(jù)也不會外泄埃跷;
3.禁止執(zhí)行內(nèi)聯(lián)腳本和未授權(quán)的腳本;
4.還提供了上報(bào)機(jī)制弥雹,這樣可以幫助我們盡快發(fā)現(xiàn)有哪些 XSS 攻擊,以便盡快修復(fù)問題挺智。

防止Cookie被盜用,使用 HttpOnly 屬性

使用 HttpOnly 標(biāo)記的 Cookie 只能使用在 HTTP 請求過程中,所以無法通過 JavaScript 來讀取這段 Cookie二鳄。

(二)CSRF

定義: CSRF 英文全稱是 Cross-site request forgery媒怯,是指黑客引誘用戶打開黑客的網(wǎng)站,在黑客的網(wǎng)站中扇苞,利用用戶的登錄狀態(tài)發(fā)起的跨站請求。簡單來講脖苏,CSRF 攻擊就是利用了用戶的登錄狀態(tài)定踱,并通過第三方的站點(diǎn)來做一些壞事。而且CSRF 攻擊并不需要將惡意代碼注入用戶的頁面崖媚,僅僅是利用服務(wù)器的漏洞和用戶的登錄狀態(tài)來實(shí)施攻擊

存在原因

利用了web中用戶身份驗(yàn)證的一個(gè)漏洞:簡單的身份驗(yàn)證只能保證請求發(fā)自某個(gè)用戶的瀏覽器畅哑,卻不能保證請求本身是用戶自愿發(fā)出的。

攻擊方式

自動發(fā)起 Get 請求
自動發(fā)起 POST 請求
引誘用戶點(diǎn)擊鏈接

這幾種攻擊方式的前提

目標(biāo)站點(diǎn)一定要有 CSRF 漏洞荠呐;
用戶要登錄過目標(biāo)站點(diǎn),并且在瀏覽器上保持有該站點(diǎn)的登錄狀態(tài)濒募;
需要用戶打開一個(gè)第三方站點(diǎn)圾结,可以是黑客的站點(diǎn),也可以是一些論壇筝野。

危害

利用登陸態(tài)歇竟,可以做任何你登陸某網(wǎng)站后的操作,例如轉(zhuǎn)賬焕议,更改信息等等

防御

充分利用好 Cookie 的 SameSite 屬性

Cookie 的SameSite屬性用來限制第三方 Cookie,從而減少安全風(fēng)險(xiǎn)唤锉。他可以設(shè)置三個(gè)值
1.Strict
瀏覽器會完全禁止第三方 Cookie,跨站點(diǎn)時(shí)窿祥,任何情況下都不會發(fā)送 Cookie。換言之嗤瞎,只有當(dāng)前網(wǎng)頁的 URL 與請求目標(biāo)一致听系,才會帶上 Cookie。
2.Lax
在跨站點(diǎn)的情況下Lax規(guī)則稍稍放寬掉瞳,大多數(shù)情況也是不發(fā)送第三方 Cookie髓帽,但是導(dǎo)航到目標(biāo)網(wǎng)址的 Get 請求除外脑豹。包括鏈接,預(yù)加載請求瘩欺,GET 表單。而如果在第三方站點(diǎn)中使用 Post 方法歌粥,或者通過 img拍埠、iframe 等標(biāo)簽加載的 URL,這些場景都不會攜帶 Cookie枣购。
3.None
在任何情況下都會發(fā)送 Cookie 數(shù)據(jù),最新版本的Chrome中Lax變?yōu)槟J(rèn)設(shè)置棉圈。這時(shí),網(wǎng)站可以選擇顯式關(guān)閉SameSite屬性胎围,將其設(shè)為None。不過白魂,前提是必須同時(shí)設(shè)置Secure屬性(Cookie 只能通過 HTTPS 協(xié)議發(fā)送),否則無效冒版。

驗(yàn)證請求的來源站點(diǎn)
根據(jù)HTTP 請求頭中的 Referer 和 Origin 屬性在服務(wù)器端驗(yàn)證請求來源的站點(diǎn)逞姿。Referer和Origin 都是 HTTP 請求頭中的一個(gè)字段,

1.Referer記錄了該 HTTP 請求的來源地址续室。
2.Origin屬性只包含了域名信息谒养,并沒有包含具體的 URL 路徑。
3.服務(wù)器的策略是優(yōu)先判斷 Origin买窟,如果請求頭中沒有包含 Origin 屬性始绍,再根據(jù)實(shí)際情況判斷是否使用 Referer 值瞳购。
CSRF Token
1.在瀏覽器向服務(wù)器發(fā)起請求時(shí)学赛,服務(wù)器生成一個(gè) CSRF Token吞杭。CSRF Token 其實(shí)就是服務(wù)器生成的字符串,然后將該字符串植入到返回的頁面中芽狗。
2.在瀏覽器端如果要發(fā)起某些請求,那么需要帶上頁面中的 CSRF Token曼月,然后服務(wù)器會驗(yàn)證該 Token 是否合法柔昼。如果是從第三方站點(diǎn)發(fā)出的請求,那么將無法獲取到 CSRF Token 的值聪姿,所以即使發(fā)出了請求,服務(wù)器也會因?yàn)?CSRF Token 不正確而拒絕請求末购。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末盟榴,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子擎场,更是在濱河造成了極大的恐慌,老刑警劉巖宅静,帶你破解...
    沈念sama閱讀 207,248評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件站欺,死亡現(xiàn)場離奇詭異,居然都是意外死亡矾策,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,681評論 2 381
  • 文/潘曉璐 我一進(jìn)店門逃糟,熙熙樓的掌柜王于貴愁眉苦臉地迎上來榄鉴,“玉大人蛉抓,你說我怎么就攤上這事∈患桑” “怎么了笑跛?”我有些...
    開封第一講書人閱讀 153,443評論 0 344
  • 文/不壞的土叔 我叫張陵,是天一觀的道長几苍。 經(jīng)常有香客問我陈哑,道長伸眶,這世上最難降的妖魔是什么刽宪? 我笑而不...
    開封第一講書人閱讀 55,475評論 1 279
  • 正文 為了忘掉前任,我火速辦了婚禮嘴秸,結(jié)果婚禮上庇谆,老公的妹妹穿的比我還像新娘。我一直安慰自己岩四,他們只是感情好哥攘,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,458評論 5 374
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著耕姊,像睡著了一般栅葡。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上欣簇,一...
    開封第一講書人閱讀 49,185評論 1 284
  • 那天熊咽,我揣著相機(jī)與錄音,去河邊找鬼横殴。 笑死,一個(gè)胖子當(dāng)著我的面吹牛衫仑,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播文狱,決...
    沈念sama閱讀 38,451評論 3 401
  • 文/蒼蘭香墨 我猛地睜開眼瞄崇,長吁一口氣:“原來是場噩夢啊……” “哼到踏!你這毒婦竟也來了尚猿?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,112評論 0 261
  • 序言:老撾萬榮一對情侶失蹤伴榔,失蹤者是張志新(化名)和其女友劉穎庄萎,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體援奢,經(jīng)...
    沈念sama閱讀 43,609評論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡忍捡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,083評論 2 325
  • 正文 我和宋清朗相戀三年砸脊,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片凌埂。...
    茶點(diǎn)故事閱讀 38,163評論 1 334
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡瞳抓,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出孩哑,到底是詐尸還是另有隱情,我是刑警寧澤叙淌,帶...
    沈念sama閱讀 33,803評論 4 323
  • 正文 年R本政府宣布愁铺,位于F島的核電站闻鉴,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏孟岛。R本人自食惡果不足惜督勺,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,357評論 3 307
  • 文/蒙蒙 一智哀、第九天 我趴在偏房一處隱蔽的房頂上張望荧恍。 院中可真熱鬧,春花似錦送巡、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,357評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至洲押,卻和暖如春圆凰,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背专钉。 一陣腳步聲響...
    開封第一講書人閱讀 31,590評論 1 261
  • 我被黑心中介騙來泰國打工跃须, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人菇民。 一個(gè)月前我還...
    沈念sama閱讀 45,636評論 2 355
  • 正文 我出身青樓第练,卻偏偏與公主長得像阔馋,于是被迫代替她去往敵國和親娇掏。 傳聞我的和親對象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,925評論 2 344

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