From 68ac9542c451c9088c59a3ec6124d87cfd3382a3 Mon Sep 17 00:00:00 2001 From: Antoine Poinsot Date: Sat, 27 Jul 2024 19:50:45 +0200 Subject: [PATCH] doc: net_proc: reference past DoS vulnerability in orphan processing --- src/net_processing.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/net_processing.cpp b/src/net_processing.cpp index 2c2b23395dc..61049f524b7 100644 --- a/src/net_processing.cpp +++ b/src/net_processing.cpp @@ -3072,6 +3072,8 @@ void PeerManagerImpl::ProcessPackageResult(const node::PackageToValidate& packag } } +// NOTE: the orphan processing used to be uninterruptible and quadratic, which could allow a peer to stall the node for +// hours with specially crafted transactions. See https://bitcoincore.org/en/2024/07/03/disclose-orphan-dos. bool PeerManagerImpl::ProcessOrphanTx(Peer& peer) { AssertLockHeld(g_msgproc_mutex);