본문으로 바로가기

SSRF란?

category 웹 공격 기법들/SSRF 2021. 3. 3. 00:17

SSRF(Server-Side Request Forgery)

 

server side에서 이루어지는 요청을 변조해 해커가 의도한 서버로 요청이 가게 되거나 요청을 변경할 수 있는 공격

 

SSRFCSRF와 유사한 형태지만 클라이언트가 아닌 서버에 직접 영향을 줄 수 있다는 점에서 차이가 있다.

 

 

다른 취약점과 같이 사용될 경우 RCE로 이어지기 때문에 파급력이 크다.

  • XXE + SSRF
  • SSRF + CRLF Injection
  • SSRF + Redis-Server
  • SSRF + MongoDB

CRLF Injection?

더보기

CRLF - 보통 HTTP 헤더의 끝 라인에 들어가 각 라인을 구분하는 구분자로 사용

- CR : Carriage Return (%0D)

-> 커서의 위치를 맨 앞으로 옮김

- LF : Line Feed (%0A)

-> 새로운 라인을 만듬

 

 

HTTP 응답 분할 Injection이라고도 불림

 

- CRLF를 이용해 생기는 취약점을 통해 HTTP Response에 악의적인 코드나 스크립트를 삽입해 XSS를 생성하거나 캐시를 조작할 수 있음

- CRLF를 이용하여 Response를 두개 이상으로 분리하면서 원래의 HTTP Response와 별개로 새로운 HTTP Response를 만들어 조작할 수 있음

 

%0D%0A%20+New Header+%0D%0A와 같은 공격 구문을 사용할 수 있다.

 

서버 측에서 재전송하는 파라미터에서 새로운 라인을 만들어 헤더를 조작할 수 있게 된다.

Redis?

더보기

Key-Value 데이터 모델을 가진 NoSQL 데이터베이스입니다. 데이터를 메모리에 저장하는 인메모리 데이터베이스로 read/write 속도가 빠르다는 장점으로 대중적으로 많이 사용되고 있습니다.

 

 

 

 

* A의 정상 요청 : http://website.com/chk?url=https://111.222.33.55 

* A의 비정상 요청 : https://website.com/chk?url=https://10.34.21.12



쉽게 그림으로 설명하자면 A서버를 통해 B서버의 정보를 얻어 처리한 뒤 그 내용을 브라우저를 통해 사용자에게 보여주는 서비스의 데이터 흐름을 나타내고 있다.

 

정상적인 경우 A서버는 B서버로 정보를 요청하고 request를 돌려줘야 하지만 해커가 B서버의 주소를 C로 서버 변경할 경우 A서버는 B서버가 아니라 C서버로 요청을 보내고 결과를 받을수 있게 되어 해커는 A서버를 통해 C서버에 대한 정보를 얻을수도 있고 비정상적인 동작을 유도 할수도 있다.

 

=>중요한 데이터가 C서버에 있을경우 매우 위험!

 

 

SSRF는 기능별로 서버를 분리하여 구축하거나 데이터를 가공해서 전달하는 경우 많이 발생된다.



SSRF에 취약한 대표적인 서비스의 종류

  • Website Translator

  • Image Viewer()

  • Document Reader

  • Web Crawler

  • URL Previewer

 

공격 방법

 

+사용 가능한 URL Scheme 종류

  • http:// - HTTP 접속용
  • ftp://
  • dict://
  • sftp://
  • tftp://
  • ldap://
  • gopher://   - TCP 연결용
  • netdoc://
  • file://         - 파일 읽기용

PHP에서만 작동

  • php://filter/convert.base64-encode/resource=파일경로

 

 

 

 

 

출처:https://medium.com/naver-cloud-platform/ssrf-%EA%B3%B5%EA%B2%A9%EC%9D%98-%ED%94%BC%ED%95%B4-%EC%82%AC%EB%A1%80%EC%99%80-%EB%8C%80%EC%9D%91-1-d0be4b12d10a

 

'웹 공격 기법들 > SSRF' 카테고리의 다른 글

SSRF CTF 실습  (0) 2021.03.03