How to try to crack a password yourself to test its strength

The article tested 3 different passwords with an open source password cracking tool to find out which method really works when it comes to password security.

Table of Contents

What is password cracking?

How to try to crack a password yourself to test its strength

When you create an account with an online service, the provider typically encrypts your login information on their servers. This is done using an algorithm to create a “hash,” a seemingly unique random string of letters and numbers for your password. Of course, it’s not actually random, but a very specific string of characters that only your password could generate, but to the untrained eye, it looks like a jumbled mess.

It's much faster and easier to turn a word into a hash than to "decode" the hash back into a word. So when you set up a password, the service you're logging into will run your password through the hash and store the result on their servers.

If this password file is leaked, hackers will try to find out its contents by cracking the passwords. Since encrypting passwords is faster than decrypting them, hackers will set up a system that takes potential passwords as input, encrypts them using the same method as the server, and then compares the results to the password database.

If the hash of a potential password matches any entry in the database, the hacker knows that every attempt matches the potential password tried.

How to Crack Your Own Passwords Using HashCat

Let’s try cracking some of the passwords this article has generated to see how easy it is. To do this, we’ll use Hashcat , a free and open source password cracking tool that anyone can use.

For these tests, the example will crack the following passwords:

  • 123456 : A classic password and a cybersecurity nightmare, 123456 is the most commonly used password in the world . NordPass calculated that 3 million accounts used 123456 as their password, with 1.2 million of those protecting corporate-level accounts.
  • Susan48! : A password that follows the patterns that most users would use to create secure passwords. This generally meets the criteria for basic password protection, but as we will explore later, it has some important weaknesses that can be exploited.
  • t9^kJ$2q9a : A password generated using Bitwarden's tool. It is set to generate a 10 character long password with upper and lower case letters, symbols and numbers.

Now, let's encrypt the passwords using MD5. Here's how the passwords would look if they were in a saved password file:

  • 123456 : e10adc3949ba59abbe56e057f20f883e
  • Susan48! : df1ce7227606805745ee6cbc644ecbe4
  • t9^kJ$2q9a : 450e4e0ad3ed8766cb2ba83081c0a625

Now, it's time to crack them.

Perform a simple jailbreak using Dictionary Attack method

How to try to crack a password yourself to test its strength

To start, let's perform a Dictionary Attack, one of the most common password attack methods. This is a simple attack where a hacker takes a list of potential passwords, asks Hashcat to convert them to MD5, and sees if any of them match the three entries above. For this test, let's use the file "rockyou.txt" as our dictionary, which was one of the largest password leaks in history.

To start cracking, the author of the article went to the Hashcat folder, right-clicked on an empty space and clicked Open in Terminal . Now that the Terminal was open and set to the Hashcat folder, invoked the Hashcat application with the following command:

.\hashcat -m 0 -a 0 passwordfile.txt rockyou.txt -o results.txt

Here is what the command does:

  • .\hashcat calls Hashcat.
  • -m 0 : Specifies the type of encryption to use. In this case we will use MD5, listed as 0 in the Hashcat help documentation.
  • -a 0 : Specifies the attack to perform. The Hashcat help documentation lists Dictionary Attack as 0, so we call that here.
  • passwordfile.txt rockyou.txt : The first file contains the 3 encrypted passwords we set up earlier. The second file is the entire rockyou password database.
  • -o results.txt : This variable determines where we put the results. In the command, it puts the cracked passwords into a TXT file named "results".

Despite the large size of rockyou, Hashcat processed all of them in 6 seconds. In the resulting file, Hashcat says it cracked the password 123456, but the passwords Susan and Bitwarden were not cracked. This is because 123456 was used by someone else in the rockyou.txt file, but no one else used the passwords Susan or Bitwarden, meaning they were secure enough to survive this attack.

Perform a more complex jailbreak using concealed Brute Force attacks

How to try to crack a password yourself to test its strength
Perform a Brute Force Attack with Hashcat

Dictionary Attacks are effective when someone uses the same password as one found in a large password list. They are quick and easy to perform, but they cannot crack passwords that are not in the dictionary. Therefore, if you really want to test your password, you need to use Brute Force attacks.

While Dictionary Attacks are just taking a pre-set list and switching them one by one, Brute Force attacks do the same but with every conceivable combination. They are harder to execute and take longer, but they will eventually crack any password. As we will soon see, that can sometimes take a very long time.

Here is the command used to perform a "real" Brute Force attack:

.\hashcat -m 0 -a 3 target.txt --increment ?a?a?a?a?a?a?a?a?a?a -o output.txt

Here is what the command does:

  • -a 3 : This variable defines the attack we want to perform. The Hashcat help documentation lists Brute Force attacks as number 3, so that is what is called here.
  • target.txt : File containing the encrypted password we want to crack.
  • --increment : This command tells Hashcat to try all passwords that are one character long, then two, then three, etc. until it finds a match.
  • ?a?a?a?a?a?a?a?a?a?a?a : This is called a “mask”. The mask allows us to tell Hashcat which characters to use in which positions. Each question mark specifies a character position in the password, and the letter specifies what we try in each position. The letter “a” represents uppercase and lowercase characters, numbers, and symbols, so this mask says “Try everything in each position”. This is a terrible mask, but we’ll put it to good use later.
  • -o output.txt : This variable determines where we put the results. The example command puts the cracked passwords into a TXT file named "output".

