Project

General

Profile

Version 5.6.0 » History » Version 4

Tobias Brunner, 14.08.2017 14:00
CVE added

1 2 Tobias Brunner
h1. Version 5.6.0
2 1 Tobias Brunner
3 4 Tobias Brunner
* Fixed a DoS vulnerability in the _gmp_ plugin that was caused by insufficient input validation
4 4 Tobias Brunner
  when verifying RSA signatures, which requires decryption with the operation @m^e mod n@,
5 4 Tobias Brunner
  where @m@ is the signature, and @e@ and @n@ are the exponent and modulus of the public key.
6 4 Tobias Brunner
  The value @m@ is an integer between @0@ and @n-1@, however, the _gmp_ plugin did not verify this.
7 4 Tobias Brunner
  So if @m@ equals @n@ the calculation results in 0, in which case @mpz_export()@ returns NULL.
8 4 Tobias Brunner
  This result wasn't handled properly causing a null-pointer dereference.
9 4 Tobias Brunner
  This vulnerability has been registered as "CVE-2017-11185":https://www.cve.mitre.org/cgi-bin/cvename.cgi?name=2017-11185.
10 4 Tobias Brunner
  Please refer to "our blog":https://www.strongswan.org/blog/2017/08/14/strongswan-vulnerability-(cve-2017-11185).html for details.
11 4 Tobias Brunner
12 4 Tobias Brunner
* New [[SWIMA]] IMC/IMV pair implements the "draft-ietf-sacm-nea-swima-patnc":https://tools.ietf.org/html/draft-ietf-sacm-nea-swima-patnc Internet
13 3 Tobias Brunner
  Draft and has been demonstrated at the IETF 99 Prague Hackathon.
14 3 Tobias Brunner
15 3 Tobias Brunner
* The IMV database template has been adapted to achieve full compliance with the
16 3 Tobias Brunner
  ISO 19770-2:2015 SWID tag standard.
17 3 Tobias Brunner
18 3 Tobias Brunner
* The [[swcollector|sw-collector]] tool extracts software events from apt history logs and stores them
19 3 Tobias Brunner
  in an SQLite database to be used by the SWIMA IMC. The tool can also generate SWID tags both
20 3 Tobias Brunner
  for installed and removed package versions.
21 3 Tobias Brunner
22 3 Tobias Brunner
* The [[PtTlsClient|pt-tls-client]] can attach and use TPM 2.0 protected private keys via the @--keyid@ parameter.
23 3 Tobias Brunner
24 3 Tobias Brunner
* libtpmtss supports Intel's TSS2 Architecture Broker and Resource Manager interface (tcti-tabrmd).
25 3 Tobias Brunner
26 3 Tobias Brunner
* Adds the _eap-aka-3gpp_ plugin, which implements the 3GPP MILENAGE algorithms in software.
27 3 Tobias Brunner
  K (optionally concatenated with OPc) may be configured as binary EAP secret in [[ipsec.secrets]]
28 3 Tobias Brunner
  or [[swanctl.conf]].
29 3 Tobias Brunner
30 1 Tobias Brunner
* The CHILD_SA rekeying was fixed in _charon-tkm_ and the behavior is refined a bit more since version:5.5.3:
31 1 Tobias Brunner
32 3 Tobias Brunner
  * On Linux the outbound policy now has the SPI of the corresponding SA set and the responder
33 4 Tobias Brunner
    of a rekeying will install both IPsec SAs (in/out) immediately, but delay the update of the
34 4 Tobias Brunner
    outbound policy until it received the delete for the replaced CHILD_SA.
35 3 Tobias Brunner
  * The previous code temporarily installed an outbound IPsec SA/policy that was deleted
36 3 Tobias Brunner
    immediately afterwards when a rekey collision was lost, which caused a slight chance for traffic loss.
37 3 Tobias Brunner
38 3 Tobias Brunner
* The remote address must not be resolvable anymore when installing trap policies (at least not if the
39 3 Tobias Brunner
  remote traffic selector is not _%dynamic_, commit:1a8226429a).
40 3 Tobias Brunner
41 3 Tobias Brunner
* The new _%unique-dir_ value for the _mark*_ settings in [[swanctl.conf]] or [[ipsec.conf]] will allocate separate
42 3 Tobias Brunner
  unique marks for each CHILD_SA direction (commit:32e5c49234).
43 3 Tobias Brunner
44 3 Tobias Brunner
* By default the @/etc/swanctl/conf.d@ directory is created and *.conf files in it are included in the default
45 3 Tobias Brunner
  [[swanctl.conf]] file.
46 3 Tobias Brunner
47 3 Tobias Brunner
* The _curl_ plugin now follows HTTP redirects (configurable via [[strongswan.conf]]).
48 3 Tobias Brunner
49 3 Tobias Brunner
* The [[errornotifyplugin|error-notify]] plugin correctly handles disconnected listeners (commit:ed926a73df).
50 3 Tobias Brunner
51 3 Tobias Brunner
* The _sha2_ plugin was changed so that the last output is not stored in an internal buffer anymore (commit:1a75514b76, #2388).
52 3 Tobias Brunner
53 3 Tobias Brunner
* The encoding of nonces in OCSP requests was fixed in the _x509_ plugin (commit:d7dc677ee5).
54 3 Tobias Brunner
55 3 Tobias Brunner
* The handling of keyUsage extensions in X.509 certificates was fixed in the _openssl_ plugin (commit:e793d65acd).
56 3 Tobias Brunner
57 3 Tobias Brunner
* [[ipsecpki|pki]] loads the _pubkey_ plugin to fix printing public keys (commit:ef6b710f19).
58 3 Tobias Brunner
59 3 Tobias Brunner
* Some changes were added to the [[TestingEnvironment]]:
60 3 Tobias Brunner
61 3 Tobias Brunner
  * @do-tests@ supports running multiple tests via wildcards (e.g. @do-tests ikev2/ocsp-*@)
62 3 Tobias Brunner
  * With the @-v@ option @do-tests@ will prefix each executed command with a timestamp in console.log
63 3 Tobias Brunner
  * Tests in evaltest.dat can now easily match a specific number of lines (instead of [YES] or [NO]
64 3 Tobias Brunner
    use e.g. [2] if exactly two matching lines - or packets for tcpdump matches - are expected)
65 3 Tobias Brunner
  * Failed matches are now clearly marked in console.log