18:00 Using python instead of the recommended tool reminds me those teachers really explains the answer to you rather than tell you that is the answer.
@@_JohnHammond Yes. But is there any specific room in THM or any particular book/topic(s) that you'd recommend I study in order to learn more about linux privesc? I've already done commonprivesc on THM.
I just wanna say, your the only channel I have with notifications turned on. I'm part of a security group but upper management. Basically I get the reports. Iv grown a large interest in how my subordinates conduct their pen testing. Watching you has 1. Impressed me and 2. taught me how my subordinates conduct their pen testing. Kudos with the python script.
I got stuck on the last step, ran out of the ideas, find similar approach to what you used but I didn't know the trick with stty so input gave me a lot of pain, so I eventually gave up :/ Now I can finally complete it! :D Great video, as always! :)
John, thank you for such a comprehensive explanation and a fascinating adventure! It's a pleasure to watch your videos, I am really waiting for more your episodes of try hack me!
Thanks John! Been watching your videos for a month or so now and with a little help in that last bit (stabilizing the shell and actually running the service using systemctl) I just finished my first TryHackMe room. Sweet Victory!
It really helps when you have a solid understanding of networking, programming & basic linux fundamentals. I'm pretty sure a couple years ago i would of shat bricks and thought you were gandalf, even though you are basically gandalf, thank you
Bro, thank you very much for this detailed walk through. I just finished a homework with a privilege escalation exercise. This solidified everything I did and more. Keep the great content coming!
Thanks for this, I had waited to finish the room before I watched this, and find your approach very helpful and instructive, especially replacing burp with a python script!
Thank you so much for the walkthrough. I was struggling so much with the systemctl step. I didn't realize I needed to stabilize the shell to make the GTFO script to work.
John, you are doing amazing job by creating these handholding sessions for Cyber Security professionals !! Many thanks to you. Keep up the great work!!
Hey, man! Thanks for explaining that python script, I would rather use python as well as it also helps to keep touch with the language or else we tend to forget things. These niche things like slapping the python script and explaining it makes me wanna watch these videos... Keep it up.. learning a lot
Really hand trick i didn't know about stabilising the shell using Python will be sure to use that a lot more often. Completed the room before watching your video as i like to do them without help. Awesome content regardless, I learn a lot from the way you think thanks for sharing :)
I was struggling with burp, got to learn python and it was so much easier. Of course with your code :P baby steps...baby steps.... thanks man im hooked on your vids.
Tried at yesterday for the first time. Followed the same process untill I found systemctl. First tried to do prevesc using setuid but couldn't bcz I'm a massive noob. But then I exploited the vulnerability where systemctl can run process as any user to run bash as root and pipe it to my tun0. Then used netcat to reverse shell. But now I know where I did mistake while trying setuid stuff. THANK YOU.
wow, that was a beautiful walk through and a top $ explanation as I was having an issue understanding the last part about systmctl privesc part but you made it so much easy and the python script is top pro man, as burp didn't work as it showed all .php files as status 200 including the .phtml., where your script nailed it 100%.
Hey John! Thanks for the video. At around 19:29, you said "Ctrl Z to foreground that" but it looked more like you were sending the NC php shell to the background instead, especially since you sent it back to foreground after you did "stty raw -echo". Did you mean background and you said foreground by accident?
He put the process in the background with CTRL+Z then 'stty raw -echo', then to pull the process back up he used 'fg (process id)' to see your process id for the command you put in the background type 'bg' that will give you a job list, then use 'fg (enter job list number)' to pull the process back up to the front. That is what I did, probably a better way but yeah.
Great videos as always. Only thing I could not get to work was the very last part. Copy & Pasting the code for systemctl. I did everything 3 times exactly as you did and every time I could not get it to get me root for whatever reason. I spent a couple hours banging my head and still couldn't get it to work. Lost for answers. Any ideas? I made sure that I had change to /home/bill dir before I copy&pasted. No idea. Thanks for making the videos!!
Awesome video John! There was one thing I didn't quite understand, what did changing the ExecStart line do at the end? How come keeping the line the way it was wouldn't work?
Hmm thank god the youtube algorirthm showed your channel, I'm a web dev and i wasn't that interested in cyber security but you got me hooked ! Please continue on the TryHackMe site as it is very well made and really accessible, even to n00bs like me !
@Peter Lustig how is he a script kiddy? This is far from saying "i can hack your bank account" while sitting in cmd. He thinks in a logical way and even creates his own little python scripts to solve problems, not a script kiddy if you ask me.
Hi John - with regard to the part in 19:08/29:34 . How do know which url I should point to in order to trigger the phtml reverse shell. Im assuming if we do not know of the instruction - " :3333/internal/uploads/php-reverse-shell.phtml "
@@_JohnHammond haha ignore me i had to actually start the service created in tmp folder for some strange reason just got it hopefully as time goes on tryhackme will be less buggy i submitted a correct flag yesterday 5 times and did not get the correct flag indicator until number 5 after refreshing LULz
Hey John, thanks so much for this walk-through - awesome as always. I'm just wondering what was the though-process underpinning editing the standard script from GTFObins? I was able to do the whole machine blind until this part, and got stuck there for a good hour or so. very grateful for your insight but I feel like I cheated a bit by just copying your actions w/o understanding really what went into those edits. Thanks!
He put the process in the background with CTRL+Z then 'stty raw -echo', then to pull the process back up he used 'fg (process id)' to see your process id for the command you put in the background type 'bg' that will give you a job list, then use 'fg (enter job list number)' to pull the process back up to the front. That is what I did, probably a better way but yeah.
@JohnHammond I ve been following you sir for a very long time.. thank you for all the amazing help ur content has done not only to me but to so many..!!! you are just amazing at what you do.. and i wish this channel reaches over a million soon.so more people can benefit from your knowledge...!!! and also can you tell me how can i learn python specifically for cybersec.. i have good basics of python.. but cant script or understand exploits..can u help me where i can learn from.. thanks a lot..!!!!!!!
So I have a question / comment. One thing you didn't show since you didn't use burpsuite is how you would find the /internal/uploads folder. It's nice that the THM site provided that for you in it's hints section, but if this were a blank box without that hint, using your python script how would you have been able to tell where the .phtml file uploaded to to be able to run it? What tool, other than burp, would you have used to find where your reverse shell landed?
Quick question, why did you check the body response rather than the HTTP response code in your python script? For example checking if the response was 200 or something else, I'd imagine it would return a 401 if it didn't allow the extension.
Great stuff! Appreciate that you are adding some extra hints which i did't get in writeups, same for python. I noticed you are not closing files stream in for loop where you are checking different extensions upload. During scripting very often I don’t bother also :P but as we know as good practice we can use context managers like with statement or, f.close(). This is not the case here - but I just wonder does such unclose files may be some kind of vulnerability? Did you came across on that during challenges?
Lol I just did this room! I actually uploaded a . service file and used systemctl to start a reverse shell as root but your methods seem so much more efficient! Just one question: what were those commands you used to make the first shell more stable?
Can you make video about how to make python scripts to do penetration testing and web application, it's really cool to be able to code on the fly without relying on Burp Suite.
Im currently in the room, and uhhh, using the recommended flag they have returns that the host is blocking ping probes and to try -Pn, and of course, when i use -Pn and any other number and combinations of flags, it just returns that all 1000 ports scanned are up, nothing else. ive been on this for 3 hours now xD ive tried, regular nmap, nmap -sC -sV ( -Pn ) ( -A) (-f) and each of those individually. ive reset my box twice now, did it break or am i just completely overthinking this?
Right, you would still need something that would allow you to run commands as root -- with that you can do whatever you would like for your privesc, but making the /bin/bash SUID makes for an easy technique. Thanks for watching!
Probably this is allowed havent touched python in a while but why not something like [f"php{i}" for i in range(1, 10)]+[...aditionals] This would "support" future versions if x function hasn't changed, easier to add multi support for additional list items also.
18:00 Using python instead of the recommended tool reminds me those teachers really explains the answer to you rather than tell you that is the answer.
I had been struggling to escalate my privileges and you taught me how to do that in such an easy manner. You're amazing. Thank You!
There are a lot of other techniques, but I like this quick win if you have some vector to run a command as root. Thanks so much for watching!
@@_JohnHammond Yes. But is there any specific room in THM or any particular book/topic(s) that you'd recommend I study in order to learn more about linux privesc? I've already done commonprivesc on THM.
@@AliTaqi Did u get any input? , do share if u get any :)
@@vijaykishorea3987 would've been amazing, but sadly, no.
@@AliTaqi I think watching cybermentor's linux privesc course , can help us !!
Just finished Vulnversity. Your python script blew my mind! Got me wanting to ramp up my python skills. Thanks man!
Just did this box today, it was interesting to see the other ways we can use to address the challenges. Great Video!
Happy to hear that! Thanks for watching!
I just wanna say, your the only channel I have with notifications turned on. I'm part of a security group but upper management. Basically I get the reports. Iv grown a large interest in how my subordinates conduct their pen testing. Watching you has 1. Impressed me and 2. taught me how my subordinates conduct their pen testing. Kudos with the python script.
I got stuck on the last step, ran out of the ideas, find similar approach to what you used but I didn't know the trick with stty so input gave me a lot of pain, so I eventually gave up :/
Now I can finally complete it! :D Great video, as always! :)
Happy to hear that! Thanks so much! And thanks for watching!
A half hour video and I will be spending hours taking notes. I really enjoy learning from you. Thanks.
John, thank you for such a comprehensive explanation and a fascinating adventure! It's a pleasure to watch your videos, I am really waiting for more your episodes of try hack me!
Appreciate all the kind words, thank you so much!
Thanks John! Been watching your videos for a month or so now and with a little help in that last bit (stabilizing the shell and actually running the service using systemctl) I just finished my first TryHackMe room. Sweet Victory!
I actually enjoyed these videos even though I'm just a newbie in this field. I look forward to seeing more of these!
get on TryHackMe, there are a lot of free rooms :)
19:10 man did that shit escaladed quickly lolll good stuff!
It really helps when you have a solid understanding of networking, programming & basic linux fundamentals. I'm pretty sure a couple years ago i would of shat bricks and thought you were gandalf, even though you are basically gandalf, thank you
Loved the alternative ways you showed us. Thanks as always
Definitely liked watching you do some "dirty coding" in python. And the "bash -p" trick was super clever, I never would have thought of that.
Happy to hear that, thanks so much! And thanks for watching!
What does bash -p do?
Bro, thank you very much for this detailed walk through. I just finished a homework with a privilege escalation exercise. This solidified everything I did and more. Keep the great content coming!
THANK YOU I WAS STUCK AND THIS HELPED ME SO MUCH!!!
Your explanations and everything were clear, concise, and super helpful. A+
Thank you!!!
dude you are so humble, I just love your videos and personallity!
Appreciate that, thank you so much! And thanks for watching!
Just did the box yesterday , glad to see other way to get the allowed extension
Just a quick little Python script -- saves us from dealing with BurpSuite a bit ahaha. Thanks so much for watching!
Thanks for this, I had waited to finish the room before I watched this, and find your approach very helpful and instructive, especially replacing burp with a python script!
Thank you so much for the walkthrough. I was struggling so much with the systemctl step. I didn't realize I needed to stabilize the shell to make the GTFO script to work.
John, you are doing amazing job by creating these handholding sessions for Cyber Security professionals !! Many thanks to you. Keep up the great work!!
Hey, man! Thanks for explaining that python script, I would rather use python as well as it also helps to keep touch with the language or else we tend to forget things. These niche things like slapping the python script and explaining it makes me wanna watch these videos... Keep it up.. learning a lot
It feels great to find that I can understand more of what you are doing lately!
Ahaha excellent! Thanks so much for watching!
This is the best YT channel, hands down.
Well I am very flattered, thank you so much! And thanks for watching!
Really hand trick i didn't know about stabilising the shell using Python will be sure to use that a lot more often. Completed the room before watching your video as i like to do them without help. Awesome content regardless, I learn a lot from the way you think thanks for sharing :)
I love it when you take some detours and present showcases in python :)
I was struggling with burp, got to learn python and it was so much easier. Of course with your code :P baby steps...baby steps.... thanks man im hooked on your vids.
Watching your video and actually understanding keeps me smiling. Thanks for the great explanation!
So I have absolutely no idea what you’re doing, but it’s presented in such a way that I feel like I do. Either way, thoroughly enjoyable!
Watching you code the Python script was super helpful. Thank you!
Thanks for your videos man !! They are actually educational and like it makes sense so like thanks man ♥️♥️
Love it! Please do more of these
After watching this video , I am a great fan of you and want to become like you .
So much knowledge in this video... Learnt a lot!
nice explanation, got here bcuz been stuck on that privesc part for several hours, got to learn something new, thanks
I loved the shoutout to Ippsec lol. Great channel man!
Thanks so much! And thanks for watching!
Did this box like an hour before watching this! Awesome video
Perfect Technique John, thanks for your sharing.
Love your clear explanation
I am new in OSCP. Those skill helps me a lot.
Loved the Python script instead of BurpSuite - thanks for showing us that little trick!
Thanks John, I really liked that method you showed to get a fully functioning reverse shell. I look forward to trying it out.
Doing the youtube algorithm thing. Tho I actually came for the video.
Thank you so much! And thanks for watching!
Tried at yesterday for the first time. Followed the same process untill I found systemctl. First tried to do prevesc using setuid but couldn't bcz I'm a massive noob. But then I exploited the vulnerability where systemctl can run process as any user to run bash as root and pipe it to my tun0. Then used netcat to reverse shell. But now I know where I did mistake while trying setuid stuff. THANK YOU.
wow, that was a beautiful walk through and a top $ explanation as I was having an issue understanding the last part about systmctl privesc part but you made it so much easy and the python script is top pro man, as burp didn't work as it showed all .php files as status 200 including the .phtml., where your script nailed it 100%.
Hey John! Thanks for the video. At around 19:29, you said "Ctrl Z to foreground that" but it looked more like you were sending the NC php shell to the background instead, especially since you sent it back to foreground after you did "stty raw -echo". Did you mean background and you said foreground by accident?
After CTRL-Z and "stty raw -echo" command, what keys brings the process in backgroud active? CTRL-C? Tks.
Ummm... I think this could help: blog.ropnop.com/upgrading-simple-shells-to-fully-interactive-ttys/
He put the process in the background with CTRL+Z then 'stty raw -echo',
then to pull the process back up he used 'fg (process id)'
to see your process id for the command you put in the background
type 'bg' that will give you a job list, then use 'fg (enter job list number)'
to pull the process back up to the front. That is what I did, probably a better way but yeah.
Great videos as always. Only thing I could not get to work was the very last part. Copy & Pasting the code for systemctl. I did everything 3 times exactly as you did and every time I could not get it to get me root for whatever reason. I spent a couple hours banging my head and still couldn't get it to work. Lost for answers. Any ideas? I made sure that I had change to /home/bill dir before I copy&pasted. No idea. Thanks for making the videos!!
same issue here, were you able to resolve it?
many thanks to you John for the embedded python lesson
this is amazing to watch, even i don't understand any of this (actually a bit), but its interesting to watch, seriously i never skip the vid xD
John, the last 3 or 4 minutes of that video, I could swear you melted a few keys!
Awesome video John! There was one thing I didn't quite understand, what did changing the ExecStart line do at the end? How come keeping the line the way it was wouldn't work?
Congrats to hit 100k in very advance !.
Thank you for the bin/bash hint!!!
AWESOME, i loved the python script, very instructive as always , thanks pal !!!
Happy to hear that! Thanks so much for watching!
Great video, thank you.
I learned a lot from you.
💗I like your hairstyle too 💗
You are amazing bro!
I've been using Linux in some capacity since 1998 and this is the first I've truly understood SUID.
Thanks for the video!
Hmm thank god the youtube algorirthm showed your channel, I'm a web dev and i wasn't that interested in cyber security but you got me hooked !
Please continue on the TryHackMe site as it is very well made and really accessible, even to n00bs like me !
I would use command: lsof -nP | grep -i listen -> to check which user is running on port 3333
Ooooh, good call! Thanks for sharing -- and thanks for watching!
I decided to just check the /home/ directory. It shows all users, and pretty much anyone has access to that directory
@Peter Lustig why?
@Peter Lustig how is he a script kiddy? This is far from saying "i can hack your bank account" while sitting in cmd. He thinks in a logical way and even creates his own little python scripts to solve problems, not a script kiddy if you ask me.
Hi John - with regard to the part in 19:08/29:34 . How do know which url I should point to in order to trigger the phtml reverse shell.
Im assuming if we do not know of the instruction - " :3333/internal/uploads/php-reverse-shell.phtml "
pressed Like button four times, this is how much i liked your video)
Your hair cut's great
Really enjoyed that python scripting I would love to see more challenges solved that way. Been wanting more coding projects and tasks, thanks m8!
Very happy to hear that! Thanks for watching!
@@_JohnHammond having an issue with the SUID priv esc it doesnt do anything just goes black but idk going to keep cracking away at it i guess
@@_JohnHammond haha ignore me i had to actually start the service created in tmp folder for some strange reason just got it hopefully as time goes on tryhackme will be less buggy i submitted a correct flag yesterday 5 times and did not get the correct flag indicator until number 5 after refreshing LULz
Hey John, thanks so much for this walk-through - awesome as always. I'm just wondering what was the though-process underpinning editing the standard script from GTFObins? I was able to do the whole machine blind until this part, and got stuck there for a good hour or so. very grateful for your insight but I feel like I cheated a bit by just copying your actions w/o understanding really what went into those edits. Thanks!
John, please explain what you did at 19:17, I was able to replicate it, but I don't get it.
Gracias bro!, aprendí mucho
Thank you for the content! I just got into cybersecurity. I can't wait to see more.
-Cheers
Gotta love that python demo ...
I came for John's haircut... And was not disappointed.
Ha! Thanks! And thanks for watching!
Why did he -echo his own shell ?
I finnally learned how to do priv escalation, Im never able to pull it off but now you learned it me
That is good to hear! Thanks so much!
@@_JohnHammond your welcome
Didn't get what you said at 19:38 "Get around that by typing FG(something)" If anyone knows what that was, please let me know here.
He put the process in the background with CTRL+Z then 'stty raw -echo', then to pull the process back up he used 'fg (process id)' to see your process id for the command you put in the background type 'bg' that will give you a job list, then use 'fg (enter job list number)' to pull the process back up to the front. That is what I did, probably a better way but yeah.
thank you for the video, really interesting and valuable
@JohnHammond
I ve been following you sir for a very long time.. thank you for all the amazing help ur content has done not only to me but to so many..!!!
you are just amazing at what you do.. and i wish this channel reaches over a million soon.so more people can benefit from your knowledge...!!!
and also can you tell me how can i learn python specifically for cybersec.. i have good basics of python..
but cant script or understand exploits..can u help me where i can learn from.. thanks a lot..!!!!!!!
Hello John, it's been a while since that video but why does /bin/systemctl seems a little bit odd as you said?
So I have a question / comment. One thing you didn't show since you didn't use burpsuite is how you would find the /internal/uploads folder. It's nice that the THM site provided that for you in it's hints section, but if this were a blank box without that hint, using your python script how would you have been able to tell where the .phtml file uploaded to to be able to run it? What tool, other than burp, would you have used to find where your reverse shell landed?
awesome video 👍
Thank you! And thanks for watching!
Any resource out there that would explain 26:28 ( "chmod +s /bin/bash") more? This is an awesome work around that is a time saver!
Thanks @Señor ! But how do you even learn that this is even an option you can take? He completely re-did the script
Thanks @Señor !
After you entered "stty raw -echo" what was your next step? It sounded like "specify fg"
Hi, what you did 19:34 ?
Quick question, why did you check the body response rather than the HTTP response code in your python script? For example checking if the response was 200 or something else, I'd imagine it would return a 401 if it didn't allow the extension.
Great stuff! Appreciate that you are adding some extra hints which i did't get in writeups, same for python. I noticed you are not closing files stream in for loop where you are checking different extensions upload. During scripting very often I don’t bother also :P but as we know as good practice we can use context managers like with statement or, f.close(). This is not the case here - but I just wonder does such unclose files may be some kind of vulnerability? Did you came across on that during challenges?
For basic and amateurs . I like it
28:08 "...press the dislike button twice to let me know how much you hated it" lmao
Method question… when you find a file upload page is your first thought always a php reverse shell? And what drives the thought process? Thanks!
Lol I just did this room! I actually uploaded a . service file and used systemctl to start a reverse shell as root but your methods seem so much more efficient! Just one question: what were those commands you used to make the first shell more stable?
I tried to use the privilege escalation method that you did but the services don't seem to load
Can you make video about how to make python scripts to do penetration testing and web application, it's really cool to be able to code on the fly without relying on Burp Suite.
Could not catch what you did to get your curser back once you used stty raw -echo
i didnt quite get what u did to stabilize the shell. can u explain the ctrlZ part?
i dont understand how worked the privileges escalation
Im currently in the room, and uhhh, using the recommended flag they have returns that the host is blocking ping probes and to try -Pn, and of course, when i use -Pn and any other number and combinations of flags, it just returns that all 1000 ports scanned are up, nothing else. ive been on this for 3 hours now xD ive tried, regular nmap, nmap -sC -sV ( -Pn ) ( -A) (-f) and each of those individually. ive reset my box twice now, did it break or am i just completely overthinking this?
forgot to mention, ive also used -sU and -sS, nothing so far has worked
Damn you're so inspiring
hey i'm doing this box and i get to the privilege escalation part. But the python -c is not working for me
Good job bro ♥️
Thanks so much! And thanks for watching!
So in order for your bin bash priv esc to work, you need another suid bit or something running as root to try and piggyback on?
Right, you would still need something that would allow you to run commands as root -- with that you can do whatever you would like for your privesc, but making the /bin/bash SUID makes for an easy technique. Thanks for watching!
Probably this is allowed havent touched python in a while but why not something like [f"php{i}" for i in range(1, 10)]+[...aditionals]
This would "support" future versions if x function hasn't changed, easier to add multi support for additional list items also.
Oh man Thnks so much
Nice video man! 😄
Thanks so much! And thanks for watching!
Kinda lost me at the end, with the suid part, particularly with running the bin/bash -p, but very cool nonetheless
Me too, but after doing a little reading up on suid, it seemed simple.