BUUCTF逆向题reverse1

一、工具:

1、IDA

二、解题过程

①、查壳,我这边显示不是有效的PE文件,不管他,载入32位IDA后提示我们用64位的,那就切换成64位的IDA

②、载入后搜索字符串,发现关键字符串

 挑一串双击定位到汇编窗口

 这里我挑的  this is the right flag!  ,到了汇编窗口双击此段字符串,选中后右键->交叉引用列表

 来到视图窗口

 ③、查看伪代码

 分析代码可得在 v8 <= v2 的情况下,字符串 Str2 中下表为j的字符如果对应的 ASCII 码等于 111 则将该字符改为 ASCII 为 48 所对应的字符

(技巧:选中数字,然后按 r 键就可以把数值转成对应的 ASCII 码,111 对应的字符为 o ;48 对应的字符为 0)

④、双击 Str2 可看到 Str2 所对应的字符串为:{hello_world}

 把字符串里的 o 改成 0 即可得到正确的 flag :flag{hell0_w0rld}

收获:

1、通过交叉引用可以找到代码之间的关系,同时也能快速定位到关键地方的伪代码

2、选中数字,按 r 键可以转成 ASCII 对应的字符

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值