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 总结

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

  • 相关阅读:
    svn提交代码出错
    正则表达式小试
    基于AT91RM9200的ARM Linux的移植方法
    Byte、bit、bps、位、字、字节/包 ,报文,帧
    时间片调度在单片机中的运用
    单片机计数器T0作定时技术(记时器设计)
    fastboot 烧写内核
    菜鸟吧网站
    理解单片机中的计数器和定时器
    svn命令总结(原创)
  • 原文地址:https://www.cnblogs.com/kanghongsec/p/5201801.html
Copyright © 2011-2022 走看看