Description
knowns versions before 0.30.0 fail to validate the settings.lsp.languages binary field in project configuration files, allowing attackers to execute arbitrary binaries by crafting a malicious .knowns/config.json file. When a repository with a crafted configuration is opened, the unvalidated binary path is executed twice under the user's account without any verification.
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| knowns-dev | knowns | < 0.30.0 | 0.30.0 |
Affected packages
| Ecosystem | Package | Affected | Fixed | Record |
|---|---|---|---|---|
| npm | knowns | < 0.30.0 | 0.30.0 | GHSA-mc52-mwq4-vfx3 |
References
- GitHub Security Advisory (GHSA-mc52-mwq4-vfx3) vendor-advisory
- Detector.resolve executes the unvalidated binary override (v0.29.1) technical-description
- ProjectSettings.Validate does not inspect the LSP binary field (v0.29.1) technical-description
- knowns fix commit d3989829fb50 patch
- knowns v0.30.0 Release Notes release-notes
- VulnCheck Advisory: knowns before 0.30.0 Arbitrary Code Execution via LSP Binary third-party-advisory