We may earn an affiliate commission when you visit our partners.
Course image
Paul Chin, PhD

If you want to learn ethical hacking  & also reverse engineering the fun and easy way like playing a computer game, then this course is for you. There exists on the Internet several websites which allows people to hack  and also to reverse software. These websites typically have different levels from easy to advanced. By solving each level and gradually levelling up, you will learn hacking and reversing.  All you need is a PC. In this course I am only using a Windows PC to do ethical hacking and reverse engineering.

Read more

If you want to learn ethical hacking  & also reverse engineering the fun and easy way like playing a computer game, then this course is for you. There exists on the Internet several websites which allows people to hack  and also to reverse software. These websites typically have different levels from easy to advanced. By solving each level and gradually levelling up, you will learn hacking and reversing.  All you need is a PC. In this course I am only using a Windows PC to do ethical hacking and reverse engineering.

The website we will be hacking is DefendTheWeb which is a popular hacker's playground where hackers play hacking games reminiscent of CTF (Capture the Flag) and learn at the same time. However, without some help and guidance you will find it quite challenging. Hence this course. I will walk through each level from Basic to Realistic. 

For the Reverse Engineering lessons, you will  learn how to reverse CrackMe's.   A CrackMe is a small program designed to test a programmer's reverse engineering skills.

These CrackMe's typically have different levels from easy to advanced. By solving each level and gradually levelling up, you will learn reverse engineering (reversing).  Traditionally, reverse engineering is taught by first learning C/C++, assembly language and then debugging. Note that we do not crack software nor condone the act of cracking software.

The crackme's we will be reversing is provided by CrackingLessons and Crackmes One which are a popular reverser's playground . Information on solving crackmes on the Internet is terse and unstructured. Hence this course. I will walk through each level just like in a classroom where you can follow along and ask questions in the Q & A section. All you need is a PC running Windows.

Great way to learn Web Development, Information Technology (IT), Assembly programming and Reverse Engineering:

If you had always wanted to learn HTML, Javascript, PHP, MySQL, etc, Assembly and Reverse Engineering, what better way than to learn how to hack websites ethically and reverse engineering. .  This course is also a great stepping stone to other Reverse Engineering fields like malware analysis, exploits development and software testing.   So let's get started in your journey of hacking & cracking to learn.

This course is backed by a 30-day money back guarantee.  So, go ahead and enroll in this course now and start hacking the fun and easy way.

Enroll now

What's inside

Learning objectives

  • Html tag information leak
  • Javascript code and function information leak
  • Client code modification vulnerability
  • Javascript code exposure and decryption
  • File redirection vulnerability
  • Mdf decryption
  • File extension manipulation exploit
  • Dumpster diving
  • Secure agent browser spoofing
  • Reversing encryption
  • Cracking steganography, and more...
  • Convert trial software to fully functional software
  • Extend 30-day trial period software
  • Learn reverse engineering and assembly language
  • Browser spoofing
  • Sql injection attacks
  • Port scanning
  • Log injection attacks
  • Computer forensics
  • Hacking captchas
  • Show more
  • Show less

Syllabus

Introduction to the New course based on the new website defendtheweb.net (previously hackthis.co.uk)

Introduction to Ethical Hacking by hacking real websites legally

Read more

In this video I show you how to register for an account with defendtheweb.net.

How to get started in this course.

Hacking username and password in a login form by inspecting comments in the code

Hacking username and password in a form by examining suspicious tags in the code.

Hacking username and password by examining the javascript code.

Hacking username and password by looking for hidden files.

Hack username and password by examining prompt() function

Modifying username list to login as a specific user.

Analysing robots.txt file for sensitive files exclusions.

Hack username and login form by traversing the website paths to find hidden password file

Hacking client code to modify password recovery email.

Javascript code exposure and decryption.

File redirect vulnerability.

How to decrypt MD5 hashes.

How to manipulate the file extension to reveal username and password.

How to do dumpster diving for emails

