gpt4 book ai didi

c - 二进制炸弹的汇编代码困惑

转载 作者:行者123 更新时间:2023-11-30 19:42:13 29 4
gpt4 key购买 nike

我目前正在尝试完成我的二进制炸弹项目。我目前陷入第二阶段。

我已经检查过,发现解除炸弹这一阶段的密码需要 3 个输入才能通过,并且它以字节格式比较它们(因此它正在检查字符)。我的问题是实际输入密码。简而言之,我很确定我知道要传递的正确代码,但大多数时候它会导致我调用炸弹爆炸函数。

08048bab <phase_2>:
8048bab: 55 push %ebp
8048bac: 89 e5 mov %esp,%ebp
8048bae: 83 ec 08 sub $0x8,%esp
8048bb1: 8b 45 08 mov 0x8(%ebp),%eax
8048bb4: 80 38 6c cmpb $0x6c,(%eax)
8048bb7: 75 0c jne 8048bc5 <phase_1+0x1a>
8048bb9: 80 78 01 3c cmpb $0x3c,0x1(%eax)
8048bbd: 75 06 jne 8048bc5 <phase_1+0x1a>
8048bbf: 80 78 02 37 cmpb $0x37,0x2(%eax)
8048bc3: 74 05 je 8048bca <phase_1+0x1f>
8048bc5: e8 3e 02 00 00 call 8048e08 <blow_up_bomb>
8048bca: c9 leave
8048bcb: c3 ret

在这种情况下,他们比较的值(据我所知)是字母“l”、符号“<”和数字“7”。

我尝试的输入是:

l<7
7<l
7 < l
l < 7

事实上我很困惑。我到底做错了什么导致了“炸弹”功能?还有其他编写输入的方法吗?

最佳答案

What exactly am I doing wrong that is causing the 'bomb' function?

根据您提供的信息,我们无法判断。

IFF您调用phase_2带有指向字符 "l<7" 的指针,炸弹不会爆炸(至少在 phase_2 不会爆炸,它仍然可能在其他地方爆炸)。

既然您声称已经尝试过该输入,那么您的问题一定出在其他地方。也许您的输入无法进入 phase_2不受干扰?

关于c - 二进制炸弹的汇编代码困惑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32550538/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com