Version 5.6.3 » History » Version 2
Tobias Brunner, 24.05.2018 13:05
News for 5.6.3
1 | 1 | Tobias Brunner | h1. Version 5.6.3 |
---|---|---|---|
2 | 1 | Tobias Brunner | |
3 | 2 | Tobias Brunner | * Fixed a vulnerability in the _stroke_ plugin, which did not check the received length before |
4 | 2 | Tobias Brunner | reading a message from the socket. Unless a [[ReducedPrivileges#Running-strongSwan-as-non-root|group]] is configured, root privileges are |
5 | 2 | Tobias Brunner | required to access that socket, so in the default configuration this shouldn't be an issue. |
6 | 2 | Tobias Brunner | The fix (commit:0acd1ab4d0) is also "available for older releases":https://download.strongswan.org/security/CVE-2018-5388/. |
7 | 2 | Tobias Brunner | This vulnerability has been registered as "CVE-2018-5388":https://cve.mitre.org/cgi-bin/cvename.cgi?name=2018-5388. |
8 | 2 | Tobias Brunner | |
9 | 2 | Tobias Brunner | |
10 | 2 | Tobias Brunner | * CRLs that are not yet valid are now ignored to avoid problems in scenarios where expired |
11 | 2 | Tobias Brunner | certificates are removed from new CRLs and the clock on the host doing the revocation |
12 | 2 | Tobias Brunner | check is trailing behind that of the host issuing CRLs. Not doing this could result in accepting |
13 | 2 | Tobias Brunner | a revoked and expired certificate, if it's still valid according to the trailing clock but not |
14 | 2 | Tobias Brunner | contained anymore in not yet valid CRLs. |
15 | 2 | Tobias Brunner | |
16 | 2 | Tobias Brunner | * The issuer of fetched CRLs is now compared to the issuer of the checked certificate (#2608). |
17 | 2 | Tobias Brunner | |
18 | 2 | Tobias Brunner | * CRL validation results other than revocation (e.g. a skipped check because the CRL couldn't |
19 | 2 | Tobias Brunner | be fetched) are now stored also for intermediate CA certificates and not only for end-entity |
20 | 2 | Tobias Brunner | certificates, so a strict CRL policy can be enforced in such cases. |
21 | 2 | Tobias Brunner | |
22 | 2 | Tobias Brunner | * In compliance with "RFC 4945, section 5.1.3.2":https://tools.ietf.org/html/rfc4945#section-5.1.3.2, certificates used for IKE must now either |
23 | 2 | Tobias Brunner | *not* contain a _keyUsage_ extension (like the ones generated by [[ipsecpki|pki]]), or have at least one of the |
24 | 2 | Tobias Brunner | _digitalSignature_ or _nonRepudiation_ bits set. |
25 | 2 | Tobias Brunner | |
26 | 2 | Tobias Brunner | * New options for [[vici]]/[[swanctl]] allow forcing the local termination of an IKE_SA. This might be |
27 | 2 | Tobias Brunner | useful in situations where it's known the other end is not reachable anymore, or that it already |
28 | 2 | Tobias Brunner | removed the IKE_SA, so retransmitting a DELETE and waiting for a response would be pointless. |
29 | 2 | Tobias Brunner | Waiting only a certain amount of time for a response (i.e. shorter than all retransmits would be) |
30 | 2 | Tobias Brunner | before destroying the IKE_SA is also possible by additionally specifying a timeout in the forced |
31 | 2 | Tobias Brunner | termination request. |
32 | 2 | Tobias Brunner | |
33 | 2 | Tobias Brunner | * When removing routes, the _kernel-netlink_ plugin now checks if it tracks other routes for the same |
34 | 2 | Tobias Brunner | destination and replaces the installed route instead of just removing it. Same during installation, |
35 | 2 | Tobias Brunner | where existing routes previously weren't replaced. This should allow using traps with virtual IPs |
36 | 2 | Tobias Brunner | on Linux (#2162). |
37 | 2 | Tobias Brunner | |
38 | 2 | Tobias Brunner | * The [[dhcpplugin|dhcp plugin]] now only sends the client identifier DHCP option if the _identity_lease_ setting is |
39 | 2 | Tobias Brunner | enabled (commit:7b660944b6). It can also send identities of up to 255 bytes length, instead of the |
40 | 2 | Tobias Brunner | previous 64 bytes (commit:30e886fe3b, commit:0e5b94d038). If a server address is configured, DHCP requests |
41 | 2 | Tobias Brunner | are now sent from port 67 instead of 68 to avoid ICMP port unreachables (commit:becf027cd9). |
42 | 2 | Tobias Brunner | |
43 | 2 | Tobias Brunner | * The handling of faulty @INVALID_KE_PAYLOAD@ notifies (e.g. one containing a DH group that wasn't |
44 | 2 | Tobias Brunner | proposed) during @CREATE_CHILD_SA@ exchanges has been improved (#2536). |
45 | 2 | Tobias Brunner | |
46 | 2 | Tobias Brunner | * Roam events are now completely ignored for IKEv1 SAs (there is no MOBIKE to handle such |
47 | 2 | Tobias Brunner | changes properly). |
48 | 2 | Tobias Brunner | |
49 | 2 | Tobias Brunner | * ChaCha20/Poly1305 is now correctly proposed without key length (#2614). For compatibility with |
50 | 2 | Tobias Brunner | older releases the _chacha20poly1305compat_ keyword may be included in proposals to also propose |
51 | 2 | Tobias Brunner | the algorithm with a key length (commit:c58434aeff). |
52 | 2 | Tobias Brunner | |
53 | 2 | Tobias Brunner | * Configuration of hardware offload of IPsec SAs is now more flexible and allows a new setting (_auto_), |
54 | 2 | Tobias Brunner | which automatically uses it if the kernel and device both support it. If _hw_offload_ is set to _yes_ and |
55 | 2 | Tobias Brunner | offloading is not supported, the CHILD_SA installation now fails. |
56 | 2 | Tobias Brunner | |
57 | 2 | Tobias Brunner | * The _kernel-pfkey_ plugin optionally installs routes via internal interface (one with an IP in the local |
58 | 2 | Tobias Brunner | traffic selector). On FreeBSD, enabling this selects the correct source IP when sending packets |
59 | 2 | Tobias Brunner | from the gateway itself (commit:e811659323). |
60 | 2 | Tobias Brunner | |
61 | 2 | Tobias Brunner | * SHA-2 based PRFs are supported in PKCS#8 files as generated by OpenSSL 1.1 (#2574). |
62 | 2 | Tobias Brunner | |
63 | 2 | Tobias Brunner | * The [[ipsecpkiverify|pki --verify]] tool may load CA certificates and CRLs from directories. |
64 | 2 | Tobias Brunner | |
65 | 2 | Tobias Brunner | * The IKE daemon now also switches to port 4500 if the remote port is not 500 (e.g. because the |
66 | 2 | Tobias Brunner | remote maps the response to a different port, as might happen on Azure), as long as the local port |
67 | 2 | Tobias Brunner | is 500 (commit:85bfab621d). |
68 | 2 | Tobias Brunner | |
69 | 2 | Tobias Brunner | * Fixed an issue with DNS servers passed to NetworkManager in charon-nm (commit:ee8c25516a). |
70 | 2 | Tobias Brunner | |
71 | 2 | Tobias Brunner | * Logged traffic selectors now always contain the protocol if either protocol or port are set (commit:a36d8097ed). |
72 | 2 | Tobias Brunner | |
73 | 2 | Tobias Brunner | * Only the inbound SA/policy will be updated as reaction to IP address changes for rekeyed CHILD_SAs |
74 | 2 | Tobias Brunner | that are kept around. |
75 | 2 | Tobias Brunner | |
76 | 2 | Tobias Brunner | * The parser for [[strongswan.conf]]/[[swanctl.conf]] now accepts @=@ characters in values without having to |
77 | 2 | Tobias Brunner | put the value in quotes (e.g. for Base64 encoded shared secrets). |
78 | 2 | Tobias Brunner | |
79 | 2 | Tobias Brunner | * Notes for developers: |
80 | 2 | Tobias Brunner | |
81 | 2 | Tobias Brunner | * *trap_manager_t*: Trap policies are now unistalled by peer/child name and not the reqid. |
82 | 2 | Tobias Brunner | No reqid is returned anymore when installing trap policies. |
83 | 2 | Tobias Brunner | |
84 | 2 | Tobias Brunner | * *child_sa_t*: A new state (@CHILD_DELETED@) is used for CHILD_SAs that have been deleted but not yet |
85 | 2 | Tobias Brunner | destroyed (after a rekeying CHILD_SAs are kept around for a while to process delayed packets). |
86 | 2 | Tobias Brunner | This way child_updown events are not triggered anymore for such SAs when an IKE_SA that has such |
87 | 2 | Tobias Brunner | CHILD_SAs assigned is deleted. |