home *** CD-ROM | disk | FTP | other *** search
/ Handbook of Infosec Terms 2.0 / Handbook_of_Infosec_Terms_Version_2.0_ISSO.iso / text / rfcs / rfc1472.txt < prev    next >
Text File  |  1996-05-07  |  28KB  |  313 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7. Network Working Group                                      F. Kastenholz Request for Comments: 1472                            FTP Software, Inc.                                                                June 1993 
  8.  
  9.                   The Definitions of Managed Objects for                        the Security Protocols of                       the Point-to-Point Protocol 
  10.  
  11. Status of this Memo 
  12.  
  13.    This RFC specifies an IAB standards track protocol for the Internet    community, and requests discussion and suggestions for improvements.    Please refer to the current edition of the "IAB Official Protocol    Standards" for the standardization state and status of this protocol.    Distribution of this memo is unlimited. 
  14.  
  15. Abstract 
  16.  
  17.    This memo defines a portion of the Management Information Base (MIB)    for use with network management protocols in TCP/IP-based internets.    In particular, it describes managed objects used for managing the    Security Protocols on subnetwork interfaces using the family of    Point-to-Point Protocols [8, 9, 10, 11, & 12]. 
  18.  
  19. Table of Contents 
  20.  
  21.    1. The Network Management Framework ......................    1    2. Objects ...............................................    2    2.1 Format of Definitions ................................    2    3. Overview ..............................................    2    3.1 Object Selection Criteria ............................    2    3.2 Structure of the PPP .................................    2    3.3 MIB Groups ...........................................    3    4. Definitions ...........................................    4    5. Acknowledgements ......................................    9    6. Security Considerations ...............................   10    7. References ............................................   11    8. Author's Address ......................................   12 
  22.  
  23. 1.  The Network Management Framework 
  24.  
  25.    The Internet-standard Network Management Framework consists of three    components.  They are: 
  26.  
  27.       STD 16/RFC 1155 which defines the SMI, the mechanisms used for       describing and naming objects for the purpose of management.  STD       16/RFC 1212 defines a more concise description mechanism, which is 
  28.  
  29.  
  30.  
  31. Kastenholz                                                      [Page 1] 
  32.  RFC 1472                    PPP/Security MIB                   June 1993 
  33.  
  34.        wholly consistent with the SMI. 
  35.  
  36.       STD 17/RFC 1213 which defines MIB-II, the core set of managed       objects for the Internet suite of protocols. 
  37.  
  38.       STD 15/RFC 1157 which defines the SNMP, the protocol used for       network access to managed objects. 
  39.  
  40.    The Framework permits new objects to be defined for the purpose of    experimentation and evaluation. 
  41.  
  42. 2.  Objects 
  43.  
  44.    Managed objects are accessed via a virtual information store, termed    the Management Information Base or MIB.  Objects in the MIB are    defined using the subset of Abstract Syntax Notation One (ASN.1) [3]    defined in the SMI.  In particular, each object type is named by an    OBJECT IDENTIFIER, an administratively assigned name.  The object    type together with an object instance serves to uniquely identify a    specific instantiation of the object.  For human convenience, we    often use a textual string, termed the descriptor, to refer to the    object type. 
  45.  
  46. 2.1.  Format of Definitions 
  47.  
  48.    Section 4 contains the specification of all object types contained in    this MIB module.  The object types are defined using the conventions    defined in the SMI, as amended by the extensions specified in [5,6]. 
  49.  
  50. 3.  Overview 
  51.  
  52. 3.1.  Object Selection Criteria 
  53.  
  54.    To be consistent with IAB directives and good engineering practice,    an explicit attempt was made to keep this MIB as simple as possible.    This was accomplished by applying the following criteria to objects    proposed for inclusion: 
  55.  
  56.       (1)  Require objects be essential for either fault or            configuration management.  In particular, objects for            which the sole purpose was to debug implementations were            explicitly excluded from the MIB. 
  57.  
  58.       (2)  Consider evidence of current use and/or utility. 
  59.  
  60.       (3)  Limit the total number of objects. 
  61.  
  62.       (4)  Exclude objects which are simply derivable from others in 
  63.  
  64.  
  65.  
  66. Kastenholz                                                      [Page 2] 
  67.  RFC 1472                    PPP/Security MIB                   June 1993 
  68.  
  69.             this or other MIBs. 
  70.  
  71. 3.2.  Structure of the PPP 
  72.  
  73.    This section describes the basic model of PPP used in developing the    PPP MIB. This information should be useful to the implementor in    understanding some of the basic design decisions of the MIB. 
  74.  
  75.    The PPP is not one single protocol but a large family of protocols.    Each of these is, in itself, a fairly complex protocol.  The PPP    protocols may be divided into three rough categories: 
  76.  
  77.    Control Protocols       The Control Protocols are used to control the operation of the       PPP. The Control Protocols include the Link Control Protocol       (LCP), the Password Authentication Protocol (PAP), the Link       Quality Report (LQR), and the Challenge Handshake Authentication       Protocol (CHAP). 
  78.  
  79.    Network Protocols       The Network Protocols are used to move the network traffic over       the PPP interface.  A Network Protocol encapsulates the datagrams       of a specific higher-layer protocol that is using the PPP as a       data link.  Note that within the context of PPP, the term "Network       Protocol" does not imply an OSI Layer-3 protocol; for instance,       there is a Bridging network protocol. 
  80.  
  81.    Network Control Protocols (NCPs)       The NCPs are used to control the operation of the Network       Protocols. Generally, each Network Protocol has its own Network       Control Protocol; thus, the IP Network Protocol has its IP Control       Protocol, the Bridging Network Protocol has its Bridging Network       Control Protocol and so on. 
  82.  
  83.    This document specifies the objects used in managing one of these    protocols, namely the PPP Authentication Protocols. 
  84.  
  85. 3.3.  MIB Groups 
  86.  
  87.    Objects in this MIB are arranged into several MIB groups.  Each group    is organized as a set of related objects. 
  88.  
  89.    These groups are the basic unit of conformance: if the semantics of a    group are applicable to an implementation then all objects in the    group must be implemented. 
  90.  
  91.    The PPP MIB is organized into several MIB Groups, including, but not    limited to, the following groups: 
  92.  
  93.  
  94.  
  95. Kastenholz                                                      [Page 3] 
  96.  RFC 1472                    PPP/Security MIB                   June 1993 
  97.  
  98.            o The PPP Link Group           o The PPP LQR Group           o The PPP LQR Extensions Group           o The PPP IP Group           o The PPP Bridge Group           o The PPP Security Group 
  99.  
  100.    This document specifies the following group: 
  101.  
  102.    PPP Security Group       The PPP Security Group contains all configuration and control       variables that apply to PPP security. 
  103.  
  104.       Implementation of this group is optional.  Implementation is       optional since the variables in this group provide configuration       and control for the PPP Security functions.  Thus, these variables       should be protected by SNMPv2 security.  If an agent does not       support SNMPv2 with privacy it is strongly advised that this group       not be implemented.  See the section on "Security Considerations"       at the end of this document. 
  105.  
  106. 4.  Definitions 
  107.  
  108.           PPP-SEC-MIB DEFINITIONS ::= BEGIN 
  109.  
  110.           IMPORTS                Counter                     FROM RFC1155-SMI                OBJECT-TYPE                     FROM RFC-1212                ppp                     FROM PPP-LCP-MIB; 
  111.  
  112.                pppSecurity OBJECT IDENTIFIER ::= { ppp 2 } 
  113.  
  114.                pppSecurityProtocols OBJECT IDENTIFIER ::= { pppSecurity 1 } 
  115.  
  116.           -- The following uniquely identify the various protocols           -- used by PPP security. These OBJECT IDENTIFIERS are           -- used in the pppSecurityConfigProtocol and           -- pppSecuritySecretsProtocol objects to identify to which           -- protocols the table entries apply. 
  117.  
  118.                pppSecurityPapProtocol OBJECT IDENTIFIER ::=                          { pppSecurityProtocols 1 }                pppSecurityChapMD5Protocol OBJECT IDENTIFIER ::=                          { pppSecurityProtocols 2 } 
  119.  
  120.  
  121.  
  122.  Kastenholz                                                      [Page 4] 
  123.  RFC 1472                    PPP/Security MIB                   June 1993 
  124.  
  125.            -- PPP Security Group           -- Implementation of this group is optional. 
  126.  
  127.           -- This table allows the network manager to configure           -- which security protocols are to be used on which           -- link and in what order of preference each is to be tried 
  128.  
  129.            pppSecurityConfigTable   OBJECT-TYPE                SYNTAX    SEQUENCE OF PppSecurityConfigEntry                ACCESS    not-accessible                STATUS    mandatory                DESCRIPTION                          "Table containing the configuration and                          preference parameters for PPP Security."                ::= { pppSecurity 2 } 
  130.  
  131.            pppSecurityConfigEntry   OBJECT-TYPE                SYNTAX    PppSecurityConfigEntry                ACCESS    not-accessible                STATUS    mandatory                DESCRIPTION                          "Security configuration information for a                          particular PPP link."                INDEX     { pppSecurityConfigLink,                          pppSecurityConfigPreference }                ::= { pppSecurityConfigTable 1 } 
  132.  
  133.            PppSecurityConfigEntry ::= SEQUENCE {                pppSecurityConfigLink                     INTEGER,                pppSecurityConfigPreference                     INTEGER,                pppSecurityConfigProtocol                     OBJECT IDENTIFIER,                pppSecurityConfigStatus                     INTEGER                } 
  134.  
  135.            pppSecurityConfigLink   OBJECT-TYPE                SYNTAX    INTEGER(0..2147483647)                ACCESS    read-write                STATUS    mandatory                DESCRIPTION                          "The value of ifIndex that identifies the entry 
  136.  
  137.  
  138.  
  139. Kastenholz                                                      [Page 5] 
  140.  RFC 1472                    PPP/Security MIB                   June 1993 
  141.  
  142.                           in the interface table that is associated with                          the local PPP entity's link for which this                          particular security algorithm shall be                          attempted. A value of 0 indicates the default                          algorithm - i.e., this entry applies to all                          links for which explicit entries in the table                          do not exist."                ::= { pppSecurityConfigEntry 1 } 
  143.  
  144.            pppSecurityConfigPreference   OBJECT-TYPE                SYNTAX    INTEGER(0..2147483647)                ACCESS    read-write                STATUS    mandatory                DESCRIPTION                          "The relative preference of the security                          protocol identified by                          pppSecurityConfigProtocol. Security protocols                          with lower values of                          pppSecurityConfigPreference are tried before                          protocols with higher values of                          pppSecurityConfigPreference."                ::= { pppSecurityConfigEntry 2 } 
  145.  
  146.            pppSecurityConfigProtocol   OBJECT-TYPE                SYNTAX    OBJECT IDENTIFIER                ACCESS    read-write                STATUS    mandatory                DESCRIPTION                          "Identifies the security protocol to be                          attempted on the link identified by                          pppSecurityConfigLink at the preference level                          identified by pppSecurityConfigPreference. "                ::= { pppSecurityConfigEntry 3 } 
  147.  
  148.            pppSecurityConfigStatus   OBJECT-TYPE                SYNTAX    INTEGER  {                          invalid(1),                          valid(2)                     }                ACCESS    read-write                STATUS    mandatory                DESCRIPTION                          "Setting this object to the value invalid(1)                          has the effect of invalidating the                          corresponding entry in the 
  149.  
  150.  
  151.  
  152. Kastenholz                                                      [Page 6] 
  153.  RFC 1472                    PPP/Security MIB                   June 1993 
  154.  
  155.                           pppSecurityConfigTable. It is an                          implementation-specific matter as to whether                          the agent removes an invalidated entry from the                          table.  Accordingly, management stations must                          be prepared to receive tabular information from                          agents that corresponds to entries not                          currently in use.  Proper interpretation of                          such entries requires examination of the                          relevant pppSecurityConfigStatus object."                DEFVAL    { valid }                ::= { pppSecurityConfigEntry 4 } 
  156.  
  157.            -- This table contains all of the ID/Secret pair information. 
  158.  
  159.            pppSecuritySecretsTable   OBJECT-TYPE                SYNTAX    SEQUENCE OF PppSecuritySecretsEntry                ACCESS    not-accessible                STATUS    mandatory                DESCRIPTION                          "Table containing the identities and secrets                          used by the PPP authentication protocols.  As                          this table contains secret information, it is                          expected that access to this table be limited                          to those SNMP Party-Pairs for which a privacy                          protocol is in use for all SNMP messages that                          the parties exchange.  This table contains both                          the ID and secret pair(s) that the local PPP                          entity will advertise to the remote entity and                          the pair(s) that the local entity will expect                          from the remote entity.  This table allows for                          multiple id/secret password pairs to be                          specified for a particular link by using the                          pppSecuritySecretsIdIndex object."                ::= { pppSecurity 3 } 
  160.  
  161.            pppSecuritySecretsEntry   OBJECT-TYPE                SYNTAX    PppSecuritySecretsEntry                ACCESS    not-accessible                STATUS    mandatory                DESCRIPTION                          "Secret information."                INDEX     { pppSecuritySecretsLink,                          pppSecuritySecretsIdIndex }                ::= { pppSecuritySecretsTable 1 } 
  162.  
  163.  
  164.  
  165.  Kastenholz                                                      [Page 7] 
  166.  RFC 1472                    PPP/Security MIB                   June 1993 
  167.  
  168.            PppSecuritySecretsEntry ::= SEQUENCE {                pppSecuritySecretsLink                     INTEGER,                pppSecuritySecretsIdIndex                     INTEGER,                pppSecuritySecretsDirection                     INTEGER,                pppSecuritySecretsProtocol                     OBJECT IDENTIFIER,                pppSecuritySecretsIdentity                     OCTET STRING,                pppSecuritySecretsSecret                     OCTET STRING,                pppSecuritySecretsStatus                     INTEGER           } 
  169.  
  170.           pppSecuritySecretsLink   OBJECT-TYPE                SYNTAX    INTEGER(0..2147483647)                ACCESS    read-only                STATUS    mandatory                DESCRIPTION                          "The link to which this ID/Secret pair applies.                          By convention, if the value of this object is 0                          then the ID/Secret pair applies to all links."                ::= { pppSecuritySecretsEntry 1 } 
  171.  
  172.            pppSecuritySecretsIdIndex   OBJECT-TYPE                SYNTAX    INTEGER(0..2147483647)                ACCESS    read-only                STATUS    mandatory                DESCRIPTION                          "A unique value for each ID/Secret pair that                          has been defined for use on this link.  This                          allows multiple ID/Secret pairs to be defined                          for each link.  How the local entity selects                          which pair to use is a local implementation                          decision."                ::= { pppSecuritySecretsEntry 2 } 
  173.  
  174.            pppSecuritySecretsDirection   OBJECT-TYPE                SYNTAX    INTEGER  {                          local-to-remote(1),                          remote-to-local(2)                     }                ACCESS    read-write 
  175.  
  176.  
  177.  
  178. Kastenholz                                                      [Page 8] 
  179.  RFC 1472                    PPP/Security MIB                   June 1993 
  180.  
  181.                 STATUS    mandatory                DESCRIPTION                          "This object defines the direction in which a                          particular ID/Secret pair is valid.  If this                          object is local-to-remote then the local PPP                          entity will use the ID/Secret pair when                          attempting to authenticate the local PPP entity                          to the remote PPP entity.  If this object is                          remote-to-local then the local PPP entity will                          expect the ID/Secret pair to be used by the                          remote PPP entity when the remote PPP entity                          attempts to authenticate itself to the local                          PPP entity."                ::= { pppSecuritySecretsEntry 3 } 
  182.  
  183.            pppSecuritySecretsProtocol   OBJECT-TYPE                SYNTAX    OBJECT IDENTIFIER                ACCESS    read-write                STATUS    mandatory                DESCRIPTION                          "The security protocol (e.g. CHAP or PAP) to                          which this ID/Secret pair applies."                ::= { pppSecuritySecretsEntry 4 } 
  184.  
  185.            pppSecuritySecretsIdentity   OBJECT-TYPE                SYNTAX    OCTET STRING (SIZE(0..255))                ACCESS    read-write                STATUS    mandatory                DESCRIPTION                          "The Identity of the ID/Secret pair.  The                          actual format, semantics, and use of                          pppSecuritySecretsIdentity depends on the                          actual security protocol used.  For example, if                          pppSecuritySecretsProtocol is                          pppSecurityPapProtocol then this object will                          contain a PAP Peer-ID. If                          pppSecuritySecretsProtocol is                          pppSecurityChapMD5Protocol then this object                          would contain the CHAP NAME parameter."                ::= { pppSecuritySecretsEntry 5 } 
  186.  
  187.            pppSecuritySecretsSecret   OBJECT-TYPE                SYNTAX    OCTET STRING (SIZE(0..255))                ACCESS    read-write                STATUS    mandatory 
  188.  
  189.  
  190.  
  191. Kastenholz                                                      [Page 9] 
  192.  RFC 1472                    PPP/Security MIB                   June 1993 
  193.  
  194.                 DESCRIPTION                          "The secret of the ID/Secret pair.  The actual                          format, semantics, and use of                          pppSecuritySecretsSecret depends on the actual                          security protocol used.  For example, if                          pppSecuritySecretsProtocol is                          pppSecurityPapProtocol then this object will                          contain a PAP Password. If                          pppSecuritySecretsProtocol is                          pppSecurityChapMD5Protocol then this object                          would contain the CHAP MD5 Secret."                ::= { pppSecuritySecretsEntry 6 } 
  195.  
  196.            pppSecuritySecretsStatus   OBJECT-TYPE                SYNTAX    INTEGER  {                          invalid(1),                          valid(2)                     }                ACCESS    read-write                STATUS    mandatory                DESCRIPTION                          "Setting this object to the value invalid(1)                          has the effect of invalidating the                          corresponding entry in the                          pppSecuritySecretsTable. It is an                          implementation-specific matter as to whether                          the agent removes an invalidated entry from the                          table.  Accordingly, management stations must                          be prepared to receive tabular information from                          agents that corresponds to entries not                          currently in use.  Proper interpretation of                          such entries requires examination of the                          relevant pppSecuritySecretsStatus object."                DEFVAL    { valid }                ::= { pppSecuritySecretsEntry 7 } 
  197.  
  198.            END 
  199.  
  200. 5.  Acknowledgements 
  201.  
  202.    This document was produced by the PPP working group.  In addition to    the working group, the author wishes to thank the following    individuals for their comments and contributions: 
  203.  
  204.           Bill Simpson -- Daydreamer           Glenn McGregor -- Merit 
  205.  
  206.  
  207.  
  208. Kastenholz                                                     [Page 10] 
  209.  RFC 1472                    PPP/Security MIB                   June 1993 
  210.  
  211.            Jesse Walker -- DEC           Chris Gunner -- DEC 
  212.  
  213. 6.  Security Considerations 
  214.  
  215.    The PPP MIB affords the network operator the ability to configure and    control the PPP links of a particular system, including the PPP    authentication protocols. This represents a security risk. 
  216.  
  217.    These risks are addressed in the following manners: 
  218.  
  219.       (1)  All variables which represent a significant security risk            are placed in separate, optional, MIB Groups. As the MIB            Group is the quantum of implementation within a MIB, the            implementor of the MIB may elect not to implement these            groups. 
  220.  
  221.       (2)  The implementor may choose to implement the variables            which present a security risk so that they may not be            written, i.e., the variables are READ-ONLY. This method            still presents a security risk, and is not recommended,            in that the variables, specifically the PPP            Authentication Protocols' variables, may be easily read. 
  222.  
  223.       (3)  Using SNMPv2, the operator can place the variables into            MIB views which are protected in that the parties which            have access to those MIB views use authentication and            privacy protocols, or the operator may elect to make            these views not accessible to any party.  In order to            facilitate this placement, all security-related variables            are placed in separate MIB Tables. This eases the            identification of the necessary MIB View Subtree. 
  224.  
  225.       (4)  The PPP Security Protocols MIB (this document) contains            several objects which are very sensitive from a security            point of view. 
  226.  
  227.    Specifically, this MIB contains objects that define the PPP Peer    Identities (which can be viewed as "userids") and the secrets used to    authenticate those Peer Identities (similar to a "password" for the    "userid"). 
  228.  
  229.    Also, this MIB contains variables which would allow a network manager    to control the operation of the security features of PPP.  An    intruder could disable PPP security if these variables were not    properly protected. 
  230.  
  231.    Thus, in order to preserve the integrity, security and privacy of the 
  232.  
  233.  
  234.  
  235. Kastenholz                                                     [Page 11] 
  236.  RFC 1472                    PPP/Security MIB                   June 1993 
  237.  
  238.     PPP security features, an implementation will allow access to this    MIB only via SNMPv2 and then only for parties which are privacy    enhanced.  Other access modes, e.g., SNMPv1 or SNMPv2 without    privacy- enhancement, are very dangerous and the security of the PPP    service may be compromised. 
  239.  
  240. 7.  References 
  241.  
  242.    [1] Rose M., and K. McCloghrie, "Structure and Identification of        Management Information for TCP/IP-based internets", STD 16, RFC        1155, Performance Systems International, Hughes LAN Systems, May        1990. 
  243.  
  244.    [2] McCloghrie K., and M. Rose, Editors, "Management Information Base        for Network Management of TCP/IP-based internets", STD 17, RFC        1213, Performance Systems International, March 1991. 
  245.  
  246.    [3] Information processing systems - Open Systems Interconnection -        Specification of Abstract Syntax Notation One (ASN.1),        International Organization for Standardization, International        Standard 8824, December 1987. 
  247.  
  248.    [4] Information processing systems - Open Systems Interconnection -        Specification of Basic Encoding Rules for Abstract Notation One        (ASN.1), International Organization for Standardization,        International Standard 8825, December 1987. 
  249.  
  250.    [5] Rose, M., and K. McCloghrie, Editors, "Concise MIB Definitions",        STD 16, RFC 1212, Performance Systems International, Hughes LAN        Systems, March 1991. 
  251.  
  252.    [6] Rose, M., Editor, "A Convention for Defining Traps for use with        the SNMP", RFC 1215, Performance Systems International, March        1991. 
  253.  
  254.    [7] McCloghrie, K., "Extensions to the Generic-Interface MIB", RFC        1229, Hughes LAN Systems, Inc., May 1991. 
  255.  
  256.    [8] Simpson, W., "The Point-to-Point Protocol for the Transmission of        Multi-protocol Datagrams over Point-to-Point Links, RFC 1331,        Daydreamer, May 1992. 
  257.  
  258.    [9] McGregor, G., "The PPP Internet Protocol Control Protocol", RFC        1332, Merit, May 1992. 
  259.  
  260.   [10] Baker, F., "Point-to-Point Protocol Extensions for Bridging", RFC        1220, ACC, April 1991. 
  261.  
  262.  
  263.  
  264.  Kastenholz                                                     [Page 12] 
  265.  RFC 1472                    PPP/Security MIB                   June 1993 
  266.  
  267.    [11] Lloyd, B., and W. Simpson, "PPP Authentication Protocols", RFC        1334, L&A, Daydreamer, October 1992. 
  268.  
  269.   [12] Simpson, W., "PPP Link Quality Monitoring", RFC 1333, Daydreamer,        May 1992. 
  270.  
  271. 8.  Author's Address 
  272.  
  273.    Frank Kastenholz    FTP Software, Inc.    2 High Street    North Andover, Mass 01845 USA 
  274.  
  275.    Phone: (508) 685-4000    EMail: kasten@ftp.com 
  276.  
  277.  
  278.  
  279.  
  280.  
  281.  
  282.  
  283.  
  284.  
  285.  
  286.  
  287.  
  288.  
  289.  
  290.  
  291.  
  292.  
  293.  
  294.  
  295.  
  296.  
  297.  
  298.  
  299.  
  300.  
  301.  
  302.  
  303.  
  304.  
  305.  
  306.  
  307.  
  308.  
  309.  
  310.  
  311.  Kastenholz                                                     [Page 13] 
  312.  
  313.