zoukankan      html  css  js  c++  java
  • dvwa全等级命令行注入

    1、LOW等级命令行注入

    在低等级的命令行注入没有任何的过滤,通过查看源码可以得知,

    step1:使用ping 127.0.0.1&&dir可以得出如下结果

    step2:使用 ping127.0.0.1&net user可以得到如下运行结果

    step3:使用ping 127.0.0.1|dir可以得到如下结果

    ps:在这里有必要说一下逻辑运算符“&”“|”都是什么意思

    &&:代表首先执行命令a在执行命令b,但是前提条件是命令a执行正确才会执行命令b,在a执行失败的情况下不会执行b命令。所以又被称为短路运算符。

    &:代表首先执行命令a在执行命令b,如果a执行失败,还是会继续执行命令b。也就是说命令b的执行不会受到命令a的干扰,在执行效率上来说“&&”更加高效。

    ||:代表首先执行a命令在执行b命令,如果a命令执行成功,就不会执行b命令,相反,如果a命令执行不成功,就会执行b命令。

    |:代表首先执行a命令,在执行b命令,不管a命令成功与否,都会去执行b命令。

    2、medium等级命令行注入

    medium等级的命令行注入增加了一些过滤,通过查看源码可以看到,他将&&和:过滤成了空字符,但是他并没有过滤“|”,所以我们依然可以进行注入。

    step1:使用命令ping 127.0.0.1|net user可以得到如下结果

    step2:使用ping 127.0.0.1 &dir可以得到如下结果

    step3:还有很多方法可以进行medium等级的命令行注入,比如“||”操作(使a命令执行失败),

    “&;”"|;""||;"......

    3、high等级命令行注入

    high等级的命令行注入过滤的东西比较多,但是他在过滤的时候有bug

    step1:使用命令ping 127.0.0.1|dir可以得到如下结果

  • 相关阅读:
    Python正课132 —— Vue 进阶5
    Python正课131 —— Vue 进阶4
    Python正课130 —— Vue 进阶3
    logging模块
    作业20
    suprocess模块
    configparser模块
    hashlib模块
    shutil模块
    序列化模块
  • 原文地址:https://www.cnblogs.com/pangsong/p/12203305.html
Copyright © 2011-2022 走看看