How to spoof your browser to gain access to websites

How to decrypt a reverse encryption.

Exctracting usernames and passwords from picture files.

How to crack a picture file to reveal the hidden username and password

How to craft and inject your own form to POST data to server

How to exploit the website's form to POST data to server

How to exploit javascript code exposure to get usernames and passwords.

How to tamper a cookie in order to bypass login

How to crack Caeser Cipher encryption.

How to decode Morse Code to extract password

How to use SQL injection to bypass password in login pages

Learn important information gathering skills in pre-connection attacks

How to decrypt ciphertext using online decryptors

How to scan for open ports and connect to it

How to reverse a ciphertext and decrypt it

Hacking admin username and password using SQL Injection Attack

Directory traversal and null-byte exploits to download php and reveal password

Use PHP file traversal vulnerability and SQL injection to deface a website

How to exploit password reminders to hack a payment system and make a transfer

How to perform a Log Injection Attack to manipulate the log files in order to bypass IP lockout.

How to perform XML Injection to bypass username and password

Learn how to use Google Chrome Developer Tools and Javascript code to defeat a countdown timer on a webpage

How to analyze sound files to extract hidden passwords.

How to write your own javascript code to decrypt a string of numbers and also defeat the website countdown timer

How to extract files from disk images, cracking zipped files, decoding telephone dial tones to get missile launch codes.

What is Captcha and how to hack it - lesson plan

How to download and install an OCR software called Abby Screenshot Reader

How to use Abby OCR tool to capture image and convert it to text.

How to download and install AutoIt, an automation tool.

Using AutoIt to run Abbey Screenshot Reader (OCR), reversing text, pasting into textfield and submitting.

Introduction to Captcha2 challenge and tips on solving it

How to install imagemagick and use it to download and split images to create a collection of key images.

How to download the captcha image and split it into 15 separate images

How to download node.js and install it

How to create a new node.js project.

Writing a node.js app to decode the captcha image.

How to use AutoIt to automate tasks and defeat countdown timer

An introduction to the Captcha3 challenge and strategy to solve it.

Installing and using Python -  a crash course in python

How to Installing Pillow library for Python Image Manipulation, and getting started with it.

Using python to collect key images from the captcha file

Splitting the captcha3 sample using python

How to create a nodejs script to decode captcha sample images

How to use AutoIt to automate tasks and defeat timer limitation

Learn what a crackme is and where to download and unzip them.

How to download and install x64dbg and Detect It Easy.

How to create your workspace for practising software cracking and the workflow for it.

How to run, step over and meaning of conditional and un-conditional jumps

Traffic lights

Read about what's good
what should give you pause
and possible dealbreakers
Provides hands-on experience with ethical hacking techniques by engaging with real-world scenarios and challenges found on platforms like DefendTheWeb, which is a popular hacker's playground
Explores vulnerabilities related to HTML, JavaScript, PHP, and MySQL, offering insights into how to secure web applications against common attacks like SQL injection and file manipulation
Introduces reverse engineering concepts through CrackMe challenges, which are small programs designed to test reverse engineering skills, and provides a practical approach to learning assembly language
Covers a wide range of hacking techniques, including browser spoofing, SQL injection, port scanning, and log injection attacks, which are essential for understanding cybersecurity threats and defenses
Includes topics like computer forensics, steganography, and cracking zipped files, which are relevant to digital investigations and data recovery, and may be useful for learners interested in this field
Uses a Windows PC for all demonstrations of ethical hacking and reverse engineering, which may limit the applicability of the course to other operating systems like Linux or macOS

Save this course

Create your own learning path. Save this course to your list so you can find it easily later.
Save

Reviews summary

Practical ethical hacking & reverse engineering

