🇰🇷 한글 설명
Passport-SAML은 Node.js 인증 라이브러리인 Passport를 위한 SAML 2.0 인증 제공자입니다. 3.1.0 버전 이전에는 악의적인 SAML 페이로드가 과도한 시스템 리소스를 소모하는 변환(transform)을 요구할 수 있어 서비스 거부(DoS) 공격이 가능했습니다.
💡 쉬운 설명
인증 과정에서 처리하기 너무 복잡한 데이터를 보내 시스템을 과부하 상태로 만드는 공격입니다. 이로 인해 웹사이트나 서비스가 느려지거나 멈출 수 있습니다.
🇺🇸 원문 (English)
Passport-SAML is a SAML 2.0 authentication provider for Passport, the Node.js authentication library. Prior to version 3.1.0, a malicious SAML payload can require transforms that consume significant system resources to process, thereby resulting in reduced or denied service. This would be an effective way to perform a denial-of-service attack. This has been resolved in version 3.1.0. The resolution is to limit the number of allowable transforms to 2.
📍 영향받는 시스템
Passport-SAML version < 3.1.0
⚔️ 공격 벡터
악의적으로 조작된 SAML 페이로드를 전송하여 과도한 데이터 변환을 유도함
🛡️ 대응 방법
Passport-SAML을 3.1.0 버전 이상으로 업데이트하여 허용되는 변환 횟수를 제한함
🔧 검증 코드
출력된 버전이 3.1.0 미만인지 확인하여 취약 여부를 판단합니다.