Software update: strongSwan 4.3.3


Various protocols can be used to secure connections over public networks, such as the widely used ipsec. StrongSwan is an ipsec implementation for Linux systems, whose 4.2 and 4.3 wings target the current 2.6 Linux kernel. Support for ikev1, ikev2 and ipv6 is provided, as on this page can be read. The developers have released strongSwan 4.3.3 and have provided the following list of changes since the previous entry in the Meuktracker:

Version 4.3.3:

  • The configuration option –enable-integrity-test plus the strongswan.conf option libstrongswan.integrity_test = yes activate integrity tests of the IKE daemons charon and pluto, libstrongswan and all loaded plugins. Thus dynamic library misconfigurations and non-malicious file manipulations can be reliably detected.
  • The new default setting libstrongswan.ecp_x_coordinate_only=yes allows IKEv1 interoperability with MS Windows using the ECP DH groups 19 and 20.
  • The IKEv1 pluto daemon now supports the AES-CCM and AES-GCM ESP authenticated encryption algorithms.
  • The IKEv1 pluto daemon now supports V4 OpenPGP keys.
  • The RDN parser vulnerability discovered by Orange Labs research team was not completely fixed in version 4.3.2. Some more modifications had to be applied to the asn1_length() function to make it robust.

Version 4.3.2:

  • The new gcrypt plugin provides symmetric cipher, hasher, RNG, Diffie-Hellman and RSA crypto primitives using the LGPL licensed GNU gcrypt library.
  • libstrongswan features an integrated crypto selftest framework for registered algorithms. The test-vector plugin provides a first set of test vectors and allows pluto and charon to rely on tested crypto algorithms.
  • pluto can now use all libstrongswan plugins with the exception of x509 and xcbc. Thanks to the openssl plugin, the ECP Diffie-Hellman groups 19, 20, 21, 25, and 26 as well as ECDSA-256, ECDSA-384, and ECDSA-521 authentication can be used with IKEv1.
  • Applying their fuzzing tool, the Orange Labs vulnerability research team found another two DoS vulnerabilities, one in the rather old ASN.1 parser of Relative Distinguished Names (RDNs) and a second one in the conversion of ASN.1 UTCTIME and GENERALIZEDTIME strings to a time_tvalue.

Version 4.3.1:

  • The nm plugin now passes DNS/NBNS server information to NetworkManager, allowing a gateway administrator to set DNS/NBNS configuration on clients dynamically.
  • The nm plugin also accepts CA certificates for gateway authentication. If a CA certificate is configured, strongSwan uses the entered gateway address as its identity, requiring the gateways certificate to contain the same as subjectAltName. This allows a gateway administrator to deploy the same certificates to Windows 7 and NetworkManager clients.
  • The command ipsec purgeike deletes IKEv2 SAs that don’t have a CHILD SA. The command ipsec down {n} deletes CHILD SA instance n of connection whereas ipsec down {*} deletes all CHILD SA instances. The command ipsec down [n] deletes IKE SA instance n of connection plus dependent CHILD SAs whereas ipsec down [*] deletes all IKE SA instances of connection .
  • Fixed a regression introduced in 4.3.0 where EAP authentication calculated the AUTH payload incorrectly. Further, the EAP-MSCHAPv2 MSK key derivation has been updated to be compatible with the Windows 7 Release Candidate.
  • Refactored installation or triggering policies. Routed policies are handled outside of IKE_SAs to keep them installed in any case. A tunnel gets established only once, even if initiation is delayed due network outages.
  • Improved the handling of multiple acquire signals triggered by the kernel.
  • Fixed two DoS vulnerabilities in the charon daemon that were discovered by fuzzing techniques: 1) Sending a malformed IKE_SA_INIT request left an incomplete state which caused a null pointer dereference if a subsequent CREATE_CHILD_SA request was sent. 2) Sending an IKE_AUTH request with either a missing TSi or TSr payload caused a null pointer derefence because the checks for TSi and TSr were interchanged. The IKEv2 fuzzer used was developed by the Orange Labs vulnerability research team. The tool was initially written by Gabriel Campana and is now maintained by Laurent Butti.
  • Added support for AES counter mode in ESP in IKEv2 using the proposal keywords aes128ctr, aes192ctr and aes256ctr.
  • Further progress in refactoring pluto: Use of the curl and ldap plugins for fetching crls and OCSP. Use of the random plugin to get keying material from /dev/random or /dev/urandom. Use of the openssl plugin as an alternative to the aes, des, sha1, sha2, and md5 plugins. The blowfish, twofish, and serpent encryption plugins are now optional and are not enabled by default.

Version number 4.3.3
Release status Final
Operating systems Linux
Website strongSwan
File size 3.43MB
License type GPL