Breaking Authentication
Breaking Authentication
their email address, to the SSO system, the Identity Provider, as part of a request to
authenticated, in which case it will grant the user access to the Service Provider
required by the Identity Provider. This could simply be a username and password or it
might include some other form of authentication like a One-Time Password (OTP).
• 5. Once the Identity Provider validates the credentials provided, it will send a token back
that was set up between the Service Provider and the Identity Provider during the initial
configuration.
• 8. The user is granted access to the Service Provider.
• Broken authentication can include automated attacks such as using a list in
• To prevent the use of rainbow tables to break this form of authentication, the
• This MD5 hash cannot be decrypted, but can be captured and replayed by the
attacker.
are not sent over the insecure channel, just the MD5 hash of the credentials.
• It is difficult to crack this MD5 hash, the hash can be captured enroute to the
server. Once captured, it will provide anyone access to the account when it is
replayed.
• There are certain attacks that target the authentication schemes of web applications
and these include the following:
– brute force or dictionary attacks, phishing, and others like malware and
keyloggers.
• The tools utilized in this method of breaking into authentication schemes are Brutus,
wwwhack, AccessDriver, and thc-hydra.
• Certain defense systems were recommended to fight off this attack and these are the
use of URL scanners, OpenDNS, as well as the PhishTank.
• Scan your website with the Penetrator auditing software and see if you are vulnerable
to the different types of attacks.
• authentication mechanisms are easy targets for attackers, particularly
if the authentication mechanisms are fully exposed or public.
• These two points make the authentication component potentially
vulnerable to many exploits.
• Authentication in APIs has two sub-issues:
– Lack of protection mechanisms - API endpoints that are responsible for
authentication must be treated differently from regular endpoints and
implement extra layers of protection.
– Misimplementation of the mechanism - The mechanism is used or
implemented without considering the attack vectors, or the mechanism is
not appropriate for the use case.
– As an example, an authentication mechanism designed for IoT devices is
typically not the right choice for a web application like an eCommerce site.
• Technical factors leading to broken authentication in APIs are numerous and include:
– Weak password complexity
– Short or missing password history
– Excessively long durations for password and certificate rotations
– Authentication material exposed in URLs and GET requests
– Authentication tokens with insufficient entropy
– Use of API keys as the only authentication material
– Failure to validate authenticity of authentication material
– Insecure JSON Web token (JWT) configuration such as use of weak digital signature
algorithm or missing signatures
– Use of small key sizes in encryption or hashing algorithms
– Use of weak or broken ciphers
– Failure to step-up authentication if authentication flows are being targeted, such as
dynamically challenging with CAPTCHA or second factor authentication (2FA) material.