|
| 1 | +--- |
| 2 | +layout: post |
| 3 | +title: mdBook security advisory |
| 4 | +author: Rust Security Response WG |
| 5 | +--- |
| 6 | + |
| 7 | +> This is a cross-post of [the official security advisory][ml]. The official post |
| 8 | +> contains a signed version with our PGP key, as well. |
| 9 | +
|
| 10 | +[ml]: https://groups.google.com/g/rustlang-security-announcements/c/3-sO6of29O0 |
| 11 | + |
| 12 | +The Rust Security Response Working Group was recently notified of a security |
| 13 | +issue affecting the search feature of mdBook, which could allow an attacker to |
| 14 | +execute arbitrary JavaScript code on the page. |
| 15 | + |
| 16 | +The CVE for this vulnerability is [CVE-2020-26297][1]. |
| 17 | + |
| 18 | +## Overview |
| 19 | + |
| 20 | +The search feature of mdBook (introduced in version 0.1.4) was affected by a |
| 21 | +cross site scripting vulnerability that allowed an attacker to execute |
| 22 | +arbitrary JavaScript code on an user's browser by tricking the user into typing |
| 23 | +a malicious search query, or tricking the user into clicking a link to the |
| 24 | +search page with the malicious search query prefilled. |
| 25 | + |
| 26 | +mdBook 0.4.5 fixes the vulnerability by properly escaping the search query. |
| 27 | + |
| 28 | +## Mitigations |
| 29 | + |
| 30 | +Owners of websites built with mdBook have to upgrade to mdBook 0.4.5 or greater |
| 31 | +and rebuild their website contents with it. It's possible to install mdBook |
| 32 | +0.4.5 on the local system with: |
| 33 | + |
| 34 | +``` |
| 35 | +cargo install mdbook --version 0.4.5 --force |
| 36 | +``` |
| 37 | + |
| 38 | +## Acknowledgements |
| 39 | + |
| 40 | +Thanks to Kamil Vavra for responsibly disclosing the vulnerability to us |
| 41 | +according to [our security policy][2]. |
| 42 | + |
| 43 | +## Timeline of events |
| 44 | + |
| 45 | +All times are listed in UTC. |
| 46 | + |
| 47 | +* 2020-12-30 20:14 - The issue is reported to the Rust Security Response WG |
| 48 | +* 2020-12-30 20:32 - The issue is acknowledged and the investigation began |
| 49 | +* 2020-12-30 21:21 - Found the cause of the vulnerability and prepared the patch |
| 50 | +* 2021-01-04 15:00 - Patched version released and vulnerability disclosed |
| 51 | + |
| 52 | +[1]: https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-26297 |
| 53 | +[2]: https://www.rust-lang.org/policies/security |
0 commit comments