{"id":"GHSA-2c83-wfv3-q25f","summary":"Improper Neutralization of Special Elements used in an OS Command ('OS Command Injection') in ZMarkdown","details":"### Impact\n\nA Remote Command Execution vulnerability was found in the rebber module,\nwhich allowed execution of arbitrary commands. The reported problem came\nfrom CodeBlocks, which could be escaped to insert malicious LaTeX.\n\nAnyone using `rebber` without sanitation of code content or a custom\nmacro is impacted by this vulnerability. Here is an example of a Markdown\ncontent that will exploit the vulnerability:\n\n````markdown\n```\n\\end{CodeBlock}\n\n\\immediate\\write18{COMMAND \u003e outputrce}\n\\input{outputrce}\n\n\\begin{CodeBlock}{text}\n```\n````\n\nWill insert into the generated LaTeX the result of executing\n`COMMAND` on the system.\n\n### Patches\n\nThe vulnerability has been patched in version 5.2.1.\nIf impacted, you should update to this version as soon as possible.\n\n### Workarounds\n\nIt is possible to mitigate the vulnerability without upgrading by using a\ncustom code macro. Please make sure this custom macro escapes your\nclosing LaTeX sequence. For the example above, use:\n\n```javascript\nconst escaped = content.replace(new RegExp('\\\\\\\\end\\\\s*{CodeBlock}', 'g'), '')\n```\n\n### For more information\n\nIf you have any questions or comments about this advisory, open an issue in [ZMarkdown](https://github.com/zestedesavoir/zmarkdown/issues).","modified":"2021-09-07T14:04:47Z","published":"2021-09-07T23:07:56Z","database_specific":{"github_reviewed_at":"2021-09-07T14:04:47Z","nvd_published_at":null,"cwe_ids":["CWE-78"],"severity":"CRITICAL","github_reviewed":true},"references":[{"type":"WEB","url":"https://github.com/zestedesavoir/zmarkdown/security/advisories/GHSA-2c83-wfv3-q25f"},{"type":"PACKAGE","url":"https://github.com/zestedesavoir/zmarkdown"}],"affected":[{"package":{"name":"rebber","ecosystem":"npm","purl":"pkg:npm/rebber"},"ranges":[{"type":"SEMVER","events":[{"introduced":"0"},{"fixed":"5.2.1"}]}],"database_specific":{"source":"https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2021/09/GHSA-2c83-wfv3-q25f/GHSA-2c83-wfv3-q25f.json"}}],"schema_version":"1.9.0"}