NIST’s IPsec Web-Based Interoperability Tester (IPsec-WIT) Sheila Frankel NIST Computer Security Division
IPsec99 - Oct. 29, Motivation Inter-operability of multiple implementations essential for IPsec to succeed Existing test modalities –Interoperability “Bake-offs” –Pre-planned Web-based interoperability testing Needed: spontaneous Web-based testing
IPsec99 - Oct. 29, User-Related Objectives Accessible from remote locations Available at any time Require no modification to the tester’s IPsec implementation Allow testers to resume testing later Configurable Well-documented Easy to use
IPsec99 - Oct. 29, Implementation Objectives Simultaneous access by multiple users Rapid, modular implementation Easily modified and expanded as IPsec/IKE specifications evolve Built around NIST’s IPsec/IKE Reference Implementations, Cerberus and PlutoPlus
IPsec99 - Oct. 29, Implementation Objectives (continued) Require minimal changes to Cerberus and PlutoPlus Operator intervention not required
IPsec99 - Oct. 29, IPsec-WIT Architecture IUT WWW-based Tester Control (HTML/CGI) IPsec Encapsulated IP Packets Local IUT Configuration IPsec WIT Linux Kernel HTML Docs., Forms, and HTTP Server IP + NIST Cerberus PERL CGI Test Engine TestSuites Manual SAs and IP/IPsec Packet Traces NISTPlutoPlus Negotiated SAs and SA mgmt. messages Message logging and IKE Configuration Web Browser IKE Negotiation StateFiles
IPsec99 - Oct. 29, Implementation Perl cgi-bin tester HTML forms Executable test cases Output –PlutoPlus: tracing the IKE negotiation –Cerberus: dumping the ping packets – expect command: color-coded output
IPsec99 - Oct. 29, Implementation (continued) Individual tester files –Tester-specific parameters –Tester’s individual output –Storage and expiration
IPsec99 - Oct. 29, Current Capabilities Key establishment: manual or IKE negotiation IKE negotiation: initiator or responder Peer authentication: pre-shared secrets ISAKMP hash: MD5 or SHA ISAKMP encryption: DES or 3DES Diffie-Hellman Exchange: First Oakley Group
IPsec99 - Oct. 29, Current Capabilities (continued) Configurable port for IKE negotiation IPsec AH algorithms: HMAC-MD5 or HMAC-SHA1 IPsec ESP algorithms: –Encryption: DES, 3DES, IDEA, RC5, Blowfish, or ESP-Null –Authentication (optional): HMAC-MD5 or HMAC-SHA1 –Variable key length for RC5 and Blowfish
IPsec99 - Oct. 29, Current Capabilities (continued) IPsec encapsulation mode: transport or tunnel Perfect Forward Secrecy (PFS) Verbosity of IKE/IPsec output configurable IPsec SA tested using “ping” command Transport-mode SA: host-to-host
IPsec99 - Oct. 29, Current Capabilities (continued) Tunnel-mode SA:host-to-host or host-to-gateway –Host-to-gateway SA tests communications with tester’s host behind gateway Sample test cases for testers without a working IKE/IPsec implementation Current/cumulative test results can be viewed via browser or ed to tester
IPsec99 - Oct. 29, Limitations Re-keying Crash/disaster recovery Complex policy-related scenarios
IPsec99 - Oct. 29, Lessons Learned Voluntary interoperability testing is useful and used Interoperability tests can also serve as conformance tests Stateful protocols can be tested using a Web-based tester “Standard” features are more useful than “cutting edge”
IPsec99 - Oct. 29, Lessons Learned (continued) Some human intervention is required Productive and informative multi-protocol interaction is challenging Users do the “darnedest” - and most unexpected - things
IPsec99 - Oct. 29, Future Horizons - PlutoPlus Additional Diffie-Hellman groups More complex policy options –Multiple proposals –Adjacent SA’s –Nested SA’s Peer authentication: public key PKI interaction and certificate exchanges
IPsec99 - Oct. 29, Future Horizons - IPsec-WIT Test IPsec SA’s with UDP/TCP connections, rather than ICMP Better diagnostics from underlying protocols
IPsec99 - Oct. 29, Futuristic Horizons Negative testing Robustness testing
IPsec99 - Oct. 29, Contact/Usage Information IPsec-WIT: Cerberus documentation: PlutoPlus documentation: For further information, contact: –Sheila Frankel: –Rob Glenn: