当前位置: 首页 > article >正文

DEFCON CTF Write-up — de-jean-erative

背景DEF CON CTF 是全球最顶级的黑客竞赛之一被称为“黑客奥林匹克”。每年来自世界各地的顶级安全研究团队都会参加该比赛。比赛通常包含多个领域Binary ExploitationReverse EngineeringCryptographyWeb SecurityPwn / KernelAI / LLM exploitation近年新增在本题 de-jean-erative 中题目名称明显是一个双关词de-jean-erative从语言结构上看degenerative↓de jean erativeCTF 出题人通常会通过题名提示漏洞点。这里可能暗示1️⃣ 数据退化degeneration2️⃣ Jean → gene / generation3️⃣ 生成模型 / generative logic因此题目大概率与输入生成数据编码随机性退化序列生成有关。初始分析题目给出了一个服务nc challenge.server 31337连接后返回Welcome to De-Jean-erative EngineInput seed:输入任意字符串test返回Generated output:a1fbe9c920c1e3d0…显然该服务实现了某种 伪随机生成器PRNG。典型 CTF 思路seed → internal state → generator → output攻击目标通常是预测输出恢复内部状态反推出 seed获得 flag程序逆向题目同时提供了一个二进制de-jean-erative使用 file 查看ELF 64-bit LSB executable加载到 IDA / Ghidra。核心函数generate()反编译后伪代码uint64_t state;uint64_t gen(uint64_t input){state ^ input;state (state * 0x5DEECE66D 0xB) ((148)-1);return state 16;}看到这一行时很多人会立刻警觉0x5DEECE66D0xB48bit state这是一个经典 PRNGJava RandomJava Random() 的内部实现正是state (state * 25214903917 11) mod 2^48换算为十六进制25214903917 0x5DEECE66D11 0xB也就是说该题的随机数生成器完全复用了 Java Random。漏洞点Java Random 有一个著名弱点状态只有 48 bit同时输出state 16即输出 state 高 32 bit因此内部状态48bit输出32bit只需要 两个输出值 就可以恢复完整 state。数学关系s1 (s0 * A B) mod 2^48s2 (s1 * A B) mod 2^48其中A 0x5DEECE66DB 0xB输出为o1 s1 16o2 s2 16由于 lower 16 bits 丢失因此需要 暴力枚举 2^16。复杂度2^16 65536极小。恢复 PRNG 状态攻击步骤1️⃣ 获取两个输出o1o22️⃣ 枚举s1 (o1 16) guess3️⃣ 验证s2 (s1 * A B) mod 2^48是否满足s2 16 o2如果满足state recoveredExploit完整利用代码A 0x5DEECE66DB 0xBMASK (148) - 1def next_state(s):return (s * A B) MASKo1 output1o2 output2for guess in range(116):s1 (o1 16) | guesss2 next_state(s1)if (s2 16) o2: print(state found:, hex(s1)) break恢复 state 后即可预测所有未来随机数。获取 Flag服务逻辑if predicted_value secret_value:print(flag)因此只需1️⃣ 恢复 state2️⃣ 预测下一随机数3️⃣ 发送正确值示例Predicted: 0x9a73e4f2Server response:flag{java_random_is_not_random}为什么题名叫 de-jean-erative这里其实是一个很有趣的 CTF 梗。de-jean-erative实际上暗示de Java generative也就是“去 Java 化的生成器”换句话说题目核心是Java Random → degenerative randomnessPRNG 一旦被观测到输出就会迅速退化为 可预测状态。随机数不再随机。安全启示这道题的核心安全问题是弱 PRNG在现实世界中这类漏洞出现过很多次典型案例Android Bitcoin Wallet 漏洞Debian OpenSSL PRNG bugPHP mt_rand 预测安全建议1️⃣ 不要使用普通 PRNG 生成安全 token2️⃣ 使用 CSPRNG例如/dev/urandomgetrandom()libsodium总结这道题本质是一个 经典 PRNG state recovery attack。攻击链observe outputs↓recover internal state↓predict generator↓bypass security logic关键知识点Java Random 结构线性同余生成器 (LCG)状态恢复攻击PRNG 预测这类题目在顶级 CTF 中非常常见因为它训练的是一种核心能力从输出反推系统内部结构。

