🇰🇷 한글 설명
RabbitMQ amqp091-go 클라이언트 1.13.0 미만 버전에서 인증 성공 후에도 Connection.Config.SASL 내의 PlainAuth 값이 평문 상태로 유지되는 취약점이 발견되었습니다. 이로 인해 로그, 성능 모니터링 도구 또는 디버깅 유틸리티가 Connection 객체에 접근할 경우 사용자 자격 증명이 노출될 수 있습니다.
💡 쉬운 설명
로그인에 성공한 후에도 시스템 메모리에 비밀번호가 평문으로 남아 있어, 로그 파일이나 모니터링 도구를 통해 비밀번호가 유출될 위험이 있습니다. 인증이 끝나면 비밀번호를 즉시 지워야 하는데 이를 수행하지 않아 발생하는 문제입니다.
🇺🇸 원문 (English)
RabbitMQ amqp091-go is a Go AMQP 0.9.1 client. Prior to 1.13.0, PlainAuth values defined in auth.go retain passwords as exported plaintext fields in Connection.Config.SASL after a successful PLAIN authentication handshake. The Connection.openComplete method in connection.go does not clear those values. Code with access to the Connection object, including reflective loggers, application performance monitoring agents, debugging utilities, and panic handlers, can traverse the configuration and expose the credentials to logs or state captures. The credential remains available for the lifetime of the connection instead of being cleared after authentication. This issue is fixed in version 1.13.0.
📍 영향받는 시스템
RabbitMQ amqp091-go client versions prior to 1.13.0
⚔️ 공격 벡터
로깅 시스템, APM 에이전트, 디버깅 도구 또는 패닉 핸들러를 통한 메모리 내 자격 증명 노출
🛡️ 대응 방법
amqp091-go 라이브러리를 1.13.0 버전 이상으로 업데이트하십시오.
🔧 검증 코드
출력된 버전 정보가 1.13.0 미만인지 확인하십시오.
go list -m github.com/rabbitmq/amqp091-go