Archive for Dev. (junyup2)

์ง€์‹์„ ์ฑ„์›Œ๊ฐ€๋Š” ใ€Ž๊ฐœ๋ฐœ์ž/ํ™”์ดํŠธํ•ด์ปคใ€๋ฅผ ๋ชฉํ‘œ๋กœ ์ •๋ฆฌํ•˜๋Š” ๋ธ”๋กœ๊ทธ

Wargame & CTF/SegFault

[SegFault] (Authentication Bypass) - PIN Code Bypass

Gearvirus(junyup2) 2023. 12. 6. 04:00

[SegFault] Authentication Bypass (Code)

PIN CODE Bypass.

ํ•ต๋ฏธ์‚ฌ์ผ ์‹œ์Šคํ…œ ์ ‘๊ทผ ๊ถŒํ•œ์„ ํš๋“ํ–ˆ๋‹ค! ๋ฐœ์‚ฌ๋งŒ ๋‚จ์•˜๋‹ค! ๊ฐ€์ž!!!

๋ฌธ์ œ ํŒŒ์•…

  • ์œ„์˜ ํŽ˜์ด์ง€์— ์ ‘์†ํ•˜๋ฉด ์•„๋ž˜์™€ ๊ฐ™์€ ํ™”๋ฉด์ด ๋‚˜์˜จ๋‹ค.

  • Burp Suite์„ ์ด์šฉํ•˜์—ฌ ์ƒํƒœ์ฝ”๋“œ(Status code) ํ™•์ธํ•œ๋‹ค.
    • 200 OK (์ ‘์†)
    • 200 OK (Fire)
    • 200 OK (ํ™•์ธ)
    • 200 OK (์ธ์ฆ)


์ƒ๊ฐ ๊ณผ์ •

์ƒ๊ฐ ๊ณผ์ •
1. ํŒŒ๋ผ๋ฏธํ„ฐ admin_pass๊ฐ€ ๋„˜์–ด๊ฐ€์ง€๋งŒ, ์•Œ์•„๋‚ผ ๋ฐฉ๋ฒ•์ด ์•ˆ๋ณด์ธ๋‹ค.
2. ๊ทธ๋Ÿฐ๋ฐ? URL์„ ๋ณด๋ฉด Step์œผ๋กœ ๋‹จ๊ณ„๊ฐ€ ๋„˜์–ด๊ฐ€๋Š” ๊ฒƒ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.
3. ์ง์ ‘ ์ ‘๊ทผ ์‹œ๋„ ํ•ด๋ณด์ž!!
4. Step1.php ์—์„œ Step2.php๋กœ ๋„˜์–ด๊ฐ€๋‹ˆ๊นŒ?
5. ๋‹ค์Œ์€ Step3.php๊ฐ€ ์•„๋‹๊นŒ?

ํ’€์ด ๊ณผ์ • (ํ•ด๊ฒฐ ๋ฐฉ์•ˆ)

1. Intercept On ์œผ๋กœ ๋ฐ”๊ฟ”์ค€๋‹ค.

2. ์žฌ์š”์ฒญ(Request) : ์ƒˆ๋กœ ๊ณ ์นจ(ํŽ˜์ด์ง€ ๋ฆฌ๋กœ๋”ฉ)ํ•˜์—ฌ ํŽ˜์ด์ง€๋ฅผ ์žฌ์š”์ฒญ ํ•ด์ค€๋‹ค.

3. Intercept ์—์„œ GET /3/step2.php?admin_pass= ๋ฅผ GET /3/step3.php ๋กœ ๊ณ ์ณ์ค€ ํ›„ Forward ํ•ด์ค€๋‹ค.

