Basic Buffer Overflow - VulnServer TRUN

Поділитися
Вставка
  • Опубліковано 15 лис 2020
  • To help support me, check out Kite! Kite is a coding assistant that helps you faster, on any IDE offer smart completions and documentation. www.kite.com/get-kite/?... (disclaimer, affiliate link) Come play the GuidePoint Security Capture the Flag! go.guidepointsecurity.com/202...
    Hang with our community on Discord! johnhammond.org/discord
    If you would like to support me, please like, comment & subscribe, and check me out on Patreon: / johnhammond010
    E-mail: johnhammond010@gmail.com
    PayPal: paypal.me/johnhammond010
    GitHub: github.com/JohnHammond
    Site: www.johnhammond.org
    Twitter: / _johnhammond

КОМЕНТАРІ • 232

  • @signum42
    @signum42 3 роки тому +57

    Fantastic video. Appreciating the "slow pace"

  • @fhajji
    @fhajji 3 роки тому +8

    Love the slow pace and crystal-clear explanations. Easy to understand and follow.

  • @collapzcursed
    @collapzcursed 3 роки тому +6

    Came in here with very minimal (to non-existent) understanding of bytecode and memory-buffers ... just let me say that you did an absolutely amazing job at explaining the whole of it and how each aspect works and interacts with each other.
    All of that in just about an hour. "Slow pace", yeah right.
    You're a great teacher and a real blessing for those willing to learn.
    I've watched a few CTF videos and miscellaneous stuff of yours but after this one you got yourself that +1 "plzsub" :D!
    Keep up the great work, John!
    It is greatly appreciated.

  • @mattstorr
    @mattstorr 3 роки тому +75

    This is by far the simplest and logical walkthrough of buffer overruns and how to exploit them that I've seen. I really appreciate the pace (I dont care that it was long) as you covered each part. I understood everything except the struct and little endian elements. I guess I have some reading to do :-)

    • @martinndzelen88
      @martinndzelen88 3 роки тому

      same here i got lost around there

    • @jonaskoelker
      @jonaskoelker 2 роки тому +15

      Little vs. big endian, two minute edition: when you write numbers, like 123 (= 1*100 + 2*10 + 3*1), you write the 3 in the ones place last, and the 1 in the biggest place (here 100s) first. That's big endian. If you write the ones place first and the biggest place last, e.g. write 321 to mean 3*1 + 2*10 + 1*100, that's little endian.
      The particular number we're looking at in the code, 0x62501203, is currently in big endian. What the particular step is about is converting it to a 4-digit base-256 number written in little endian (in python's `bytes` type).
      If you just want to do the conversion by hand, from int to int, you can just put in 0x03125062. Notice how each pair of hex digits has been swapped by its opposite: first and last swap, and the middle two swap. Each pair of hex digits corresponds to a single digit in base 16*16 = 256.
      Python v3.2 and newer has a `.to_bytes` method on int objects, so you could also do `(0x62501203).to_bytes(4, byteorder='little')` and get the desired result.

    • @derekrickmon5316
      @derekrickmon5316 2 роки тому +2

      You don't understand something until you can explain it simply.

  • @geraldfranzmaliwanag
    @geraldfranzmaliwanag 10 місяців тому

    Thank you so much for this tutorial. You have explained it very clearly and easy to follow. Buffer overflow is the topic that made me think twice to continue pursuing cybersecurity. But there you are. Life saver. Dream Saver! Thank you so much for this tutorial.

  • @theITGuy-no3nt
    @theITGuy-no3nt 3 роки тому +2

    I have watched a ton of your videos over the past few week, but this is my favorite. Watching you work through that was super instructive and downright entertaining. ⭐⭐⭐⭐⭐

  • @adminservice9459
    @adminservice9459 3 роки тому +5

    You're an awesome instructor, I commend you for humbling yourself and breaking everything down in simple terms vs your knowledge level lol. Thx man

  • @tomsite2901uk
    @tomsite2901uk Рік тому

    This is by far the best video i ever saw regarding buffer overflows and how to exploit them. This is a must see for every security researcher.

  • @KieCodes
    @KieCodes 3 роки тому +1

    That was an amazing video. It really helped that you created everything by hand without using too many tools to shorten the process. Thanks a lot!

  • @nicklevson9608
    @nicklevson9608 3 роки тому +1

    This was the most in depth explanation I have seen so far. Thank you!

  • @glennbogaerts7914
    @glennbogaerts7914 3 роки тому +1

    This was a very clear and well explained video. Great job John

  • @emT__T
    @emT__T 3 роки тому +2

    Thank you John for the great video. Super Informative! The "beginner" approach is much appreciated.

  • @atharvakadlag1937
    @atharvakadlag1937 3 роки тому +1

    Now that i have spent weeks understanding buffer overflow, everyone has started making awesome videos on that topic

  • @Topherelius
    @Topherelius 3 роки тому +1

    That was amazing and super informative. Thanks John!

  • @aymenahdibi1251
    @aymenahdibi1251 3 роки тому +1

    Awesome john i really love your content . never got bored watching your videos till the last second
    Keep up the good work ★

  • @kapalov
    @kapalov 3 роки тому +1

    Finally, the only video where it really clearly explains about BoF. Thanks

  • @dopy8418
    @dopy8418 3 роки тому +16

    Pretty cool diversity of clips. Can’t wait for some more koth.

  • @aaronw6195
    @aaronw6195 3 роки тому +1

    This may have been one of the best videos I've ever seen on how to exploit a buffer overflow. The technique of writing the code from scratch to do this in python was super helpful! Thanks John!

  • @normanalc3115
    @normanalc3115 3 роки тому +15

    You're legend mate! I learned a lot from this video. You've explained it very well 5 star for you 🌟🌟🌟🌟🌟

  • @jorgevilla6523
    @jorgevilla6523 3 роки тому

    Wow great Video!! Love the slow pace and explanation.

  • @Ricjamz
    @Ricjamz Рік тому

    Tremendous help and fantastic write up, worked perfectly!

  • @markgentry8675
    @markgentry8675 3 роки тому

    This is a really good explanation of how to do the BOF on certain exams. I already knew how to do this, but I learned a few things on the way. love your work bro

  • @Cyberducky
    @Cyberducky 3 роки тому

    I recently fell in love with your videos. I'm still a student but I hope that one day I'll have such a deep understanding as you have.

  • @krist81
    @krist81 2 роки тому

    Thank you. The way you explained and demonstrated everything made so many different pieces finally come together for me. Ty

  • @aaaaaaaaaaaaaaaaaaaaaaaa997
    @aaaaaaaaaaaaaaaaaaaaaaaa997 2 роки тому

    Great video. Thanks for the slow pace.

  • @pinglollo6283
    @pinglollo6283 3 роки тому

    Awesome video John, great explanation and demonstration. thanks for uploading.

  • @anuragyelala6952
    @anuragyelala6952 3 роки тому

    Fantastic! thank you John, so many bits and pieces are clarified with your video.

  • @MatteoGariglio
    @MatteoGariglio 2 роки тому +1

    What you manage to do is insane... it seems almost magic. Thanks for sharing. Hope to see other exploits like this (using buffer overflow). Cheers!

  • @danielallan3417
    @danielallan3417 2 роки тому

    Unreal mate, I rarely comment but you have imparted your knowledge with exceptional skill!! I absorbed it all so easily!!! Awesome.

  • @ronorocky
    @ronorocky 2 роки тому

    from couple of weeks i was searching for some good practical for buffer overflow, and seriously man u made it so easy with the python script, the end was awesome when you get the meterpreter, love u man ❤️ keep doing this gr8 work.

  • @HuntingKingYT
    @HuntingKingYT 2 роки тому +14

    Tip: you can use the instruction int3 (0xCC) to make a debug breakpoint, then you can see much faster when the exploit occurs.

  • @saurabhshinde1855
    @saurabhshinde1855 2 роки тому

    Most simple and comprehensive walkthrough of buffer overflow.. Really liked and understood it.. keep it up john

  • @AvinashKumar-fe8xb
    @AvinashKumar-fe8xb Рік тому

    love you john hammond, I learned so much feel like i should dive more into buffer overflow after practically doing it myself along with you. Thank you!

  • @chrishammer5925
    @chrishammer5925 3 роки тому

    Perfecto... I learned Buffer Overflows once 5 months ago and taking my OSCP soon. About to jump into these again to do over and over for the test. Perfect timing mate!

  • @HaouasLeDocteur
    @HaouasLeDocteur 3 роки тому

    I can’t believe I just sat through a 1h video and it was the greatest thing I’ve seen all day. Loved, loved it!

    • @pdemosllegaralos520subs2
      @pdemosllegaralos520subs2 3 роки тому

      Really enjoyed it, I tried this once prior to watching this and realized where I stuffed up. (little endian addr), the mona script helps ALOT.. thanks.

  • @Construction-agencyCoUk
    @Construction-agencyCoUk 3 роки тому

    Woah! watched the whole video and learned alot ! Thanks John

  • @lIlIllll1
    @lIlIllll1 3 роки тому +1

    Perfect vid for what I needed! Im going through the eCPPT course rn :))

  • @zelalemabate3804
    @zelalemabate3804 2 роки тому

    Awesome walkthrough, thank you!

  • @kameronwilliams723
    @kameronwilliams723 2 роки тому +6

    The way you broke that down to where a complete beginner like myself could grasp it is a real talent.

  • @yashwardhanchavan6153
    @yashwardhanchavan6153 3 роки тому

    Really great content, learned so much cool stuff and enjoyed it. Thank you and keep videos like these coming....

  • @johnsnow1062
    @johnsnow1062 3 роки тому

    Thank you so much. Was so lovely and helpful. Please continue.

  • @robertron5303
    @robertron5303 3 роки тому

    Really appreciate your vids man! 👍 even tough I stopped coding a couple of years ago you engage me to catch back up and attend my first upcoming ctf events. Cheers

  • @somekindofbluestuff
    @somekindofbluestuff 2 роки тому

    such a great video! thank you john!!!!

  • @swyveu
    @swyveu 2 роки тому

    blown away... and great teaching skills !

  • @ketononeill8898
    @ketononeill8898 3 роки тому

    Awesome video. You made this pretty easy to understand! Thank you

  • @AC-dw8cs
    @AC-dw8cs 3 роки тому

    i wish i found your channel sooner. GJ!

  • @TheHangman1995
    @TheHangman1995 3 роки тому +1

    This and TCMs buffer overflow are my go to when I need to do BOFs

  • @stuarthook6226
    @stuarthook6226 3 роки тому

    Thanks so much for this video. I was able to do BOF very easily after your video.

  • @ivanlopez8377
    @ivanlopez8377 3 роки тому

    Man, thanks for putting this together.

  • @KaranveerSingh97
    @KaranveerSingh97 2 роки тому

    Well, understanding computer architecture is super important for understanding and making these exploits. Great video!

  • @razzawazza
    @razzawazza 3 роки тому

    That's so cool man. I love your channel thanks for the videos.

  • @saurabhkumar1976
    @saurabhkumar1976 3 роки тому +1

    Thank you for this video , i learnt a lot 🙂

  • @liquathrushbane2003
    @liquathrushbane2003 3 роки тому +2

    Beginner here - not sure why you built the nop_sled, but the rest of it made perfect sense. Thank you.

    • @avananana
      @avananana 3 роки тому

      I'm no genius but as far as I know, nop sleds are used to guide the program to execute code when you don't know exactly where the code lies but you know the rough area. In this case you knew exactly where to go so the nop slide was indeed kind of useless, but I do believe he brought it up only so we could know it's a thing.
      The reason your malicious code could lie somewhere else in the system is if it didn't fit inside the initial payload, where the code itself is another payload and ended up going somewhere else in the system. A way to reach the code is by putting a long nop slide infront of it and initiating a jmp instruction somewhere inside the nop slide. This way you don't have to know where the code lies, only roughly where it is.

  • @HK-sw3vi
    @HK-sw3vi 3 роки тому

    this is a banger! I'm new and it made perfect sense

  • @ping9940
    @ping9940 2 роки тому

    i dont know any thing about this and i was hooked for the whole video this was an amazing explanation i felt like im understanding every thing thou i'll forget all of it by the next hour :D

  • @varadvithalkj1716
    @varadvithalkj1716 3 роки тому

    this was beautiful ,learnt a lot!

  • @LDowning0190
    @LDowning0190 2 роки тому

    Amazing video! Thank you.

  • @mariorodriguez474
    @mariorodriguez474 3 роки тому

    what a great trip! great job!

  • @Jan_Seidel
    @Jan_Seidel 3 роки тому +1

    *Perfect* lesson :)
    Three thumbs up

  • @mart.3318
    @mart.3318 2 роки тому

    Great video! Thank you very much!

  • @karimwassef9892
    @karimwassef9892 3 роки тому

    Love your vids btw!

  • @AFchump78
    @AFchump78 3 роки тому +1

    Thanks alot John! I was able to do it and this should help with the upcoming eCPPT retake. It was down to the wire and i couldnt connect with the one i built. See the mistakes now.

  • @jerryjohn2655
    @jerryjohn2655 3 роки тому

    Thank you so much John

  • @farouqseriki5942
    @farouqseriki5942 2 роки тому

    Hello, i had spent hours searching for a fix that would work for python3, then i found this video. Thanks so muchhhhhh

  • @m3tac0m
    @m3tac0m 3 роки тому

    I love exploit development. Very well explained.👍

  • @MattKAva
    @MattKAva 3 роки тому

    I still don't fully understand buffer overflows but I'm way closer now, thank you!

  • @antdgar
    @antdgar 2 роки тому

    Great explanation

  • @CondorrK
    @CondorrK Рік тому

    This was a fun watch, since i had little knowledge of Fuzzing or buffer overflow i didnt know they were related, but oberflow does kinda work how i thought. Now i have something else to mess with and try to practice 😂

  • @josuemarks5675
    @josuemarks5675 2 роки тому

    Amazing video. Thank you

  • @inkotanyi.9185
    @inkotanyi.9185 Рік тому

    I salute you, Sir!🙌

  • @jacksmith3183
    @jacksmith3183 3 роки тому

    Really enjoyed it, I tried this once prior to watching this and realized where I stuffed up. (little endian addr), the mona script helps ALOT.. thanks.

  • @4ag2
    @4ag2 3 роки тому

    Nice one John 💯

  • @jimo8486
    @jimo8486 3 роки тому

    very well explained ty

  • @Zaakipaladin
    @Zaakipaladin 3 роки тому

    Such a cool video!!

  • @oscpjourney541
    @oscpjourney541 3 роки тому +5

    I can't say BIG THANK enough I have watched many videos about this BOF but this one one I get some hints Be blessed John

  • @liliwantsvideos
    @liliwantsvideos 3 роки тому

    Thanks a lot!
    This is an amazing insight - i allways wondered how an overflow leads to execution :-p

  • @lalaland322
    @lalaland322 2 роки тому

    great video!

  • @vaskomarinov7042
    @vaskomarinov7042 3 роки тому

    !GOLDEN CONTENT!

  • @bbowling619
    @bbowling619 3 роки тому

    Its a super fast pace for me but i keep grabbing onto the handle bars everytime he posts and am fully enjoying this circus ride :)
    I genuinely cant get enough.
    Please be my boss John !?
    I would literally enjoy having you boss me around (not in a wierd way) but i want to sponge you.
    No i did not say spoon you hahah :)
    Your teaching skills are super amazing but your brain is the jam!
    Totally digging your skills dude.

  • @adamkadaban
    @adamkadaban 3 роки тому +4

    The beard looks absolutely epic

  • @parthghughriwala6799
    @parthghughriwala6799 2 роки тому

    God level tutor!

  • @nikolas8741
    @nikolas8741 3 роки тому

    I got a meterpreter!😃 thanks soooo much!

  • @savoyblue777
    @savoyblue777 3 роки тому

    John you are so good amazing and addicting to watch Thank you

    • @pdemosllegaralos520subs2
      @pdemosllegaralos520subs2 3 роки тому

      Thank you John for the great video. Super Informative! The "beginner" approach is much appreciated.

  • @merajrabbani
    @merajrabbani 3 роки тому

    Brand New stuff for me well explained. Got overall concept of BOF.

    • @pdemosllegaralos520subs2
      @pdemosllegaralos520subs2 3 роки тому

      Thanks a lot!
      This is an amazing insight - i allways wondered how an overflow leads to execution :-p

  • @cansofcoke
    @cansofcoke 3 роки тому +5

    You've outdone yourself with this one John. Buffer overflow is just voodoo magic for me at the moment and your vid has made it seem more achievable for me :))

  • @TheProgrenato
    @TheProgrenato 3 роки тому +1

    You're the best!

  • @moonshiry
    @moonshiry 3 роки тому

    You are amazing my dude, I love how you really went step by step and didn't gloze over anything. Especially the programming and immunity debugger parts. (which is practically everything). This teaching style trumps university professors

    • @bmbiz
      @bmbiz 2 роки тому

      Please refrain from using the word "trump(s)". It triggers my PTSD. ;)

    • @ldSt3345
      @ldSt3345 2 роки тому

      @@bmbiz please refrain from writing such terrible comments. It triggers my triggerinator.

    • @skreet7251
      @skreet7251 2 роки тому +1

      @@ldSt3345 please refrain from being a bub it triggers my bob

  • @nuridincersaygili
    @nuridincersaygili 2 роки тому

    This is pure gold..

  • @abdallahchbaro836
    @abdallahchbaro836 3 роки тому

    Thank you so much. Spike section was a bit complicated. And you don't need to generate all the characters, you can find them on github

  • @CZghost
    @CZghost 3 роки тому

    Good :) This is some great stuff :)

  • @namankumar5464
    @namankumar5464 3 роки тому +1

    Thank so much for this...i have learn a lot ,sir i am waiting for your complete cyber security courses from buggier to master level

  • @pedror9314
    @pedror9314 3 роки тому

    Cool vid!!!

  • @nikolas8741
    @nikolas8741 3 роки тому

    Amazing job you're amazing 😃

  • @Hey-qo2zl
    @Hey-qo2zl Рік тому

    Great to have awesome persons like you to help people to learn and much appreciate that you share your valuable knowledge. I am studying OSCP and planning to attend the exam and get the certificate and for sure I will follow your great videos to learn and learn but what make me confused like what is the best to practice for exam HTB or the offensive lab or any other resources and what is the best to study materials first then start practice over and over or study and practice in same time ?!
    We are very lucky to have a person like you to learn from.May god bless you and much appreciate

  • @leweed3049
    @leweed3049 2 роки тому

    thats so cool thanks

  • @martinndzelen88
    @martinndzelen88 3 роки тому

    i appreciate did learn a lot . You're fast in scripting for a beginner to catch up

  • @ayaanlatifsaikia1353
    @ayaanlatifsaikia1353 3 роки тому

    Great video. Would be awesome if we get videos for the other vulnerable commands of Vulnserver too.

  • @FreezeLuiz
    @FreezeLuiz 3 роки тому +6

    Great vid, John. Can you make a video on a more challenging scenario; where you have IP overwrite however the buffer size is very small to fit the shellcode?

  • @davidrichardsonYT
    @davidrichardsonYT 2 роки тому

    Absolutely fkin amazing.. clever guy. You're now my main UA-cam sub

  • @eduardomontesquieu4057
    @eduardomontesquieu4057 3 роки тому

    Thank you!