본문 바로가기

웹 해킹/파일 취약점

파일 다운로드 취약점이란? (정의, 공격 이용 방법, 다운로드 해야하는 파일)

 

파일 다운로드 취약점이란?

: 웹 서버에 존재하는 파일 다운로드 시  파라미터 값을 조작하여 웹 사이트의 중요한 파일(DB 커넥션 파일 등) 또는 웹 서버 루트에 있는 중요한 설정 파일(passwd, shadow 등)을 다운받을 수 있는 취약점

 

이 공격도 역시 주요정보통신기반시설 취약점 점검 가이드에서 찾아볼 수 있다.

 

 

 

 

 

파라미터로 파일 경로를 받아 다운로드하는 페이지 download.php가 다음과 같이 존재할 때

<?php

     fileName=$_GET['fileName'];

     download('/files/'.$fileName);  // 파일을 다운로드 하는 함수

?>

 

공격자가 fileName 파라미터를 ../../../etc/passwd로 주면 다운로드 경로가 /files/../../../etc/passwd가 되어 실제 passwd 파일을 다운받을 수 있다.

 

 

파일 다운로드 취약점의 장점

이 취약점의 최대 장점은 소스코드를 다운로드할 수 있다는 것이다.

소스코드를 확인해서 DB 정보 등 중요 정보를 탈취할 수 있을 뿐만아니라 웹 서버에 존재하는 또 다른 취약점을 쉽게 발견할 수 있다.

 

 

 

다운로드 해야하는 파일

리눅스 /etc/passwd, /etc/shadow 등

윈도우 /boot.ini, /winnt/win.ini 등

 

 

 

 

+)

Tip

윈도우는 대소문자를 구분하지 않지만, 리눅스는 대소문자를 구분합니다.
이것을 구분하여 이 서버가 윈도우 기반인지 리눅스 기반인지 알 수 있습니다.

대문자로 바꿔도 그대로 다운이 받아진다면 윈도우라고 쉽게 알 수 있습니다.

또한, jsp나 php이면 리눅스일 가능성이 높습니다.

출처: https://xn--ex3bt1ov9l.kr/354