The first step to prevent such attacks is to ensure your organization’s security policies and procedures incorporate strong and comprehensive account and password management processes. A password undergoes certain states of existence, with owners for each state, who are involved in handling those states. These are:
Change management body
Password selection or changing default password
Change password after nth day
Auto password expiry
Auditing systems for weak password
Auditors / Tools / System admin / Security manager
The different stages in password management are: creation, administration and review / auditing. Here are the recommended best practices to ensure comprehensive password management.
Using a strong password
A password must be *strong enough* so that it cannot be easily breached by brute-force or dictionary attacks. The selection of a strong password involves criteria such as the usage of alpha-numeric character sets along with upper and lower case alphabets and the use of special characters. On the other hand, insisting on highly complex passwords may well result in users having problems with remembering these passwords.
Ensure your IT security team and security managers make users aware of the reason behind strong and complex passwords and teach users ways of remembering complex passwords. Functionally, we can surmise the complexity of a password is a function of the length of password and number of character sets available to create that password.
Password complexity = f (length, character set).
Even with a complex password, you could still be at risk. Today’s clustered computing environment could well break your password in a few days or weeks at the most. It is always recommended to change your password after a certain number of days. If you change passwords at a frequency of 30 days and if an intruder works on your password hash and is able to crack it in 45 days, you are still secure as you have changed your password to another strong password, ahead of the intruder.
Limit number of login attempts
At any point of time, an account could undergo password cracking attacks. In such attacks, the attacker uses scripts or tools and tries to use brute-force or dictionary attacks against specific or some users. To guard against such attacks, the authentication system must limit the user to a certain number of (failed) login attempts, after which the account should be locked out. The disadvantage of this approach would be a genuine user not being able to login if somebody is really trying to break into his account.