CVE-2022-46648: ruby-git has potential remote code execution vulnerability
(updated )
The git gem, between versions 1.2.0 and 1.12.0, incorrectly parsed the output of the git ls-files
command using eval()
to unescape quoted file names. If a file name was added to the git repository contained special characters, such as \n
, then the git ls-files
command would print the file name in quotes and escape any special characters. If the Git#ls_files
method encountered a quoted file name it would use eval()
to unquote and unescape any special characters, leading to potential remote code execution. Version 1.13.0 of the git gem was released which correctly parses any quoted file names.
References
- github.com/advisories/GHSA-pfpr-3463-c6jh
- github.com/ruby-git/ruby-git
- github.com/ruby-git/ruby-git/pull/602
- github.com/ruby-git/ruby-git/releases/tag/v1.13.0
- github.com/rubysec/ruby-advisory-db/blob/master/gems/git/CVE-2022-46648.yml
- jvn.jp/en/jp/JVN16765254/index.html
- lists.debian.org/debian-lts-announce/2023/01/msg00043.html
- nvd.nist.gov/vuln/detail/CVE-2022-46648
Code Behaviors & Features
Detect and mitigate CVE-2022-46648 with GitLab Dependency Scanning
Secure your software supply chain by verifying that all open source dependencies used in your projects contain no disclosed vulnerabilities. Learn more about Dependency Scanning →