Skip to content
KitploitKITPLOIT
ToolsBlog
Submit
ToolsBlog
Submit

Hacking, PenTest, and Cybersecurity Tools for Your Security Arsenal!

Kitploit is a directory of hacking, cybersecurity, and pentesting tools. Discover the latest project updates to find vulnerabilities, analyze systems, automate testing, and strengthen your security.

··Feeds·Contact·Privacy·© 2026 Kitploit

Tool Directory

Categories

View all categories
Loading categories
CVE-2026-35414 — Demonstrates a proof-of-concept for CVE-2026-35414, showing a vulnerable and fixed version of SSH principal matching logic to illustrate the flaw. | Kitploit
Tools/GitHubGitHub/killercd/cve-2026-35414
Static AnalysisVulnerability ScannersVulnerability AnalysisCode AnalysisExploitation
GitHubkillercd/cve-2026-35414

CVE-2026-35414

Demonstrates a proof-of-concept for CVE-2026-35414, showing a vulnerable and fixed version of SSH principal matching logic to illustrate the flaw.

View Repository
154 months agoNot yet reviewed

Most Popular

View all →

Discover the most used tools by our community.

Explore all tools

Browse our collection of tools

View all tools →
Share

CVE-2026-35414

CVE-2026-35414 Vuln block

auth2-pubkeyfile.c (vulnerable)

root@kitploit:~
static int
match_principals_option(const char *principal_list, struct sshkey_cert *cert)
{
	char *result;
	u_int i;

	/* XXX percent_expand() sequences for authorized_principals? */

	for (i = 0; i < cert->nprincipals; i++) {
		if ((result = match_list(cert->principals[i],
		    principal_list, NULL)) != NULL) {
			debug3("matched principal from key options \"%.100s\"",
			    result);
			free(result);
			return 1;
		}
	}
	return 0;
}

auth2-pubkeyfile.c (fixed)

root@kitploit:~
static int
match_principals_option(const char *principal_list, struct sshkey_cert *cert)
{
	char *list, *olist, *entry;
	u_int i;

	olist = list = xstrdup(principal_list);
	for (;;) {
		if ((entry = strsep(&list, ",")) == NULL || *entry == '\0')
			break;
		for (i = 0; i < cert->nprincipals; i++) {
			if (strcmp(entry, cert->principals[i]) == 0) {
				debug3("matched principal from key i"
				    "options \"%.100s\"", entry);
				free(olist);
				return 1;
			}
		}
	}
	free(olist);
	return 0;
}
Download Tool