🇰🇷 한글 설명
Twisted 프레임워크의 twisted.words.xish.domish ExpatElementStream 파서는 26.10.0rc1 이전 버전에서 인증되지 않은 원격 피어가 컨테이너 요소를 열어둔 채 자식 요소를 계속 추가할 수 있습니다. 파서는 바이트 또는 요소 수 제한 없이 미완성 스탠자를 메모리 트리로 유지하며, 이로 인해 단일 연결만으로 서버 메모리가 고갈되어 프로세스가 종료될 수 있습니다.
💡 쉬운 설명
인터넷 통신 프로그램인 Twisted의 XMPP 처리 부분에 결함이 있어, 로그인 전에도 누군가 데이터를 계속 보내면 서버 메모리가 바닥나 서버가 멈출 수 있습니다. 최신 수정 버전으로 업데이트하면 이 문제가 해결됩니다.
🇺🇸 원문 (English)
Twisted is an event-based framework for internet applications, supporting Python 3.6+. Prior to 26.10.0rc1, the twisted.words.xish.domish ExpatElementStream parser allows an unauthenticated remote peer to keep a container element open while continuously adding child elements. The parser retains the unfinished stanza as an in-memory tree without a byte or element-count limit, and XMPP pre-authentication stream parsing exposes this behavior before credentials are accepted. A single connection can therefore exhaust server memory and terminate the process. This issue is fixed in version 26.10.0rc1.
📍 영향받는 시스템
Twisted Python 프레임워크 26.10.0rc1 미만 버전 (twisted.words XMPP 파서 사용 시)
⚔️ 공격 벡터
인증 없이 원격지에서 하나의 TCP 연결을 통해 컨테이너 요소를 열고 자식 요소를 무제한으로 전송하여 메모리 고갈(DoS)을 유발
🛡️ 대응 방법
Twisted를 26.10.0rc1 이상으로 업그레이드하거나, 해당 버전 전까지 twisted.words XMPP 서비스를 비활성화하고 연결 수/메모리 사용량을 제한
🔧 검증 코드
출력된 Version 값이 26.10.0rc1 미만이면 취약하며, 같거나 높으면 패치된 버전입니다.
pip show twisted 2>/dev/null | grep -i version
💻 영향받는 소프트웨어
IBM WebSphere Application Server