Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
Tags
- 화이트해커를 위한 웹 해킹의 기술
- typescript
- 토라비
- graphql with reactnative
- graphql
- 운정 소바동
- 고르드
- graphql react native
- apolloclient
- 예쁜술집 예술
- 도그존
- 비동기배열
- 잠실새내
- graphql 400
- 신촌 소문난집
- apollo react native
- 화이트 해커를 위한 웹 해킹의 기술
- 홍대 토라비
- 홍대 예술
- 잠실새내 도그존
- promise처리
- graphql mutation error
- useMutation error
- 비동기배열처리방법
- promise메서드
- 지보싶 신촌점
- 금별맥주
- graphql with RN
- 홍대 카페 장쌤
- 앙버터마카롱
Archives
- Today
- Total
yehey's 공부 노트 \n ο(=•ω<=)ρ⌒☆
파일 인클루전 (File inclusion) 본문
파일 인클루전 (File inclusion)
:include 함수를 이용해 include 할 파일을 웹 요청을 통해 지정할 수 있는 경우, 값을 조작하여 원하는 파일을 처리한다.
-php 어플리케이션에서 주로 발생하는 공격
include 함수
:다른 파일을 소스코드에 직접 포함시킬 수 있다.
지정된 파이르이 모든 텍스트를 가져와 include 함수를 사용하는 파일에 복사한다.
리모트 파일 인클루전 (Remote File inclusion)
:공격자가 인클루드할 수 있는 파일이 호스트 외부의 파일일 때
외부에 있는 파일도 원격으로 인클루드할 수 있어서 더욱 심각한 공격
정상적인 상항에서 애플리케이션이 file.php를 인클루드한다.
file.php가 웹 요청의 page 파라미터를 통해 지정된다.
이때 공격자는 file.php 대신에 자신이 관리하는 hacker.com으로부터 악성 코드 bad.php를 인클루드할 것을 지정
웹 애플리케이션이 입력값 검증을 수행하지 않으면 bad.php를 인클루드해서 실행할 수 있다.
로컬 파일 인클루전 (Local File inclusion)
:공격자가 인클루드할 수 있는 파일이 호스트 내부의 파일일 때
공격자는 외부의 파일 대신 서버 호스트 내부의 파일을 인클루드하려고 시도한다.
이때 상위 디렉터리의 경로를 의미하는 ../과 같은 문자열을 여러번 입력해서 루트 디렉터리로 이동할 수 있다.
루트 디렉터리 아래에 있는 모든 다른 경로를 지정할 수 있다.
위의 그림에서는 루트 디렉터리로 이동한 후 /etc 디렉터리로 이동해서 passwd 파일을 열고 있다.
(위와 같이 ../를 이용한 공격 기법을 디렉터리 트래버설 공격이라고 한다.)
파일 인클루전 공격 대응
- 지정된 php 파일만 include 될 수 있도록 설정한다. (입력값 검증, 화이트 리스트 검증)
- http://, https:// 와 같은 프로토콜 관련 문자열이나 ../ 과 같은 디렉터리 트래버설 공격을 위한 문자열을 차단 (블랙리스트 검증)
'웹 > 웹 해킹' 카테고리의 다른 글
민감한 데이터 노출 (0) | 2020.11.17 |
---|---|
파일 업로드 공격 및 실습 (0) | 2020.11.12 |
Stored XSS 공격 실습 (0) | 2020.10.08 |
Reflected XSS 공격 실습 (0) | 2020.10.04 |
Command injection 공격 실습 (0) | 2020.10.01 |
Comments