吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 2367|回复: 1
收起左侧

[求助] csapp 二进制炸弹phase_6有问

[复制链接]
mool 发表于 2019-10-11 15:26
最近老师布置一个实验,给了一个可执行文件,让反汇编调试找到六个关卡的密钥,进行到第六关时卡住了。
这是第六关汇编代码
000000000000157c <fun6>:
    157c:        48 89 f8                     mov    %rdi,%rax
    157f:        4c 8b 47 08                  mov    0x8(%rdi),%r8
    1583:        48 c7 47 08 00 00 00         movq   $0x0,0x8(%rdi)
    158a:        00
    158b:        4d 85 c0                     test   %r8,%r8
    158e:        75 2b                        jne    15bb <fun6+0x3f>
    1590:        f3 c3                        repz retq
    1592:        48 89 d1                     mov    %rdx,%rcx
    1595:        48 8b 51 08                  mov    0x8(%rcx),%rdx
    1599:        48 85 d2                     test   %rdx,%rdx
    159c:        74 04                        je     15a2 <fun6+0x26>
    159e:        39 32                        cmp    %esi,(%rdx)
    15a0:        7f f0                        jg     1592 <fun6+0x16>
    15a2:        48 39 d1                     cmp    %rdx,%rcx
    15a5:        74 2b                        je     15d2 <fun6+0x56>
    15a7:        4c 89 41 08                  mov    %r8,0x8(%rcx)
    15ab:        49 8b 48 08                  mov    0x8(%r8),%rcx
    15af:        49 89 50 08                  mov    %rdx,0x8(%r8)
    15b3:        49 89 c8                     mov    %rcx,%r8
    15b6:        48 85 c9                     test   %rcx,%rcx
    15b9:        74 1c                        je     15d7 <fun6+0x5b>
    15bb:        48 85 c0                     test   %rax,%rax
    15be:        74 0a                        je     15ca <fun6+0x4e>
    15c0:        41 8b 30                     mov    (%r8),%esi
    15c3:        48 89 c1                     mov    %rax,%rcx
    15c6:        39 30                        cmp    %esi,(%rax)
    15c8:        7f cb                        jg     1595 <fun6+0x19>
    15ca:        48 89 c2                     mov    %rax,%rdx
    15cd:        4c 89 c0                     mov    %r8,%rax
    15d0:        eb d9                        jmp    15ab <fun6+0x2f>
    15d2:        4c 89 c0                     mov    %r8,%rax
    15d5:        eb d4                        jmp    15ab <fun6+0x2f>
    15d7:        f3 c3                        repz retq

00000000000015d9 <phase_6>:
    15d9:        48 83 ec 08                  sub    $0x8,%rsp
    15dd:        ba 0a 00 00 00               mov    $0xa,%edx
    15e2:        be 00 00 00 00               mov    $0x0,%esi
    15e7:        e8 d4 f9 ff ff               callq  fc0 <strtol@plt>
    15ec:        89 05 2e 20 20 00            mov    %eax,0x20202e(%rip)        # 203620 <node0>
    15f2:        48 8d 3d 27 20 20 00         lea    0x202027(%rip),%rdi        # 203620 <node0>
    15f9:        e8 7e ff ff ff               callq  157c <fun6>
    15fe:        48 8b 40 08                  mov    0x8(%rax),%rax
    1602:        48 8b 40 08                  mov    0x8(%rax),%rax
    1606:        48 8b 40 08                  mov    0x8(%rax),%rax
    160a:        48 8b 40 08                  mov    0x8(%rax),%rax
    160e:        48 8b 40 08                  mov    0x8(%rax),%rax
    1612:        48 8b 40 08                  mov    0x8(%rax),%rax
    1616:        48 8b 40 08                  mov    0x8(%rax),%rax
    161a:        8b 0d 00 20 20 00            mov    0x202000(%rip),%ecx        # 203620 <node0>
    1620:        39 08                        cmp    %ecx,(%rax)
    1622:        74 05                        je     1629 <phase_6+0x50>
    1624:        e8 12 06 00 00               callq  1c3b <explode_bomb>
    1629:        48 83 c4 08                  add    $0x8,%rsp
    162d:        c3                           retq   

我想跳过fun6直接找在phase_6里找到密钥,但是失败,我我每次比较1620 ecx和(rax)时,rax指向的都是一个<node0>或者<node1>的变量,是一个字符串,
但是我输入的值phase_6会调用strtol转换为长整型数据,就永远不可能相等,自己分析fun6又分析不出来。

图片是运行时的寄存器值,rax是程序给定的,rcx是输入的值
image.png

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

pumishuo 发表于 2019-11-2 19:30
https://blog.csdn.net/ooffrankdura/article/details/80260348
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

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

GMT+8, 2024-11-25 15:57

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

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