zoukankan      html  css  js  c++  java
  • DVWA-命令执行学习笔记

     DVWA-命令执行

    原理:

    web服务器没有对用户提交的数据进行严格的过滤,造成调用操作系统的命令或者在操作系统恶意拼接拼接命令,以达到攻击者的目的。

    1.将DVWA的级别设置为low

    1.2查看源代码,可以看到没有对参数做任何防御处理措施,直接进行执行

      

    1.3.点击command injection,尝试拼接命令(127.0.0.1&&dir),下图可以看到成功执行dir的命令说明存在命令执行漏洞,然后尝试拼接net user、ipcofig、netstat -ano等命令     #&& 第一个命令执行成功才会执行第二个命令

      

    1.4,随便输入然后用&&拼接命令,都不能执行,因为(&& 第一个命令执行成功才会执行第二个命令)

      

    1.5 尝试用&拼接命令  #&是不管第一个命令是否执行成功都会执行第二个命令

    127.0.0.1&&dir

      

    随便输入一个字符串然后用&拼接命令,下图可以看到成功执行第二个命令,这是因为&是不管第一个命令是否执行成功都会执行第二个命令

      

    1.6尝试用|拼接命令  #|(管道符)是只执行第二个命令

    下图可以看到只执行第二个命令,没有执行第一个命令

      

      

    2. 将DVWA的级别设置为medium

    2.1此时一些常规的拼接操作就不能实现命令执行漏洞了,查看源码,可以发现对参数进行了简单的处理:过滤&&和;

     

    2.2用&&拼接命令,可以看到返回错误信息,&&被过滤了

      

    2.3从DVWA的medium级别源码可以看到,对参数进行了一些简单的过滤,此时可以通过&或|或者根据过滤的字符进行组合等绕过防御

    2.3.1通过&拼接命令,绕过防御  也可以通过在&前敲空格,绕过防御

      

    2.3.2通过|拼接命令,绕过防御

      

    2.3.3通过防御过滤的字符进行组合,绕过防御

    127.0.0.1&&&dir

      

    127.0.0.1&;&ipconfig

      

    3.将DVWA的级别设置为High

    3.1查看源代码,可以看到首先对参数进行trim去除两边的空格,然后增加了过滤的黑名单

      

    3.2观察源代码可以看到过滤“|”时,是过滤”| ”,”|”后有个空格,此时可以通过简单的127.0.0.1|dir绕过

      

    4. 将DVWA的级别设置为impossible

    4.1查看源代码,可以看到先对参数使用stripslashes函数过滤掉反斜杠,然后使用explode函数将参数打散为数组,然后用is_numeric函数对数组中的每个参数进行判断,符合条件再把数组的参数进行拼接。对参数进行了严格的限制,因此不可能存在命令执行漏洞

      

    过滤敏感字符

    1.首先再DVWA的medium级别源码文件中,添加过滤条件(过滤whoami,net user等敏感字符),然后测试

      

    2.测试拼接whoami、net user命令,没有得到返回结果,说明字符被过滤

      

    3.尝试绕过敏感字符过滤

      

      

     

    解决乱码问题:

    在DVWA-masterdvwaincludes目录下找到dvwaPage.inc.php文件中所有的”charset=utf-8”,修改”charset=gb2312”

  • 相关阅读:
    C#
    Excel 中大量图片如何快速导出? 转载自:http://www.zhihu.com/question/20800948
    IE的F12开发人员工具不显示 转载自:http://blog.csdn.net/longyulu/article/details/8749705
    firefox ie 比较 relative path
    fiddler save files
    selenium3加载浏览器
    Linux安装PHP
    客户端级别的渲染分析工具 dynaTrace
    前端性能分析:分析百度和sogou
    Linux vi的基本操作
  • 原文地址:https://www.cnblogs.com/yuzly/p/10687143.html
Copyright © 2011-2022 走看看