forked from cerc-io/plugeth
p2p/discover: validate bond against lastpong, not db presence
This commit is contained in:
parent
4e61ed02e2
commit
32301a4d6b
@ -613,7 +613,7 @@ func (req *findnode) handle(t *udp, from *net.UDPAddr, fromID NodeID, mac []byte
|
|||||||
if expired(req.Expiration) {
|
if expired(req.Expiration) {
|
||||||
return errExpired
|
return errExpired
|
||||||
}
|
}
|
||||||
if t.db.node(fromID) == nil {
|
if age := time.Since(t.db.lastPong(fromID)); age > nodeDBNodeExpiration {
|
||||||
// No bond exists, we don't process the packet. This prevents
|
// No bond exists, we don't process the packet. This prevents
|
||||||
// an attack vector where the discovery protocol could be used
|
// an attack vector where the discovery protocol could be used
|
||||||
// to amplify traffic in a DDOS attack. A malicious actor
|
// to amplify traffic in a DDOS attack. A malicious actor
|
||||||
|
Loading…
Reference in New Issue
Block a user