精品国产一级在线观看,国产成人综合久久精品亚洲,免费一级欧美大片在线观看

小松鼠的黑魔法-XSS 利用

責任編輯:editor007

2014-12-30 17:41:49

摘自:0x_Jin

那么攻擊者便可以利用Cookie進入到網站后臺,進一步在后臺發現SQL注入文件上傳等漏洞 拿下WebShell。   從上邊的圖中可以看出當有人通過內網IP訪問時,暴露了內網IP以及端口號,收集著為下一步掃描端口做準備。

目前XSS漏洞普遍存在,但是所玩出的花樣招式并不多。希望這這個議題能夠起到拋磚引玉的作用吸引更多的人分享有意思的玩法。

議題介紹一些XSS的基本應用以及進階玩法,比如XSS探測環境,釣魚,攻擊內網這些非常有趣的玩法。讓大家不再僅僅局限于拿個Cookie進后臺。因為一旦Cookie存在HttpOnly屬性或者后臺做了訪問控制等,就沒的玩了 此議題希望能改變目前的這種狀態。

議題前半部分更多是介紹玩法以及玩法的原理,后半部分便是結合實際的例子來給大家演示下這些玩法到底是如何去玩的有多么的有意思。

1.Xss的多種利用方式

t01f72d1199826f3c31.jpg

  1.1 XSS獲取觸發頁面以及Cookie等敏感信息

如果Cookie的關鍵字段沒有使用HttpOnly , 后臺訪問限制等防護手段。

那么攻擊者便可以利用Cookie進入到網站后臺,進一步在后臺發現SQL注入文件上傳等漏洞 拿下WebShell。

什么是關鍵字段?PHP的SESSION等用于驗證身份的Cookie字段。

t01ecdcbc7046d1a716.jpg

  1.2 利用JavaScript協議來做些有意思的事情

t017032f34057ef7a08.png

  為什么第一個iframe元素里會輸出XSS ? 而第二個iframe元素則不會?

t01ae1c624d21dd91a4.jpg

第一個iframe里能顯示h1標簽因為有返回值且不為undefined
問:那我們可以利用這個做些什么?

t01fc34417ce8c3aa4b.jpg

  利用可信任域的XSS來進行釣魚攻擊

t0121af802cd9556035.jpg

  1.3 XSS蠕蟲

大概流程圖

通過各種方式讓更多的人觸發到你的XSS,然后使受害者成為攻擊者如何去實現?

t01e492f7804ae23f36.jpg

  如果你用有一枚XSS后,這些將不再是你蠕蟲的障礙。

如何去實現?

t01fcc4653b57d035ba.jpg

  這樣的蠕蟲跟CSRF有什么區別?

t017b06e19789376fa1.jpg

如果你遇到一個點無需Token等驗證信息即可發表動態的話那么便可以使用CSRF來蠕蟲

案例:時光網前端禮包大放送 XSS+CSRF 各種刷轉發 回復 加關注

該如何去蠕蟲?

t0125290f84df2cada5.jpg

  1.4 劫持表單

1.它適用于哪些環境?

可被植入XSS代碼的頁面存在表單

擁有網站的控制權限卻解不開用戶密碼

2.該如何去劫持表單?

目前在長短短的xss庫中已擁有這個功能。

使用方法:xss.xform(表單對象,接受地址)

3.表單劫持的原理:

t01431e70913bca9376.jpg

  1.先獲得要劫持表單的action,target(為了不影響功能)

2.將當前表單的提交地址替換為我們的地址

3.當表單提交時先提交給我們,然后才提交給原本的地址

好處:在劫持到數據的同時,又不影響功能,可以正常登陸

Sogili XSS庫:http://pujun.li/xss.js

1.5 探測目標環境

有時候為了不盲目攻擊一個目標我們需要去獲得更多信息。比如:Flash版本 Java版本 操作系統 瀏覽器等等信息

1.為什么要這樣去做?

t01308ff1a3b7f67d60.jpg

  我們該如何去探測到目標的環境?

t01f4a8319892ee071f.jpg

雖然Navigator對象任何瀏覽器都支持,猶豫不是標準所以有的瀏覽器可能獲取不到某些信息

獲得flash版本 :http://jsbin.com/rukirayuca

獲得java版本 :http://jsbin.com/cabirudale

獲得插件列表 :http://jsbin.com/vejujatuxa

