Exploiting Return Oriented Programming (ROP) tutorial - Binary Exploitation PWN101

  Рет қаралды 22,548

RazviOverflow

RazviOverflow

Күн бұрын

Пікірлер: 63
@RazviOverflow
@RazviOverflow 2 жыл бұрын
Some quick notes after uploading the video: - I forgot to include a good ROP reference from Exploit DB (Shaif El-Sherei): www.exploit-db.com/docs/english/28479-return-oriented-programming-(rop-ftw).pdf - A ROP gadget is any instruction sequence that ends with an instruction that modifies the RIP register, typically a RET (but it could be any other instruction, like JMP). In the video, in order to keep things simple, I mentioned only the RET case. - Yes, around 14:45 I mispronounce the word "contriving" :(
@antisec1656
@antisec1656 2 жыл бұрын
This is by far the clearest explanation of ROP ive ever seen and you are the only channel ive seen to break it down into the very basics, and make it super clear to understand. Glad to be one of your first 500 subs, but you deserve more than the big CTF youtubers out there and I can see your channel blowing up. Thanks a lot!
@RazviOverflow
@RazviOverflow 2 жыл бұрын
Thank you. I really appreciate your words :)
@mattanderson2074
@mattanderson2074 5 ай бұрын
Every single one of your videos has taught me 10 x anything I have ever learned from any other instructor. Your approach with explaining each subject and all of the complex details is just phenomenal. So grateful to have stumbled across you. Working my way through your content and loving every minute.
@RazviOverflow
@RazviOverflow 5 ай бұрын
Thank you for your kind words ❤Glad my videos are useful to you :)
@thecamera-g7w
@thecamera-g7w Жыл бұрын
This is seriously the best explanation i've found on ROP. The explanation is so clear and detailed. So helpful 😄 Loved it!
@RazviOverflow
@RazviOverflow Жыл бұрын
I'm happy it helped you :)
@MysteryMooCows
@MysteryMooCows 2 жыл бұрын
Wow. I cant wait for your channel to explode! You have a deep understanding of what you're doing and present the material in a clear and approachable way. I really enjoyed this, thank you!
@RazviOverflow
@RazviOverflow 2 жыл бұрын
Thank you very much! Glad you liked the video. I try to make things as simple as I can.
@migwe1019
@migwe1019 2 жыл бұрын
Thank you so much, this is by far the clearest rop tutorial ive ever seen. keep up the good work
@RazviOverflow
@RazviOverflow 2 жыл бұрын
Thank you. Glad it helps!
@petermackinnon6546
@petermackinnon6546 2 жыл бұрын
wanted to comment this as well. Beautiful side-by-side visual.
@RazviOverflow
@RazviOverflow 2 жыл бұрын
@@petermackinnon6546 Thank you :) I find it a bit rudimentary and definitely home made (it's plain paint), but pretty effective at the same time
@harjotsaraon9075
@harjotsaraon9075 3 ай бұрын
Your content is super clear and well explained. Thanks for explaining the rop concept in the best possible way.
@RazviOverflow
@RazviOverflow 3 ай бұрын
You are more than welcome :)
@user-pg9te8ug1j
@user-pg9te8ug1j 8 ай бұрын
Wow - this is by far the best explanation if seen on the topic so far. Thank you very much!
@RazviOverflow
@RazviOverflow 8 ай бұрын
Glad you liked the video :)
@atharavhedage3607
@atharavhedage3607 Жыл бұрын
Truely said, you deserve subs more than top CTF KZbinrs out there, absolutely clear content, loved it!
@RazviOverflow
@RazviOverflow Жыл бұрын
Thank you :)
@kushagrasingh467
@kushagrasingh467 Жыл бұрын
Woah! loved the explanation, you surely deserve more number.
@RazviOverflow
@RazviOverflow Жыл бұрын
Thank you :)
@regas6441
@regas6441 11 ай бұрын
Excellent content, this actually helped me a lot. Please keep posting!
@RazviOverflow
@RazviOverflow 11 ай бұрын
Glad it helped!
@Obeeron
@Obeeron 2 жыл бұрын
Extremely clear explanations thank you for this video
@RazviOverflow
@RazviOverflow 2 жыл бұрын
You are welcome :)
@danielcmihai
@danielcmihai 2 жыл бұрын
Nice one once again. Looking forwards to more content.
@RazviOverflow
@RazviOverflow 2 жыл бұрын
I appreciate your comments. This week I'm uploading (at last) the ret2libc video :)
@zeshanahmednabin
@zeshanahmednabin Жыл бұрын
Can you make a Cutter setup video. My cutter shows addresses relative to stack. Which is pretty confusing... I was wondering why isn't my exploit working... It shows var void *buf @ stack - 0x28 whereas on yours it shows var void *buf @ rbp - 0x20 @14:53
@RazviOverflow
@RazviOverflow Жыл бұрын
They changed that in recent versions of cutter. I'm not sure if you can change it back to the older form (like in my video). Anyways, you just have to realize that what they call "stack" is the base stack address (right where the saved return address ends), and right above it lies the rbp. So rbp-0x20 and stack-0x28 are equivalent given that rbp is 8 bytes long.
@F-lx6gp
@F-lx6gp 4 ай бұрын
Very very good explained broo
@RazviOverflow
@RazviOverflow 4 ай бұрын
Thank you :)
@nathandaugherty8765
@nathandaugherty8765 Жыл бұрын
Possibly already pointed out - at around 8:30 the picture of the stack being overflowed is backwards. The stack grows from high memory addresses to low. Everything that was drawn into the stack should be flipped upside down. Nonetheless, still a great video and explanation.
@RazviOverflow
@RazviOverflow Жыл бұрын
Incorrect. As you stated, stack grows from higher (H) addresses toward lower (L) ones. At the right of the drawing there is a huge arrow that goes downwards from H to L to indicate just that. There is no such thing as flipping the stack upside down. It doesn't matter how you draw it as long as you specify where the higher or lower addresses are. If you check the whole series from the beginning or the process I usually follow to draw the stack, you will notice I always do it like so. Thanks for the comment.
@Ouroboros2291
@Ouroboros2291 Жыл бұрын
Can somebody advice the debugger for NASM?
@Nunya58294
@Nunya58294 Жыл бұрын
Check out GDB (GNU Debugger)
@AdiSings2023
@AdiSings2023 Жыл бұрын
Hello! One of the best videos about ROPs. One thing I would like o mention: After: payload = b"A" * 0x28 I also need an address of just 'ret' got with ROPgadget so: payload += return_address. Moreover I need to push it further to "usefulFunction" address. So: payload += usefullFunction_address So now I can add the other 3 addresses that you have in your video. I don't know why it is not working with what you just present there...
@RazviOverflow
@RazviOverflow Жыл бұрын
Hello, thank you. I'm not sure if I understand correctly. All I show in the video is tested and working.
@AdiSings2023
@AdiSings2023 Жыл бұрын
@@RazviOverflow I am saying that on my end, it doesn't work just with those 3 added addresses to the payload. I need 2 more (1 of a ret address and the address of the "usefulFunction")
@arielelbaz8218
@arielelbaz8218 7 ай бұрын
Can u share your code ? Mine also is not working
@luxdown7965
@luxdown7965 2 жыл бұрын
Excellent, as always :)
@RazviOverflow
@RazviOverflow 2 жыл бұрын
Thank you! :)
@sarthakjoshi3947
@sarthakjoshi3947 2 жыл бұрын
Great, keep up the good work.
@RazviOverflow
@RazviOverflow 2 жыл бұрын
Thank you! :D
@NopSledx86
@NopSledx86 Жыл бұрын
very nice. well done!
@RazviOverflow
@RazviOverflow Жыл бұрын
Thank you!
@cgrbro
@cgrbro Жыл бұрын
hello,thanks for all but where is the file i didn't find . Can u share please ?
@RazviOverflow
@RazviOverflow Жыл бұрын
I think it is pretty easy to find in ROPEmporium page: ropemporium.com/challenge/split.html
@cgrbro
@cgrbro Жыл бұрын
@@RazviOverflow well, thank u. i looked tryhackme for binary
@RazviOverflow
@RazviOverflow Жыл бұрын
@@cgrbro Around 0:30 I mention we will exploit the split challenge from ROPemporium, which is shown around 0:53
@cgrbro
@cgrbro Жыл бұрын
@@RazviOverflow yes i just realized thank u so much
@RazviOverflow
@RazviOverflow Жыл бұрын
@@cgrbro You are most welcome, glad to help
@polmarin2911
@polmarin2911 2 жыл бұрын
Hola Razvi! Volverás a meterle caña al otro canal o ya lo has abandonado del todo? Se te echa de menos!
@RazviOverflow
@RazviOverflow 2 жыл бұрын
Gracias :) Pues la verdad es que no sabría decirte. No descarto volver a hacer vídeos, pero ahora mismo tengo otras prioridades en la vida.
@polmarin2911
@polmarin2911 2 жыл бұрын
Pues mucha suerte en tus nuevos proyectos y si vuelves a colgar algun video, al menos tendrás mi visualización y mi like. Suerte camarada!
@RazviOverflow
@RazviOverflow 2 жыл бұрын
@@polmarin2911 Muchas gracias. Un abrazo!
@bhagyalakshmi1053
@bhagyalakshmi1053 Жыл бұрын
Nice expression
@_vox5189
@_vox5189 7 ай бұрын
polino mi manchi
@HoneyBravoLui
@HoneyBravoLui 7 ай бұрын
Ciao POLIMI
@ragnarlothbrok367
@ragnarlothbrok367 8 ай бұрын
i dont understand a shit from all of this, i don't know what is the flow or next instruction when you talk about things, i don't see the context
@RazviOverflow
@RazviOverflow 8 ай бұрын
You are the first one (so far) pointing out the context is missing. Please tell me why and how the video could be improved.
@ragnarlothbrok367
@ragnarlothbrok367 8 ай бұрын
@@RazviOverflow Just look at the illustration at 12:30, it may be not even your fault, just assembly is ... insane, everything goes everywhere all the time and i fail to map this in my brain
@RazviOverflow
@RazviOverflow 8 ай бұрын
@@ragnarlothbrok367 Ok, then the problem is not the video. Have you tried watching easier videos?
Return Oriented Programming (PicoCTF 2022 #48 'ropfu')
35:09
John Hammond
Рет қаралды 23 М.
BAYGUYSTAN | 1 СЕРИЯ | bayGUYS
36:55
bayGUYS
Рет қаралды 1,9 МЛН
Weird Return-Oriented Programming Tutorial - bin 0x2A
15:12
LiveOverflow
Рет қаралды 79 М.
researchers find unfixable bug in apple computers
8:32
Low Level
Рет қаралды 718 М.
Binary Exploitation Deep Dive: Return to LIBC (with Matt)
2:12:41
John Hammond
Рет қаралды 189 М.
Buffer Overflow Hacking Tutorial (Bypass Passwords)
55:39
David Bombal
Рет қаралды 79 М.
Hacker's Guide to UART Root Shells
17:40
Flashback Team
Рет қаралды 509 М.
ROP is DEAD! Kernel Driver Binary Exploitation
16:04
John Hammond
Рет қаралды 22 М.
Compilers, How They Work, And Writing Them From Scratch
23:53
Adam McDaniel (kiwi)
Рет қаралды 238 М.
BAYGUYSTAN | 1 СЕРИЯ | bayGUYS
36:55
bayGUYS
Рет қаралды 1,9 МЛН