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”

  • 相关阅读:
    Centos7升级gcc版本方法之一使用scl软件集
    JMeter的使用——ApacheJMeterTemporaryRootCA.crt的用法
    JavaWeb学习记录(十九)——开发JSTL自定义标签
    JavaWeb学习记录(二十二)——模式字符串与占位符
    JavaWeb学习记录(二十一)——国际化处理
    JavaWeb学习记录(二十六)——在线人数统计HttpSessionListener监听实现
    JavaWeb学习记录(二十五)——权限管理总结
    JavaWeb学习记录(二十四)——获取插入数据后,自动生成的id值
    JavaWeb学习记录(二十七)——定时发送邮件ServletContextListener监听实现
    JavaWeb学习记录(二十三)——文件上传与下载
  • 原文地址:https://www.cnblogs.com/yuzly/p/10687143.html
Copyright © 2011-2022 走看看