2025 攻防竞赛逆向虚假跳转识别题库及解析.docxVIP

2025 攻防竞赛逆向虚假跳转识别题库及解析.docx

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

2025攻防竞赛逆向虚假跳转识别题库及解析

考试时长:150分钟总分:100分适用级别:进阶至竞赛级

说明:1.本试卷严格对标国内攻防竞赛逆向模块真题范式,聚焦“虚假跳转识别与还原”核心能力,覆盖恒真/恒假条件跳转、冗余跳转、跳转表伪装、反调试虚假跳转等典型场景;2.题目附件包含Linux/Windows双架构可执行文件,推荐工具集:IDAPro7.7+Hex-Rays、x64dbg+x32dbg、GDB+pwndbg、HopperDisassembler;3.所有题目需提交“虚假跳转识别依据-动态跟踪过程-控制流还原结果”完整链路,关键步骤需标注指令地址与寄存器状态;4.flag格式统一为flag{XXX},严格遵循格式作答方可得分。

一、基础虚假跳转识别题(共2题,每题10分,共20分)

题目1:恒条件虚假跳转识别(难度:???)

题目描述:给定Windows32位可执行文件const_jump.exe,程序通过恒真/恒假条件构造虚假跳转,隐藏4位数字密码的验证逻辑,输入正确密码即可输出flag。请使用x32dbg结合IDA分析,识别虚假跳转并还原真实控制流,找到正确密码。

附件:const_jump.exe(PE32可执行文件,无壳)

答题要求:1.列出识别的虚假跳转类型及2个典型特征;2.提交虚假跳转指令片段及还原思路;3.写出正确密码及flag内容。

标准答案与解析

1.核心考点:恒真/恒假条件虚假跳转的特征识别、静态分析与动态验证结合能力。

2.解题步骤:

①静态初析:IDA加载程序,定位验证函数verify_password(地址0,查看汇编指令发现多处条件跳转指令,其中部分条件明显异常。

②虚假跳转识别:

-关键指令片段1(地址0:moveax,0x1;cmpeax,0x2;jzloc_4010C0,eax值固定为1,与0x2比较结果恒假,jz跳转永远不执行,判定为恒假条件虚假跳转;

-关键指令片段2(地址0x0040109A):xorebx,ebx;testebx,ebx;jnzloc_4010E0,ebx经异或后值为0,test指令结果恒真,jnz跳转永远不执行,判定为恒真条件虚假跳转。

③动态跟踪验证:x32dbg加载程序,在验证函数入口下断点,输入测试密码“1234”,单步执行(F7):

-执行至0,ZF标志位为1(cmpeax,0x2结果不相等),jz未触发,程序执行后续真实逻辑;

-执行至0x0040109A时,ZF标志位为0(testebx,ebx结果为0),jnz未触发,跳至真实验证分支。

④真实逻辑还原:删除虚假跳转指令后,还原验证逻辑为“密码每一位依次与0x5、0x7、0x9、0x3比较”,即密码为3975(千位3、百位9、十位7、个位5)。

3.参考答案:虚假跳转类型为恒真/恒假条件跳转,特征为条件表达式结果固定、跳转永不触发;正确密码3975,flag{Const_Jump_3975}

题目2:冗余跳转识别与清理(难度:???)

题目描述:给定Linux64位可执行文件redundant_jump.elf,程序通过“短跳转+空指令”构造冗余跳转链,干扰6位字母字符串的验证逻辑,输入正确字符串即可输出flag。请使用GDB+pwndbg分析,剥离冗余跳转并还原核心验证逻辑。

附件:redundant_jump.elf(ELF64-bit可执行文件)

答题要求:1.说明冗余跳转的识别依据;2.提交跳转链剥离前后的汇编代码对比;3.写出正确输入字符串及flag。

标准答案与解析

1.核心考点:冗余跳转的特征提取、动态跟踪去重、汇编逻辑重组能力。

2.解题步骤:

①静态识别:IDA查看验证函数check_str(0,发现连续跳转指令:jmploc_401120;loc_401120:nop;jmploc_401130;loc_401130:jmploc_401150,跳转无实际逻辑分支,判定为冗余跳转链。

②动态跟踪:GDB加载程序,执行b*0点,输入测试字符串“abcdef”,单步执行(ni):

-0jmp)→0nop)→0jmp)→0jmp)→0真实逻辑入口),跳转过程无条件判断,确认冗余。

③逻辑还原:剥离冗余跳转后,真实验证逻辑为“输入字符串与预设值jump66逐字符比较”,汇编核心片段:

asm

0movecx,0x6

文档评论(0)

杜正菊 + 关注
实名认证
文档贡献者

.

1亿VIP精品文档

相关文档