4. ๋ธŒ๋ผ์šฐ์ € ์ฐฝ ๋ฐ ํžˆ์Šคํ† ๋ฆฌ(HTTP history)๋ฅผ ํ™•์ธ ํ•ด๋ณด์ž!

  • Edited ์— ์ฒดํฌ๋œ ์ƒํƒœ(์š”์ฒญ์ด ์ˆ˜์ •๋œ ์ƒํƒœ)์˜ ์‘๋‹ต์ž„์„ ํ™•์ธ ๊ฐ€๋Šฅ
  • ๋ฐ”๋กœ ๋ฆฌ๋””๋ ‰์…˜ ๋˜๋ฉฐ, ๊ฒฝ๊ณ ์ฐฝ์— Flag๋ฅผ ํ™•์ธ ๊ฐ€๋Šฅํ•˜๋‹ค.

  • ์š”์ฒญ(Request)๊ณผ ์‘๋‹ต(Response)๋ฅผ ์‚ดํŽด ๋ณด์ž !

  •  Step3.php๋กœ ๊ณ ์นœ ์š”์ฒญ์˜ ์‘๋‹ต์œผ๋กœ, ์š”์ฒญ(Request)๋ถ€๋ถ„์—์„œ /3/gogoHack.php ๊ฒฝ๋กœ๋กœ ๋ฆฌ๋””๋ ‰์…˜๋˜๋Š” ๊ฒƒ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.

5. ์‘๋‹ต(Response)์˜ alert ๋ถ€๋ถ„์—์„œ Flag ํ™•์ธ ๊ฐ€๋Šฅํ•˜๋‹ค.


์ทจ์•ฝ์ ์— ๊ด€ํ•œ ๊ณ ์ฐฐ

(์œ ์ถ”๋ฅผ ํ†ตํ•œ) ์ง์ ‘ ์ ‘๊ทผ

๋ณธ ๋ฌธ์ œ์—์„œ๋Š” ์ธ์ฆ์˜ ๊ณผ์ •์—์„œ ๋‹ค์Œ ํŽ˜์ด์ง€์— ๋Œ€ํ•œ ์ด๋ฆ„์„ ์œ ์ถ”ํ•˜๊ธฐ ์‰ฝ๊ฒŒ ๋งŒ๋“ค์–ด์ง„ ๊ฒฝ์šฐ์˜€๋‹ค.
step1, step2, step3 ์™€ ๊ฐ™์ด ๋ˆ„๊ฐ€ ๋ด๋„ ๋‹ค์Œ ํŽ˜์ด์ง€๊ฐ€ ์˜ˆ์ƒ๋˜๋Š” ๊ฒฝ์šฐ๋ผ๊ณ  ํ•  ์ˆ˜ ์žˆ๋‹ค.

๋˜ํ•œ ๊ณผ์ •์„ ๋„˜์–ด๊ฐ€๋Š” ๊ฒฝ์šฐ ์ธ์ฆ์ด ํ•„์š”์—†๋‹ค๋Š” ๊ฒƒ๋„ ๋ฌธ์ œ์ด๋‹ค. ํ•ด๋‹น ํŽ˜์ด์ง€์—์„œ๋Š” ์ถ”๊ฐ€์ ์ธ ์ธ์ฆ์ด ์—†๋‹ค๋Š” ๊ฒƒ์ด๋‹ค.

