zoukankan      html  css  js  c++  java
  • 代码审计学习之反射型XSS

    0x01 基础介绍

    xss漏洞分类:一般来说分三种

    反射型XSS

    保存型XSS

    基于DOM的XSS

    今天先学习反射型xss:它通过给别人发送带有恶意脚本代码参数的URL,当URL地址被打开时,特有的恶意代码参数被HTML解析、执行。它的特点是非持久化,必须用户点击带有特定参数的链接才能引起。

    0x02 造成原因及利用

    一般来说,许多漏洞造成的原因都是因为对用户的输入太信任造成的,没有进行严谨的过滤,通常在代码审计的过程中,审计获取用户输入的函数或者操作如存储等等

    一、对变量直接输出

    例如:

    <?php
    echo$_GET['xss'];
    ?>

    二:$_SERVER变量参数
    $_SERVER['PHP_SELF']

    测试代码:

    <?php
    echo $_SERVER['PHP_SELF'];
    ?>

    弹窗:

    $_SERVER['HTTP_USER_AGENT']

    此函数作用是获取浏览器信息

    <?php
    echo $_SERVER['HTTP_USER_AGENT'];
    ?>

    运行结果:

    Mozilla/5.0 (Windows NT 10.0; WOW64; rv:42.0) Gecko/20100101 Firefox/42.0

    可通过火狐插件Modify headers 修改User-Agent:的内容就行了

    $_SERVER['HTTP_REFERER']

    这一个跟上一个差不多更改Referer就可以了

    $_SERVER['REQUEST_URI']

    此函数是获取url的内容的,而且会对特殊字符进行编码,此时必须用到php中的urldecode才能达到反射型xss的效果。

    有了urldecode()后:

    <?php
    echo urldecode($_SERVER['REQUEST_URI']);
    ?>

    0x03 总结

    知识学的不全,都是一些比较基础的东西,知道原理之后,后面会慢慢深入!

  • 相关阅读:
    css属性操作2(外边距与内边距<盒子模型>)
    css的属性操作1
    css伪类
    属性选择器二
    属性选择器1
    03_MySQL重置root密码
    02_Mysql用户管理之Navicat下载及安装
    18.扩散模型
    17.广播模型
    16.友谊悖论
  • 原文地址:https://www.cnblogs.com/kanghongsec/p/5201801.html
Copyright © 2011-2022 走看看