Sunday, April 19, 2020

ASIS CTF Quals 2015 - Sawthis Writeup - Srand Remote Prediction


The remote service ask for a name, if you send more than 64 bytes, a memory leak happens.
The buffer next to the name's is the first random value used to init the srand()


If we get this value, and set our local srand([leaked] ^ [luckyNumber]) we will be able to predict the following randoms and win the game, but we have to see few details more ;)

The function used to read the input until the byte \n appears, but also up to 64 bytes, if we trigger this second condition there is not 0x00 and the print shows the random buffer :)

The nickname buffer:



The seed buffer:



So here it is clear, but let's see that the random values are computed with several gpu instructions which are decompiled incorrectly:







We tried to predict the random and aply the gpu divisions without luck :(



There was a missing detail in this predcitor, but there are always other creative ways to do the things.
We use the local software as a predictor, we inject the leaked seed on the local binary of the remote server and got a perfect syncronization, predicting the remote random values:




The process is a bit ugly becouse we combined automated process of leak exctraction and socket interactive mode, with the manual gdb macro.




The macro:



















Related posts
  1. Best Hacking Tools 2019
  2. Hacking Tools For Windows
  3. Pentest Tools List
  4. How To Hack
  5. Hack Tools For Ubuntu
  6. Best Hacking Tools 2020
  7. Hacking Tools 2019
  8. Hacking Tools Windows 10
  9. Hacker Tools 2019
  10. Pentest Tools Url Fuzzer
  11. New Hack Tools
  12. Hack And Tools
  13. Hacking Tools 2019
  14. Hacker Hardware Tools
  15. Bluetooth Hacking Tools Kali
  16. Pentest Tools Url Fuzzer
  17. Hacker Tools For Pc
  18. Hacking Tools Name
  19. Pentest Tools Bluekeep
  20. Hacking Tools Windows 10

No comments:

Post a Comment