728x90
반응형
이전 작성 참고 내용
https://itinformation.tistory.com/527
JWT 장점
- JWT는 쿠키 등에 저장되므로 서버에서 인증을 위한 세션 저장소가 필요 없음
- 다른 서비스 인증에서도 공통적으로 사용할 수 있어 확장성이 뛰어남
- REST 서비스로 제공 가능
JWT 단점
- 필드가 추가되면 토큰 크기가 증가
- Header나 payload는 단순히 base64로 인코딩이된것이므로 디코딩하면 값을 확인할 수 있음
> 변조에 대한건 확인할 수 있으나 유출이 되었는지는 확인 할 수가 없음
JWT 우회 기법
- Signature 알고리즘을 none으로 변경하여 검증을 우회가능
- Signature 알고리즘 키가 유출되면 원하는 토큰으로 변조 가능
JWT 서명 알고리즘 키 탈취
- JWT는 클라이언트에 저장되므로 서버가 JWT 사용에 관여할 수 없음
- Header에 Signature 알고리즘이 명시되어 있고, JWT 표준에 따라 Signature 만드는 방식이 공개되어 있으므로 공격자는 제한 없이 무차별 대임 공격, 레인보우 테이블 등을 이용하여 Signature 키를 알아 낼수 있음
- jwtcat, jwt-craker 등을 이용
보안 대책
- 복잡한 서명 알고리즘 키 사용
- 주기적인 알고리즘 키 변경
- jwt.io에서 권장하는 라이브러리 사용
728x90
반응형
'보안 공부 > Web 보안' 카테고리의 다른 글
OpenSSL 취약점 점검 가이드 (0) | 2024.01.17 |
---|---|
wordpress 취약점 진단 방법 (0) | 2024.01.10 |
취약점 점검을 위한 자바스크립트 분석 유형 (0) | 2024.01.07 |
SSL 취약점 (HeartBleed, Poodle 취약점) (0) | 2022.08.02 |
SSL 공격법 'POODLE' 취약점 (0) | 2022.04.29 |