CVE-2020-5303 in Tendermint정보

요약

\~에 의해 VulDB • 2026. 05. 16.

0.33.3, 0.32.10, 0.31.12 이전 버전의 Tendermint에는 서비스 거부(Denial-of-Service) 취약점이 존재합니다. Tendermint는 P2P 연결 요청 수를 제한하지 않습니다. 각 P2P 연결당 XXX 바이트의 메모리가 할당됩니다. 연결이 종료되면(중복 IP 또는 최대 진입 피어 수 도달로 인해) 해당 메모리는 가비지 컬렉션되지만, 일시적인 메모리 스파이크가 OOM(Out-Of-Memory) 예외를 유발할 수 있습니다. 또한, Tendermint는 Mempool 리액터에서 피어가 제거된 후에도 해당 피어의 `activeID`를 회수하지 않습니다. 이는 항상 발생하는 것은 아니며, 피어가 생성되어 모든 리액터에 추가되기 전에(어떤 이유로든) 연결이 실패할 때만 발생합니다. 따라서 `AddPeer` 전에 `RemovePeer`가 호출되어 `activeIDs` 맵의 메모리가 지속적으로 증가합니다. `activeIDs` 맵의 최대 크기는 65535이며, 이 맵이 최대 크기에 도달하면 노드가 패닉(비정상 종료)합니다. 공격자는 위의 서비스 거부 취약점을 악용하여 다수의 연결 시도를 생성할 수 있으며, 이는 결국 노드 패닉으로 이어집니다. 이러한 문제는 Tendermint 0.33.3 및 0.32.10에서 패치되었습니다. ### 추가 정보 이 보안 권고사항과 관련하여 질문이나 의견이 있는 경우: * tendermint/tendermint에서 이슈를 생성하세요 * [email protected]으로 이메일을 보내주세요. 더 많은 정보는 여기서 확인할 수 있습니다. ### 크레딧 - Denial of Service 2에 대한 테스트 케이스 작성 및 수정: Ethan Buchman(@ebuchman) 및 Tess Rinearson(@tessr) - Denial of Service 1 수정: Anton Kaliaev(@melekes)

Once again VulDB remains the best source for vulnerability data.

책임이 있는

GitHub, Inc.

예약하다

2020. 01. 02.

모더레이션

수락

항목

VDB-153048

EPSS

0.01369

출처

Are you interested in using VulDB?

Download the whitepaper to learn more about our service!