RE: [Mip4] RFC3012bis: Proposal for Issue2-Change5
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
RE: [Mip4] RFC3012bis: Proposal for Issue2-Change5
Hi, Jayshree,
Jayshree Bharatia writes:
[...]
> [JB] Proposed text for section 2.
> From:
> The Challenge extension, illustrated in figure 1, is inserted in the Agent
> Advertisements by the Foreign Agent, in order to communicate the latest
> challenge value that can be used by the mobile node to compute an
> authentication for its next registration request message. The challenge is
> selected by the foreign agent to provide local assurance that the mobile
> node is not replaying any earlier registration request.
>
> To:
> The Challenge extension, illustrated in figure 1, is inserted in the Agent
> Advertisements by the Foreign Agent, in order to communicate a previously
> unused challenge value that can be used by the mobile node to compute an
> authentication for its next registration request message. The challenge is
> selected by the foreign agent to provide local assurance that the mobile
> node is not replaying any earlier registration request.
Ok, looks good.
> > > In addition to this, Henrik proposed a new text for a new
> > subsection 2.1.
> > >
> > > 2.1 Handling of Solicited Agent Advertisements
> > >
> > > When a foreign agent generates an Agent Advertisement in
> > response to a > Router Solicitation [4], some additional
> > considerations come into play. > According to the Mobile IP
> > base specification [7], the resulting Agent > Advertisement
> > may be either multicast or unicast. >
> > > If the solicited Agent Advertisement is multicast, it MUST
> > NOT generate a > new Challenge value and update its window
> > of remembered advertised > Challenges. It must instead
> > re-use the most recent of the CHALLENGE_WINDOW >
> > Advertisement Challenge values. >
> > > If the agent advertisement is unicast back to the
> > soliciting mobile node > MUST be handled as follows: If the
> > challenge most recently unicast to the
> > ^ insert the word "it"
> >
> > > soliciting mobile node has not been previously used (as
> > defined in Section > 1.1), in SHOULD > be repeated in the
> > newly issued unicast agent advertisement, otherwise a new >
> > challenge MUST be generated and remembered as the most recent
> > challenge > issued to the mobile node. (For further
> > discussion of this, see Section 12.)
> >
> > I agree with this so far.
> >
> > > A foreign agent SHOULD NOT respond arbitrarily often to
> > agent solicitations, > in order to limit processing load,
> > especially in the face of hostile nodes > soliciting at a
> > very high rate. The rate of solicited agent advertisement >
> > responses SHOULD at most be 50 per second.
> >
> > I am not sure we need the last paragraph. Overload control,
> > especially the choice of which solicitations to discard, is a
> > tricky subject. I don't know that we will come to any
> > agreement on a maximum rate (cf. previous discussions on the
> > Mobile IP list regarding multicast agent advertisement rates).
> >
> >
> > > The original proposal from Henrik was to mandate a
> > challenge in a > Registration Reply. After few email
> > exchanges, it was decided that the > current text in section
> > 3.3 (RFC3012bis (version 05) ) is ok. In addition to > the
> > current text, Henrik proposed the following text to be used
> > as a > guidance/background: >
> > > (section 3.3)
> > > One example of a situation where the Foreign Agent MAY
> > omit the inclusion of > a Mobile-Foreign Challenge Extension
> > in the Registration Reply would be when > a new challenge
> > has been multicast recently. The Foreign Agent could then >
> > assume that the mobile node with high likelihood has received
> > and can use > the multicast challenge. A mobile node MUST be
> > prepared to use a multicast > challenge in lieu of one
> > returned in a Registration Reply, and MUST solicit > for one
> > if it has not already received one in a Registration Reply or
> > Agent > Advertisement.
> >
> > This is good, but it doesn't seem quite strong enough, i.e.,
> > we still have a SHOULD on the inclusion of the previously
> > unused challenge. It seems to me we should require (with a
> > MUST) the inclusion of a challenge in the registration reply
> > if something like the condition above isn't met, and
> > similarly should require (with a MUST) the inclusion of a
> > challenge in responses to Agent Solicitations if the
> > condition isn't met. This is the only way to guarantee
> > progress on a link where advertisements may be lost and where
> > there is a long interval between unsolicited advertisements.
> >
> >
> [JB] This is the mechanism where the FA provides an unused challenge to the
> MN so that the MN can use this challenge in the subsequent request. If
> advertisements are lost or their interval is long enough, the MN can always
> request a challenge by sending Agent Solicitation.
But then we need to mandate that a previously unused challenge will
appear in the solicited Agent Advertisement, unless an unsolicited
advertisement with a challenge is sent immediately before or after.
This is the only way to guarantee progress.
How about this for a specific text proposal:
The FA MUST include a previously unused challenge in each
Registration Reply or solicited Agent Advertisement, unless an
unsolicited multicast advertisement containing a previously unused
challenge is sent immediately before or after (e.g., within 1
second of) the Reply or solicited Advertisement. The Foreign Agent
could then assume that the mobile node with high likelihood has
received and can use the multicast challenge. A mobile node MUST be
prepared to use a multicast challenge in lieu of one returned in a
Registration Reply, and MUST solicit for one if it has not already
received one in a Registration Reply or Agent Advertisement.
[Henrik, I also saw your text proposal on this, but I think it may be
a bit too wordy.]
> I would think that this
> type of guideline adds more confusion.
What do you think of the text above?
> By the way, the current text in
> section 3.3 is: "The Foreign Agent SHOULD include a new Mobile-Foreign
> Challenge Extension in any Registration Reply, successful or not. "
>
> I like to see use of term "previously unused challenge" instead of "new".
Makes sense.
[...]
> > I don't support the text changes above, although I may have
> > proposed the principle of "repeating challenges." Perhaps we
> > don't need to make any text changes in this section, but can
> > confine the new text to the security considerations (see my
> > proposal below).
> >
> >
> [JB] I don't have any problem removing these changes. The proposed text does
> what was intended and that is, allowing repetition of challenges when
> authentication fails.
Agreed.
[...]
> > Based on the subsequent discussion, I don't think we need the
> > text changes above. See the security considerations:
> >
> >
> [JB]OK
>
> > > The following text was proposed to be added in section 12.
> > This is a > modified version of the text proposed by Henrik
> > on the mailing list earlier. >
> > > (section 12)
> > > Note that an active attacker may try to prevent successful
> > registrations by > sending a large number of Agent
> > Solicitations or bogus Registration > Requests, each of
> > which could cause the FA to respond with a fresh >
> > challenge, invalidating the challenge that the MN is
> > currently trying to > use. To prevent such attacks, the FA
> > SHOULD repeat the same challenge value > in successive
> > unicast responses to Agent Solicitations or in Registration
> > > Replies to Requests that did not contain valid MN-AAA or
> > MN-FA > authentication extensions. Note that each challenge
> > returned to an MN MUST > be previously unused by that MN.
> >
> > Based on subsequent comments from Ahmad, maybe we can make
> > the requirement more generic here, and give a specific
> > example in Appendix E. For here, how about:
> >
> > Note that an active attacker may try to prevent successful
> > registrations by sending a large number of Agent
> > Solicitations or bogus Registration Requests, each of which
> > could cause the FA to respond with a fresh challenge,
> > invalidating the challenge that the MN is currently trying to
> > use. To prevent such attacks, the FA MUST NOT invalidate
> > previously unused challenges when responding to
> > unauthenticated Registration Requests or Agent Solicitations.
> > In addition, the FA MUST NOT allocate new storage when
> > responding to such messages, because this would also create
> > the possibility of denial of service.
> >
> [JB] Can we explicitly write "new challenge" instead of "new storage"?
Well, it is really the storage allocation that leads to a depletion of
resources at the FA. I was trying to allow for super-smart
implementations that perhaps could figure out some way to allocate new
challenges without allocating new storage (perhaps some sort of
embedded cookie mechanism). I thought this was the implementation
flexibility that you and Ahmad were asking for.
> > > It was decided that challenges sent in unicast Agent
> > Advertisements and sent > in Registration Reply messages
> > should be treated same at the FA. For this, > the following
> > text is proposed by Henrik and Pete: >
> > > (change 5.1-Section 3.2)
> > > From:
> > > The Foreign Agent MUST NOT accept any Challenge in the
> > Registration Request > unless it was offered in last
> > Registration Reply issued to the Mobile Node, > or else
> > advertised as one of the last CHALLENGE_WINDOW (see section
> > 9) > Challenge values inserted into the immediately
> > preceding Agent > advertisements. >
> > > To:
> > > The Foreign Agent MUST NOT accept any Challenge in the
> > Registration Request > unless it was offered in the last
> > Registration Reply or unicast Agent > Advertisement sent to
> > the Mobile Node, or else advertised as one of the last >
> > CHALLENGE_WINDOW (see section 9) Challenge values inserted
> > into the > immediately preceding Agent advertisements. >
> > > (change 5.2-Appendix E)
> > > From:
> > > In the program fragment, it is presumed that the foreign
> > agent keeps an > array of advertised Challenges
> > ("VALID_ADV_CHALLENGES"), a record of the > last advertised
> > challenge used by a mobile node, and > also a record of the
> > last challenge provided to a mobile node in a > Registration
> > Reply. >
> > > To:
> > > In the program fragment, it is presumed that the foreign
> > agent keeps an > array of advertised Challenges
> > ("VALID_ADV_CHALLENGES"), a record of the > last advertised
> > challenge used by a mobile node, and also a record of the >
> > last challenge provided to a mobile node in a Registration
> > Reply or unicast > Agent Advertisement.
> >
> > After that, we could add, "To meet the security obligations
> > outlined in Section 12, the FA SHOULD use one of the already
> > stored, previously unused challenges when responding to an
> > unauthenticated Registration Request or Agent Solicitation."
> >
> [JB] I would think that "already stored" is redundant here.
I think it is important to emphasize that the FA is not allocating
additional storage.
-Pete
_______________________________________________
Mip4 mailing list
Mip4@ietf.org
https://www.ietf.org/mailman/listinfo/mip4
Note: Messages sent to this list are the opinions of the senders and do not imply endorsement by the IETF.