🔍 CVE-2026-111761

5.8
CVSS Score
MEDIUM
2026-10-20
2026-10-22 22:18
✅ 완료

🇰🇷 한글 설명

A2A Java SDK 1.3.0.Final 미만 버전에서 BasePushNotificationSender가 목적지 URL에 대한 검증, 스킴 제한 또는 리다이렉트 제한을 수행하지 않는 취약점이 발견되었습니다. 이를 통해 인증되지 않은 공격자가 서버의 네트워크 위치를 이용하여 루프백, 사설 네트워크 또는 클라우드 메타데이터 주소로 요청을 보내는 SSRF 공격을 수행할 수 있습니다. 또한 리다이렉트를 이용한 DNS Rebinding 공격을 통해 내부 서비스로 데이터를 전송하거나 요청 방식을 변경할 수 있습니다.

💡 쉬운 설명

공격자가 조작된 주소를 입력하여 서버가 내부 네트워크나 관리자 페이지에 몰래 접속하게 만드는 보안 결함입니다. 이를 통해 서버 내부의 민감한 정보가 유출되거나 내부 시스템이 공격받을 수 있습니다.

🇺🇸 원문 (English)

A2A Java SDK is the official Java SDK for the Agent2Agent (A2A) Protocol. Prior to 1.3.0.Final, BasePushNotificationSender in server-common sends task data to the URL in TaskPushNotificationConfig without destination validation, scheme restrictions, or bounds on redirects. InMemoryPushNotificationConfigStore.setInfo stores the URL verbatim, and onCreateTaskPushNotificationConfig does not validate the destination. In the default deployment with push notifications enabled, an unauthenticated caller can register a destination through an inline SendMessage configuration or CreateTaskPushNotificationConfig for an existing task, causing task status and artifact updates to send requests from the server's network position to loopback, private, link-local cloud-metadata, IPv6 unique-local, unspecified, or multicast destinations where routing permits. JdkA2AHttpClient and VertxA2AHttpClient follow redirects, allowing a webhook redirect to bypass creation-time destination checks and convert a POST into a GET; hostname-only checks also do not prevent DNS rebinding. Direct POST delivery can push attacker-influenced task data into internal services, whereas a redirected POST-to-GET request drops the body. The sender discards the fetched response and does not expose delivery success or failure, so the demonstrated behavior does not provide response read-back. No credentials or user interaction are required. This issue is fixed in version 1.3.0.Final.

📍 영향받는 시스템

A2A Java SDK versions prior to 1.3.0.Final

⚔️ 공격 벡터

인증되지 않은 사용자가 TaskPushNotificationConfig를 통해 조작된 URL을 등록하여 서버 내부로 요청을 유도하는 SSRF 공격

🛡️ 대응 방법

A2A Java SDK를 1.3.0.Final 버전 이상으로 업데이트하십시오.

🔧 검증 코드

출력된 결과에서 a2a-java-sdk의 버전이 1.3.0.Final보다 낮은지 확인하십시오.

Shell / Script
mvn dependency:list | grep -E 'a2a-java-sdk:[0-9]+(\.[0-9]+)*'

📊 CVSS Vector String

CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:N/I:L/A:N

💻 영향받는 소프트웨어

Spring Data REST