* 보안 동향 Check
Follina, MS Office에 악성코드 삽입하는 기술 : Macro 이용하지 않음
① 보안 뉴스 → 구글 검색
https://www.boannews.com/media/t_list.asp
② 보안 회사의 블로그 사이트
> SK쉴더스 EQST insight
https://www.skshieldus.com/kor/media/newsletter/insight.do
> 안랩 ASEC Blog
** 파일 업로드(Web Shell)
> 원인
→ 서버 측에서 실행할 수 있는 파일이 업로드
① 파일 경로를 알아야하고,
② 실행할 수 있어야 한다
> 대응방안
① DB에 파일을 올리는 것 → BLOB/CLOB (자료형 타입)
② DB에 파일 경로를 저장하는 방법 → 업로드 되는 파일 경로 숨기기!
(+) 업로드 되는 디렉토리에 실행권한 x
ex)
download.php?filePath=/~~~~~
→ download.php?fileId=1
fileId fileName filePath
1 test.png /upload/test.png
이럴 경우에 SQLInjection으로 경로 읽어낼 수 있다
③ 파일 업로드 시 화이트 리스트 기반 확장자를 뒤에 붙여준다
ex)
허용해 줄 확장자(png, jpg) → test.php.png, asdfkjaq.php.png
php 코드가 있는 test.png 파일은 일반적으로 실행할 수 없지만 실행될 수 있는 조건이 있다
↓
* LFI (Local File Inclusion) 취약점
> include() 함수처럼 다른 페이지를 공유하는 곳에서 일어난다
ex)
test.php → <?php asdfasdf ?>
<?php
include('./test.php');
~~
~~
?>
↓
<?php
<?php asdfasdf ?> → include() 내 php가 코드에서 실행
~~
~~
?>
include("/~경로" . $_GET['page'])처럼 특정 페이지를 로드하는 기능이 있을 때,
서버에 있는 어떤 파일이든 내가 원하는 파일을 경로에 입력하면 그 파일이 응답에 붙어서 오게 된다
ex) ?page=../../../../../../../../etc/passwd
php 코드 삽입한 jpg 파일을 업로드 하고 include()가 동작하는 곳에서 실행한다


명령어 결과 출력, parameter로 lang과 cmd를 받아서 &
** File Download 취약점
> (서버에 있는) 파일을 마음대로 다운로드 받을 수 있다
> 다운로드 스크립트를 사용하는 곳에서만 File Download 취약점을 사용할 수 있다
ex)

filePath 파일 경로가 나오는 부분에서 할 수 있다.
> filePath파라미터를 ../ 이용해서 변조한다.
fileName 부분에도 ../ 가능
fileId로 나오는 부분에서는 File Download 공격을 할 수 없다
> etc/passwd 파일을 이런 식으로 찾을 수 있다

* POC
> /etc/passwd
> /etc/hosts
이 취약점을 이용해서 소스코드를 다운로드 할 수 있다
DB와 연결된 페이지의 소스코드를 보고 코드의 취약점도 볼 수 있다
** 공격 시나리오
> 소스코드 받고, DB 계정 정보 탈취
** 대응 방안
① DB에 파일 저장 CLOB/BLOB
② ../ (directory traversal) 공격을 막을 수 있는 필터링
** 과제
normaltic.com:7001
normaltic.com:8001
normaltic.com:8002
풀이하고 정리
가능한 한 직접 만든 게시판에서 문제 만들어보기
'Web Hacking Study > 수업 정리' 카테고리의 다른 글
| [12주차] SQL Injection, XSS 취약점 점검 팁 (0) | 2022.06.17 |
|---|---|
| [11주차] 인증/인가 취약점 (0) | 2022.06.10 |
| [9주차] File Upload 공격 개념, 검증 및 우회 (0) | 2022.05.27 |
| [8주차] CSRF 정리 & 문제풀이, 대응방안 (0) | 2022.05.20 |
| [7주차] 이전 내용 복습, XSS 시나리오, CSRF 문제풀이, 대응방안 (0) | 2022.05.13 |
댓글