*WG Chair Hat OFF*

On 09/01/2009, at 6:59 AM, Sam Weiler wrote:

I've been digging through the boa and validation drafts, trying to understand the proposed validation algorithm. That's inspired a number of questions, which I hope the WG will indulge me by answering.

The first, which is based on the validation algorithm as described in the current docs: is it easy to bypass BOA-based bogon filtering?

If you have two adjacent net blocks, one of which is in use and covered by a ROA, the other of which is not in use and is covered by a BOA, can an attacker just publish a route to the aggregate netblock (a shorter prefix) and gain the use of the BOA-covered addresses?

Example:

there exists a valid ROA for 229.0.2.0/24  (it's in use)
there exists a valid BOA for 229.0.3.0/24  (not in use)

Spammer publishes a route for 229.0.2.0/23.

The validation algorithm, not seeing a BOA for the /23 or shorter, ignores the /24 BOA and treats the /23 route as having "no roa" (#3 in section 3 of the validation draft).

That doesn't affect the block that is in use, but it allows the attacker to subvert the BOA-based bogon filtering on the out-of-use / 24.

Right?  Or where did I go astray?

You are right Sam.

The original version of the BOA draft proposed a more encompassing algorithm for BOA interpretation where the presence of a BOA could be used to infer the invalidity of a route advertisement in those cases where the route advertisement is an aggregate of the prefix described in the BOA. An observed case of bogus routing, the /8 advertisements that were originated out of AS4678 as part of a spam operation, was one that motivated the original proposed model of interpreting a BOA to refer to aggregates that were not covered by a ROA, as well as referring to more specifics.

The initial discussion of this algorithm pointed out that this had the unfortunate side effect where the recipient of an allocation of an address prefix could 'force' other parties to issue a ROA simply by publishing a ROA for all or part of the address prefix. The outcome of the discussion was a preference to limit the scope of a BOA to the prefix nominated by the BOA or a more specific thereof. i.e. if A is an LIR and A has been allocated 10.0.0.0/16 and A advertises the aggregate, but chooses not to issue a ROA, then this would be harmless, in so far as the absence of a ROA should not be inferred as being bogus, particularly in an environment of piecemeal adoption of the use of these authorities and attestations. However, if A then allocates to B the prefix 10.1.0.0/24, and certifies the allocation, then if B publishes a BOA for the allocated address block, then with the original BOA proposed scope this action would cause A's advertisement of 10.0.0.0/16 to be considered bogus, and, in turn, force A to generate a ROA to 'defend' it's advertisement as being valid. The revision of the proposed algorithm of interpretation of the BOA was proposed in order to eliminate this form of forced ROA use side-effect which, at the time, was considered in the discussion of the BOA model, to be an undesirable side-effect.

In my mind I don't see either algorithm is being right or wrong here - its a case of a tradeoff between a desire to apply a BOA model to as broad a case as possible of forms of bogus route advertisement in order to detect as many cases as possible of bogus route advertisement, and a desire to limit the level of side effects of BOA use, particularly when considering this in a scenario of piecemeal use of ROAs and BOAs.

regards,

   Geoff






_______________________________________________
sidr mailing list
[email protected]
https://www.ietf.org/mailman/listinfo/sidr

Reply via email to