* 마이크로서비스: 소프트웨어가 잘 정의된 API를 통해 통신하는 소규모의 독립적인 서비스로 구성되어 있는 경우의 소프트웨어 개발을 위한 아키텍처 및 조직적 접근 방식
Server-side Request Forgery(SSRF)
웹 서비스는 외부에서 접근할 수 없는 내부망의 기능을 사용할 때가 있습니다.
(ex: 내부망의 기능 백오피스 서비스)
백오피스 서비스는 관리자 페이지라고도 불리며, 이용자의 행위가 의심스러울 때 해당 계정을 정지시키거나 삭제하는 등 관리자만이 수행할 수 있는 기능을 구현한 시스템입니다.
+ 웹 서비스의 요청을 변조하는 취약점으로, 브라우저가 변조된 요청을 보내는 CSRF와는 다르게 웹 서비스의 권한으로 변조된 요청을 보낼 수 있음
ssrf 공격 효과:
웹 서비스는 외부에서 직접 접근할 수 없는 내부망 서비스와 통신할 수 있습니다. 만약 공격자가 SSRF 취약점을 통해 웹 서비스의 권한으로 요청을 보낼 수 있다면 공격자는 외부에서 간접적으로 내부망 서비스를 이용할 수 있고, 이는 곧 기업에 막대한 피해를 입힐 수 있습니다.
웹 서비스가 보내는 요청을 변조하기 위해서는 요청 내에 이용자의 입력값이 포함돼야 합니다. 입력값이 포함되는 예시로는 웹 서비스가 이용자가 입력한 URL에 요청을 보내거나 요청을 보낼 URL에 이용자 번호와 같은 내용이 사용되는 경우, 그리고 이용자가 입력한 값이 HTTP Body에 포함되는 경우로 나눠볼 수 있습니다.
[SSRF 취약점 발생 예시]
1.이용자가 입력한 URL에 요청을 보내는 경우
2.웹 서비스의 요청 URL에 이용자의 입력값이 포함되는 경우
3.웹 서비스의 요청 Body에 이용자의 입력값이 포함되는 경우
*구분 문자(Delimiter): 일반 텍스트 또는 데이터 스트림에서 별도의 독립적 영역 사이의 경계를 지정하는 데 사용하는 하나의 문자 혹은 문자들의 배열.
URL 에서 구분 문자는 "/"(Path identifier), "?" (Query identifier) 등 이 있으며 구분 문자에 따라 URL의 해석이 달라질 수 있음.
*SSRF(Server Side Request Forgery): 웹 애플리케이션이 변조된 요청을 하게 하는 공격
*블랙리스트 필터링: URL에 포함되면 안되는 문자열로 블랙리스트를 만들고, 이를 이용하여 이용자의 접근을 제어
*화이트리스트 필터링: 접근을 허용할 URL로 화이트리스트를 만들고, 이용자가 화이트리스트 외의 URL에 접근하려 하면 이를 차단
# 실습추후 다시 정리할 예정
'소학회 > Dreamhack' 카테고리의 다른 글
| [Dreamhack_워게임] ssrf ( 추가풀이예정 ) (0) | 2023.11.28 |
|---|---|
| [Dreamhack_워게임] session문제풀이 ( 추가풀이예정 ) (0) | 2023.11.28 |
| [Dreamhack_워게임] image-storage 문제풀이 (2) | 2023.11.18 |
| [Dreamhack] ServerSide: File Vulnerability (0) | 2023.11.14 |
| [Dreamhack]ServerSide: Command Injection (0) | 2023.11.14 |