bWAPP靶场之OS Command Injection(+Blind)

一、普通注入

0x00 练习过程
核心代码

<?php
    if(isset($_POST["target"]))
    {
        $target = $_POST["target"];
        if($target == "")
        {
            echo "<font color=\"red\">Enter a domain name...</font>";
        }
        else
        {
            echo "<p align=\"left\">" . shell_exec("nslookup  " . commandi($target)) . "</p>";
        }
    }
    ?> 

从代码中我们可以知道输入的targetshell_exec()函数中直接lookup然后输出
在这里插入图片描述
low等级不对输入的参数进行过滤,直接加就行
payload:www.nsa.gov;whoami
在这里插入图片描述
2.medium
;不行,查看源码可得
在这里插入图片描述
函数过滤了&,但是没有对|过滤
在这里插入图片描述
3.high
在这里插入图片描述
通过escapeshellcmd()函数对参数进行转义。
反斜线(\)会在以下字符之前插入: &#;`|*?~<>^()[]{}$, \x0A 和 \xFF。 ’ 和 " 仅在不配对儿的时候被转义。 在 Windows 平台上,所有这些字符以及 % 和 ! 字符都会被空格代替。

二、盲注

0x00 前言
原谅我太菜了,第一次听命令注入的盲注类型。。。
0x01 练习过程
1.low
只ping一个正常的ip地址,反应时长为130ms
在这里插入图片描述
拼接了其他正常命令的注入,用时140ms
在这里插入图片描述
拼接了其他不正常命令的注入,用时140ms

在这里插入图片描述
0x02 结语
盲注,就是注入后页面不会返回信息,但是可以根据其他地方的区别来判断是否注入成功,get it

猜你喜欢

转载自blog.csdn.net/syy0201/article/details/89028744
今日推荐