Binary Exploitation Deep Dive: Return to LIBC (with Matt)

Поділитися
Вставка
  • Опубліковано 7 чер 2021
  • If you would like to support the channel and I, check out Kite! Kite is a coding assistant that helps you code faster, on any IDE offer smart completions and documentation. www.kite.com/get-kite/?... (disclaimer, affiliate link)
    For more content, subscribe on Twitch! / johnhammond010
    If you would like to support me, please like, comment & subscribe, and check me out on Patreon: / johnhammond010
    PayPal: paypal.me/johnhammond010
    E-mail: johnhammond010@gmail.com
    Discord: johnhammond.org/discord
    Twitter: / _johnhammond
    GitHub: github.com/JohnHammond

КОМЕНТАРІ • 194

  • @robertwouda
    @robertwouda 3 роки тому +31

    Ngl that was 2 hours and 12 minutes well spend. Very interesting and cool

  • @praetorprime
    @praetorprime 3 роки тому +26

    My C/ASM is rusty, but Matt is doing a great job at refreshing my memory as you go along. John, too, is an intuitive pair-programmer. I've always wanted to know how to turn a "buffer overflow" vulnerability into an exploit, mostly out of frustration at hearing so much about them in college but never actually being shown how one works. Such a great video!

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

    Loved this John, definitely consider doing more of these please. I kept up with what was going on probably up until about 1hr 25 mins. I can feel a rewatch coming on!

  • @aarondinesh3657
    @aarondinesh3657 3 роки тому +104

    I would love to see you and Matt do more colabs in the future!

  • @apjohnite1302
    @apjohnite1302 3 роки тому +47

    Great watch for anyone who is new to ret2lib. On getting the address of /bin/sh string (1:07:46) Loading the libc.so.6 into Ghidra will work, but it was imported with a base address of 0x100000, which John didn’t subtract from the address of the string, (a mistake he attributes to a typo later). An easier approach would be to use strings -tx libc.so.6 | grep /bin/sh

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

      Thanks for explaining this. I also noticed it wasn't a typo, but wasn't sure how ghidra could say it's address started at 0x2B when it was really 0x1B. Do you know why it had a base address of 0x100000?

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

      @@CMorlandBassist No idea, but it usually defaults to that for an executable with PIE set. There is an option to override the base address when you import.

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

      thanks, i was wondering if string had an option for that.
      i found the memory map window in ghidra not only makes clear what base is used but it lets modify it as well.

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

    What an incredible video. I've been meaning to watch for this for days and finally set up a time for that. Everything in detail, amazing. Thanks for the content.

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

    I was watching this on the TV so I really appreciate that you strive to make sure everything was large enough. Thank you! Amazing video. Want to see more with Matt!!

  • @potatoonastick2239
    @potatoonastick2239 3 роки тому +20

    Yes please do more of this! Amazing learning content, even more so than usual IMO. Great stuff!

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

    It's been ages since I last subscribed to someone. But if you make a video this awesome, it can't be help.
    Thanks for making this you guys! Would love to see more

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

    Thanks for this! I still can't do what was shown on my own, but I'm about 4 steps closer than before I watched it. Learned a ton.

  • @PaulzePirate
    @PaulzePirate 3 роки тому +3

    Amazing content, really hope there is more like this. Would also love to see some of the more advanced stuff. As Matt said, it's very difficult to find unless you are paying for it.

  • @jmiguelhernandez1640
    @jmiguelhernandez1640 Рік тому +17

    in case anyone is wondering, the offset error for "/bin/sh" string wasn't a typo. When it was taken from ghidra, ghidra loaded the lib with a base address of 0x100000 so it was off by that much. 0x2B40FA-0x100000 = 0x1B40FA

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

    This was absolutely great, thanks John and Matt !

  • @n00b-hax0r9
    @n00b-hax0r9 3 роки тому

    There was a lot in this one. Will have to come back to this multiple times. Thanks a lot for this!

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

    Awesome aspect of the videos, like the format and the dialog!

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

    Amazing video! I learned a ton. Please, please, please make more of these!!!

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

    I always learn or recall something. I'm "hooked" on Your videos! Thank You for sharing!

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

    These guys are awesome, surprisingly I understand every step!!! Great video.

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

    Really good video to start. I really wanna more of this videos, better with Matt, he explains really good.I am gonna re-see a lot of times, get notes and search throught internet all of this.

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

    Great video, Matt and John. Thanks for putting that together. Go Tigers!

  • @Meow-meow421
    @Meow-meow421 Рік тому

    You're the gold mine fr thank you so much for the content we all appreciate your hard work❤❤🎉😊

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

    Setting up the tools may often become the most interesting part of the event.
    Whatever, I'm ten minutes in, and I'm so excited!

  • @chriskaprys
    @chriskaprys 2 місяці тому

    Lads: this. was. AWESOME!
    Matt's a natural-born, superb teacher; John you asked great questions and dropped in very useful clarity points and made me feel like I was Matt's student sitting right there as this lesson developed. 2 hours absolutely flew by and I have so much more nuts&bolts knowledge thanks to you two. 👏

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

    This was amazing and so informative! Please do more binary exploitation videos with Matt

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

    I found my video for the weekend. Thanks John.

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

    Thanks to both of you legends

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

    yes sir more video like this and you just do a fab work again! thanks is all i just got for you sir. Thank You !!!.

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

    Yes! more of this please John!

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

    Thank you guys. That was great.

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

    So good! Thanks very much!

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

    Really great! A+ I would definitely watch more like this

  • @user-jm8kd2kr9l
    @user-jm8kd2kr9l 3 роки тому +2

    You helped me through my night shift at McD, never enjoyed them more! (:❤️

  • @slycooper5428
    @slycooper5428 12 днів тому

    Still freaking awesome, thanks!

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

    Very interesting, please do more!

  • @Venom-ne4ox
    @Venom-ne4ox Рік тому

    Great video. So much foundational stuff, please bring this guy back!

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

    This was gold. Its always so useful seeing mistakes and debugging. I still don't understand everything that was discussed, esp stack alignment, but i know more than i did when i started watching. thanks guys! Oh one thing. Who is Matt? would be good to get a link to any content he has :)

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

    Greate video John very big fan hope to see more videos like this soon.

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

    Thank you matt and john!!!

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

    you have to keep going with this, AMAZING video learned so much and i solved this ctf by my own yesterday tho lol.. STILL learned a lot !!

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

    Very educational, amazing video!!

  • @AshokKumar-bu2gk
    @AshokKumar-bu2gk 3 роки тому

    Awesome work guys !!

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

    This is a gem John!

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

    That was the best tutorial on rop and ret2libc I have ever seen. By far!

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

    This saved my day, and could be a few more days reading into more confusions

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

    Such a morale boost to see better people than me screws up and have to hunt down bugs, great video ! :)

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

    How did I miss this goldmine of a video before? Got here from the new vid of Binary Exploits :3

  • @nekkrokvlt
    @nekkrokvlt 11 місяців тому

    Awesome video guys !

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

    I honestly didn't understand a shit but I loved the amount of structural content I learned, and how the channel works in general, thanks for the information! Im learning a lot :D

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

    Holy crap that was a ride for a noob like me. Thanks so much!

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

    That was awesome! I learned a lot, thank you. Very helpful how you went through the full debugging process and also prompted some really great questions. Nice work.

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

    Thank you for sharing.

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

    I am actually grateful that you didn't capture audio at the beginning because the setup of tools isn't so important and we could still enjoy it in a sped up version.

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

    Yes, more of these!

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

    This was an incredible video.
    VERY educational. More of these, please :)
    Now I want to be Matt when I grow up..

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

      Also I recommend you another hacker with a youtube channel called "Kindred Security" he teaches as well how to bypass security measures for binary exploitation

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

    This guys really good at breaking stuff down! It was still a little advanced for me but still really enjoyed it

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

    ret2libc ctfs is where i struggle so thank you so much for this. I will be using this for practise so i would be so happy if you could catogorize the video so i could jump places that would be AWESOME

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

    Had been waiting for this

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

    Matt is one of the most brilliant person I have ever heard in computer science field yet x)

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

    Hey John rbx here, glad you are taking the journey with binary exploitation quick tip for finding that "/bin/sh" address using strings itself
    strings -a -t x path2libc | grep "/bin/sh"

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

    Awesome video!! Please do more RE

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

    Awesome video as always. Just wanted to note that the /bin/sh address bug came from the fact that you copied the address offset from ghidra which, by default, will not load in binaries with a default base address of 0x00000000. You didn't typo! :p

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

    Amazing explanation !!!

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

    This is such a cool video! Could you just make a video tutorial on every section of the ShellCoder’s Handbook? 😂

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

    This was hell of a good video. Do that again with a more complex binary exploitation!

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

    wow amazing content learned a lot

  • @Bromon655
    @Bromon655 3 місяці тому

    That first 10 minutes had my head spinning 😵‍💫 I got completely lost

  • @compscilaw
    @compscilaw Місяць тому

    I prefer the weird commentary. So much more. I love the idea of playing the coding as fast as we can see it while commenting over it. Such a better way to digest the information.

  • @REktSigMa
    @REktSigMa 4 місяці тому

    1:48:37 its the "relative path vs absolute path. this is that move back path. Sort a like when your properly referencing folders in your program, like a header file.

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

    i really liking you stoff btw so i can learn more

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

    please when you do one of this videos make both persons voice equal i had to keep my hand on the volumes key entire time and add subtitles other than that thank you so much

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

    Really enjoyed the video and picked up some good notes, however if that was "basic", I think I need to search for the "ba" lessons :)

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

    Well done John and Matt. Although I've been doing these for a while, I still managed to learn new things. For next time, try to add one gadgets ;)

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

    John Hammond is one of the most likeable people on the internet. Great work man.

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

    Super interested in binary exploitation and the lower-level hacking that's more closely related to hardware elements of hacking. I'm happy this exists.

  • @cXedis
    @cXedis 2 роки тому +7

    13 months later, still amazing. It's funny that when this released none of it made sense to me but it's been a crazy year. Matt and John thanks for taking the time to explain in such awesome detail.

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

      Did you learn at school?

    • @biblemansings
      @biblemansings Рік тому +1

      I’m just starting my Cyber Security courses

    • @cXedis
      @cXedis Рік тому +1

      @@biblemansings not exactly? 20 years in IT, also BHIS has "Pay What You Can" classes you take for free. I have no formal edjumication in the field beyond those classes. I make my way by googlfu and a head that's sturdy enough to eventually break thru most walls...eventually.

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

      @@biblemansings ❤

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

      🎉

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

    I loved this. Btw readelf -W won't truncate the symbol names.

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

    That was very insightful and interesting. Too bad the sound levels were very uneven. Still, thanks for sharing!

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

    Thank you bro

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

    Super hype!

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

    thanks bro

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

    This is gold mate

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

    thanks fot your hard work! this videos are gold! just hope to technology used for the good of humanity...

  • @oneloveafrica8860
    @oneloveafrica8860 5 місяців тому +1

    he knows everything about that he's smart on revers engineering I like it wooow

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

    Any good reading material on the why I need to use pop_rdi and specifics? Replicating the success of this but Im kind of wondering about the why. Only have done shell code ones on windows(ecppt).

  • @cuishencheng
    @cuishencheng 6 місяців тому

    Really really cool

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

    Wow this was fun, reminds me of stepping through softIce in 1990's to crack hobbled programs, sitting down with reems of printer print out and a pen, working through by hand. Oh things were so much simpler back then.. And ida pro was freeware.. The only Advantage now is you don't have to go to library or wait an eternity to download a program

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

    Wow. Mindblown

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

    Great video! You and Matt make a great pair of teachers.
    I wanted to join your discord server but I don't think the link is working. The rest of your website works though :)

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

    Do more videos with him!!

  • @user-my5cu7oy5i
    @user-my5cu7oy5i 2 роки тому

    Friday night in lockdown…. COVID is getting me into hacking. Your videos are amazing!

  • @00eunderscore70
    @00eunderscore70 Рік тому

    Hi John, im just getting into Binary Exploitation and I would like to ask about the terminologies and how they work. For now what does the off-set do? I have seen it beeing used multiple times in different avenues of the video. Awesome educational video! Cheers

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

    That was great but I feel like Matt was too quiet compared to you, and when I heard you loud and clear sometimes I had problems with Matt. But overall love the vid. I feel like I'm going to return to it frequently

  • @everybot-it
    @everybot-it Рік тому

    I've just watched through an entire video where I understood most of the terminology, but almost none of what's actually going on. Complete repeat experience of 7-8 ys ago when I was watching HTML / CSS tutorials.... so let's not get too depressed here.... :D
    Immersion -> patterns -> copy-pasting -> failing -> following expert discussions way above my level -> another course on fundamentals -> suddenly things are familiar....

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

    Morning all.

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

    congrats on 420k

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

    Very cool video thank you! Although if you don’t mind, could you please edit the audio a little. You were really load while the speaker is almost indistinguishable. So when he talks I increase my volume, but then your comment comes in and my ears start bleeding. Otherwise very cool content!!

  • @yoshi5113
    @yoshi5113 3 роки тому +26

    For beginners that seem expert for me.. 😅

    • @robinhood3841
      @robinhood3841 3 роки тому +9

      Well binary exploitation is a bit advanced topic, you should at least have a basic on assembly so you can do some reversing on the binary , and know about stack and registers and how the variables and arguments laid in the stack and how pop and push operations works how the calling convention works in x86 and x64, what are the memory segments and what are the protection mechanisms of the memory, the techniques for bypassing those mechanism etc once you figure that out it won't look that hard, and remember practice is the key the more you practice the better you become

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

      There’s been enough binary exploiting this year

    • @khaledmohamed-ee6hf
      @khaledmohamed-ee6hf Рік тому

      ​@@robinhood3841 can you suggest a book to start reading

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

      @@khaledmohamed-ee6hf look into opensecurity2 1001 then do 2001 then look into pentester academy 86 x64 brother

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

      All of them freely available on UA-cam

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

    dude when are u going to take us on your room tour it would be short exiting

  • @d4rk-c1ph3r
    @d4rk-c1ph3r 3 роки тому

    Please some more videos please 🥺

  • @0x2a1A4
    @0x2a1A4 2 роки тому

    gold!