Webhacking.kr

Prob48



웹케얄 48번 문제입니다. 350점짜리 문제인데 풀고 나니 생각보다 쉬운 것 같습니다.

문제를 접속하면 위와 같은 화면이 나오는데, 파일 업로드를 할 수 있는 메모장을 구현 해 놓았습니다.

소스를 한번 확인 해 보겠습니다.



사실 처음 접근한 방법은 파일 업로드 취약점 또는 다운로드 취약점으로 생각하고 업로드 위주로 공격을 해 보았지만 실패하였고, filename으로 소스코드 자체를 바꿀 수 있기 때문에 시도해봤지만 파일 이름의 길이가 3자 이내로 제한되어 있어 실패하였습니다. 풀어본 결과, 이 문제는 파일 업/다운로드 취약점이 아니었습니다.

본론으로 돌아와서, 소스를 보고 알 수 있는 것은 현재 디렉토리에서 *.jpg 파일에 접근이 가능하다는 것입니다.



3.jpg는 초록색 슬라임 그림입니다. 글쓴이들의 프로필사진에도 있는 그림입니다. 귀엽네요.

1부터 모두 접근 해 본 결과, jpg파일은 1~8까지의 숫자로 이루어져 있었습니다.

하나하나 받기 귀찮으니 파이썬으로 코드를 짜서 실행해보죠.



wget으로 jpg 파일을 받는 코드를 작성해봅니다.



모두 받아주고



ls로 정보를 떠보니 유독 1.jpg만 파일의 크기가 크다는 것을 알 수 있습니다.

cat으로 파일을 읽어보니 아니나 다를까, php 코드가 숨어있었습니다.



아래 소스가 해당 코드입니다.



별다른 내용이 없는데, 21라인을 보면 zwitter_admin.php가 있는 것을 확인 할 수 있습니다.

수상하지 않나요? 질러봅시다.



짠!

'Wargame > Webhacking.kr' 카테고리의 다른 글

Webhacking.kr old-01(200)  (0) 2019.09.22
Webhacking.kr Prob40  (0) 2016.05.13
Webhacking.kr Prob53  (0) 2016.05.11
Webhacking.kr Prob60  (0) 2016.05.11
Webhacking.kr prob59  (0) 2016.05.11

+ Recent posts