🔍 CVE-2026-83813

3.1
CVSS Score
LOW
2026-10-23
2026-10-23 21:17
✅ 완료

🇰🇷 한글 설명

Twisted 프레임워크의 twisted.names.dns.DNSDatagramProtocol은 26.10.0rc1 이전 버전에서 대기 중인 질의와 16비트 트랜잭션 ID가 일치하는 UDP DNS 응답을 발신지 호스트와 포트 검증 없이 수락합니다. 이로 인해 공격자가 올바른 트랜잭션 ID를 가진 위조 응답을 주입할 수 있습니다. 이 문제는 26.10.0rc1에서 수정되었습니다.

💡 쉬운 설명

이 취약점은 DNS 응답이 정말 올바른 서버에서 왔는지 확인하지 않는 문제입니다. 공격자가 올바른 번호만 맞추면 가짜 답변을 끼워 넣어 접속 주소를 바꿀 수 있습니다.

🇺🇸 원문 (English)

Twisted is an event-based framework for internet applications, supporting Python 3.6+. Prior to 26.10.0rc1, twisted.names.dns.DNSDatagramProtocol accepts a UDP DNS response for a pending query when its 16-bit transaction ID matches but does not verify that the response came from the queried host and port. An attacker able to deliver a packet to the resolver's listening port with the correct transaction ID can inject a forged answer. The standard twisted.names.client.Resolver uses a new random source port for each query, increasing off-path attack complexity, while applications that reuse a DNSDatagramProtocol instance expose only the transaction-ID search space after the first query. A successful forgery can redirect hostname resolution and enable mail interception, server-side request forgery, or man-in-the-middle positioning. This issue is fixed in version 26.10.0rc1.

📍 영향받는 시스템

Twisted 26.10.0rc1 미만을 사용하는 Python 애플리케이션 (DNSDatagramProtocol 사용 환경)

⚔️ 공격 벡터

공격자가 리졸버의 수신 포트로 올바른 트랜잭션 ID를 가진 위조 UDP DNS 응답 패킷을 전송하여 이름 해석을 조작

🛡️ 대응 방법

twisted를 26.10.0rc1 이상으로 업그레이드 (pip install --upgrade 'twisted>=26.10.0rc1')

🔧 검증 코드

출력된 버전이 26.10.0rc1 미만이면 취약하며, 같거나 높으면 수정된 버전입니다.

Shell / Script
python3 -c "import twisted; print(twisted.__version__)" 2>/dev/null

📊 CVSS Vector String

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

💻 영향받는 소프트웨어

IBM WebSphere Application Server