程序集奇怪的输入?

时间:2019-03-10 16:54:03

标签: assembly ctf

This code is from the picoCTF 2018:

    asm3:
    push    ebp
    mov     ebp,esp
    mov eax,0xbc
    xor al,al
    mov ah,BYTE PTR [ebp+0x9]
    sal ax,0x10
    sub al,BYTE PTR [ebp+0xc]
    add ah,BYTE PTR [ebp+0xd]
    xor ax,WORD PTR [ebp+0x10]
    mov esp, ebp
    pop ebp
    ret

我在解决CTF方面还很陌生,但是我正在进步。但是有一件事使我感到沮丧。在这个周转资金中,给出了3个输入。但是按照我的逻辑。有4个     (我不需要CTF的提示,因为我已经通过将此作为asm函数并提供输入来解决它了)     但是按照我的逻辑,这应该像:

    Enter 4 inputs: *User Entered 3*
    Error. 4th input not found

但是实际上...它给出了正确的答案。没错。在我看来,输入是:

1) BYTE PTR [ebp+0x9]
2) BYTE PTR [ebp+0xc]
3) BYTE PTR [ebp+0xd]
4) WORD PTR [ebp+0x10]

如果有人可以...请告诉我,如何弄清楚,输入的是哪个指针,而不是。

0 个答案:

没有答案