Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

CVE-2023-48795 false positives #23556

Open
rebeccaui opened this issue Nov 5, 2024 · 8 comments
Open

CVE-2023-48795 false positives #23556

rebeccaui opened this issue Nov 5, 2024 · 8 comments
Assignees
Labels
bug Something isn't working as documented #g-endpoint-ops Endpoint ops product group :release Ready to write code. Scheduled in a release. See "Making changes" in handbook. ~released bug This bug was found in a stable release. ~vulnerability-management

Comments

@rebeccaui
Copy link
Contributor

rebeccaui commented Nov 5, 2024

Fleet version: 4.58

Web browser and operating system: macOS 14 and 15


💥  Actual behavior

CVE-2023-48795 lists libssh2 1.11.1 as vulnerable while NVD does not.
It also shows kitty as vulnerable on macOS but NVD says Windows only.
Paramiko 2.11.0 shows as vulnerable but NVD does not.

image
image
image
image

🧑‍💻  Steps to reproduce

  1. TODO
  2. TODO

🕯️ More info (optional)

N/A

@rebeccaui rebeccaui added bug Something isn't working as documented :reproduce Involves documenting reproduction steps in the issue #g-mdm MDM product group :incoming New issue in triage process. #g-endpoint-ops Endpoint ops product group ~vulnerability-management and removed #g-mdm MDM product group labels Nov 5, 2024
@JoStableford
Copy link
Contributor

Linked to Unthread ticket:

False Positives in Vulnerability Listings #3439)

@sharon-fdm sharon-fdm added the :release Ready to write code. Scheduled in a release. See "Making changes" in handbook. label Nov 6, 2024
@lukeheath lukeheath added ~released bug This bug was found in a stable release. and removed :reproduce Involves documenting reproduction steps in the issue labels Nov 8, 2024
@sharon-fdm
Copy link
Collaborator

Hey team! Please add your planning poker estimate with Zenhub @iansltx @lucasmrod @mostlikelee

@sharon-fdm sharon-fdm removed the :incoming New issue in triage process. label Dec 9, 2024
@sharon-fdm sharon-fdm added this to the 4.62.0-tentative milestone Dec 10, 2024
@iansltx iansltx assigned iansltx and unassigned ksykulev Dec 16, 2024
@iansltx
Copy link
Member

iansltx commented Dec 18, 2024

Need to confirm which OS we're looking at here. That screenshot looks like Linux, which would be pulling from a distro-specific OVAL (or ALAS for Amazon Linux) rather than our NVD feed. If I had to guess, that's what's going on with libssh2 in particular, though I'm going to test further.

For kitty, there was a broader CPE but it got deprecated. I'll need to figure out why the deprecated CPE is showing up in the vuln feed rather than the replacement CPEs. Will prioritize hunting this down since we should be able to fix that with a vuln feed build rather than a full release.

For paramiko, I just checked the changelog and 3.4.0 was the version that got the CVE fix; 2.11.0 didn't (it wasn't backported either), so everything < 3.4.0 is indeed vulnerable and we're marking that correctly.

@iansltx
Copy link
Member

iansltx commented Dec 19, 2024

Did some digging on kitty and there's no such thing as macOS kitty. NVD superseded the CPE on their website from a generic one to a Windows-specific one, but the tighter CPE doesn't get delivered via their API as part of the CVE, and Vulncheck doesn't have the more specific CPE exposed either. So unless I'm missing something significant there's no issue here either, as "kitty for Windows is vulnerable" matches "kitty for all OSes is vulnerable."

@iansltx
Copy link
Member

iansltx commented Dec 19, 2024

For libssh2, something seems to be up; adding the following to the CVE test gets me CVEs that don't include a resolved-in version:

		"cpe:2.3:a:libssh2:libssh2:*:*:*:*:*:*:*:*": {
			includedCVEs: []cve{
				{ID: "CVE-2023-48795", resolvedInVersion: "1.11.1"},
			},
			continuesToUpdate: true,
		},

@MScottBlake
Copy link
Contributor

Did some digging on kitty and there's no such thing as macOS kitty. NVD superseded the CPE on their website from a generic one to a Windows-specific one, but the tighter CPE doesn't get delivered via their API as part of the CVE, and Vulncheck doesn't have the more specific CPE exposed either. So unless I'm missing something significant there's no issue here either, as "kitty for Windows is vulnerable" matches "kitty for all OSes is vulnerable."

Perhaps you can explain this then?
image

image

@iansltx
Copy link
Member

iansltx commented Dec 19, 2024

Turns out, multiple developers independently called something kitty; the one above is a completely different application unaffiliated with the PuTTY fork that was mentioned in the CVE.

This also clarifies that the packages listed above are all on homebrew, so that's useful information as well. Will continue working through this; thanks!

@iansltx
Copy link
Member

iansltx commented Dec 19, 2024

So, for libssh2, I ensured I had libssh2 1.11.1 on my machine (via brew) and confirmed that I don't see it listed as vulnerable. @MScottBlake are the hosts you're seeing marked as vulnerable also macOS/homebrew?

As for kitty, coincidentally #22944 (and the corresponding PR #24593) will fix this issue, as the app bundle identifier for kitty (which we get from the apps table) gives us enough information to build a specific enough CPE to not match CVE-2023-48795, and we're dropping reporting on Homebrew packages that also show up as apps. Which means that this:

image

will turn into this:

image

So we're down to troubleshooting why you're seeing libssh2 1.11.1 false-positives, as I can't repro them on macOS + homebrew, across multiple Fleet servers running 4.61.0.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working as documented #g-endpoint-ops Endpoint ops product group :release Ready to write code. Scheduled in a release. See "Making changes" in handbook. ~released bug This bug was found in a stable release. ~vulnerability-management
Development

No branches or pull requests

7 participants