相关文章:

DEFCON CTF Write-up — de-jean-erative

背景 DEF CON CTF 是全球最顶级的黑客竞赛之一,被称为“黑客奥林匹克”。每年来自世界各地的顶级安全研究团队都会参加该比赛。 比赛通常包含多个领域: Binary Exploitation Reverse Engineering Cryptography Web Security Pwn / Kernel AI / LLM explo…...

计算机毕业设计springboot四川特色小吃管理系统 基于SpringBoot的巴蜀风味小吃数字化运营平台 基于SpringBoot的川渝美食文化传承与商业管理系统

计算机毕业设计springboot四川特色小吃管理系统29ji1c34 (配套有源码 程序 mysql数据库 论文) 本套源码可以在文本联xi,先看具体系统功能演示视频领取,可分享源码参考。 在数字经济蓬勃发展的当下,传统餐饮业正经历着深刻的数字化…...

计算机毕业设计springboot城市的地铁综合服务管理系统 基于SpringBoot的城市地铁一体化服务管理平台 城市轨道交通数字化运营与乘客服务系统

计算机毕业设计springboot城市的地铁综合服务管理系统hsluqa90 (配套有源码 程序 mysql数据库 论文) 本套源码可以在文本联xi,先看具体系统功能演示视频领取,可分享源码参考。随着城市化进程的不断加速,城市人口规模持续膨胀&…...

计算机毕业设计springboot大学生公寓管理系统 基于SpringBoot的高校学生宿舍信息化管理平台 基于SpringBoot的智慧校园住宿服务系统

计算机毕业设计springboot大学生公寓管理系统rm8571vv (配套有源码 程序 mysql数据库 论文) 本套源码可以在文本联xi,先看具体系统功能演示视频领取,可分享源码参考。 随着高校招生规模的不断扩大,学生宿舍管理工作面临着前所未有…...

CLI-Anything 全面解析:一行命令,为任意软件生成 Agent 接口

一句话说清楚CLI-Anything 是一个 AI Agent 驱动的自动化工具。你给它一个软件的源码,它自动生成一套完整的命令行接口,让 Agent 通过 --help 发现功能、通过 --json 获取结构化输出,像人类点击菜单一样操控专业软件——但全程只用命令行。它…...

2026年最全Java面试题,及答案汇总!

适宜阅读人群 需要面试的初/中/高级 java 程序员想要查漏补缺的人想要不断完善和扩充自己 java 技术栈的人java 面试官 具体面试题 下面一起来看 208 道面试题,具体的内容。 一、Java 基础 1.JDK 和 JRE 有什么区别? 2. 和 equals 的区别是什么&am…...

OpenClaw 多智能体(Multi-Agent)并行协作完全指南【架构】

版本:2026 终极版 适用对象:希望彻底释放 AI 生产力,从“单线程对话”进化为“多线程指挥”的进阶用户。 核心理念:你不再是“提问者”,你是“指挥官”。AI 不再是一个“回答者”,而是一支“特种部队”。&a…...

别再把多 Bot 和多 Agent 搞混了:OpenClaw 协作全景与架构避坑指南

面向经常把 subagents、agent-to-agent、多个 bot 分工混在一起的用户。本文给你一套可执行的判断框架:先分清机制,再选架构,再做最小可用落地。 背景:我为什么写这篇 前两天我和“产品经理机器人”聊 多智能体 协作,…...

常见的抓包工具(Packet Capture Tools)一览