According to learners, this course offers a highly practical and hands-on approach to ethical hacking and reverse engineering. Students appreciate learning through solving real-world challenges on platforms like DefendTheWeb and Crackmes One, finding it a fun and engaging way to learn complex topics. The course is particularly noted for its step-by-step guidance through different levels, making it accessible for beginners. While the focus is primarily on Windows and specific tools, many find it a solid introduction to key concepts and techniques.
Uses external platforms for exercises.
"Learning on defendtheweb.net provided a realistic environment to practice hacking skills."
"The integration with CrackingLessons and Crackmes One gives access to many practice problems."
"Using external platforms is great, but you depend on them being available and unchanged."
"I liked solving the problems on the actual websites mentioned."
Covers various hacking and RE areas.
"The course touches upon a wide range of topics, from web hacking to binary analysis."
"I learned about SQL injection, cross-site scripting, steganography, and more."
"The variety of challenges like cracking captchas and analyzing sound files was interesting."
"It provides a good overview of different areas within cybersecurity."
Starts with basics, suitable for newcomers.
"This course is great for beginners like me who have no prior experience in hacking or reverse engineering."
"The instructor explains everything step-by-step, making it easy to follow even complex techniques."
"As someone new to the field, I found the introduction levels very helpful in building confidence."
"It doesn't assume you know C++ or assembly beforehand, which is a big plus for beginners."
Learn through practical exercises and labs.
"I really enjoyed the hands-on challenges; they helped me understand the concepts better than just watching videos."
"The practical approach of hacking real websites legally is a game changer."
"Solving the challenges on defendtheweb.net felt like playing a game, which made learning fun."
"The crackme exercises using x64dbg were challenging but incredibly useful."
Primary environment is Windows OS.
"It's good that everything is shown on Windows, as that's what I primarily use."
"Wish there was more content or guidance for Linux environments, as many tools are based there."
"The course explicitly states it uses Windows, so be aware if you prefer macOS or Linux."
"Using a Windows PC was straightforward for following along with the demos."
May need supplemental study for depth.
"While the course covers many topics, some felt like brief introductions rather than deep dives."
"It's a great starting point, but I feel the need to take more specialized courses afterward for deeper knowledge."
"The course provides the foundational understanding, but mastering requires further practice and study."
"Good for learning how to *do* specific hacks, less on the *why* behind them."

Activities

Be better prepared before your course. Deepen your understanding during and after it. Supplement your coursework and achieve mastery of the topics covered in Learn Ethical Hacking & Reverse Engineering with these activities:
Review Networking Fundamentals
Strengthen your understanding of networking concepts, which are essential for understanding how attacks are carried out and how systems communicate.
Browse courses on Networking Fundamentals
Show steps
  • Review the OSI model layers.
  • Study common network protocols.
  • Practice subnetting calculations.
Read 'Hacking: The Art of Exploitation'
Gain a deeper understanding of exploitation techniques by studying this classic hacking book.
Show steps
  • Obtain a copy of the book.
  • Read the chapters on buffer overflows and network programming.
  • Experiment with the code examples provided.
Practice SQL Injection Attacks
Reinforce your understanding of SQL injection vulnerabilities by practicing on vulnerable web applications.
Show steps
  • Set up a vulnerable web application (e.g., OWASP Juice Shop).
  • Attempt different SQL injection techniques.
  • Analyze the application's response to identify vulnerabilities.
Four other activities
Expand to see all activities and additional details
Show all seven activities
Write a Blog Post on a Recent Vulnerability
Solidify your understanding of ethical hacking by researching and explaining a recent vulnerability.
Show steps
  • Research a recent security vulnerability.
  • Write a blog post explaining the vulnerability and its impact.
  • Publish the blog post on a platform like Medium or your own website.
Study 'Reverse Engineering for Beginners'
Build a solid foundation in reverse engineering by studying this beginner-friendly guide.
Show steps
  • Download the PDF of the book.
  • Read the chapters on assembly language and debugging.
  • Practice with the examples provided in the book.
Build a Simple Keylogger
Apply your knowledge of programming and system calls to create a basic keylogger, understanding how such tools work.
Show steps
  • Research keylogging techniques and system calls.
  • Write code to capture keystrokes.
  • Implement a mechanism to store or transmit the captured data.
  • Test the keylogger in a controlled environment.
