정보보안 스터디 - 27주차 5일 - SSRF로 내부ip 접근하려는 시행착오
☞ SSRF로 내부ip 접근하려는 시행착오
지금은 주통기반에 들어가는 내용은 아니지만
OWASP 2021같이 최신적으로 취약하다고 판단된 경우 그것마저 점검이 필요하다고 생각합니다.
예를 들어 SSRF, XXE, ajax injection - json/xml 등입니다.
json은 js 자바스크립트로 데이터 주고받습니다.
현재 파일업로드로 svg > XXE가 가능한지 확인해봐야할 것 같고
서버에서 구동중인 취약한 파라미터를가진 API를 찾아야합니다. server=url같이요
아마 다 파일 서버는 따로 둘거라 /etc/passwd 로 가기에는 쉽지 않을 겁니다.
구조를 완전히 파악하고 있거나 레드팀 수준으로 대응 방법을 알아야할 것 같습니다.
그래서 XXE할려면 /etc/passwd 말고 다른걸로 뭐가 있을까생각해보면
XSS나 다른 url 접속가능한지 테스트 해볼 수 있을 듯합니다. 최대한 찾아야합니다.
일단 ajax랑 api를 찾고 sql 구조를 파악합니다.
ajax 전송할때마다 파라미터로 실시간으로 보내는 경우
[{"id":"ironman"}] 이런식으로 응답옵니다.
뭐 달라지는게 아니라 db에서 가져오는거라 SQLi union 똑같습니다.
그냥불러오는 경우로 두가지 경우가 있습니다.
게시판 json형식이고 파라미터 바꾸면 sql될듯합니다.
결국 entity나 prepared나 \가 안걸려있어야되고 파라미터에따른 SQL 구문도 맞춰줘야합니다.
api 네이버 지도, 카카오지도, 구글맵 등이 있는데 SSRF 뚫기는 쉽지않습니다.
/data/file/5ca8308b6e421db88cf333fb9bb47a1c.jpg 내부 IP들
http:// 에서 file:// 로 바꾸는 방법이있고 |
더 복잡한 프로토콜인 gopher:// 로 바꿀 수 있습니다. |
Port scan http:// 127.0.0.1:22 처럼 SSH 포트스캔해서 배너그래빙 정보를 얻습니다. |
cloud metadata를 얻을 수 있습니다. dict:// |
그외로도 취약할 수 있는 시도해볼만한 것들입니다. file:// ftp:// gopher:// ldap:// smtp:// telnet:// tftp:// expect:// |
해당하는 것들이 나오면 그거 뚫으려고 최대한 서칭하고 노력해보려고합니다.