摘要:為了加深自己對攻擊的理解,特意嘗試了一下,并把整個過程記錄下來。因為標(biāo)簽有問題,在后臺返回來的標(biāo)簽在是存在的,但是并沒有執(zhí)行還請各位大佬多多指正
XSS:跨站腳本(Cross-site scripting)
攻擊手段和目的:
攻擊者使被攻擊者在瀏覽器中執(zhí)行腳本后,如果需要收集來自被攻擊者的數(shù)據(jù)(如cookie或其他敏感信息),可以自行架設(shè)一個網(wǎng)站,讓被攻擊者通過JavaScript等方式把收集好的數(shù)據(jù)作為參數(shù)提交,隨后以數(shù)據(jù)庫等形式記錄在攻擊者自己的服務(wù)器上。
為了加深自己對XSS攻擊的理解,特意嘗試了一下,并把整個過程記錄下來。
攻擊過程:
①、客戶端收集用戶數(shù)據(jù)(如留言、發(fā)布文章功能)
②、攻擊者將留言內(nèi)容寫入了可執(zhí)行的JavaScript代碼
③、將上面的數(shù)據(jù)未經(jīng)處理直接存入數(shù)據(jù)庫
④、其他用戶查看該網(wǎng)站,看了上面包含了可執(zhí)行的JavaScript代碼的文章和評論
⑤、其他用戶就會在瀏覽器客戶端執(zhí)行攻擊者注入的JavaScript代碼
本次試驗用到如下技術(shù):
①、(客戶端)原生Ajax請求
②、(服務(wù)端)thinkphp,為了試驗方便,不使用數(shù)據(jù)庫,直接返回數(shù)據(jù)
③、 Cors跨域
XSS測試
在這里我使用的是get請求
其中請求地址http://vueapp.com 是我自定義的地址,使用Apache配置
由于這里涉及到跨域問題(出于瀏覽器安全的同源策略,協(xié)議、域名、端口號任一不同都屬于跨域)
Failed to load http://vueapp.com/: No "Access-Control-Allow-Origin" header is present on the requested resource. Origin "null" is therefore not allowed access.
我的解決方法是CORS
在后端的接口中添加這么一行代碼
header("Access-Control-Allow-Origin:*"); // 允許所有訪問源
返回的數(shù)據(jù)是:
$this->ajaxReturn(array("status" => 0,"info" => ""));
這里我們利用img標(biāo)簽的onerrer屬性來執(zhí)行JS代碼,所以src屬性填一個訪問不了就可以觸發(fā)onerrer了
開始測試點擊 XSS測試 按鈕,結(jié)果如圖(谷歌瀏覽器):
這就是一個最最最簡單的XSS攻擊案例
這次我們?nèi)ヒ粋€網(wǎng)站盜用cookie
可以看到所有的cookie信息都在這里了
*發(fā)現(xiàn)的問題為什么我不直接用script標(biāo)簽,而用img的onerror屬性。
因為script標(biāo)簽有問題,在后臺返回來的script標(biāo)簽在dom是存在的,但是并沒有執(zhí)行
還請各位大佬多多指正
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/101135.html
摘要:之前就對有所耳聞,不過昨天在學(xué)習(xí)深入淺出過程中,才深入了解到攻擊的原理,于是找到那本很早就想看的前端黑客技術(shù)解密,找到跨站攻擊腳本章節(jié),于是有了下面這個簡單的攻擊實驗。 之前就對XSS有所耳聞,不過昨天在學(xué)習(xí)《深入淺出nodejs》過程中,才深入了解到XSS攻擊的原理,于是找到那本很早就想看的《web前端黑客技術(shù)解密》,找到 跨站攻擊腳本XSS 章節(jié),于是有了下面這個簡單的XSS攻擊實...
摘要:之前就對有所耳聞,不過昨天在學(xué)習(xí)深入淺出過程中,才深入了解到攻擊的原理,于是找到那本很早就想看的前端黑客技術(shù)解密,找到跨站攻擊腳本章節(jié),于是有了下面這個簡單的攻擊實驗。 之前就對XSS有所耳聞,不過昨天在學(xué)習(xí)《深入淺出nodejs》過程中,才深入了解到XSS攻擊的原理,于是找到那本很早就想看的《web前端黑客技術(shù)解密》,找到 跨站攻擊腳本XSS 章節(jié),于是有了下面這個簡單的XSS攻擊實...
摘要:跨站腳本攻擊,縮寫為。這就是攻擊最簡單的一個案例。漏洞產(chǎn)生的原因是攻擊者注入的數(shù)據(jù)反映在響應(yīng)中。而且富文本攻擊的防御相對比較麻煩。默認配置下不允許執(zhí)行內(nèi)聯(lián)代碼塊內(nèi)容,內(nèi)聯(lián)事件,內(nèi)聯(lián)樣式,以及禁止執(zhí)行和。 跨站腳本攻擊(Cross Site Scripting),縮寫為XSS。惡意攻擊者往Web頁面里插入惡意javaScript代碼,當(dāng)用戶瀏覽該頁之時,嵌入其中Web里面的javaScr...
閱讀 2033·2023-04-25 22:50
閱讀 2845·2021-09-29 09:35
閱讀 3401·2021-07-29 10:20
閱讀 3170·2019-08-29 13:57
閱讀 3369·2019-08-29 13:50
閱讀 3045·2019-08-26 12:10
閱讀 3545·2019-08-23 18:41
閱讀 2646·2019-08-23 18:01