# buffer overflow 1-200pt [題目在這](https://play.picoctf.org/practice/challenge/258?originalEvent=70&page=3) ## 題意  ## 解題思路 首先先看看他給的 code,可以知道我們要使用 buffer overflow,讓 ret 的 memeory address 變成 win() 的 memory address  在開始之前,自己寫個 flag.txt,等等測試如果成功應該要吐出這個檔案的內容  接著用 gbd 打開檔案,用 patter create 100 建立 100 個字母,然後 ```r``` 執行塞入那 100 個字母  根據結果可以知道 overflow 在 ```0x6161616c(laaa)```  用 ```pattern search 0x6161616c``` 可以知道,需要塞入 44 個 char,然後下 ```x win``` 找出 win() 的位置在 ```0x80491f6```  用 python pwn套件中的 p32() 將 0x80491f6 轉為字符  然後將 44 個字符和 win() 的 address,喔吼,我們測試的 flag 吐出來啦  OVO  ## 困難之處 學習 C 語言,還有 pwn 真好玩 Date : 2023/04/27 ###### tags: `picoCTF2022` `Binary` [`從零開始的 picoCTF`](https://hackmd.io/-KQeDuzrQMOcFNhwU_5eKA?both=) `picoCTF`
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up