파일 업로드 취약점 공격이란?
: 웹 페이지의 파일 업로드 기능을 이용해서 공격자가 원하는 임의의 파일을 업로드하는 공격
파일 업로드에 대한 자세한 내용은 아래 포스팅에서!
https://studysteadily.tistory.com/41
파일 업로드 취약점 대응방안
파일 업로드 취약점에 대응하기 위해서는 근본적으로 파일이 실행되지 못하게 해야한다.
1. 파일명 난독화 (미흡)
저장된 파일의 경로를 감추는 전략으로 다운로드 페이지를 따로 만들어서
http://hackerr.com/download.php?fileID=10 이런 식으로 10번 게시글의 파일을 가져와서 다운로드 하게끔 구현한다.
하지만 SQL Injection이나 다른 취약점으로 파일 경로를 알아낼 수 있고,
웹쉘이 업로드되고 실행될 수 있는 여지가 있으므로 추천하지 않는 대응 방법이다.
2. 확장자 화이트리스트 기반 필터링 (미흡)
허용되는 확장자만 업로드되게끔 한다.
하지만 .php%00.png 등 확장자 우회로 웹쉘을 업로드 할 수 있으니 이 방식 또한 추천하지 않는다.
3. DB에 파일을 저장
가장 근본적인 방법이다.
파일 자체를 DB에 바이너리로 통째로 저장한다. (BLOB / CLOB)
웹 서버가 아니라 DB 테이블 안에 저장하면 파일이 실행될 여지가 없어서 안전한 대응 방안이다.
4. NAS 서버 이용
DB 외에 파일 저장 서버를 따로 두고 파일을 저장한다.
이 방법도 파일이 실행될 여지가 없기 때문에 안전하다.
'웹 해킹 > 파일 취약점' 카테고리의 다른 글
파일 다운로드 취약점이란? (정의, 공격 이용 방법, 다운로드 해야하는 파일) (0) | 2024.02.19 |
---|---|
파일 업로드 취약점이란? (정의, 발생 원인, 발생 위치, 공격 핵심, 우회 방법 ) (0) | 2024.02.14 |