https://webhacking.kr/chall.php
old-28 λ¬Έμ λ₯Ό λλ₯΄λ©΄ κ°μ₯ μ²μμΌλ‘ λμ€λ νλ©΄μ΄λ€.
λ―Έμ μ ./upload/gKlIl1weasuc/flag.php νμΌμ μ½λ κ²μ΄κ³
λ΄ νμΌμ ./upload/gKlIl1weasuc/ μ μ λ‘λ λλ€κ³ νλ€.
./upload/gKlIl1weasuc/flag.php μ λλ₯΄λ©΄
μ무κ²λ λμ€μ§ μλλ€~
μΌλ¨ [νμΌ μ ν] λ²νΌμ λλ¬μ μ무 μ¬μ§μ΄λ μ¬λ €λ΄€λ€.
"file too big"μ΄λΌλ λ¬Έκ΅¬κ° μκ²Όκ³ ,
http://webhacking.kr:10002/index.php --> μ΄κΈ°νλ©΄ μΉνμ΄μ§ μ£Όμλ€μ /index.php κ° μΆκ°λλ€.
λ°©κΈ μ¬λ Έλ μ΄λ―Έμ§ νμΌμ΄ λ무 ν¬λ€κΈΈλ, νμΌ ν¬κΈ°κ° μμ κ² κ°μ ν μ€νΈ νμΌμ λ§λ€μ΄μ μ¬λ €λ΄€λ€.
μ΄λ²μλ μ μΆμ΄ λμ΄μ νμΌμ΄ μ λ‘λ λμλ€κ³ νλ€.
μ λ‘λ λ μλ νμΈμ.txt νμΌλ‘ λ€μ΄κ°λ³΄μλλ°,
μλλλ‘λΌλ©΄ "μλ νμΈμ" λΌκ³ μ νμμ΄μΌ νλλ° λ¬Έμκ° κΉ¨μ§ κ²μ νμΈν μ μμλ€.
κ·Έλ°λ° action="index.php" λΆλΆμ΄ μ νν λ¬΄μ¨ λ»μΈμ§ λͺ¨λ₯΄κ² λλ° μ κ²½μ΄ μ°μλ€.
λ°©κΈ μ μ λ§λ μλ νμΈμ.txt νμΌμ λ΄κ° μμλ‘ flag.phpλ‘ λ°κΎΌ λ€μ
μ μΆνλλ "no" λΌκ³ λ¬λ€.
κ·Έλμ κ°λ°μ λꡬμμ μμ€μ½λλ₯Ό μ΄ν΄λ³΄λ©΄ flag.php νμΌμ μ¬λ¦¬μ§ λͺ»νλλ‘ μ€μ λμ΄ μμ κ²μ΄λΌκ³ μμΈ‘νλ€.
κ·Έλ¬λ μμ€μ½λλ₯Ό νμΈν΄λ΄€λλ μμΈ‘κ³Ό κ΄λ ¨λ μ 보λ μμκ³ , λ€λ₯Έ κ²λ μμλΌ μ μλ κ²μ΄ μμλ€.
action="index.php" λΆλΆμ΄ μ κ²½μ΄ μ°μ¬μ
μλ νμΈμ.txt νμΌμ index.php νμΌλ‘ μ΄λ¦κ³Ό νμ₯μλ₯Ό μμλ‘ λ°κΎΈμ΄μ μ μΆν΄λ³΄κΈ°λ‘ νλ€.
μλ νμΈμ.txt νμΌμ index.php νμΌλ‘ μ΄λ¦κ³Ό νμ₯μλ₯Ό λ°κΎΈμ΄μ μ¬λ Έλλ
νμΌ μμ λ΄μ©μ μ½μ μ μμλ€.
action="index.php" λΆλΆλλ¬Έμ index.php νμΌλ§ λ΄μ©μ μ½μ΄λ€μΌ μ μλ κ² μλκΉ? νλ μκ°μ΄ λ€μλ€.
κ·Έλ¦¬κ³ index.php νμΌμ λ΄μ©μ΄ <body>~</body> μ¬μ΄μ λ€μ΄κ°λ κ²μ νμΈν μ μμλ€.
index.php νμΌμ textμ μ΄λ ν μ 보λ₯Ό λ£μΌλ©΄ <body>~</body> μ¬μ΄μ λ€μ΄κ°λ€λ μ¬μ€μ νμ©ν΄μ
무μΈκ° ν μ μμ§ μμκΉ μΆμλ€.
κ·Έλμ index.php νμΌ μμ μλ―Έ μλ μμ€ μ½λλ₯Ό λ£μ΄λ³΄λ©΄
<body>~</body> μμ κ·Έλλ‘ λ€μ΄κ° κ² κ°μμ ν΄λ΄€λλ°,
< κ° μΈμμ΄ μ λλ€.
λ΄κ° νΈλ λ°©ν₯μ΄ μ΄μν΄μ§λ κ² κ°μμ μ¬κΈ°μλΆν° ꡬκΈλ§μ νλ€~
μ΄ λ¬Έμ κ° λμκ²λ κ΅μ₯ν μ΄λ ΅λ€κ³ λκ»΄μ‘λλ°,
μ¬μ€ phpκ° λμ§, μ΄λ€ νΉμ§μ κ°μ§κ³ μλμ§λΆν° μ λͺ°λΌμ
μ°¨κ·Όμ°¨κ·Ό μμ보μλ€.
[1] PHP λ?
(μ°Έκ³ : https://choseongho93.tistory.com/61)
μ°μ PHPμ κ°λ κ³Ό νΉμ±μ μμ보λλ‘ νμ.
PHPλ μ£Όλ‘ μλ² μΈ‘μμ μ€νλλ μ€ν¬λ¦½νΈ μΈμ΄μ΄λ€. μ΄λ μΉ μλ²μμ PHP μ½λκ° μ€νλμ΄ κ·Έ κ²°κ³Όλ¬Όμ΄ HTMLλ‘ λ³νλμ΄ ν΄λΌμ΄μΈνΈ(μΉ λΈλΌμ°μ )μκ² μ μ‘λλ€λ κ²μ μλ―Ένλ€. μ΄λ κ² μ λ¬λ HTML μ½λμλ PHP νλ‘κ·Έλ¨ μ½λκ° μ§μ λ€μ΄μμ§ μλ€. λμ μ PHP μ½λλ μλ²μμ μ€νλμ΄ κ·Έ κ²°κ³Όλ¬Όμ΄ HTMLμ ν¬ν¨λμ΄ μ μ‘λλ€.
λν, PHPλ λ°μ΄ν°λ² μ΄μ€μμ μ°λμ΄ μ©μ΄νλ©°, μ£Όλ‘ MySQLκ³Ό ν¨κ» μ¬μ©λμ΄ λ€μν μΉ μ ν리μΌμ΄μ μ κ°λ°νλ λ° λ§μ΄ νμ©λλ€. λΈλ‘κ·Έ, μμ λ€νΈμν¬ μλΉμ€, μΌνλͺ°, μΌμ κ΄λ¦¬ μμ€ν λ±μ λ§λλ λ°μ λ§μ΄ μ¬μ©λλ€.
PHPμ νΉμ§ μ€μμλ, μ΄λ² λ¬Έμ λ₯Ό νκΈ° μν΄ μ£Όλͺ©ν΄μΌ νλ μ μ
'PHPλ μλ² μΈ‘ μ€ν¬λ¦½νΈ μΈμ΄μ΄λ―λ‘ μΉ μλ²μμ μ€νλκ³ , μ΄λ ν΄λΌμ΄μΈνΈ(μΉ λΈλΌμ°μ )μκ² μ μ‘λκΈ° μ μ μλ²μμ μ²λ¦¬λκΈ° λλ¬Έμ 보μ μΈ‘λ©΄μμ μ 리νλ€.' λ μ¬μ€μ΄λ€.
λ€μ λ¬Έμ λ‘ λμμ보면,
./upload/gKlIl1weasuc/flag.php μ λ€μ΄κ°μ λ,
μ무κ²λ μ λ¨λ μ΄μ λ μκΉ μμμ λ§ν PHPμ νΉμ§λλ¬Έμ΄λ€.
PHP μ½λλ μλ²μμ μ€νλμ΄ κ·Έ κ²°κ³Όλ¬Όμ΄ HTMLμ ν¬ν¨λμ΄ μ μ‘λκΈ° λλ¬Έμ΄λ€.
μ΄λ κ² μ λ¬λ HTML μ½λμλ PHP νλ‘κ·Έλ¨ μ½λκ° μ§μ λ€μ΄μμ§ μλ€.
κ·Έλ°λ° λ―Έμ μ ./upload/gKlIl1weasuc/flag.php μ μ€ννλ κ²μ΄ μλλΌ, μ½λ κ²μ΄λ€.
κ·ΈλΌ μ΄λ»κ² PHPλ₯Ό μ€νμν€μ§ μκ³ μ½λλ₯Ό μ½μ μ μμκΉ?
μ΄ λ¬Έμ λ₯Ό νλ©΄μ λ°κ²¬ν μ€λ₯λ₯Ό ν΅ν΄ λ λ€λ₯Έ ννΈλ₯Ό μ»μ μ μλλ°,
μ€λ₯ νμ΄μ§λ₯Ό ν΅ν΄ μ΄ λ¬Έμ μμ μνμΉ μλ²λ₯Ό μ¬μ©νλ€λ κ±Έ μμλΌ μ μλ€.
[2] Apache μλ²μ .htaccess κ·Έλ¦¬κ³ PHP νμΌμ κ΄κ³
μ΄ λ¬Έμ μμ μ¬μ©νλ μνμΉ(Apache) μλ²λ μΉ μ¬μ΄νΈλ₯Ό μΈν°λ· μμμ μ μ κ°λ₯νκ² λ§λ€μ΄μ£Όλ νλ‘κ·Έλ¨μ΄λ€.
μ»΄ν¨ν°μ μλ μΉ νμ΄μ§λ€μ λ€λ₯Έ μ¬λλ€μκ² μ 곡ν μ μλλ‘ λμμ£Όλ μν μ νλ€.
κ·Έλ¦¬κ³ λ μμμΌ ν μ‘΄μ¬κ° μλλ°, λ°λ‘ .htaccess νμΌμ΄λ€. (htaccessλ "hypertext access"μ μ½μμ΄λ€.)
.htaccess νμΌμ μνμΉ μλ²μ ν λΆλΆμΌλ‘, νΉμ λλ ν°λ¦¬μ κ·Έ νμ λλ ν°λ¦¬μ λν μ€μ μ λ³κ²½νκ³ κ΄λ¦¬νλ μ€μν νμΌμ΄λ€.
μνμΉμ κ°μ μΉ μλ²μμ ν΄λΌμ΄μΈνΈμ μμ²μ λ°μμ λ μ΄λ€ λ°©μμΌλ‘ μλΉμ€λ₯Ό μ 곡ν μ§λ₯Ό κ²°μ νλ μν μ νλ€.
μ΄λ₯Ό ν΅ν΄ λ€μν μ€μ λ€μ μ μ©νμ¬ μΉ μ ν리μΌμ΄μ μ λμμ μΈλ°νκ² μ μ΄ν μ μλ€.
( μλ₯Ό λ€μ΄, μνΈ λ³΄νΈ, URL 리λ€μ΄λ μ , MIME νμ μ€μ λ± λ€μν κΈ°λ₯μ .htaccess νμΌμ ν΅ν΄ ꡬμ±ν μ μλ€.)
μ΄μ μ΄ λ¬Έμ κ° μνμΉ μλ²λ₯Ό μ¬μ©νκ³ .htaccess νμΌμ΄ μ‘΄μ¬νλ€λ κ²μ μμμΌλ, μ΄λ₯Ό μ΄μ©ν΄μ λ¬Έμ λ₯Ό ν μ μλ€.
νμΌ μ λ‘λ λλ ν 리μ .htaccess νμΌμ λ§λ€μ΄μ κ·Έ μμμ PHP νμΌμ μ€ννμ§ μλλ‘ μ€μ νλ©΄, ν΄λΉ PHP νμΌμ΄ ν μ€νΈ νμΌλ‘ μ·¨κΈλμ΄ μμ€ μ½λλ₯Ό ν μ€νΈ ννλ‘ λ³Ό μ μλ€.
λ€μ μ§μλ¬Έμ λ΄λ .htaccess λ μ΄λ¦μ νμΌμ μ λ‘λ νλ©΄ ν΄λΉ λλ ν°λ¦¬μμμ PHP μ½λ μ€νμ 무λ ₯ν μν¬ μ μλ€.
λ°λΌμ ν΄λΉ λλ ν°λ¦¬μ μλ flag.php λ₯Ό 보면 μμ€ μ½λκ° κ·Έλλ‘ λ³΄μ΄κ² λλ€.
php_flag engine off
μμ κ°μ΄ νμΌμ μ λ‘λν΄μ£Όκ³ ,
./upload/gKlIl1weasuc/flag.php μ λ€μ΄κ°λ³΄λ©΄
flag κ°μ μ½μ μ μλ€!
μ λ΅~
μλ‘κ² μκ² λ κ°λ λ€μ΄ μμ£Ό λ§λ€!
μνμΉ μλ², λλ ν 리μ .htaccess νμΌμ μ‘΄μ¬, php νμΌ λ±λ±...
μ λΆ λ€ κΉκ² μ΄ν΄νμ§λ λͺ» νμ§λ§, λ¬Έμ λ₯Ό νκΈ° μν΄ μ΅λν μ΄ν΄νλ €κ³ λ Έλ ₯νλ€.
λΆμ‘±ν λΆλΆμ΄ μμ μ μλ€...
(μ°Έκ³ : https://aidencom.tistory.com/402)
(μ°Έκ³ : https://haerinn.tistory.com/226 )
'SWLUG > μΉ ν΄νΉ' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[Root me] Install files (0) | 2023.09.30 |
---|---|
[Root me] File upload - Double extensions (0) | 2023.09.30 |
[webhacking.kr] old-12λ² (0) | 2023.09.27 |
[Root Me] Javascript - Webpack (0) | 2023.09.26 |
[Root Me] Javascript - Authentication 2 (0) | 2023.09.23 |