Even with this terrible mask, the password 123456 is cracked in 15 seconds. Despite being the most common password, it is one of the weakest.

The password "Susan48!" is much better - the computer says it will take 4 days to crack. However, there is a problem. Remember when the article said that Susan's password had some serious flaws? The biggest flaw is that the password is constructed in a predictable way.

When we create passwords, we often put specific elements in specific places. Imagine the password creator Susan tried using “susan” at first but was asked to add a capital letter and a number. To make it easier to remember, they capitalized the first letter and added the numbers at the end. Then, perhaps a login service asked for a symbol, so the password creator tacked it on at the end.

So, we can use a mask to tell Hashcat to only try specific characters in specific places to exploit how easy it is for people to guess passwords. In this mask, "?u" will only use uppercase letters in that place, "?l" will only use lowercase letters, and "?a" represents any character:

.\hashcat -m 0 -a 3 -1 ?a target.txt ?u?l?l?l?l?a?a?a -o output.txt

With this mask, Hashcat cracked the password in 3 minutes and 10 seconds, much faster than 4 days.

The Bitwarden password is 10 characters long and doesn't use any predictable patterns, so it took a Brute Force attack without any masks to crack it. Unfortunately, when asking Hashcat to do so, it gave an error saying that the number of possible combinations exceeded the integer limit. The IT security expert said that the Bitwarden password would take 3 years to crack, so that was good enough.

How to keep your account safe from password hacking

The main factors that prevent the article from cracking a Bitwarden password are its length (10 characters) and unpredictability. Therefore, when creating a password, try to make it as long as possible and distribute symbols, numbers, and uppercase letters evenly throughout the password. This prevents hackers from using masks to predict the location of each element and makes it much harder for them to crack.

You're probably familiar with the old password adages like "use a character array" and "make it as long as possible." Hopefully, you know why people recommend these helpful tips—they're the key difference between an easy-to-crack password and a secure one.

Laisser un commentaire

Comment jeter une batterie externe à Saint-Étienne ? Les solutions sûres et pratiques

Comment jeter une batterie externe à Saint-Étienne ? Les solutions sûres et pratiques

À Saint-Étienne, une batterie externe ne va ni dans la poubelle grise ni dans le bac jaune. Voici où la déposer, comment préparer une batterie intacte ou gonflée et quand choisir magasin ou déchèterie.

Comment jeter un téléviseur à Angers ? Guide pratique pour le déposer ou le faire reprendre

Comment jeter un téléviseur à Angers ? Guide pratique pour le déposer ou le faire reprendre

Téléviseur usagé à Angers : déchèterie, badge, reprise gratuite en magasin, préparation et erreurs à éviter pour recycler votre écran correctement.

Comment jeter de l’huile de cuisson usagée à Perpignan ?

Comment jeter de l’huile de cuisson usagée à Perpignan ?

Découvrez comment stocker et déposer l’huile de cuisson usagée à Perpignan sans boucher les canalisations, avec les précautions et vérifications locales.

Comment jeter des piles à Le Havre ? Les bons points de collecte et les règles à suivre

Comment jeter des piles à Le Havre ? Les bons points de collecte et les règles à suivre

À Le Havre, les piles usagées ne vont ni dans les ordures ménagères ni dans le bac jaune. Découvrez où les déposer, comment les préparer et que faire des batteries abîmées.

Comment jeter des piles à Toulon ? Points de collecte, magasins ou déchèterie

Comment jeter des piles à Toulon ? Points de collecte, magasins ou déchèterie

À Toulon, comparez les solutions pour jeter vos piles usagées : points de collecte, magasins et déchèterie, avec les précautions à connaître.

Comment jeter une batterie au lithium à Angers ? Les points de collecte et les précautions

Comment jeter une batterie au lithium à Angers ? Les points de collecte et les précautions

À Angers, découvrez où déposer une batterie au lithium, comment la sécuriser et quoi faire si elle est gonflée, endommagée ou chaude.

Comment jeter une batterie au lithium à Aix-en-Provence ?

Comment jeter une batterie au lithium à Aix-en-Provence ?

Découvrez où déposer une batterie au lithium à Aix-en-Provence et les précautions à prendre selon son état, sa taille et son appareil.

Comment jeter des néons à Nîmes ? Les bons points de collecte et les précautions à prendre

Comment jeter des néons à Nîmes ? Les bons points de collecte et les précautions à prendre

À Nîmes, les tubes fluorescents et LED ne vont pas à la poubelle. Découvrez où les déposer, comment les transporter et quoi faire s’ils se cassent.

Comment jeter un vélo à Perpignan ? Guide pratique du tri et du réemploi

Comment jeter un vélo à Perpignan ? Guide pratique du tri et du réemploi

Vélo usé à Perpignan : vérifiez le réemploi, le badge, l’adresse de la déchèterie et les précautions pour un vélo électrique.

Comment jeter un téléviseur à Reims ? Les solutions simples et les erreurs à éviter

Comment jeter un téléviseur à Reims ? Les solutions simples et les erreurs à éviter

À Reims, un téléviseur usagé est un DEEE : déchèterie, reprise en magasin ou enlèvement sur rendez-vous. Voici la marche à suivre sans erreur.