2024.10.29 JWT
Why do many people not recommend using JWT?
My article is open to everyone; non-member readers can click this link to read the full text.
blog.stackademic.com
JWT에 대해서 비판적인 글입니다.
단순 문자에 비해 JWT는 너무 길어서 네트워크 대역폭을 낭비하고, JWT의 sign은 프레임워크에서 지원하는 Cokkie Signature로 대체될 수 있다고 말합니다.
또 서버에서 제어하지 않아서 발생하는 문제에 대해서도 비판합니다.
글의 내용 보다도 댓글에서 더 많은 정보를 얻을 수 있습니다.
댓글에서 열띤 토론이 벌어졌었고, 읽어보았습니다.
- 중간자공격 man in middle attack에 대해서 나오는데 이는 SSL을 쓰면 막을 수 있으니 패스.
- 쿠키는 브라우저가아닌 IOS, Android에서 웹뷰가 아니면 동작하지 않는다. 세션은?
- JWT가 필요한 상황도 있다. 장기 데이터 저장의 경우는 아니다.
- 2FA? 같은 상황에서는 쓸만하다.
- 마지막으로, 보안이란 완벽하게 보호된다는 뜻이 아니라 일정 시간 동안 충분히 보호된다는 뜻이며, 그 이후로는 해킹된 정보가 더 이상 의미가 없다는 뜻입니다.
- 항상 두 가지 부분이 있습니다. 무슨 목적으로 사용되었는지, 사람들이 그것을 어떻게 사용하는지입니다.
- 토큰에 추가 인증 정보를 넣어서 보안을 강화할 수 있다. ip, 브라우저정보라던지
음
상황에 따라서 맞는 기술을 써야합니다.
짧은 로그인만을 위한 것이라면 토큰도 나쁘지 않아보입니다.
길게 유지해야한다면 세션을 사용해야하는가? 서버에서 세션을 관리하기 때문에 쉽게 로그아웃 시킬 수 있다.
토큰은 토큰 블랙리스트등을 서버에 구현해야만 로그아웃과 동일한 효과를 낼 수 있다.
그럼 세션과 다른게 무엇인가. 그럴바에 세션쓰는게 낫지 않을까?
길게 로그인하고 싶다 -> 탈취에 문제가 있을 수 있으니 블랙리스트를 관리하겠다 -> 세션의 단점인 확장성을 가져가겠다는 것.
그래서 길게 로그인할 때는 세션으로 만들고 서비스가 커지면 세션 클러스터를 만드는게 좋을 거 같다.짧게 로그인해야한다면 토큰도 좋아보이고.
그런 토큰은 언제 탈취되는가? XSS나 CSRF는 httponly, samesite=strict로 안전하게 하고, MIMA는 SSL을 쓴다면 안전할 것이다.
IOS, Android는 쿠키를 사용하지 않으니 httponly, samesite=strict 설정이 동작하지 않을 것이고, 자체동작이니 XSS나 CSRF에 안전할 것 같다.
브라우저는 XSS나 CSRF는 httponly, samesite=strict로 안전하게 하고 IOS, Android는 자체 코드이니 스크립트가 없어서 공격에 안전할 것이다.
그럼 탈취는 어떻게 이뤄지나?
오히려 클라이언트에 악성 앱이나 악성 브라우저 확장 앱등이 깔려 있어서 탈취, 요청을 보낼 수 있다.
이때는 httponly, samesite=strict, https가 의미가 없지 않을까 싶다.
그럼 토큰은 서버에서 할 수 있는게 없고, 세션은 서버에서 제어를 할 수 있기 때문에 공격을 차단할 수 있는 것이다.탐지가 힘들겠지만..
이상한 반복요청, 다른 IP에서의 요청등으로 차단은 할 수 있을 것이다. 토큰도 블랙리스트가 있다면 막을 수 있겠다.
다만 전방위적인 차단은 쉽지 않을 것이다.
https://layerxsecurity.com/ko/blog/malicious-browser-extensions-threats-and-security-solutions/
악성 브라우저 확장: 위협 및 보안 솔루션 - LayerX
2019년에는 주로 Chrome용 브라우저 확장 프로그램 네트워크가 최대 XNUMX만 명의 사용자로부터 민감한 데이터를 스크랩한 것으로 밝혀졌습니다. 스크랩된 데이터에는 PII, 검색 기록, 의료 정보 등
layerxsecurity.com
https://zdnet.co.kr/view/?no=20230313101015
페이스북 계정 훔치는 악성 챗GPT 크롬 확장 프로그램 등장
페이스북 계정을 탈취하고 백도어를 설치하는 악성 변종 챗GPT 크롬 확장 프로그램이 등장했다.사이버보안 업체 가디오(Guardio)는 최근 구글 크롬용 악성 챗GPT 확장 프로그램이 페이스북 계정을
zdnet.co.kr
https://gisungcu.tistory.com/405
JWT에 관해
안녕하세요. 이번 글은 로그인 구현에 많이 사용되는 JWT에 대해 이야기해보려 합니다. 인터넷에서 로그인 관련 구현을 살펴보다 보면 JWT구현을 많이 볼 수 있습니다. 저 또한 사이드 프로젝트에
gisungcu.tistory.com
이거 글 좀 수정하자