-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Xen Security Advisory CVE-2013-4416 / XSA-72 version 3 ocaml xenstored mishandles oversized message replies UPDATES IN VERSION 3 ==================== Public release. ISSUE DESCRIPTION ================= The Ocaml xenstored implementation ("oxenstored") cannot correctly handle a message reply larger than XENSTORE_PAYLOAD_SIZE when communicating with a client domain via the shared ring mechanism. When this situation occurs the connection to the client domain will be shutdown and cannot be restarted leading to a denial of service to that domain. Clients in the same domain as xenstored which are using the Unix domain socket mechanism are not vulnerable. IMPACT ====== A malicious domain can create a directory containing a large number of entries in the hopes that a victim domain will attempt to list the contents of that directory. If this happens then the victim domain's xenstore connection will be shutdown leading to a denial of service against that domain. If the victim domain is a toolstack or control domain then this can lead to a denial of service against the whole system. VULNERABLE SYSTEMS ================== All systems using oxenstored are potentially vulnerable. oxenstored was added in Xen 4.1.0. From Xen 4.2.0 onward it is used by default if an ocaml toolstack was present at build time. In its default configuration the C xenstored implementation is not vulnerable. By default this implementation imposes a quota on the maximum directory size which is less than XENSTORE_PAYLOAD_SIZE. If you have adjusted the quota using the --entry-size / -S option to a value larger than XENSTORE_PAYLOAD_SIZE (4096 bytes) then you may be vulnerable. Systems where the toolstack and oxenstored live in the same domain will default to using Unix domain socket based communications and therefore are not vulnerable to the host wide denial of service by default. In such a configuration guest domains which do not list xenstore paths belonging to untrusted foreign domains will not be vulnerable to the DoS. (In the common case guests will not have permission to do so in any case.) MITIGATION ========== Switching to the C xenstored (in its default configuration), will eliminate this vulnerability. CREDITS ======= This issue was discovered by Thomas Sanders at Citrix. RESOLUTION ========== Applying the appropriate attached patch resolves both the ocaml xenstore and C xenstore issues. xsa72.patch xen-unstable, Xen 4.3.x, Xen 4.2.x $ sha256sum xsa72*.patch 66e11513fc512173140f3ca12568f8ef79415e9a7884254a700991b3f1afd125 xsa72.patch $ -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.12 (GNU/Linux) iQEcBAEBAgAGBQJSb9aMAAoJEIP+FMlX6CvZU6MH/2Racg6r+JLka2jqPO3X+BCh +Dvkp2s85lQ/i7lUDq7V/1Badc+GpqCAoysgjh0bMSyXpPwaz3N+JhcgSEzWbXoU IlQQUWGA86jO7x0g1HBIfvmf6o+ALWKkoyLiOZ3ZgpibO/vkl+8qU6yiD+r0XDaM TTcsuRrosw6wbVsPkL7wGpTsQD1JA/FSKd7BpsQRMjxUeMtTeBtPN1o+zsvGf7he A8MYe55XXYZbHv/S9yuBCHXtCU+QRtuGJGODIPACOqsaqWETIf013sxCORAmqg3x bNEm3R0EJl3pO8Hdd2kTzIjRHgLn9LEKTIQU4+IYj0jOqXsMYjalFIL2RFC2lzI= =vgDt -----END PGP SIGNATURE-----