Description
Libra Core before 2019-09-03 has an erroneous regular expression for inline comments, which makes it easier for attackers to interfere with code auditing by using a nonstandard line-break character for a comment. For example, a Move module author can enter the // sequence (which introduces a single-line comment), followed by very brief comment text, the \r character, and code that has security-critical functionality. In many popular environments, this code is displayed on a separate line, and thus a reader may infer that the code is executed. However, the code is NOT executed, because language/compiler/ir_to_bytecode/src/parser.rs allows the comment to continue after the \r character.
Metrics
CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:N/I:H/A:NAffected software
| Vendor | Product | Versions |
|---|---|---|
| n/a | n/a | n/a |
References
- https://blog.openzeppelin.com/libra-vulnerability-release/Third Party Advisory
- https://blog.openzeppelin.com/libra-vulnerability-summary/Exploit, Third Party Advisory
- https://github.com/libra/libra/commit/7efb0221989f17fdf7f8486730898ed947a1e19ePatch, Third Party Advisory
- https://blog.openzeppelin.com/libra-vulnerability-release/Third Party Advisory
- https://blog.openzeppelin.com/libra-vulnerability-summary/Exploit, Third Party Advisory
- https://github.com/libra/libra/commit/7efb0221989f17fdf7f8486730898ed947a1e19ePatch, Third Party Advisory
Timeline
- Published
- Sep 11, 2019
- Last modified
- Jun 17, 2026
- NVD status
- Modified