There’s a well-known saying that before you judge someone you should always “walk a mile in the other person’s shoes.” You can’t get the full picture behind a person without first living like they do and understanding what goes on in their heads.
In organizations around the world, there’s a big push to be more “security aware,” and it’s an important part of our jobs. We’re defenders, and we have a big job to do in making sure our applications and systems are secure from any threat that might come at us. But there’s another side to being good at defending your applications and systems. Those dealing with security also need to “walk a mile in the other persons shoes” – but in our case, it’s about understanding the attackers side not so we can empathize, but so we can minimize the risks posed by and to our applications.
Why do we need to learn how to hack apps? Because as builders and defenders, we see our code in totally different ways than hackers see it. Without practicing our hacking skills, we’re playing a one-sided game by only playing defense against attackers. It’s important to act like attackers on your own systems. To attack both your public and private web apps from the viewpoint of hackers. To practice infiltrating apps through SQLi, XSS, CSRF, and other methods of cyber attack hackers continue to use, year after year. You can’t know the real threats your apps are under until you’ve attacked them yourself.
And with that, we give you another list of the best hacking sites and downloadable projects available on the web where you can legally practice your hacking skills. Some offer tutorials or walk-throughs to help you if you get stuck, others are more DIY in style. All these sites offer something for us defenders and builders about what the attacker mindset looks at when trying to hack your app. Have fun!
“The unfortunate reality of the web today is that you’re going to get hacked,” writes Hack Yourself Firsts creator, Troy Hunt (@TroyHunt). And it’s with that inevitability that Troy set out to create a site dedicated to teaching what to look out for when it comes to security vulnerabilities and helping minimize their impacts on web apps.
The site is aimed towards developers but is suitable for anyone looking to gain some attack techniques – purely for positive purposes, of course. With 50 vulnerabilities to hunt for, you could get lost trying to exploit them all – but that’s all the fun.
The site goes along with Troy’s “Hack Yourself First: How to go on the Cyber-Offense” course offered on Pluralsight, offering detailed walk-throughs of exploiting various vulnerabilities, from XSS to cookies to cross-site attacks, but is also available to the general public.
Juice Shop is available to play and download here and flip through Björn’s SlideShare on the app to get an overview of what the app is and how it was made.
This platform is innovative, as it not only hosts vulnerable apps but also allows others to contribute their own vulnerable apps. Powered by eLearnSecurity, Hack.me “aims to be the largest collection of ‘runnable’ vulnerable web applications, code samples and CMS’s online.”
Check out Hack.me here.
This OWASP open-source project offers ten realistic scenarios full of known vulnerabilities (especially, of course, the OWASP Top Ten) for those trying to practice their attack skills. Hackademic is great for educational purposes in classrooms and in the workplace, and developers are encouraged to contribute new scenarios and vulnerabilities.
Download Hackademic here.
Hack This Site is more than just a website; it’s a platform for education and a community for security enthusiasts. Hack This Site is a great stopping point for security professionals and developers alike, as it offers varying levels and topics to delve into as you practice hacking.
Access Hack This Site here and read more about it here.
As “one of the oldest challenge sites still around,” you can rest assured that Try2Hack is an oldie but a goodie. The game runs on levels, and there’s no skipping ahead to advanced levels, so more experienced hackers can get a nice ego boost or refresher course in the beginner levels. For newbies, there is an active IRC channel where you can ask for help from others or just chat, and a GitHub repo for walkthroughs if you don’t get help in the forum.
Try your hand at Try2Hack here.
A multiplayer hacking simulation game, SlaveHack allows players to play either defense or offense, with scenarios for both. The goal of the game is to manage your software and hardware and make the computers you hack or defend your ‘slaves’ – hence the name. SlaveHack doesn’t actually require hacking skills, but we included it because it can help security people to see their systems as malicious hackers would see it, hopefully offering a glimpse into real-world ways to secure your systems and applications. The SlaveHack forum helps players connect with each other and is available when you get stuck.
Check out SlaveHack here.
Deemed ‘the Hacker’s Playground,’ HackThis!! offers various levels and areas of study when practicing your hacking skills. Similar to Hack This Site, HackThis!! is also a good place to go for security-related news, presentations and to connect with like-minded folk in their forum.
For newbies, sites like HackThis!! are especially helpful for quickly getting up to speed on hacking techniques, major vulnerabilities, and the scope of the security industry. But with over 50 levels (and new ones added on a regular basis), the site offers something for everyone. HackThis!! even holds CTF competitions every once in awhile, so that’s something to keep your eye out for if virtual CTF’s are your thing!
Hack This is available online and is also downloadable for local machines here.
This web app hacking game, created by @albinowax, has a focus on “realism and difficulty,” and offers a few levels as an online version and more advanced levels as a downloadable full version. Players even get to play the Blackhat hacker scenario, “hired to track down another hacker by any means possible.”
Check out the demo version with beginner levels and the downloadable advanced version here.
Peruggia is yet another legal project dedicated to helping teach developers and security professionals more about common attacks aimed at web apps. Created as an image gallery, the downloadable project contains lots of different types of vulnerabilities, all primed to teach developers, security newbies, and anyone else interested in learning how to find and mitigate security issues in their code.
Download Peruggia here.
Designed for both pentesting tool testing as well as learning manual code review and how to look out for exploitable vulnerabilities, this web app was created by Simon Bennetts (@psiinon). Full of OWASP Top 10 vulnerabilities like XSS, SQL injection, CSRF, Insecure Object References and more, the project also offers various hacking challenges for those trying to make a game out of it for themselves.
Various challenges to complete in BodgeIt
Start finding security bugs in the BodgeIt Store here. In addition, the InfoSec Institute offers a few tutorials for how to setup and manual test the vulnerable web app for the hacking challenges.
Offered by Bonsai Security, Moth is “a VMware image with a set of vulnerable Web Applications and scripts.” The team designed it as a way to test AppSec tools, but it’s also a great way to practice your exploit skills and see which vulnerabilities you can pick apart.
Check out more about Moth here.
Last but certainly not least, the EnigmaGroup offers another challenge site with a community forum built around it. Built for anyone looking to improve their security savvy, EnigmaGroup offers a wide array of vulnerabilities, starting with the OWASP Top 10. “Are you more of a hands-on learner, than one that can learn from just reading out of a book,” the site asks. If so, EnigmaGroup is another top destination for those learning how to “know your enemy” – in order to defeat the enemy.
Get started with EnigmaGroup here – after reading the FAQ section here that will help you begin smoothly.