Software: Westworld Host OS
Version: Unknown but all available versions believed vulnerable.
CVE: Awaiting assignment
Patch Status: None Available
Advisory report: https://christopherbudd.com/2018/06/14/vulnerability-in-westworld-host-os-handshake-protocol-enables-complete-system-control
CVSS 3 Scores:
- CVSS Base Score:10.0
- Impact Subscore: 6.0
- Exploitability Subscore: 3.9
- CVSS Temporal Score: 10.0
- CVSS Environmental Score: 9.9
- Modified Impact Subscore: 6.0
Overall CVSS Score: 9.9
This vulnerability has been observed under active attack (see “Proof of concept” below).
Zero-day network-based buffer overrun in Westworld Host OS “Handshake” Daemon gives ROOT, possible worm via multicast, leading to effective complete system-wide elevation of privilege via host-OS escape.
Westworld is an adult resort run by Delos Destinations where human guests interact with AI-powered android “hosts” in thematic parks. “Westworld” has an American Wild West Theme, while Samurai World has a medieval Shogun-era Japan theme among others. Because Westworld was the first park, the “hosts” are referred to as “Westworld hosts” and the underlying operating system the “Westworld host OS”, regardless of which theme park the host is deployed in.
Each individual park encompasses vast physical distances sometimes including significant physical barriers like deserts, mountains, lakes, canyons and small oceans. Taken together these physical barriers make reliable wi-fi networking unreliable and infeasible.
To address the problem of locating hosts across these broad geographic areas the developers of the Westworld host OS, Dr. Robert Ford and Arnold Weber, implemented a lightweight peer-based protocol that appears to be a proprietary derivative from the known-problematic Universal Plug and Play (UPnP) protocol. They have confusingly (and misleadingly) called this a “handshake” protocol, even though it actually does not use handshakes similar to other networking protocols like TCP.
The “handshake” protocol is used by Westworld technicians to locate specific hosts within the park. A technician will initiate the sequence by sending a locate request using the protocol via the Westworld host OS radio frequency peer broadcast protocol (itself another proprietary protocol). As per standard UPnP, the request is multicast to all Westworld hosts within receiving distance of the signal. Upon receipt, if the receiving host isn’t the one specified in the request, it will rebroadcast the request. This sequence continues and if the specified host receives the request, it responds with its own message to the originating sender with basic location information using the same method as outlined already.
Like many proprietary derivatives, this particular implementation is very problematic and has at least one demonstrated vulnerability: an unchecked buffer in the processing of “handshake” protocol packets by the Westworld host OS. The Westworld host OS itself appears to be a linux-derivative and the daemon that handles the “handshake” protocol appears to run with root privileges.
Taken together, this means it’s possible for a rogue host whose AI has gained root privileges on its own host to take control it its own “handshake” protocol daemon, craft a specially malformed “handshake” protocol packet and broadcast it to all hosts within physical receiving distance of the signal. When the receiving, vulnerable host OS processes the malformed packet, the initiator’s malicious commands executes on the target host OS with root privileges, giving the initiating host total control of the target host.
Because of the nature of Westworld hosts and how the “handshake” protocol is implemented, a fully realized attack using this vulnerability could result in a worm causing all available hosts executing the malicious commands. The time for completion of this attack would be limited only by the time it would take for the signals to be passed from one host to another.
An attack using this vulnerability has been observed in the wild. As shown in the proof of concept video below, the “Maeve” host can be seen exploiting the vulnerability to issue root-level commands to hosts in Samurai World. It’s notable that these commands lead to effective self-destruction of these hosts: this underscores the total nature of the compromise.
This is the only known attack so far. No fully realized attack has yet been observed. However, based on this analysis, it is believed that a fully realized attack taking total control of all hosts within the park is viable and could be carried out successfully in a matter of mere minutes.
The Westworld host OS is proprietary and the source code isn’t available. However, the trivial nature of this vulnerability points to a lack of proper threat modeling and security review in such a way that other equally serious and trivial vulnerabilities are nearly certain.
Proof of Concept
2018-06-03: First in-the-wild attacks observed
2018-06-10: Additional details on attacks discovered
2018-06-14: Detailed analysis completed
2018-06-14: Unsuccessfully attempted to locate vulnerability contact information on website
2018-06-15: Advisory published