🇰🇷 한글 설명
canto-saas-api PHP 라이브러리 3.0.0 미만 버전에서 OAuth2 인증 시 앱 ID, 비밀번호, 리프레시 토큰 등의 민감한 정보가 URL 쿼리 스트링에 포함되어 노출됩니다. 또한 인증 실패 시 해당 정보가 포함된 URI가 예외 객체에 담겨 애플리케이션 로그나 에러 트래커에 평문으로 기록될 수 있습니다.
💡 쉬운 설명
인증에 필요한 중요한 비밀번호들이 인터넷 기록이나 로그 파일에 글자 그대로 남게 되는 보안 결함입니다. 해커가 로그 파일에 접근할 수 있다면 사용자의 계정 정보를 쉽게 훔칠 수 있습니다.
🇺🇸 원문 (English)
canto-saas-api is a PHP library for interacting with the Canto SaaS API. Prior to version 3.0.0, OAuth2Request::getQueryParams() places app_id, app_secret, refresh_token, and code in the URL query string of token POST requests, allowing access logs, proxy logs, and APM traces to persist the credentials in plaintext. When a token request fails, OAuth2::obtainAccessToken() also passes the credential-bearing Guzzle request URI into AuthorizationFailedException, so application logs and error trackers can record the same secrets. An attacker with access to affected telemetry can obtain Canto credentials and use them to request access tokens for the tenant. This issue is fixed in version 3.0.0.
📍 영향받는 시스템
canto-saas-api PHP library versions prior to 3.0.0
⚔️ 공격 벡터
액세스 로그, 프록시 로그, APM 추적 데이터 또는 애플리케이션 에러 로그를 탈취하여 민감한 자격 증명 획득
🛡️ 대응 방법
canto-saas-api 라이브러리를 버전 3.0.0 이상으로 업데이트하십시오.
🔧 검증 코드
출력된 버전 정보가 3.0.0 미만인 경우 취약한 상태입니다.
composer show canto-saas-api | grep 'versions'