[Last-Call] Re: Secdir last call review of draft-ietf-bfd-unaffiliated-echo-11

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Note that I agree wholeheartedly with this analysis.

The scenario Stephen points out is a reflection attack, and thus potentially has a role in obscuring the attacker, but it is NOT an amplification attack.  The device providing the looping service is simply acting as a forwarding router.

The unaffiliated BFD instance has multiple opportunities to not pay attention to the spoofed traffic:
- GTSM is recommended.  This ideally would reduce the attacker to being on-link.
- BFD authentication is recommended.  This will avoid disrupting the unaffiliated session. 
- BFD authentication mechanisms that include a sequence number can reduce the attack space of an attacker trying to use the cryptographic mechanism as a CPU exhaustion attack.  However, an on-link attacker may be able to observe the sequence number.

-- Jeff



> On Oct 10, 2024, at 6:00 AM, Erik Auerswald <auerswal@xxxxxxxxxxxxxxxxx> wrote:
> 
> Hi Stephen,
> 
> On Thu, Oct 10, 2024 at 07:45:50AM +0100, Stephen Farrell wrote:
>> On 10/10/24 03:16, xiao.min2@xxxxxxxxxx wrote:
>> 
>>> [XM]>>> No, B is NOT able to any validation, B simply loops
>>> Unaffiliated BFD Echo packets back to A. As Erik Auerswald has
>>> indicated, this kind of DoS attack can happen without Unaffiliated
>>> BFD Echo, i.e., this kind of DoS attack is irrelevant to
>>> Unaffiliated BFD Echo.
>> 
>> Well, in that case ISTM the potential DoS is not dealt with
>> properly in this spec. That's I guess a thing the IESG can
>> handle, so we don't need to bottom out on it between us.
> 
> What is the "potential DoS"?  I do not understand what attack you see,
> could you try to describe it more clearly?
> 
> I'll try again to describe why I do not see a DoS attack enabled by
> Unaffiliated BFD Echo:
> 
> 1) Unaffiliated BFD Echo is a protocol spoken by a single system,
>   let's call it "real-A", with itself.  This system, "real-A", does not
>   answer protocol packets, thus it does not reflect them.  This is not a
>   request/response protocol.  A probe (called "BFD Echo") is sent out and
>   either received or not received by the sender.  Thus "real-A" does not
>   answer spoofed packets from any "bad-device-A".  Thus "bad-device-A"
>   cannot reflect BFD Echo packets via "real-A".
> 
> 2) "Real-A" creates BFD Echo packets, sends them to a directly connected
>   router (device B in figure 1 of draft-ietf-bfd-unaffiliated-echo-11),
>   and checks if it receives them back from the router.
> 
>   The router does not know that it forwards BFD Echo packets, because
>   its forwarding function only works on IP.  Thus this "reflection"
>   is not introduced by Unaffiliated BFD Echo, but by IP [RFC791].
> 
>   Sending IP packets to a router with the expectation that the router
>   forwards them towards their destination is the basic operation of
>   IP networks.
> 
>>> So IMHO what we can do is to ask the real-A
>>> to include some form of authentication.
>> 
>> I don't really get what you're saying there, sorry, as there
>> is no point in "including some form of authentication" unless
>> a relevant party validates that. Again though, the IESG can
>> figure this out so we don't need to.
> 
> If "real-A" receives its own packets it can assume that IP packets can
> be transported from "real-A" to the router and also from the router to
> "real-A".
> 
> If a "bad-device-A" spoofs packets that reach "real-A", and "real-A"
> cannot determine those packets are spoofed, it might be tricked into
> regarding IP forwarding from and to the router to work even when it
> does not.  This may create a DoS situation if it prevents "real-A"
> from failing over to another router.  This spoofing does not require the
> monitored router, it can be done via a link common between "real-A" and
> "bad-device-A" or via another router directly connected to both "real-A"
> and "bad-device-B".
> 
> Using BFD authentication allows "real-A" to discriminate between its own
> messages and those of "bad-device-A".  This allows "real-A" to ignore
> spoofed messages and correctly detect an IP forwarding problem.
> 
> Br,
> Erik

-- 
last-call mailing list -- last-call@xxxxxxxx
To unsubscribe send an email to last-call-leave@xxxxxxxx




[Index of Archives]     [IETF Annoucements]     [IETF]     [IP Storage]     [Yosemite News]     [Linux SCTP]     [Linux Newbies]     [Mhonarc]     [Fedora Users]

  Powered by Linux