Cross Site Script(CSRF)
OWASP Top 10에 드는 웹 해킹 기법에 대한 복습
🔍 Cross Site Script(CSRF)
- 사이트 간 요청 위조
- 사용자 자신의 의지와 무관하게 공격자가 의도한 행위를 수행하게 하는 공격
- 사용자가 특정 사이트를 신뢰
- 예시
- 회원 정보 수정
- 데이터 수정/삭제
- 악플
XSS는사용자가 특정 사이트를 신뢰하기 때문에 발생한다면,CSRF는특정 사이트가 사용자를 신뢰하기 때문에 발생.사용자가 로그인 상태 + 조작된 페이지 방문 = CSRF 조건 성립
클라이언트인 XSS와는 다르게 서버가 공격대상이다.
CSRF 보안 대책
- 재인증
- 일회용 토큰 사용
- CAPTCHA 사용(로봇이 아닙니다)
- Referer(요청을 보낸 페이지) 체크
- GET보단 POST
- 자동 로그인은 지양..
🔍 Server Side Request Forgery (SSRF)
- 클라이언트 측의 요청을 변조하는 CSRF와는 다르게 SSRF는 서버 측 요청을 변조한다.
- 공격자가 원하는 형태의 악성 행위를 서버에 던져주면 서버가 검증없이 실행
CSRF vs SSRF
*CSRF와의 차이점을 알아야한다!
실습해보자.
php대신 php3로 우회하여 접속에 성공했다.
이처럼 서버 대상 우회하여 스크립트 공격을 작동시키는 것이 SSRF다!
SSRF 보안 대책
- 내부 시스템과 상호 작용하는 변수에 불필요한 값이 입력될 경우 무효처리하는 것이 중요‼️
- 변수에 입력된 주소가 올바른지?(신뢰하는 주소가 맞는지) 재검증을 해야 됨
- 요청시 도메인 이름에 대한 검증도 해줘야 함(지정해준 도메인 요청하는 경우가 존재하기 때문!)
Written on July 16, 2024