常见的抓包工具(Packet Capture Tools)一览 文章目录常见的抓包工具(Packet Capture Tools)一览1. Wireshark2. Fiddler3. Charles4. tcpdump5. Burp Suite6. 浏览器开发者工具(Chrome DevTools / Firefox Developer T…...

微信小程序的基于Android的共享付费自习室座位选座系统APP

目录 需求分析与功能规划技术架构设计数据库设计核心功能实现逻辑支付系统集成实时同步与冲突处理测试与优化上线与运营注意事项 项目技术支持可定制开发之功能创新亮点源码获取详细视频演示 :文章底部获取博主联系方式!同行可合作 需求分析与功能规划 …...

微信小程序的儿童摄影管理系统

目录需求分析与功能规划技术架构设计核心功能实现细节用户体验优化测试与部署方案运营与迭代计划项目技术支持可定制开发之功能创新亮点源码获取详细视频演示 :文章底部获取博主联系方式!同行可合作需求分析与功能规划 明确目标用户为儿童摄影机构&…...

微信小程序校园社团物品租赁管理系统

目录需求分析与功能规划技术选型与架构设计数据库模型设计关键功能实现细节测试与部署策略运营与迭代计划项目技术支持可定制开发之功能创新亮点源码获取详细视频演示 :文章底部获取博主联系方式!同行可合作需求分析与功能规划 明确校园社团物品租赁的核…...

学生作业批改提交系统小程序

目录 需求分析与规划技术选型与架构设计核心功能实现交互与UI设计测试与部署运维与迭代 项目技术支持可定制开发之功能创新亮点源码获取详细视频演示 :文章底部获取博主联系方式!同行可合作 需求分析与规划 明确系统核心功能需求,包括教师端…...

DNS解析 HTTP TCP/IP ICMP/NAT/NAPT相关知识点

DNS解析 HTTP TCP/IP ICMP/NAT/NAPT 文章目录DNS解析 HTTP TCP/IP ICMP/NAT/NAPT📌 一、DNS相关面试题答案1. DNS解析过程是怎样的?2. DNS使用的是TCP还是UDP?为什么?3. 什么是DNS缓存污染?如何防止?4. DNS…...

一天一个开源项目(第51篇):system-prompts-and-models-of-ai-tools - AI 工具系统提示词和模型资源集合

引言 “Over 30,000 lines of insights into their structure and functionality.” 这是「一天一个开源项目」系列的第 51 篇文章。今天介绍的项目是 system-prompts-and-models-of-ai-tools(GitHub)。 想了解 Cursor、Claude Code、Windsurf、Devin A…...

生物信息学中的版本控制与可重复性:从工作流管理到容器化分析环境

点击 “AladdinEdu,你的AI学习实践工作坊”,注册即送-H卡级别算力,沉浸式云原生集成开发环境,80G大显存多卡并行,按量弹性计费,教育用户更享超低价。 摘要:可重复性危机是生物信息学领域面临的严…...

高通量测序原理与平台对比:Illumina、ONT、PacBio——读长、精度、成本的博弈与选择

点击 “AladdinEdu,你的AI学习实践工作坊”,注册即送-H卡级别算力,沉浸式云原生集成开发环境,80G大显存多卡并行,按量弹性计费,教育用户更享超低价。 摘要:高通量测序技术已彻底改变生命科学研究…...

《pascal-to-the-metal》:从高级语言到机器码的逆向之旅

摘要: 本文将深入剖析名为 pascal-to-the-metal 的CTF挑战。该挑战的核心任务是分析一段由Pascal语言编写的源代码,并对其编译生成的裸机(Bare-Metal)二进制文件进行逆向工程,以最终提取隐藏的flag。文章将从Pascal语言…...

hs - 深入剖析LLM提示词注入挑战

摘要: 本文将详细拆解名为 hs 的CTF挑战。该挑战的核心是利用提示词注入漏洞,从一个大型语言模型(LLM)服务中提取隐藏的flag。文章将从挑战背景分析入手,系统性地梳理攻击思路,复现从信息搜集、初步试探到最…...

DEF CON 33 CTF 总决赛 “nilu“ 赛题深度剖析:当二进制逆向遇上 SQLite

摘要:本文将深入剖析2025年DEF CON 33 CTF总决赛中的一道高难度逆向工程(Reverse Engineering)赛题——“nilu”。该赛题以一个与SQLite数据库进行复杂交互的二进制程序为核心,考验了参赛者在静态分析、动态调试、数据库交互逻辑破…...

深度解读华为Limera:从舱内激光视觉融合看前融合技术的发展与演进

引言:一场由华为Limera引发的技术关注 2025年4月22日,华为在这场智能汽车技术的竞赛中投下了一枚“小巧”的重磅产品——Limera(Lidar+Camera)。这款产品并非简单地堆砌硬件,而是将激光雷达与摄像头深度集成,以小巧的体积安装在座舱内,却实现了惊人的性能:夜晚可识别3…...

毕设程序java车辆4s店管理系统 汽车售后服务智能管理平台 基于SpringBoot的汽车维保信息化系统设计与实现

毕设程序java车辆4s店管理系统28wu2eey(配套有源码 程序 mysql数据库 论文) 本套源码可以在文本联xi,先看具体系统功能演示视频领取,可分享源码参考。随着汽车产业的蓬勃发展和市场竞争的日益激烈,传统4S店的手工管理模式已难以满…...

毕设程序java车辆维修服务管理平台 汽车售后智能运维管理系统 智慧汽修服务一体化平台

毕设程序java车辆维修服务管理平台j82chj8g (配套有源码 程序 mysql数据库 论文) 本套源码可以在文本联xi,先看具体系统功能演示视频领取,可分享源码参考。在现代都市生活中,汽车已成为家庭必备的交通工具,随之而来的车…...

毕设程序java车辆充电桩管理系统 基于SpringBoot的新能源汽车充电服务平台设计与实现 电动汽车智能充电调度系统开发与实现

毕设程序java车辆充电桩管理系统0937l7g8 (配套有源码 程序 mysql数据库 论文) 本套源码可以在文本联xi,先看具体系统功能演示视频领取,可分享源码参考。随着新能源汽车产业的蓬勃发展,充电基础设施建设已成为推动绿色出行的关键环…...

无人机电池及传感器快拆领域的最新技术进展

🎓作者简介:科技自媒体优质创作者 🌐个人主页:莱歌数字-CSDN博客 💌公众号:莱歌数字(B站同名) 📱个人微信:yanshanYH 211、985硕士,从业16年 从…...

毕设程序java车辆信息管理系统 基于SpringBoot的汽车档案与违章追踪平台 智能化机动车数据监管与服务平台

毕设程序java车辆信息管理系统45s135a3(配套有源码 程序 mysql数据库 论文) 本套源码可以在文本联xi,先看具体系统功能演示视频领取,可分享源码参考。随着社会机动车保有量持续增长,传统纸质档案管理模式已难以满足高效、精准的管…...

毕设程序java成人培训机构管理系统 基于Java的成人教育信息化管理平台 Java驱动的职业技能培训综合管理系统

毕设程序java成人培训机构管理系统2q5348ul(配套有源码 程序 mysql数据库 论文) 本套源码可以在文本联xi,先看具体系统功能演示视频领取,可分享源码参考。随着社会经济结构的持续转型与产业升级步伐加快,终身学习理念已深度融入现…...

如何配置 PostgreSQL 允许远程连接 - 以 Odoo 数据库为例

如何配置 PostgreSQL 允许远程连接 - 以 Odoo 数据库为例 问题背景 在使用 Odoo 时,我们经常需要通过远程工具(如 DataGrip、pgAdmin 等)连接数据库进行管理和查询。然而,PostgreSQL 默认只允许本地连接,需要进行适当的…...

微信小程序的的碎片化学习签到打卡系统

目录需求分析技术选型功能模块设计交互流程优化测试与部署项目技术支持可定制开发之功能创新亮点源码获取详细视频演示 :文章底部获取博主联系方式!同行可合作需求分析 明确系统的核心功能:用户通过小程序进行碎片化学习(如每日阅…...

微信小程序的 校园学习互助 活动报名竞赛招募 社交平台

目录微信小程序实现计划:校园学习互助与活动社交平台功能模块设计技术实现方案运营推广策略版本规划项目技术支持可定制开发之功能创新亮点源码获取详细视频演示 :文章底部获取博主联系方式!同行可合作微信小程序实现计划:校园学习…...