[Education]/[AWS] Cloud Hacking

[AWS] Chapter4. 서버&서버리스 진단 - 5

starterr 2024. 5. 25. 23:20
반응형

6. XXE

01. XXE 개요
- XML 타입의 데이터를 웹 요청을 통해 전송, 서버에서 XML 외부 엔티티 처리가 가능할 때 발생
- 사용자가 웹 애플리케이션으로 전달되는 XML 데이터를 직접 업로드/수정 가능
-> 파일과 같은 서버 내부의 정보 탈취/SSRF 등 공격 수행
- XML 외부 엔티티 선언 형태

- 사용자가 브라우저를 통해 XML 데이터를 입력 후 서버(lambda)로 전송
- 서버의 함수는 XML 데이터를 파싱하며, XXE 공격 발생
- XML 구문 분석기의 입력 값 검증 누락으로 발생

02. 시나리오

진단방안
- 전제 조건
-> 서버 요청 시 DTD(Document Type Definiton)를 선언할 수 있어야 함

 

반응형

 

03. 진단방법

XXE 파서 취약성
- XML 구문 분석에 사용되는 python3 모듈의 취약성


- XML 구문 분석에 사용되는 PHP XML 파서
-> libxml_entity_loader

04. 실습

입력값 변조를 통한 XXE
- 정상적인 xml 데이터를 파싱하여 출력하는 것을 확인


- 파일을 지정하는 외부 엔티티 선언 후, 태그 값으로 참조하는 페이로드 작성

 

05. 보안대책


DTD(외부 엔티티) 비활성화
- XML 외부 객체 공격은 AWS 자체 취약성이 아닌 애플리케이션 소스코드에 의한 Injection 취약점이므로 자체 수정, 조치해야함
- 외부 엔티티 참조 기능이 필요하지 않은 경우
-> DTD 관련 설정을 비활성화
-> DTD를 비활성화할 수 없는 경우 외부 엔티티 및 외부 문서 유형을 각 파서에 고유한 방식으로 비활성화
=> factory.setFeature(http://apache.org/xml/features/disallow-doctype-decl,true);

 

[AWS] Chapter4. 서버&서버리스 진단 - 2

 

[AWS] Chapter4. 서버&서버리스 진단 - 2

3. SQL Injection01. 개요SQL Injection - 임의의 SQL 구문을 주입하고 실행되게 하여 데이터베이스가 비정상적인 동작을 하도록 유도 - OWASP TOP10 중 첫 번째 공격, 위험도가 높음SQL Injection 

infoofit.tistory.com

 

[AWS] Network - AWS 인터넷 연결

 

[AWS] Network - AWS 인터넷 연결

A. 인터넷 연결 방안1. 인터넷 게이트웨이1-1. 특징확장성과 가용성이 있는 VPC 구성요소로 VPC와 인터넷 간에 통신할 수 있게 해줍니다.퍼블릭 IPv4 주소가 할당된 인스턴스에 대해 1:1 IPv4 주소 변환

infoofit.tistory.com

 

반응형