🇰🇷 한글 설명
Python Social Auth 5.0.2 미만 버전의 LINE 백엔드에서 OAuth state 검증이 누락되어 발생합니다. 공격자가 피해자를 자신의 LINE 계정으로 로그인하게 만들거나, 계정 연동 기능이 활성화된 경우 피해자의 기존 계정에 공격자의 LINE 계정을 연결하여 지속적인 무단 로그인을 허용할 수 있습니다.
💡 쉬운 설명
로그인 과정에서 본인 확인 절차가 빠져 있어, 공격자가 만든 가짜 로그인 링크를 통해 사용자가 공격자의 계정으로 접속하게 만들 수 있습니다. 이 과정에서 사용자의 원래 계정이 공격자의 계정과 연결되어 나중에 공격자가 사용자 계정에 쉽게 들어올 수 있게 됩니다.
🇺🇸 원문 (English)
Python Social Auth is a social authentication/registration mechanism. Prior to 5.0.2, the LINE backend exchanges an authorization code without validating the returned OAuth state. An attacker can begin authorization for an attacker-controlled LINE account and induce a victim to visit the resulting callback URL, causing the application to log the victim into the attacker's account. When account linking is enabled, the same missing validation can link the attacker's LINE identity to the victim's existing account and create a persistent unauthorized login path. Only applications with the LINE backend enabled are affected. This issue is fixed in version 5.0.2.
📍 영향받는 시스템
Python Social Auth (LINE 백엔드 사용 시) 5.0.2 미만 버전
⚔️ 공격 벡터
검증되지 않은 OAuth state를 이용한 콜백 URL 유도 및 계정 연동 공격
🛡️ 대응 방법
Python Social Auth를 5.0.2 이상 버전으로 업데이트
🔧 검증 코드
출력된 버전 번호가 5.0.2보다 낮은지 확인합니다.
pip show python-social-auth | grep Version