当前位置: 首页> 娱乐> 明星 > 荔枝fm入口_dreamweaver序列号免费_东莞网站推广优化公司_西安seo按天收费

荔枝fm入口_dreamweaver序列号免费_东莞网站推广优化公司_西安seo按天收费

时间:2025/7/10 18:15:30来源:https://blog.csdn.net/qq_39673370/article/details/146245545 浏览次数:0次
荔枝fm入口_dreamweaver序列号免费_东莞网站推广优化公司_西安seo按天收费

本题源于

  • HITCON2017 babyfirst-revenge

主要是利用 \ 可以拼接命令, ls可以列出文件, 从而通过自定义文件名, 并拼接文件名, 来实现传入字符限制长度RCE

源码分析

  • $sandbox = '/www/sandbox/' . md5("orange" . $_SERVER['REMOTE_ADDR']);
    • $_SERVER['REMOTE_ADDR']); 获取用户IP
    • 然后根据用户IP, 创建一个字符串
  • @mkdir($sandbox);
    • 根据上文的 $sandbox,创建一个文件夹
  • @chdir($sandbox);
    • 进入该文件夹
  • 这里是为了保证用户在空文件夹下运行命令, 并且每个用户独立
  • 然后就是判断 GET 请求是否传入 cmd 参数, 如果有的话就是否小于等于5个字符
    • 如果是的话, 就使用 exec 执行命令
  • 而如果 GET 请求传入 reset 参数就执行 '/bin/rm -rf ' . $sandbox , 删除用户文件夹

解题分析(解题前, 建议自己现在终端尝试)

  • 首先要注意的是, 这里的执行命令函数不再是system(), 而是 exec()
    • 这个函数可以执行系统命令, 但是并不会把命令结果直接输出
    • 所以这个时候就要想能不能写入木马, 或者执行命令反弹Shell
      • 在写入木马的话, 我们终端是处于一个 “沙盒” 的文件夹中, 想要通过网页服务访问到里面的木马, 似乎有点难
      • 所以本题还是想办法 反弹Shell
  • 在反弹Shell之前, 来学学一些 Linux 终端的小技巧
    • >创建文件
      • >a 创建一个名为 a 的文件
      sh-5.1# >a
      sh-5.1# ls
      a          exp.php    index.php
      
    • ls -t根据文件最后的修改时间排序, 越晚修改的越前面
      • 如果没有 -t 参数的话, 会默认按照字典顺序排列
      • 还有这些排序方式
        • ls -S文件大小排序
        • ls -r 反转排序(从大到小)
        • ls -v自然顺序排序(file1 file2 file10 而不是 f
关键字:荔枝fm入口_dreamweaver序列号免费_东莞网站推广优化公司_西安seo按天收费

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: