吾爱破解 - LCG - LSG |安卓破解|病毒分析|www.52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 317|回复: 4
收起左侧

[经验求助] PTE的反序列化漏洞求助!!急急!

[复制链接]
Amethyst2023 发表于 2023-12-1 10:20
25吾爱币
<?php
error_reporting(0);
include "key4.php";
$TEMP = "Whatever is worth doing is worth doing well.";
$str = $_GET['str'];
if (unserialize($str) === $TEMP)
{
    echo "$key4";
}
show_source(__FILE__);
一个反序列化漏洞,
别人答案是这样的http://10.1.10.12:34074/start/index.php?str=s:44:"Whatever is worth doing is worth doing well.";
有没有大佬解释一下 为啥最后要加上str=s:44:"Whatever is worth doing is worth doing well."就可以了?
这种题要啥技巧吗,或者是我需要补充哪些知识,
第一个讲明白的大佬得悬赏!谢谢!!

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

鸳鸯双栖蝶双飞 发表于 2023-12-1 11:48
参考下


在这个例子中,存在一个反序列化漏洞。这个漏洞是由于程序没有对传入的 `$str` 参数进行充分的安全检查,而是直接将其传递给 `unserialize()` 函数。攻击者可以利用这一点来执行任意代码。

别人提供的答案中的链接:

```
http://10.1.10.12:34074/start/index.php?str=s:44:"Whatever is worth doing is worth doing well.";
```

其中 `s:44:` 是 PHP 序列化的字符串类型标识符,它表示接下来的 44 个字符是一个字符串。紧随其后的是双引号括起来的句子 "Whatever is worth doing is worth doing well.",这与变量 `$TEMP` 的值相匹配。

当此 URL 被访问时,PHP 将解析查询字符串参数 `str` 的值,并将之传递给 `$_GET['str']`。接着在 if 语句中,`unserialize($_GET['str'])` 将返回一个字符串对象,该对象的值等于 `$TEMP` 的值。因此,if 条件满足,会输出 `$key4` 变量的值,这可能包含敏感信息或恶意代码。

这种题目的技巧主要在于理解 PHP 的序列化和反序列化机制,以及如何构造恶意输入以触发漏洞。以下是一些补充知识:

1. **PHP序列化**:PHP 提供了 `serialize()` 和 `unserialize()` 函数用于序列化和反序列化数据。序列化是将复杂的 PHP 数据结构(如数组、对象)转换为可以在数据库或其他地方存储和传输的格式。反序列化则是将序列化的数据恢复到原始的 PHP 数据结构。

2. **反序列化漏洞**:当应用不安全地使用 `unserialize()` 时,可能会导致反序列化漏洞。攻击者可以通过控制序列化数据的内容来操纵应用程序的行为,例如执行任意代码或获取敏感信息。

3. **魔术方法**:PHP 对象有一些特殊的方法,它们会在特定的情况下自动调用。例如,在反序列化过程中,如果类定义了 `__wakeup()` 方法,那么在反序列化之前就会调用这个方法。攻击者可以利用这些魔术方法实现代码注入。

4. **Gadget Chains**:在某些情况下,攻击者可能无法直接控制要反序列化的数据。这时他们需要寻找能够被利用的“gadgets”,即一系列可利用的对象和方法,通过组合它们来达到攻击的目的。

5. **安全编程实践**:为了防止此类漏洞,开发者应避免在不受信任的数据上使用 `unserialize()`。如果必须使用,应该确保数据来源可信,并且对数据进行严格的验证。此外,限制用户提交的数据长度也是一个有效的防御措施。

解决这类问题的关键是对 PHP 序列化和反序列化有深入的理解,以及熟悉常见的攻击技术。
 楼主| Amethyst2023 发表于 2023-12-1 15:08

大佬,主要是我觉得这样的题看了答案能照猫画虎,但是来个新的题我不知道啊,我应该学点啥知识点,之前没接触过这个
wh1teX3e 发表于 2024-4-12 17:21
yingzi4f 发表于 2024-4-12 17:58
学php代码审计,
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则 警告:本版块禁止灌水或回复与主题无关内容,违者重罚!

快速回复 收藏帖子 返回列表 搜索

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-5-4 21:14

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表