Web Security & Bug Bounty: Learn Penetration Testing
Offered By: Udemy
Course Description
Overview
What you'll learn:
- Learn Penetration Testing from scratch to become a bug bounty hunter and web security expert
- Discover, exploit, and mitigate all types of web vulnerabilities. Secure any of your future applications using best practices
- Setting up your Hacking Lab: Kali Linux and Virtual Machines (Works with Windows/Mac/Linux)
- How to make money from Bug Bounty Hunting and make a career of it
- Attacking Systems With Known Vulnerabilities
- Website Enumeration & Information Gathering
- Bug Hunter and the Burpsuite Tool
- HTML Injections
- Command Injection/Execution
- Broken Authentication
- Brutefroce Attacks
- Broken Access Control
- Security Misconfiguration
- Cross Site Scripting - XSS
- SQL Injection
- XML, XPath Injection, XXE
- Logging And Monitoring Best Practices
- Web Fundamentals
- Networking Fundamentals
- Linux Terminal Fundamentals
Just updated with all modern Bug Bounty and Penetration Testing tools and best practices! Join a live online community of over 900,000+ students and a course taught by industry experts. This course will take you from absolute beginner, all the way to becoming a security expert and bug bounty hunter to improve security for your clients and any future web applications you may create!
This course is focused on learning by doing. We are going to teach you how penetration testing works, by actually practicing the techniques and methods used by bug bounty hunters today. We will start off by creating our virtual hacking lab to make sure we keep your computers safe throughout the course, as well as doing things legally, and having our computers set up for penetrations testing.
We dive into topics like:
1) Introduction To Bug Bounty:
Here we just touch on theory of what exactly is Bug Bounty and Penetration Testing
Quick example of one vulnerability that we will cover.
Pen Tester career path.
2) Our Virtual Lab Setup:
Create our virtual lab that we will use throughout the course (Kali Linux machine).
Install a vulnerable VM called OWASPBWA that we will attack.
Create an online account on TryHackMe platform.
With almost every vulnerability, we will cover an example on TryHackMe and also on our vulnerable Virtual Machine.
From here choose 2 different paths depending on the knowledge that you already have.
3) Website Enumeration & Information Gathering
This is where we start with the practical Bug Bounty/ Website Penetration Testing. We cover numerous tactics and tools that allow us to gather as much information about a certain website. For this, we use different tools like Dirb, Nikto, Nmap. We also use google hacking which is useful skill to have once tools are not available.
4) Introduction To Burpsuite
This is a very important tool for a Bug Hunter. Pretty much every Bug Hunter out there knows about this tool (and probably uses it). It has many different features that make hunting for bugs easier. Some of those features are crawling the webpage, intercepting and changing HTTP requests, brute-force attacks and more.
5) HTML Injection
This is our first bug. It's also one of the easiest so we start with it. HTML injection is essentially just finding a vulnerable input on the webpage that allows HTML code to be injected. That code is later rendered out on the page as real HTML.
6) Command Injection/Execution
Our first dangerous bug. Injecting commands is possible when server runs our input through its system unfiltered. This could be something like a webpage that allows us to ping other websites but doesn't check whether we inputed a different command other than the IP address that it needs. This allows us to run commands on the system, compromise system through a reverse shell and compromise accounts on that system (and all the data).
7) Broken Authentication
This is another vulnerability that occurs on websites. It essentially refers to weakness in 2 areas session management and credential management. It allows the attacker to impersonate legitimate users online. We show different examples through cookie values, HTTP requests, Forgot password page etc.
8) Brutefroce Attacks
This can be a problem even if the website is secure. If client has an easy and simple password set, then it will be also easy to guess it. We cover different tools used to send lots of password on the webpage in order to break into an account.
9) Sensitive Data Exposure
This isn't a vulnerability in the system. Instead it's when developers forget to remove important information during production that can be used to perform an attack. We cover an example where developer forgot to remove the entire database from being accessible to regular users.
10) Broken Access Control
Access control enforces policy such that users cannot act outside of their intended permissions. Failures typically lead to unauthorized information disclosure, modification or destruction of all data, or performing a business function outside of the limits of the user. Here we cover a vulnerability called Insecure direct object reference. A simple example would be an application that has user IDs in the URL. If it doesn't properly store and manage those IDs an attacker could potentially change the ID and access the information of another user.
11) Security Misconfiguration
We put this as a separate section, however all the previous vulnerabilities also belong to it. Here we show an example of a vulnerability where the admins of websites haven't changed the default credentials for a certain application that runs on their server.
12) Cross Site Scripting - XSS
This is a big vulnerability and is very common in many websites out there. This vulnerability allows us to execute Javascript code on the webpage. This is due to user input not being well filtered and processing the input as javascript code. There are 3 main types of XSS which are Stored, Reflected and DOM based XSS. We cover these 3 plus some unusual ones.
13) SQL Injection
Another big vulnerability out there and a really dangerous one. Many websites communicate with the Database, whether it being a database that stores product information or user information. If the communication between the user and the database is not filtered and checked, it could allow the attacker to send an SQL query and communicate with the database itself, allowing them to extract the entire database or even delete it. There are couple of types of SQL injection such as Error based or Blind SQL injection.
14) XML, XPath Injection, XXE
XXE or XML External Entity is a vulnerability that allows an attacker to interfere with a website that processes XML data. It could allow the attacker to run a reverse shell or read files on the target system making it another severe vulnerability.
15) Components With Known Vulnerabilities
Even if the website might not be vulnerable, the server might be running some other components/applications that have a known vulnerability that hasn't been patched yet. This could allow us to perform various types of attacks depending on what that vulnerability is.
16) Insufficient Logging And Monitoring
Logging and monitoring should always be done from security standpoint. Logging allows us to keep track of all the requests and information that goes through our application. This can help us determine whether a certain attack is taking place or if the attack already happened, it allows us to examine it a little deeper, see which attack it was, and then apply that knowledge to change the application so that the same attack doesn't happen again.
17) Monetizing BugBounty Hunting
After practicing and covering all the vulnerabilities, it's important to mention how we can monetize our knowledge. We mention different platforms that can be used to start your career as a bug hunter, and we also take one platform as an example to show how a bug bounty program looks like and what to pay attention to when applying.
18) Bonus - Web Developer Fundamentals
For anyone lacking some knowledge in Web Development or knowledge in how exactly websites work and are structured
19) Bonus - Linux Terminal
For anyone lacking some knowledge in simple usage of linux terminal as we will be using it throughout the course
20) Bonus - Networking
Fundamentals of networking and some basic terms used as Penetration Testers or Bug Bounty hunters.
We guarantee you this is the most comprehensive online course on bug bounty hunting, penetration testing, and web security skills! Have a look at the course outline video to see all the topics we are going to cover, all the projects we’re going to build, and all the techniques you’re going to learn to become a top penetration tester!
Taught By:
Andrei is the instructor of the highest rated technical courses on Udemy as well as one of the fastest growing. His graduates have moved on to work for some of the biggest tech companies around the world like Apple, Google, Tesla, Amazon, JP Morgan, IBM, UNIQLO etc... He has been working as a senior software developer in Silicon Valley and Toronto for many years, and is now taking all that he has learned, to teach programming skills and to help you discover the amazing career opportunities that being a developer allows in life.
Having been a self taught programmer, he understands that there is an overwhelming number of online courses, tutorials and books that are overly verbose and inadequate at teaching proper skills. Most people feel paralyzed and don't know where to start when learning a complex subject matter, or even worse, most people don't have $20,000 to spend on a coding bootcamp. Programming skills should be affordable and open to all. An education material should teach real life skills that are current and they should not waste a student's valuable time. Having learned important lessons from working for Fortune 500 companies, tech startups, to even founding his own business, he is now dedicating 100% of his time to teaching others valuable software development skills in order to take control of their life and work in an exciting industry with infinite possibilities.
Andrei promises you that there are no other courses out there as comprehensive and as well explained. He believes that in order to learn anything of value, you need to start with the foundation and develop the roots of the tree. Only from there will you be able to learn concepts and specific skills(leaves) that connect to the foundation. Learning becomes exponential when structured in this way.
Taking his experience in educational psychology and coding, Andrei's courses will take you on an understanding of complex subjects that you never thought would be possible.
Aleksa is a Penetration Tester with over 5 years of experience in Ethical Hacking and Cyber Security. As a self made hacker that started from a young age he has learned it all from Ethical Hacking and Cyber Security to Online Privacy and How To Become Anonymous Online.
He has worked and discovered vulnerabilities for multiple companies and governments. He also worked as a freelancer that tested private web applications. He believes that Online Security and Privacy is something valuable but also that it doesn't get enough attention as many cyber attacks are being executed every single day! No System is Safe and that is why we are here to discover vulnerabilities and secure them before the bad guys attempt anything malicious!
His main goal as an instructor is to teach the foundations of Ethical Hacking and Cyber Security to anyone who wants to pursue this as a career or wants to learn it to protect themselves online. Cyber attacks and online security is something that changes really fast so we as hackers must always be ready to learn new things in order to better protect Networks, Websites, Machines .. and also people!
See you inside the courses!
Taught by
Andrei Neagoie, Aleksa Tamburkovski and Zero To Mastery
Related Courses
Advanced Cyber Security TrainingEC-Council via FutureLearn Advanced Python Scripting for Cybersecurity
Infosec via Coursera Ciberseguridad
Universidad de los Andes via Coursera Fundamentals of Computer Network Security
University of Colorado System via Coursera Ethical Hacking Course Certification
Cybrary