Follow Advanced Reverse Engineering Tutorials
Enhance your reverse engineering skills by following advanced tutorials on platforms like YouTube or specialized blogs.
Show steps
  • Search for advanced reverse engineering tutorials online.
  • Choose a tutorial that covers a topic of interest (e.g., malware analysis).
  • Follow the tutorial step-by-step, experimenting with the techniques.

Career center

Learners who complete Learn Ethical Hacking & Reverse Engineering will develop knowledge and skills that may be useful to these careers:
Penetration Tester
A Penetration Tester, sometimes called a white-hat hacker, is someone who attempts to find vulnerabilities in systems. This course directly aligns with becoming a Penetration Tester, since it focuses on learning ethical hacking techniques. The curriculum covers a range of hacking methods, from basic to advanced including SQL injection attacks, file extension manipulation exploits, and reverse engineering. One considering a career as a Penetration Tester should find the course's hands-on approach using real-world examples and hacking websites legally to be quite helpful. The numerous labs on using tools like debuggers and disassemblers provides a solid foundation for ethical hacking.
Web Application Security Tester
Web Application Security Testers specialize in finding vulnerabilities in web applications. This career aligns well with this course. Many of the techniques taught, such as SQL injection, cross-site scripting, and file manipulation can be used to discover and exploit vulnerabilities in web applications. The course covers subjects such as manipulating file extensions and learning information gathering skills in pre-connection attacks. You will learn how to exploit password reminders to hack a payment system and make a transfer.
Application Security Engineer
An Application Security Engineer focuses on securing software applications by identifying and mitigating vulnerabilities. This course is directly beneficial for the role of Application Security Engineer. The ethical hacking techniques and reverse engineering skills taught will help someone understand common application vulnerabilities and how to prevent them. The course has lessons on topics that include SQL injection attacks, file extension manipulation, and bypassing CSRF-token protection. It also shows how to use PHP file traversal vulnerability and SQL injection to deface a website.
Reverse Engineer
Reverse Engineers discover the technological principles of a device, object, or system through analysis of its structure, function, and operation. This course will directly benefit someone trying to become a Reverse Engineer. It includes reverse engineering lessons where you learn how to reverse CrackMe's and extend trial software. The course teaches valuable skills such as reversing encryption. Those wishing to become a Reverse Engineer should take this course in particular, as the course mirrors a classroom, allowing the student to follow along and ask questions.
Vulnerability Analyst
Vulnerability Analysts identify and assess security weaknesses in software, hardware, and networks. A course in ethical hacking and reverse engineering is a strong step to prepare for the role of Vulnerability Analyst. The course content, which covers techniques like dumpster diving, browser spoofing, and cracking steganography, helps develop an understanding of how vulnerabilities can be exploited. The course teaches how to perform SQL injection attacks, port scanning, and log injection attacks. The hands-on approach of hacking websites and reverse engineering crackmes is very beneficial.
Malware Analyst
Malware Analysts examine malicious software to understand its functionality and develop methods for its detection and removal. This course will be very helpful for someone wanting to become a Malware Analyst. The course's content includes reverse engineering, which is a vital skill for analyzing malware. By learning how to reverse crackmes and analyze software, one gains practical experience in understanding how malware works. This course explains how to reverse encryption and how to extract files from disk images.
Information Security Analyst
An Information Security Analyst protects computer systems and networks from cyber threats. This course relates well to the career of an Information Security Analyst. The course's ethical hacking techniques, like those for exploiting JavaScript code, give one key insights into security risks and defensive measures. The course discusses topics like how to crack a picture file to reveal hidden information, and how to tamper with a cookie in order to bypass login. The course covers how to use SQL injection to bypass password in login pages.
Security Consultant
Security Consultants advise organizations on how to improve their cybersecurity posture and mitigate risks. This course is applicable to the career path of Security Consultant. The ethical hacking skills learned in the course, such as SQL injection and file manipulation, provide a solid foundation for understanding security vulnerabilities. You will learn about information gathering skills, and how to reverse a ciphertext and decrypt it. The course's coverage of techniques like exploiting password reminders and performing XML injections may prove invaluable for a Security Consultant.
Security Analyst
A Security Analyst plans and carries out security measures to protect an organization's computer networks and systems. This course may be useful to anyone looking to become a Security Analyst. The ethical hacking and reverse engineering techniques taught will help future Security Analysts understand vulnerabilities and how to defend against them. The course covers topics like identifying HTML tag information leaks, Javascript code exposure, and file redirection vulnerabilities. Learning about these exploits may help a Security Analyst defend networks against attacks. The course also shows how to use computer forensics and port scanning.
Cybersecurity Engineer
A Cybersecurity Engineer designs, implements, and manages security systems to protect an organization's data and systems. This course may be useful for a role as Cybersecurity Engineer. The ethical hacking techniques taught in the course can help a Cybersecurity Engineer understand potential vulnerabilities in systems and how to protect them. The course covers topics such as SQL injection attacks, file extension manipulation exploits, and browser spoofing. The course additionally introduces reverse engineering and assembly language.
Security Software Developer
A Security Software Developer creates and maintains software specifically designed to protect systems and networks from threats. This course may be helpful for a Security Software Developer. Understanding ethical hacking techniques will help you build more resilient and secure software. The course teaches SQL injection, Javascript decryption, and file extension manipulation. You'll also learn about reverse engineering and assembly language.
Cryptography Specialist
Cryptography Specialists focus on the techniques for secure communication in the presence of adversaries. This course may be useful for prospective Cryptography Specialists. The course includes lessons on reversing encryption and cracking steganography, which are directly related to the field of cryptography. The course also covers techniques such as decrypting MD5 hashes and ciphertexts. The work with assembly language provides a low-level perspective.
Network Security Engineer
Network Security Engineers are responsible for securing an organization's computer networks. This course can be helpful for anyone considering this career, since the course discusses network vulnerabilities and attack methods. The ethical hacking techniques taught will help one understand how attackers might try to compromise a network. The course includes topics like port scanning, log injection attacks, and browser spoofing. It will teach you how to scan for open ports and connect to it.
Software Developer
Software Developers design, develop, and test software applications. This course may be useful for a Software Developer. Learning about ethical hacking and reverse engineering teaches a developer how to write more secure code and protect against potential vulnerabilities. The course discusses security issues like Javascript code exposure, file redirection, and SQL injection. The course provides hands-on practice in identifying and exploiting vulnerabilities, which can then inform secure coding practices.
Computer Forensics Analyst
Computer Forensics Analysts investigate cybercrimes and analyze digital evidence. Computer Forensics Analysts investigate computer crimes such as data breaches and intellectual property theft. Although not the main focus, this course has a place for those seeking to go into Computer Forensics careers. The course touches on computer forensics. You will learn how to extract files from disk images plus cracking zipped files. Skills in reverse engineering will also be useful.

Reading list

We've selected two books that we think will supplement your learning. Use these to develop background knowledge, enrich your coursework, and gain a deeper understanding of the topics covered in Learn Ethical Hacking & Reverse Engineering.
Provides a deep dive into the technical aspects of hacking, covering topics like buffer overflows, network programming, and cryptography. It's a valuable resource for understanding the underlying mechanisms of exploits. While it requires some programming knowledge, it significantly enhances the understanding of ethical hacking principles. This book is commonly used in cybersecurity courses.
Provides a comprehensive introduction to reverse engineering concepts and techniques. It covers assembly language, debugging, and various tools used in reverse engineering. It's particularly helpful for understanding the reverse engineering sections of the course. This book is valuable as a reference text and for building foundational knowledge.

Share

Help others find this course page by sharing it with your friends and followers:

Similar courses

Similar courses are unavailable at this time. Please try again later.
Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2025 OpenCourser