Now, let's assume you tried all the attacks that we learned so far on your Target website, you tried
all of them on all the websites on the same server, and none of these websites is vulnerable.
You went and you tried to hack into that server using the applications installed on the server, using
the server side attacks.
So you use the port scanner and you determine the programs and the open ports and you try to hack into
the server based on the services.
And again, you still didn't find any way to get in.
And let's assume that you tried to attack the data center itself, which contains all the servers.
And again, you still didn't manage to gain access and you try to hide the users that use the websites
or the websites on the same server as your target Web site.
So you tried to hack the users, you tried to hack the admins, you tried to hide the support people
using social engineering attacks and all these attacks.
And again, you still didn't manage to gain your access then.
I'd usually go down to brute force attacks now a lot of people would actually try brute force attacks
before that, but I just don't really like brute force attacks, not because they're not useful or because
they're not effective.
They're actually very effective.
But it's just that I don't really feel satisfaction when I gain access to a system using a brute force
attack.
So what we mean by brute force attacks is we're going to go to the login screen.
Most websites have login screen to allow the admins to log in and we're going to try to determine all
possible combinations of the password.
So there is two flavors of brute force attacks, or I should say guessing attacks, there is brute force
attacks and dictionary attacks.
So brute force attacks would try to cover all possible combinations of the passwords, for example,
on your phone.
The pain can only be made out of numbers.
So you can actually cover all possibilities very easily because the pin only has four digits.
And there is only nine possibilities when this comes to passwords, especially when it comes to web
logins.
You have lower case characters, uppercase characters, symbols and digits, which makes the brute force
attack really unfeasible because it will take years to cover all possibilities.
This leads us to the dictionary attack, where you actually cover all possibilities in a list.
So you're going to have a list of passwords.
These can be made of common passwords or based on the research that you did on your target in the dictionary,
attack your only cover the passwords that exist in the word list.
So unlike the brute force attack, it's not guaranteed because with the brute force, we are going to
cover all possible combinations and the dictionary attack, we're only going to cover the passwords
that are in our walls or in the dictionary.
So in the next few lectures, we're going to see how you can create your own dictionary.
And we're going to see how we can launch a brute force attack to gain access to a system without exploiting
any vulnerabilities.
All we're going to do is just try a large number of passwords until one of them works.
And this is the reason why I don't really like brute force, because there is no smart way you're not
actually exploiting anything.
You're literally just guessing the password until it works.
Keep in mind, though, just because I don't really like it, it doesn't mean that it's not effective.
I've actually in many cases, I spent days trying to break into a system.
And at the end, one of the times I still remember the password was one, two, three, four, five,
six ABC, which you'll probably, if you had a word list of common passwords, you'll probably gain
access to that system within an hour or two.