獲得插件列表2:http://jsbin.com/pebirixedo

t013b549c41c3bf29d9.jpg

  從UserAgent中又可以看出操作系統以及瀏覽器版本

1.6 XSS的內網應用

1.獲得內網IP:

獲得IP, 猜測下內網的范圍,為以后掃描內網的其他機器做準備。

t01db2a7c7aa7d80347.jpg

  如何做到瀏覽器獲得內網IP的?

Javascript : window.webkitRTCPeerConnection

t01d338b71f43a0fb7c.jpg

WebRTC在firefox上已有在線聊天的例子,雖然他最初不是為方便xss而生的可是他的一些API可以方便我們用XSS去做更多的事情。比如獲得內網IP。

WEBRTC主頁:http://www.webrtc.org/

2.掃描內網機器的開放端口之Web端口:

利用javascript的onload特性來做即可。

t01e450cfe0a6be3bdf.jpg

  2.掃描內網機器的開放端口之服務端口:

利用其他服務的協議以及私有協議來探測,比如FTP協議。

t01ac2d5ee37b4eb63a.jpg

當我們要探測21端口是否開放時便可以使用ftp協議,幾乎所有瀏覽器都支持它。

3.掃描內網機器的Web容器:

利用img的onload,這兒可以發散性思考一下 還有什么可以這樣做?

t012d6ab9ca8ecb27b3.jpg

  4.攻擊內網中的其他機器

前提:足夠多的路徑與POC

這樣我們便可以用利用一些cms的漏洞來攻擊內網機器,比如wordpress安裝后默認路徑是/wordpress

那么便可以用之前掃描得到的ip以及開放的端口配合上路徑去發動一些攻擊。

不是所有的漏洞都可以,得是一些可被利用的漏洞才行。比如命令執行,可以執行個反彈shell的命令。

比如getshell getshell后用js去請求驗證一下便可以知道成功否。

引用黑哥PPT中利用st2反彈shell的圖片:

t014ea008f45db7211e.jpg

  XSS Proxy

1.攻擊者直接訪問后臺時:

t018264e5b90c4b724b.jpg

  2.攻擊者用XSS Proxy訪問后臺時:

t01b7adac4f3a239e47.jpg

  5.XSS Proxy的原理

注:JS是客戶端腳本,能觸發你XSS的人,肯定是有權限訪問后臺的人。

t013dfaf7c8b9ab217a.jpg

  2.那些實際案例中的XSS

2.1 案例1:圖蟲網存儲型XSS + CSRF + Phishing 即使有httponly 照樣玩的飛起

t019ccfee3235134247.jpg

2.2 案例2:前程無憂(51job.com) 兩枚存儲型XSS + 蠕蟲 (html標簽外20字符加載js)

圍脖沒人轉發,露臉率不夠高?蠕蟲來幫你。

蠕動時:

t01f39999daeef086e7.png

  如何去蠕蟲?先模擬正常操作走一遍,同時抓包。

轉發微博時抓包:

t01eeda8232eca6b75f.png

  分析參數值:

Type 4 :代表轉發微博

Noticeid Replyid 代表微博ID

Content 代表轉發的內容

分析完后,便可以把我們要蠕

動的微博ID替換到Noticeid Replyid

然后用js來編寫ajax的代碼,使其蠕動

代碼該如何編寫?

t019d9ca4259c8b3da9.png

  Address為接受請求的地址。

Shuju 為修改后的POST數據包

然后定義一個函數,函數中創建了AJAX對象,并設置好了Content-Type

調用函數傳入地址以及數據包即可POST成功。

達到轉發微博的效果,轉發后別人點開微博,又會中招,傳遞給其他人

2.3 案例3:我是如何通過一個 XSS 探測搜狐內網掃描內網并且蠕動到前臺的!(附帶各種 POC)

Cookie獲取不全(因為有httpOnly) 后臺放在內網,這樣的XSS點你還會繼續下去么?

反正試試又不會懷孕,干嘛不試呢?

Sohu出了自媒體系統,于是我便去測了下XSS,然后得到了以下信息。

t019050dc2460d09a38.png

  從上圖中,我們得到了什么?

url,Ping這個Url發現顯示未知主機,然后便意識到肯定是一臺內網主機。

UserAgent,從UserAgent中看出了是WIN7+Chrome30(如果是存在漏洞的瀏覽器可以直接先弄員工機)

