**SSRF
Server-side request forgery
CSRF가 클라이언트 측에서 위조 요청을 보내는 것이라면 SSRF는 서버 측에서 위조된 요청을 보내도록 하는 취약점이다.
서버를 속여 무단 요청을 보내도록 유도한다. 공격자는 악성 HTTP 요청을 서버에 보내는 것만으로도 백엔드에 지시해 악성 작업을 수행할 수 있다.
SSRF 취약점을 이용해서 공격자는 웹앱과 같은 서버측 프로그램 임의의 주소로 HTTP 요청을 보내게 된다.
사용자들이 접근할 수 없었던 서버 내부 자원에 접속해서 API Key와 같은 중요 데이터가 유출되거나 내부 네트워크 스캠 그리고 경우에 따라 임의 코드 실행이나 임의 파일 쓰기 등의 허가받지 않은 행위가 가능할 수 있다.
경우 1. 애플리케이션이 신뢰하는 애플리케이션에게 요청을 전송할 경우
경우 2. 애플리케이션이 어떠한 외부 IP나 도메인으로 요청을 전송 할 수 있을 때
*논 블라인드 방식
예를 들어 example.com 사이트가 8개의 서버를 사용할 때, 상품을 둘러보는 것과 상품의 상세를 보는 것의 서버는 다를 수 있다. 사용자에게는 직접 접근 권한이 없지만 example.com 서버에 접근 권한이 있을때 우리는 중간지대를 확보해 민감한 파일에 접근할 수 있다.
*블라인드 방식
데이터 유출이 앙닌 서버 내부 변경, 파일 수정 삭제 등의 무단작업에 초점. DDos같은 공격의 수행이 가능하다. 가시적인 응답이나 데이터를 끌어내는 것이 아니라 서버를 대신해 유해한 작업을 수행하는데 초점을 둔다는 점에서 이 유형의 SSRF 공격을 '블라인드' SSRF라고 한다.
실습) Admin 계정으로 타 계정 삭제
-비인가 페이지 접속
Lab: Basic SSRF against the local server | Web Security Academy (portswigger.net)
1) /admin 페이지 접속시 불가능 한 것 확인
2) 상품 클릭 후 check stock 클릭
3) URL 확인
4) 외부 URL 확인
5) SSRF 확인
6) 클릭시안됨
7) 삭제 요청 URL을 서버가 하게 해야함.
대응방안: 데이터를 전부 필터링한다.
블랙리스트 기반의 필터링의 경우 우회가 가능할 수 있음.
'Web hacking > Nomaltic) 웹 해킹 수업 노트 👩💻' 카테고리의 다른 글
📝 LDAP injection & Blind LDAP Injection 문헌 번역 (0) | 2022.02.04 |
---|---|
[16주차] 보고서 리뷰, LDAP 취약점 (0) | 2022.02.03 |
[12주차] JWT 개념 (0) | 2022.02.03 |
구글 클라우드 서비스 VM 생성부터 쿠키 탈취 실습까지 (0) | 2022.02.02 |
[14주차] 금취분평 취약점, XXE 취약점 (0) | 2022.01.20 |