[BUUCTF 2018]Online Tool -wp

博客内容探讨了在BUUCTF 2018中遇到的一个在线工具,该工具涉及代码审计,尤其是关于PHP的escapeshellarg()和escapeshellcmd()函数的安全问题。通过示例展示了如何利用这些函数的漏洞执行额外的命令,如nmap扫描,并详细解释了参数注入的原理。最终,通过上传一句话木马并找到上传路径,成功访问到了目标文件,从而找到了flag。
摘要由CSDN通过智能技术生成

在这里插入图片描述
打开网页可以看到代码,进行代码审计

$sandbox = md5("glzjin". $_SERVER['REMOTE_ADDR']);
    echo 'you are in sandbox '.$sandbox;
    @mkdir($sandbox);
    chdir($sandbox);

获取你的ip,然后进行加密,把MD5值输出,然后以这个值创建一个目录
在这里插入图片描述尝试一下127.0.0.1 ,发现调用nmap对输入的ip进行扫描

$host = $_GET['host'];
    $host = escapeshellarg($host);
    $host = escapeshellcmd($host);
    echo system("nmap -T5 -sT -Pn --host-timeout 2 -F ".$host);

escapeshellarg()
1.确保用户只传递一个参数给命令
2.用户不能指定更多的参数一个
3.用户不能执行不同的命令

escapeshellcmd()
1.确保用户只执行一个命令
2.用户可以指定不限数量的参数
3.用户不能执行不同的命令

127.0.0.1; ls
分号后面的命令就不会执行

查一下两个函数的漏洞

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值