์—ฌ๊ธฐ์„œ ์ƒ๊ฐํ•ด๋ณผ ์ ์€ ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.
์ง์ ‘(direct) ์ ‘๊ทผ์„ ํ†ตํ•˜์—ฌ ์ ˆ์ฐจ(Process)๋ฅผ ๋›ฐ์–ด ๋„˜์—ˆ๋‹ค๋Š” ๊ฒƒ์ด ๋ฌธ์ œ์ด๊ธฐ ๋•Œ๋ฌธ์— '์ธ์ฆ' ์„ ๋›ฐ์–ด ๋„˜์€ ์ธ์ฆ ์ทจ์•ฝ์ ์ด๋ผ๋Š” ์ƒ๊ฐ์„ ํ•ด๋ณผ ์ˆ˜ ์žˆ๋‹ค.
ํ•˜์ง€๋งŒ ์›๋ž˜ ๋ชปํ•˜๋Š” ๊ฑด๋ฐ ํ•  ์ˆ˜ ์žˆ์—ˆ๊ธฐ ๋•Œ๋ฌธ์— ์ธ๊ฐ€ ์ทจ์•ฝ์ ์ด๋ผ๊ณ ๋„ ํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒƒ์ด ์•„๋‹๊นŒ? ๋ผ๋Š” ์ƒ๊ฐ์„ ํ•  ์ˆ˜ ์žˆ๋‹ค.
(์—ฌ๊ธฐ์„œ๋Š” ๋Œ€์‘๋ฐฉ์‹์— ๋Œ€ํ•˜์—ฌ ์‚ดํŽด๋ด์•ผํ•œ๋‹ค.)
๋Œ€์‘ ๋ฐฉ์‹์€ ์ธ์ฆ์„ ๋›ฐ์–ด ๋„˜์–ด์„œ ๋ฐœ์ƒํ•œ ๊ฒƒ์ด๊ธฐ ๋•Œ๋ฌธ์— ์ด๊ฒƒ์„ ๊ณ ์น˜ํ•œ๋‹ค๋Š” ๊ด€์ ์—์„œ ์ธ์ฆ ์ทจ์•ฝ์ ์ด ๋งž๋‹ค.

ํ•˜์ง€๋งŒ ์ ˆ์ฐจ๋ฅผ ๋›ฐ์–ด ๋„˜์€ ๋’ค์— ๋ฒ„ํŠผ์ด ๋ˆŒ๋ฆฌ๋Š” ๋ถ€๋ถ„์—์„œ๋Š” ์ถ”๊ฐ€์ ์ธ ๊ถŒํ•œ์˜ ํ™•์ธ์ด ์—†์ด ๋ˆŒ๋ ธ๊ธฐ ๋•Œ๋ฌธ์— ์ธ๊ฐ€ ์ทจ์•ฝ์ ์œผ๋กœ๋„ ๋ถ„๋ฆฌํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ๊ฒƒ์ด๋‹ค.

(์ด๋ ‡๊ฒŒ ์–ด๋Š์ •๋„ ์ฃผ๊ด€์ด ๋“ค์–ด๊ฐ€๋Š” ๋ถ€๋ถ„์œผ๋กœ์„œ, ์„ค๋ช…๋งŒ ํ•  ์ˆ˜ ์žˆ๋‹ค๋ฉด?! ์ทจ์•ฝ์ ์ด ๋œ๋‹ค.!)

 

ํ•ด๋‹น ์ทจ์•ฝ์ ์˜ ์ถ”๊ฐ€์  ์˜ˆ์‹œ

๋ณธ์ธ ์ธ์ฆ์„ ์šฐํšŒํ•˜๋Š” ๊ฒฝ์šฐ์— ๋งŽ์ด ์‚ฌ์šฉ๋œ๋‹ค.

ex) ํšŒ์› ๊ฐ€์ž… ์ ˆ์ฐจ
(1) ์•ฝ๊ด€๋™์˜
(2) ๋ณธ์ธ์ธ์ฆ(ํœด๋Œ€์ „ํ™”)
(3) ํšŒ์›๊ฐ€์ž…
(์—ฌ๊ธฐ์„œ (2)์˜ ์ธ์ฆ ์ ˆ์ฐจ์—†์ด ๊ฑด๋„ˆ๋›ฐ๊ณ  ํšŒ์› ๊ฐ€์ž…์ด ๊ฐ€๋Šฅํ•œ ๊ฒฝ์šฐ)

์งˆ๋ฌธ ํ™˜์˜, ์ˆ˜์ • ๋ฐ ๋ณด์™„์— ๋Œ€ํ•œ ์ง€์  ํ™˜์˜