home *** CD-ROM | disk | FTP | other *** search
/ Internet Info 1997 December / Internet_Info_CD-ROM_Walnut_Creek_December_1997.iso / drafts / draft_ietf_q_t / draft-ietf-roamops-auth-00.txt < prev    next >
Text File  |  1997-03-26  |  30KB  |  722 lines

  1.  
  2.      ROAMOPS Working Group                                    Bernard Aboba
  3.      INTERNET-DRAFT                                   Microsoft Corporation
  4.      <draft-ietf-roamops-auth-00.txt >
  5.      26 March 1997
  6.  
  7.  
  8.             The Authentication and Authorization Problem in Roaming
  9.  
  10.  
  11.      1.  Status of this Memo
  12.  
  13.      This document is an Internet-Draft.  Internet-Drafts are working docu-
  14.      ments of the Internet Engineering Task Force (IETF),  its  areas,  and
  15.      its  working groups.  Note that other groups may also distribute work-
  16.      ing documents as Internet-Drafts.
  17.  
  18.      Internet-Drafts are draft documents valid for a maximum of six  months
  19.      and  may  be updated, replaced, or obsoleted by other documents at any
  20.      time.  It is inappropriate to use Internet-Drafts as  reference  mate-
  21.      rial or to cite them other than as ``work in progress.''
  22.  
  23.      To  learn  the  current status of any Internet-Draft, please check the
  24.      ``1id-abstracts.txt'' listing contained in the Internet-Drafts  Shadow
  25.      Directories   on   ds.internic.net   (US  East  Coast),  nic.nordu.net
  26.      (Europe), ftp.isi.edu (US West Coast), or munnari.oz.au (Pacific Rim).
  27.  
  28.      The  distribution  of  this memo is unlimited.  It is filed as <draft-
  29.      ietf-roamops-auth-00.txt>, and  expires October 1, 1997.  Please  send
  30.      comments to the authors.
  31.  
  32.  
  33.      2.  Abstract
  34.  
  35.      This  document describes the authentication and authorization problems
  36.      that arise in the provisioning of dialup roaming  capabilities.  These
  37.      include issues relating to authentication routing as well as non-repu-
  38.      diation of Access-Accepts.
  39.  
  40.  
  41.      3.  Introduction
  42.  
  43.      As detailed in [2], solution of the authentication  and  authorization
  44.      problem in roaming requires several elements to be put in place:
  45.  
  46.         1.   A  method  must  be  provided for authentications to be routed
  47.         between the local ISP and the home authentication server. If RADIUS
  48.         as  described  in [3] is used for authentication, then hierarchical
  49.         authentication routing must be used in order to provide for  scala-
  50.         bility, as described below.
  51.  
  52.         2.   A  mechanism  must  be  put in place to allow local ISP RADIUS
  53.         proxies to edit authorization  attributes  so  as  to  allow  these
  54.         attributes to relate to the local network.
  55.  
  56.  
  57.  
  58.  
  59.      Aboba                                                         [Page 1]
  60.  
  61.  
  62.  
  63.  
  64.  
  65.      INTERNET-DRAFT                                           26 March 1997
  66.  
  67.  
  68.         3.   A  mechanisms  must  be  employed to deter fraud and allow for
  69.         auditing. Such mechanisms may include non-repudiation  for  Access-
  70.         Accepts.
  71.  
  72.      This  document describes a proposed architecture for roaming authenti-
  73.      cation and authorization. Issues relevant to hierarchical  authentica-
  74.      tion routing and non-repudiation are discussed.
  75.  
  76.  
  77.      3.1.  Terminology
  78.  
  79.      This document frequently uses the following terms:
  80.  
  81.      Network Access Server
  82.                The  Network  Access Server (NAS) is the device that clients
  83.                contact in order to get access to the network.
  84.  
  85.      RADIUS server
  86.                This is a server which  provides  for  authentication/autho-
  87.                rization via the protocol described in [3], and for account-
  88.                ing as described in [4].
  89.  
  90.      RADIUS proxy
  91.                In order to provide for the routing of RADIUS authentication
  92.                and  accounting requests, a RADIUS proxy can be employed. To
  93.                the NAS, the RADIUS proxy appears to act as a RADIUS server,
  94.                and  to  the  RADIUS  server,  the proxy appears to act as a
  95.                RADIUS client.
  96.  
  97.      Network Access Identifier
  98.                In order to provide for the routing of RADIUS authentication
  99.                and accounting requests, the userID field used in PPP (known
  100.                as the Network Access Identifier or NAI) and in  the  subse-
  101.                quent  RADIUS  authentication  and  accounting requests, can
  102.                contain structure. This structure provides a means by  which
  103.                the  RADIUS  proxy  will locate the RADIUS server that is to
  104.                receive the request.
  105.  
  106.      Roaming relationships
  107.                Roaming relationships include relationships  between  compa-
  108.                nies  and ISPs, relationships among peer ISPs within a roam-
  109.                ing association, and relationships  between  an  ISP  and  a
  110.                roaming  consortia. Together, the set of relationships form-
  111.                ing a path between a local ISP's  authentication  proxy  and
  112.                the home authentication server is known as the roaming rela-
  113.                tionship path.
  114.  
  115.  
  116.      4.  Overview of the roaming authentication and authorization architec-
  117.      ture
  118.  
  119.      The  goal of the roaming authentication and authorization architecture
  120.      is to enable roaming users to be  authenticated  and  authorized  when
  121.      dialing phone numbers belonging to ISPs other than their home ISP. The
  122.  
  123.  
  124.  
  125.      Aboba                                                         [Page 2]
  126.  
  127.  
  128.  
  129.  
  130.  
  131.      INTERNET-DRAFT                                           26 March 1997
  132.  
  133.  
  134.      authentication and authorization architecture, which is  shown  below,
  135.      involves  interactions  between  network  devices  such  as  NASes and
  136.      routers, authentication proxies, and authentication servers.
  137.  
  138.      In this architecture, authentication proxies are used to relay authen-
  139.      tication  requests  from  the  local  ISP  to  the home authentication
  140.      server. While the local ISP authentication proxy may  edit  authoriza-
  141.      tion  attributes  returned by the home authentication server, so as to
  142.      make them compatible with the local network, intermediate proxies MUST
  143.      NOT  edit  the attribute set passed to it by another proxy or the home
  144.      authentication server. This is necessary in order to ensure that crit-
  145.      ical  attributes  relating  to  security (such as tunnel attributes or
  146.      EAP-Message attributes) are not modified along the way.
  147.  
  148.      In the discussion that follows, we assume that  BIGCO  has  contracted
  149.      with ISPA to provide roaming services. In turn ISPA has joined a roam-
  150.      ing consortia ISPGROUP. User Fred then travels to another part of  the
  151.      world  and  dials  into  a  NAS  device operated by ISPB, who has also
  152.      joined roaming consortia ISPGROUP. Fred attempts  to  authenticate  to
  153.      the  NAS  device  as  fred@bigco.com,  using  the  PPP protocol and an
  154.      authentication protocol such as PAP, CHAP, or EAP.
  155.  
  156.           +------------+      +------------+          +------------+
  157.           |            |      |            |          |            |
  158.           |    ISPB    |      |  BIGCO     |          |    ISPA    |
  159.           |   Router   |      |  RADIUS    |<---------|   RADIUS   |
  160.           |            |      |  Server    |          |   Proxy    |
  161.           |            |      |            |          |            |
  162.           +------------+      +------------+          +------------+
  163.                 |                                            ^
  164.                 |                                            |
  165.      RADIUS     |                                            |
  166.      Protocol   |                     Inter-organizational   |
  167.                 |                     Authentication Events  |
  168.                 |                                            |
  169.                 |                                            |
  170.                 V                                            V
  171.           +------------+                               +------------+
  172.           |            |                               |            |
  173.           |    ISPB    |      Inter-organizational     |  ISPGROUP  |
  174.           |   RADIUS   |<----------------------------->|   RADIUS   |
  175.           |    Proxy   |\    Authentication Events     |  Proxy     |
  176.           |            | \                             |            |
  177.           |            |  \                            |            |
  178.           +------------+   \                           +------------+
  179.                 ^           \
  180.                 |            \ Intra-organizational
  181.      RADIUS     |             \   Authentication Events
  182.      Protocol   |              \
  183.                 |               \
  184.                 |                \
  185.                 |                 \
  186.                 |                  \
  187.           +------------+      +------------+
  188.  
  189.  
  190.  
  191.      Aboba                                                         [Page 3]
  192.  
  193.  
  194.  
  195.  
  196.  
  197.      INTERNET-DRAFT                                           26 March 1997
  198.  
  199.  
  200.           |            |      |            |
  201.           |     ISPB   |      |    ISPB    |
  202.           |     NAS    |      |    RADIUS  |
  203.           |            |      |    Server  |
  204.           |            |      |            |
  205.           +------------+      +------------+
  206.                 ^
  207.                 |
  208.      PPP        |
  209.      Protocol   |
  210.                 |
  211.                 V
  212.           +------------+
  213.           |            |
  214.           |            |
  215.           |    Fred    |
  216.           |            |
  217.           |            |
  218.           +------------+
  219.  
  220.  
  221.      5.  Authentication and authorization recommendations
  222.  
  223.      In order to authenticate roaming users, it is necessary to be able  to
  224.      route  the authentication requests from the NAS of the remote ISP to a
  225.      server maintained by the home ISP. How the  authentication  is  routed
  226.      depends  on  the security mechanisms employed by the protocols used to
  227.      communicate between the NAS and the home ISP's authentication  server,
  228.      as well the roaming relationships established between the parties.
  229.  
  230.  
  231.      5.1.  Hierarchical authentication routing and RADIUS
  232.  
  233.      Use  of  proxy  RADIUS and hierarchical authentication routing is pro-
  234.      posed for use in situations where the members of the roaming consortia
  235.      desire  to use RADIUS as described in [3] as their authentication pro-
  236.      tocol.  In these cirumstances, authentication traffic will be  secured
  237.      via  shared  secrets,  and hierarchical authentication routing must be
  238.      employed to enhance scalability.  In  order  to  support  hierarchical
  239.      authentication  routing, it is recommended that a Roaming Relationship
  240.      (REL) record be added to the DNS, as described in [8].
  241.  
  242.      Note that direct contact between the local NAS  and  the  home  RADIUS
  243.      server  is not necessarily desirable, regardless of whether public key
  244.      authentication technology is available.  Direct  contact  between  the
  245.      local  NAS  and the home RADIUS server has the potential to exacerbate
  246.      interoperability problems since it implies, for example, that the  two
  247.      end  systems must be running the same accounting protocol and that the
  248.      home  ISP's  RADIUS  server  must  be  able  to  return  configuration
  249.      attributes that the remote NAS understands. Thus  authentication prox-
  250.      ies are useful for more than just authentication routing.
  251.  
  252.  
  253.  
  254.  
  255.  
  256.  
  257.      Aboba                                                         [Page 4]
  258.  
  259.  
  260.  
  261.  
  262.  
  263.      INTERNET-DRAFT                                           26 March 1997
  264.  
  265.  
  266.      5.2.  Use of RADIUS over IPSEC
  267.  
  268.      In situations where members of the roaming consortia are able to  sup-
  269.      port  public  key  authentication  as  well as DNS Security, IPSEC and
  270.      ISAKMP, it is recommended that the  working  group  consider  optional
  271.      support for RADIUS running over IPSEC. Where RADIUS is run over IPSEC,
  272.      the RADIUS authenticator field will not be utilized, and the Signature
  273.      attribute  will not be processed. Where RADIUS over IPSEC is used, the
  274.      local ISP's RADIUS proxy may be able to contact the  home  ISP  server
  275.      directly,  and  negotiate  a session key without the need for a shared
  276.      secret.
  277.  
  278.      However, in order for direct contact to be feasible between the  local
  279.      ISP  proxy and the home authentication server, the home authentication
  280.      server must be prepared to return its roaming credentials to the local
  281.      ISP  proxy.  This  is  required in order for the local ISP proxy to be
  282.      able to verify the roaming relationship path. As a result, it will not
  283.      be  necessary for the authentication to traverse this path in order to
  284.      verify it.
  285.  
  286.      Roaming credentials consist of a series of tokens  testifying  to  the
  287.      validity of the roaming relationship path stretching between the local
  288.      ISP and the home authentication server. For example, if BIGCO has del-
  289.      egated  roaming  authority  to ISPA, then its roaming credentials will
  290.      include a token signed by ISPA testifying to the validity of the roam-
  291.      ing  relationship  between  BIGCO and ISPA. The tokens returned by the
  292.      home authentication server would include the following:
  293.      {PK_BIGCO, Expiration date}^SK_ISPA
  294.      {PK_ISPA, Expiration date}^SK_ISPGROUP1
  295.  
  296.  
  297.      5.3.  Non-repudiation of Access-Accepts
  298.  
  299.      In situations where members of the roaming consortia are able to  sup-
  300.      port  public  key  authentication, it may be desirable to support non-
  301.      repudiation of Access-Accepts as an optional capability. This capabil-
  302.      ity  is  supported via inclusion of a token by the home authentication
  303.      server within the Access-Accept. This  token  consists  of  a  message
  304.      digest,  signed  by the home authentication server. The message digest
  305.      is computed over the Access-Accept, with the portions  of  the  packet
  306.      which may be acceptably modified (such as the authenticator field) set
  307.      to zero. In order to proof of a user login, it has been suggested that
  308.      the  signature  also  be applied to a transcript of the authentication
  309.      conversation between the NAS and the authenticating peer.
  310.  
  311.      Please note that support for non-repudiation in Access-Accepts is only
  312.      valuable  as  an integrity-checking mechanism when the local ISP proxy
  313.      cannot contact the home authentication server directly, and thus there
  314.      is  concern  over  modification  of  the Access-Accept by intermediate
  315.      proxies. However, in addition, it may be desirable to include the non-
  316.      repudiation  token  with the accounting record in order to demonstrate
  317.      its authenticity.
  318.  
  319.  
  320.  
  321.  
  322.  
  323.      Aboba                                                         [Page 5]
  324.  
  325.  
  326.  
  327.  
  328.  
  329.      INTERNET-DRAFT                                           26 March 1997
  330.  
  331.  
  332.      6.  Hierarchical authentication routing architecture
  333.  
  334.  
  335.  
  336.      6.1.  Justification for hierarchical authentication routing
  337.  
  338.      Since the RADIUS protocol is commonly implemented both by NAS  vendors
  339.      as  well  as by ISPs, RADIUS is today commonly used as a mechanism for
  340.      roaming authentication and authorization.
  341.  
  342.      Although the choice of RADIUS is expedient, it has  significant  draw-
  343.      backs.   In particular, routing of RADIUS authentication/authorization
  344.      messages is complicated by the security  architecture  of  the  RADIUS
  345.      protocol.  The  RADIUS  protocol  requires the maintenance of a shared
  346.      secret between the NAS and the RADIUS server or proxy. Therefore, were
  347.      RADIUS authentication requests to be routed directly, the result would
  348.      be a requirement for maintenance of shared secrets between  every  NAS
  349.      device  and  every  RADIUS  server.  This  would  get out of hand very
  350.      quickly.  As  a  result,  hierarchical  authentication  routing  is  a
  351.      requirement for scalable authentication of roaming users via RADIUS.
  352.  
  353.      Authentication  routes can be maintained either in proxy configuration
  354.      files or via DNS as described in [8].  Note that even if DNS is  used,
  355.      configuration files are still necessary in cases where proxy RADIUS is
  356.      employed, since they provide the RADIUS proxy with the list of  shared
  357.      secrets.  This  list of shared secrets is also a list of systems whose
  358.      owners have a Roaming relationship with the configuring ISP.
  359.  
  360.      Hierarchical authentication routing is implemented  via  a  multi-tier
  361.      RADIUS  proxy system. This allows ISPs to maintain shared secrets only
  362.      with the roaming consortia itself or other consortium members, as well
  363.      as with customers who have delegated roaming responsibilities to them.
  364.  
  365.      For example, let us assume that we have n members of a roaming consor-
  366.      tia,  each of which have m distinct corporate customers whom they wish
  367.      to provide access for.  These corporate  customers  wish  to  maintain
  368.      their  own  RADIUS servers so as to be able to manage their users more
  369.      efficiently. Thus we have n * m corporate entities that wish to  allow
  370.      their  users  to  have access to the facilities of the roaming consor-
  371.      tium.
  372.  
  373.      If the RADIUS proxy of a given ISP were to contact each RADIUS  server
  374.      directly,  each  RADIUS  proxy  would  need  to maintain n * m + n - 1
  375.      shared proxy secrets. This is  a  shared  secret  for  each  corporate
  376.      entity,  plus  a  shared secret for each member of the roaming consor-
  377.      tium. For the case of 500 roaming consortia  members,  each  with  500
  378.      corporate customers, this translates to 250499 shared secrets per ISP.
  379.      This would be unmanageable.
  380.  
  381.      On the other hand,  let  us  assume  that  we  implement  hierarchical
  382.      authentication  routing. In this case, the RADIUS proxy of a given ISP
  383.      would only need to contact the RADIUS proxies of  the  other  ISPs  in
  384.      ISPGROUP as well as the RADIUS servers of its own corporate customers.
  385.      To do this, it would only need to maintain n-1+m shared  secrets.  For
  386.  
  387.  
  388.  
  389.      Aboba                                                         [Page 6]
  390.  
  391.  
  392.  
  393.  
  394.  
  395.      INTERNET-DRAFT                                           26 March 1997
  396.  
  397.  
  398.      the  case  of  500  roaming consortia members, each with 500 corporate
  399.      customers, this translates to 999 shared secrets per ISP,  a  dramatic
  400.      reduction.
  401.  
  402.      If the RADIUS proxies of each ISP contact a consortium proxy, the num-
  403.      ber of shared secrets is further reduced. In this case, a given  proxy
  404.      needs to maintain m+1 shared secrets, while the consortium proxy needs
  405.      to maintain n shared secrets, one for each consortium member.
  406.  
  407.  
  408.      6.2.  Details of hierarchical authentication routing
  409.  
  410.      As described in [8], Roaming Relationship (REL) RRs  in  the  DNS  are
  411.      used  in order to construct the roaming relationship path. Please note
  412.      that while DNS Security may  be  used  to  verify  the  integrity  and
  413.      authenticity of the REL RRs, it does not vouch for the validity of the
  414.      roaming relationships themselves. As a result, where it is not  possi-
  415.      ble  for the local ISP proxy to contact the home authentication server
  416.      directly and retrieve roaming credentials, it  is  necessary  for  the
  417.      local  ISP  to  route the authentication over the roaming relationship
  418.      path in order to verify it.
  419.  
  420.      As a result, in cases where  hierarchical  authentication  routing  is
  421.      required,  the roaming relationship path is used as the authentication
  422.      route. The route is typically constructed  by  the  local  ISP  proxy,
  423.      which  includes  it within the Authentication-Route attribute included
  424.      in the RADIUS Access-Request. In order to ensure that  the  accounting
  425.      agent, who will subsequently receive an accounting record has also had
  426.      the opportunity to vouchsafe for the validity of the roaming relation-
  427.      ship path, the accounting agent is typically included as the first hop
  428.      in the roaming relationship path.
  429.  
  430.      In order to construct the roaming relationship  path,  the  local  ISP
  431.      proxy  begins  by  checking  whether the home authentication domain is
  432.      listed in its configuration files as an accounting agent. If so,  then
  433.      the  authentication  request (and the subsequent accounting record) is
  434.      routed to the home authentication server directly; if  not,  then  the
  435.      local  ISP  queries  for the REL RR of the home authentication domain.
  436.      Typically such a query will return one or more ISPs or roaming consor-
  437.      tia  to  whom  the  home  authentication  domain has delegated roaming
  438.      authority. Once again, the local ISP proxy checks whether one of these
  439.      domains is listed within its configuration files as a valid accounting
  440.      agent. If so, then it routes the authentication (and subsequently  the
  441.      accounting  record)  to  the accounting agent. If not, then it queries
  442.      the DNS for the REL RRs for these ISPs and/or roaming  consortia.  The
  443.      process typically results in a roaming relationship path within a max-
  444.      imum of two hops.
  445.  
  446.      Once the roaming relationship path has been constructed by  the  local
  447.      ISP,  it  is  included in an Authentication-Route attribute within the
  448.      Access-Request. Intermediate proxies MUST forward  the  authentication
  449.      along the requested Authentication-Route if it is possible to do so.
  450.  
  451.  
  452.  
  453.  
  454.  
  455.      Aboba                                                         [Page 7]
  456.  
  457.  
  458.  
  459.  
  460.  
  461.      INTERNET-DRAFT                                           26 March 1997
  462.  
  463.  
  464.      7.  Proposed RADIUS attributes for roaming
  465.  
  466.  
  467.  
  468.      7.1.  Authentication-Route
  469.  
  470.      Description
  471.  
  472.         This attribute allows an authentication route to be included within
  473.         a RADIUS Access-Request or Access-Reply sent between  RADIUS  prox-
  474.         ies.  RADIUS  proxies  receiving  a message with an Authentication-
  475.         Route attribute MUST honor the attribute if it is  possible  to  do
  476.         so.
  477.  
  478.         A  summary  of  the  Authentication-Route attribute format is shown
  479.         below.  The fields are transmitted from left to right.
  480.  
  481.         0                   1                   2                   3
  482.         0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2
  483.         +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  484.         |      Type     |    Length     |           String              |
  485.         +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  486.         |      String...
  487.         +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  488.  
  489.         Type
  490.  
  491.            73 for Authentication-Route
  492.  
  493.         Length
  494.  
  495.            >=3
  496.  
  497.         String
  498.  
  499.            The String field includes the  authentication  route,  which  is
  500.            represented  as a series of domains separated by /. For example,
  501.            a    valid     authentication     route     is     ispb.com/isp-
  502.            group.com/ispa.com/bigco.com/
  503.  
  504.  
  505.      7.2.  Authentication-Token
  506.  
  507.      Description
  508.  
  509.         This  attribute allows an authentication server to include a signed
  510.         token within a RADIUS Access-Accept, in order to provide  for  non-
  511.         repudiation.
  512.  
  513.         A  summary  of  the  Authentication-Token attribute format is shown
  514.         below.  The fields are transmitted from left to right.
  515.  
  516.         0                   1                   2                   3
  517.         0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2
  518.  
  519.  
  520.  
  521.      Aboba                                                         [Page 8]
  522.  
  523.  
  524.  
  525.  
  526.  
  527.      INTERNET-DRAFT                                           26 March 1997
  528.  
  529.  
  530.         +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  531.         |      Type     |    Length     |           String              |
  532.         +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  533.         |      String...
  534.         +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  535.  
  536.         Type
  537.  
  538.            74 for Authentication-Token
  539.  
  540.         Length
  541.  
  542.            ?
  543.  
  544.         String
  545.  
  546.            The String field includes the authentication token.
  547.  
  548.  
  549.      7.3.  Roaming-Credentials
  550.  
  551.      Description
  552.  
  553.         This attribute allows a home authentication server to  include  its
  554.         roaming  credentials  within  a RADIUS Access-Accept, thus enabling
  555.         direct contact between the local ISP proxy and the home authentica-
  556.         tion  server.  More  than  one Roaming-Credentials attribute may be
  557.         included within an  Access-Accept,  in  order  to  allow  the  home
  558.         authentication server to present sufficient credentials to validate
  559.         the roaming relationship path between itself and the local ISP.
  560.  
  561.         A summary of the  Roaming-Credentials  attribute  format  is  shown
  562.         below.  The fields are transmitted from left to right.
  563.  
  564.         0                   1                   2                   3
  565.         0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2
  566.         +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  567.         |      Type     |    Length     |           String              |
  568.         +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  569.         |      String...
  570.         +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  571.  
  572.         Type
  573.  
  574.            75 for Roaming-Credentials
  575.  
  576.         Length
  577.  
  578.            ?
  579.  
  580.         String
  581.  
  582.            The String field includes the roaming credentials, which consist
  583.            of tokens with the following structure:
  584.  
  585.  
  586.  
  587.      Aboba                                                         [Page 9]
  588.  
  589.  
  590.  
  591.  
  592.  
  593.      INTERNET-DRAFT                                           26 March 1997
  594.  
  595.  
  596.            {PK_DelegatingEntity, Expiration date}^SK_SigningEntity
  597.  
  598.  
  599.      8.  Security Concerns
  600.  
  601.  
  602.  
  603.      8.1.  Attacks on the DNS servers
  604.  
  605.      In the absence of DNS security, an attacker were to  gain  control  of
  606.      the DNS server hosting the BIGCO zone files, they could change the REL
  607.      and  SRV  records  to  route  roaming  authentication  and  accounting
  608.      requests to bogus servers.
  609.  
  610.      However, since RADIUS is secured by a shared secret, this attack would
  611.      not result in more than a denial of service, as long as  the  attacker
  612.      did  not  also  obtain  the shared secrets which would allow the bogus
  613.      RADIUS server's Access-Reply message to be accepted. This is why it is
  614.      important that roaming relationship paths be verified either via roam-
  615.      ing credentials or via hierarchical authenticaton routing.
  616.  
  617.  
  618.      8.2.  Attacks against RADIUS proxies
  619.  
  620.      Without non-repudiation of Access-Accepts, it is possible that a prox-
  621.      ied authentication may be modified in transit between the home authen-
  622.      tication server and the local ISP proxy. Thus, it is  possible  for  a
  623.      compromised RADIUS proxy to modify security attributes returned by the
  624.      home ISP, or even to change a NAK to an ACK.
  625.  
  626.      Without non-repudiation, it is also not  possible  for  an  accounting
  627.      agent  to confirm that the home ISP authentication server authorized a
  628.      session. This may present problems if a dispute should arise over  the
  629.      home ISP's roaming charges.
  630.  
  631.      Note  that even with public key authentication facilities, there is no
  632.      guarantee  that  the  local  ISP  proxy  will  not   modify   security
  633.      attributes.   In  order to guarantee that the authorization attributes
  634.      will be compatible with the local network, the local  ISP  proxy  will
  635.      typically edit the authorization attributes returned by the home ISP's
  636.      authentication server.
  637.  
  638.  
  639.  
  640.      9.  Acknowledgments
  641.  
  642.      Thanks to Glen Zorn of Microsoft and Pat Calhoun  of  USR  for  useful
  643.      discussions of this problem space.
  644.  
  645.  
  646.      10.  References
  647.  
  648.      [1]  B. Aboba, J. Lu, J. Alsop, J. Ding.  "Review of Roaming Implemen-
  649.      tations." draft-ietf-roamops-imprev-01.txt, Microsoft, Aimnet,  i-Pass
  650.  
  651.  
  652.  
  653.      Aboba                                                        [Page 10]
  654.  
  655.  
  656.  
  657.  
  658.  
  659.      INTERNET-DRAFT                                           26 March 1997
  660.  
  661.  
  662.      Alliance, Asiainfo, January, 1997.
  663.  
  664.      [2]   B.  Aboba, G. Zorn.  "Dialing Roaming Requirements." draft-ietf-
  665.      roamops-roamreq-03.txt, Microsoft, March, 1997.
  666.  
  667.      [3]  C. Rigney, A. Rubens, W. Simpson, S. Willens.  "Remote  Authenti-
  668.      cation  Dial  In  User Service (RADIUS)." RFC 2058, Livingston, Merit,
  669.      Daydreamer, January, 1997.
  670.  
  671.      [4]  C. Rigney.  "RADIUS Accounting." RFC 2059,  Livingston,  January,
  672.      1997.
  673.  
  674.      [5]  R.  Fielding,  et  al.  "Hypertext Transfer Protocol - HTTP/1.1."
  675.      draft-ietf-http-v11-spec-07, UC Irvine, August, 1996.
  676.  
  677.      [6] A. Gulbrandsen, P. Vixie.  "A DNS RR for specifying  the  location
  678.      of  services  (DNS  SRV)."  RFC 2052, Troll Technologies, Vixie Enter-
  679.      prises, October 1996.
  680.  
  681.      [7] D. Eastlake, 3rd, C. W. Kaufman.   "Domain  Name  System  Security
  682.      Extensions." Draft-ietf-dnnsec-secext-10.txt, CyberCash, Iris, August,
  683.      1996.
  684.  
  685.      [8] B. Aboba. "The Roaming Relationships  (REL) Record in the  DNS.  "
  686.      draft-ietf-roamops-dnsrr-03.txt, Microsoft, March, 1997.
  687.  
  688.      [9]  C.  Rigney,  W. Willats.  "RADIUS Extensions." draft-ietf-radius-
  689.      ext-00.txt, Livingston, January, 1997.
  690.  
  691.      [10] R. Rivest, S. Dusse.  "The  MD5  Message-Digest  Algorithm",  RFC
  692.      1321,  MIT  Laboratory  for  Computer Science, RSA Data Security Inc.,
  693.      April 1992.
  694.  
  695.      [11] S. Bradner.  "Key words for use in RFCs to  Indicate  Requirement
  696.      Levels."  draft-bradner-key-words-02.txt,  Harvard University, August,
  697.      1996.
  698.  
  699.      [12] B. Aboba.  "The Network  Access  Identifier  (NAI)."  draft-ietf-
  700.      roamops-nai-02.txt, Microsoft, March, 1997.
  701.  
  702.  
  703.      11.  Authors' Addresses
  704.  
  705.      Bernard Aboba
  706.      Microsoft Corporation
  707.      One Microsoft Way
  708.      Redmond, WA 98052
  709.  
  710.      Phone: 206-936-6605
  711.      EMail: bernarda@microsoft.com
  712.  
  713.  
  714.  
  715.  
  716.  
  717.  
  718.  
  719.      Aboba                                                        [Page 11]
  720.  
  721.  
  722.