得知到這些信息后對我們有什么用處?起碼我們知道他們的員工是使用的現代瀏覽器了,而不是老掉牙的IE6,現在便可以來大干一場了。

1.獲得內網IP:

t017917aba2f588ee37.png

  最后得到員工內網IP段:10.7.8.1 – 10.7.8.255

可以干什么?

員工段應該是辦公網段可以嘗試一些硬件設備的漏洞,比如TP-link的csrf 修改DNS。等等之類的,發揮自己的想象….

內網XSS中,那些經常方便我們的”通病”:

t011a5ca385ff11e567.png

  在內網中有人通過域名訪問,有人通過內網IP訪問。
 

從上邊的圖中可以看出當有人通過內網IP訪問時,暴露了內網IP以及端口號,收集著為下一步掃描端口做準備。
 

像sohu這種大公司內網肯定劃分的比較嚴格的,服務器肯都放在一個網段中,所以只需要對 10.10.125.195網段掃描下常開的端口,80 8080 以及暴露的8087。
  

為什么不多掃描點端口呢?因為掃描太多端口,會導致網頁比較卡 甚至網頁崩潰

掃描內網服務器網段所開放的WEB端口:

t01af5de8bc83b3f02c.jpg

可以看到上邊的圖中每個ip都探測了3個端口,onload事件中的端口,也對應了需要探測端口。

運行后的結果:

t01e4137b7267ffbbc4.png

  整理去重后的結果:

t01f5576d6a309f2421.png

  得到了內網Web服務器所開放的端口后,我們該干嘛?

收集一些CMS,框架的默認路徑,以及POC,下一步可以嘗試利用POC去反彈shell或Getshell。

比如:命令執行漏洞,例子有:struts2 Thinkphp Elasticsearch CVE-2014-3393 Cisco ASA Software遠程認證繞過漏洞……

引用黑哥PPT中的圖片

把收集到的ip,端口以及路徑集合在一塊去嘗試利用下POC,如下圖:

t01fee834cad92dcfb7.jpg

t014e2e40fc01f6b9bf.png

  如果上一步無法進行,那么便可以先試試找到個sql注入,文件上傳漏洞。

如何去做?可以先通過ajax的方式把后臺的一些網頁給爬下來,然后本地渲染找下漏洞可能存在點。

t01fe262906e6c02ffb.png

t011326585a0c566c12.png

  發送了了一個文章URL的ID參數帶單引號和不帶單引號兩個請求。

第二個請求加了個單引號報錯了,當時我以為有注入,高興壞了 后來發現根本就不是注入點。

現在陷入了困境,后臺不存在漏洞,又沒有足夠的路徑以及POC,該怎么辦?

操起老行當,釣魚:

在爬網站后臺的時候特地去爬了下登陸界面,為釣魚做準備。

t01e4ef09ebf508ec88.png

由于不細致也可能是自己太貪心想多釣到點賬號,沒有設置只出現一次,導致后來被發現。

t01e50f0d4502ceee33.png

PPT中的那些例子
獲得flash版本 http://jsbin.com/rukirayuca
獲得java版本 http://jsbin.com/cabirudale
獲得插件列表 http://jsbin.com/vejujatuxa
獲得內網IP http://jsbin.com/riyisavura
掃描內網端口 http://jsbin.com/ziwununivo
掃描WEB容器 http://jsbin.com/piwemaquwa
掃描FTP端口 http://jsbin.com/kulahicide

鏈接已復制,快去分享吧

企業網版權所有?2010-2024 京ICP備09108050號-6京公網安備 11010502049343號

  • <menuitem id="jw4sk"></menuitem>

    1. <form id="jw4sk"><tbody id="jw4sk"><dfn id="jw4sk"></dfn></tbody></form>
      主站蜘蛛池模板: 阿城市| 商水县| 浦江县| 扶沟县| 吴江市| 洛宁县| 象州县| 贺州市| 九寨沟县| 东乌珠穆沁旗| 嵩明县| 宜良县| 凤山县| 安溪县| 客服| 高清| 会泽县| 巨鹿县| 咸丰县| 陈巴尔虎旗| 昆山市| 博乐市| 布拖县| 壶关县| 漯河市| 屏山县| 白河县| 和静县| 搜索| 馆陶县| 邯郸县| 通江县| 湘潭市| 绥中县| 洛南县| 大兴区| 临澧县| 平昌县| 剑川县| 喜德县| 广南县|