Skip to content

This project is a part of the Python Developer track by JetBrains Academy

Notifications You must be signed in to change notification settings

alcherniaev/password_hacker

Repository files navigation

This project is a part of the Python Developer track by JetBrains Academy

Outcomes

You will learn how hacking works. You will work with iterators and generators, and you’ll learn a little something about the itertools module – one of the most powerful features of Python. You will practice developing a client app and connecting to a server using the socket module. The project will also get you acquainted with JSON and the time module.

Stages

Stage 1/5: Server connection

For starters, let’s pretend the admin's website isn't protected at all. Learn how to connect to the server and receive data from it to access private information.

Stage 2/5: Simple brute force

OK, the admin has pumped up the server and it is now password-protected. But the password is probably short. Let's hack it by applying brute force (and no, that does not mean taking a jackhammer to the physical server!).

Stage 3/5: Dictionary brute force

The admin has picked up on our attempts to access the server, so now it is protected with a more complex password. Maybe the password is long but not unique? Let's hack it using a dictionary of the most common passwords!

Stage 4/5: Catching exception

The admin is really taking the case seriously. Now it is necessary to specify a valid login and password, and the password cannot be cracked by brute force. And yet, there is a vulnerability in the system that you can exploit to identify the admin's login and password.

Stage 5/5: Time vulnerability

The admin has reacted quickly and made a patch that removes the vulnerability. It's time to look for another one. Poor admin…

About

This project is a part of the Python Developer track by JetBrains Academy

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages