삶 가운데 남긴 기록 AACII.TISTORY.COM
JAVA 보안 Cross-Site Request Forgery 본문
Cross-Site Request Forgery
사용자가 인지하지 못한 상황에서 사용자 의도와는 무관한 공격자의 행위를 요청하게 하는 공격을 말합니다.
사용자의 세션이 특정 동작을 수행해도 계속 유지되어 정상요청과 비정상요청을 구분하지 못하는 점을 악용합니다.
GET방식은 URL에 추가적인 정보를 덧붙일 수 있으므로 CSRF 공격에 노출 될 수 있습니다.
입력 폼(form) 작성시 GET보다는 POST로 전달하고 입력 폼과 서버측 프로그램 사이에 토큰을 사용하여 공격자의 직접적인 URL 사용이 동작하지 않도록 처리하여 방어합니다.
중요한 기능은 세션검증과 재인증을 유도합니다.
안전하지 않은 예
...
<form name="frm" method="get" action="action.do">
...
</form>
...
post를 사용하여 방어
...
<form name="frm" method="post" action="action.do">
...
</form>
...
참고
http://cwe.mitre.org/data/definitions/352.html
https://www.owasp.org/index.php
728x90
'DEV&OPS > Java' 카테고리의 다른 글
JAVA 보안 HTTP Response Splitting (0) | 2022.08.16 |
---|---|
JAVA 보안 Path Traversal (0) | 2022.08.05 |
JAVA 보안 URL Redirection to Untrusted Site (0) | 2022.08.04 |
JAVA 보안 Unrestricted Upload of File with Dangerous Type (0) | 2022.08.04 |
JAVA 보안 OS Command Injection (0) | 2022.08.03 |