A crafted list can trigger a ArrayIndexOutOfBoundsException in Yauaa
Description
Yauaa before 7.9.0 throws uncaught ArrayIndexOutOfBoundsException on crafted User-Agent Client Hints, causing denial-of-service.
AI Insight
LLM-synthesized narrative grounded in this CVE's description and references.
Yauaa before 7.9.0 throws uncaught ArrayIndexOutOfBoundsException on crafted User-Agent Client Hints, causing denial-of-service.
Vulnerability
Details
Yet Another UserAgent Analyzer (Yauaa) versions 7.0.0 through 7.8.0 contain a flaw in the Client Hints analysis feature that can lead to an uncaught ArrayIndexOutOfBoundsException. The library attempts to parse the Sec-Ch-Ua-Full-Version-List header by splitting the version string on dots, but does not properly validate the length of the resulting array before accessing elements. A specially crafted header can cause the array access to be out of bounds, triggering the exception.
Exploitation
An attacker can exploit this vulnerability by sending a HTTP request with a malicious Sec-Ch-Ua-Full-Version-List header to any application that uses Yauaa to parse User-Agent strings and has the Client Hints feature enabled. No authentication is required if the application processes such headers from untrusted sources. The vulnerability is easy to trigger with a crafted header that includes a version string with fewer dot-separated parts than expected.
Impact
Successful exploitation results in an uncaught ArrayIndexOutOfBoundsException, which typically crashes the application thread or process. This leads to a denial-of-service condition, making the application unavailable until restarted. The impact is limited to applications that utilize the Client Hints analysis; those not using this feature are unaffected.
Mitigation
The issue is fixed in Yauaa version 7.9.0 [1][4]. Users are advised to upgrade. As a workaround, applications can catch and discard ArrayIndexOutOfBoundsException thrown by the Yauaa library [2].
AI Insight generated on May 20, 2026. Synthesized from this CVE's description and the cited reference URLs; citations are validated against the source bundle.
Affected packages
Versions sourced from the GitHub Security Advisory.
| Package | Affected versions | Patched versions |
|---|---|---|
nl.basjes.parse.useragent:yauaaMaven | >= 7.0.0, < 7.9.0 | 7.9.0 |
nl.basjes.parse.useragent:yauaa-beamMaven | >= 7.0.0, < 7.9.0 | 7.9.0 |
nl.basjes.parse.useragent:yauaa-beam-sqlMaven | >= 7.0.0, < 7.9.0 | 7.9.0 |
nl.basjes.parse.useragent:yauaa-drillMaven | >= 7.0.0, < 7.9.0 | 7.9.0 |
nl.basjes.parse.useragent:yauaa-elasticsearchMaven | >= 7.0.0, < 7.9.0 | 7.9.0 |
nl.basjes.parse.useragent:yauaa-elasticsearch-8Maven | >= 7.0.0, < 7.9.0 | 7.9.0 |
nl.basjes.parse.useragent:yauaa-flinkMaven | >= 7.0.0, < 7.9.0 | 7.9.0 |
nl.basjes.parse.useragent:yauaa-flink-tableMaven | >= 7.0.0, < 7.9.0 | 7.9.0 |
nl.basjes.parse.useragent:yauaa-hiveMaven | >= 7.0.0, < 7.9.0 | 7.9.0 |
nl.basjes.parse.useragent:yauaa-logparserMaven | >= 7.0.0, < 7.9.0 | 7.9.0 |
nl.basjes.parse.useragent:yauaa-snowflakeMaven | >= 7.0.0, < 7.9.0 | 7.9.0 |
nl.basjes.parse.useragent:yauaa-trinoMaven | >= 7.0.0, < 7.9.0 | 7.9.0 |
Affected products
13- ghsa-coords12 versionspkg:maven/nl.basjes.parse.useragent/yauaapkg:maven/nl.basjes.parse.useragent/yauaa-beampkg:maven/nl.basjes.parse.useragent/yauaa-beam-sqlpkg:maven/nl.basjes.parse.useragent/yauaa-drillpkg:maven/nl.basjes.parse.useragent/yauaa-elasticsearchpkg:maven/nl.basjes.parse.useragent/yauaa-elasticsearch-8pkg:maven/nl.basjes.parse.useragent/yauaa-flinkpkg:maven/nl.basjes.parse.useragent/yauaa-flink-tablepkg:maven/nl.basjes.parse.useragent/yauaa-hivepkg:maven/nl.basjes.parse.useragent/yauaa-logparserpkg:maven/nl.basjes.parse.useragent/yauaa-snowflakepkg:maven/nl.basjes.parse.useragent/yauaa-trino
>= 7.0.0, < 7.9.0+ 11 more
- (no CPE)range: >= 7.0.0, < 7.9.0
- (no CPE)range: >= 7.0.0, < 7.9.0
- (no CPE)range: >= 7.0.0, < 7.9.0
- (no CPE)range: >= 7.0.0, < 7.9.0
- (no CPE)range: >= 7.0.0, < 7.9.0
- (no CPE)range: >= 7.0.0, < 7.9.0
- (no CPE)range: >= 7.0.0, < 7.9.0
- (no CPE)range: >= 7.0.0, < 7.9.0
- (no CPE)range: >= 7.0.0, < 7.9.0
- (no CPE)range: >= 7.0.0, < 7.9.0
- (no CPE)range: >= 7.0.0, < 7.9.0
- (no CPE)range: >= 7.0.0, < 7.9.0
- Range: >= 7.0.0, < 7.9.0
Patches
13017a866e2cffeat: Better clienthint handling, ignore Kamo tags.
10 files changed · +1849 −542
analyzer/src/main/java/nl/basjes/parse/useragent/clienthints/ClientHintsAnalyzer.java+140 −134 modified@@ -297,156 +297,162 @@ public void improveOperatingSystem(MutableUserAgent userAgent, ClientHints clien } } - private static final Set<String> CHROMIUM = new HashSet<>(); - static { - CHROMIUM.add("Chromium"); - CHROMIUM.add("Chrome"); + private boolean newVersionIsBetter(MutableAgentField currentVersion, String version) { + boolean currentVersionHasMinor = currentVersion.getValue().contains("."); + boolean versionHasMinor = version.contains("."); + return currentVersion.isDefaultValue() || + (!versionHasMinor && !currentVersionHasMinor) || + (versionHasMinor); } public void improveLayoutEngineAndAgentInfo(MutableUserAgent userAgent, ClientHints clientHints) { // Improve the Agent info. - List<Brand> fullVersionList = clientHints.getFullVersionList(); - if (fullVersionList != null && !fullVersionList.isEmpty()) { - String version; - String majorVersion; - - String agentName; - for (Brand brand : fullVersionList) { - String[] versionSplits; - switch (brand.getName()) { - case "Chromium": - version = brand.getVersion(); - versionSplits = version.split("\\."); - if (versionSplits.length == 4) { - if (!"0".equals(versionSplits[1])) { - continue; - } - } - version = versionSplits[0] + '.' + versionSplits[1]; - majorVersion = versionSplits[0]; - overrideValue(userAgent.get(LAYOUT_ENGINE_NAME), "Blink"); - overrideValue(userAgent.get(LAYOUT_ENGINE_VERSION), version); - overrideValue(userAgent.get(LAYOUT_ENGINE_NAME_VERSION), "Blink " + version); - overrideValue(userAgent.get(LAYOUT_ENGINE_VERSION_MAJOR), majorVersion); - overrideValue(userAgent.get(LAYOUT_ENGINE_NAME_VERSION_MAJOR), "Blink "+ majorVersion); - - if (fullVersionList.size() == 1) { // NOTE: The grease was filtered out ! - // So we have "Chromium" and not "Chrome" or "Edge" or something else - if (CHROMIUM.contains(userAgent.getValue(AGENT_NAME))) { - agentName = "Chromium"; - version = brand.getVersion(); - overrideValue(userAgent.get(AGENT_NAME), agentName); - overrideValue(userAgent.get(AGENT_VERSION), version); - overrideValue(userAgent.get(AGENT_NAME_VERSION), agentName + " " + version); - overrideValue(userAgent.get(AGENT_VERSION_MAJOR), majorVersion); - overrideValue(userAgent.get(AGENT_NAME_VERSION_MAJOR), agentName + " " + majorVersion); - } - } - - break; - - case "Google Chrome": - case "Chrome": - agentName = "Chrome"; - version = brand.getVersion(); - versionSplits = version.split("\\."); - if (versionSplits.length == 4) { - if (!"0".equals(versionSplits[1])) { - continue; - } - } - majorVersion = versionSplits[0]; - - overrideValue(userAgent.get(AGENT_NAME), agentName); - overrideValue(userAgent.get(AGENT_VERSION), version); - overrideValue(userAgent.get(AGENT_NAME_VERSION), agentName + " " + version); - overrideValue(userAgent.get(AGENT_VERSION_MAJOR), majorVersion); - overrideValue(userAgent.get(AGENT_NAME_VERSION_MAJOR), agentName + " " + majorVersion); - break; - - case "Microsoft Edge": - case "Edge": - agentName = "Edge"; - version = brand.getVersion(); - versionSplits = version.split("\\."); - if (versionSplits.length == 4) { - if (!"0".equals(versionSplits[1])) { - continue; - } - } - majorVersion = versionSplits[0]; - - overrideValue(userAgent.get(AGENT_NAME), agentName); - overrideValue(userAgent.get(AGENT_VERSION), version); - overrideValue(userAgent.get(AGENT_NAME_VERSION), agentName + " " + version); - overrideValue(userAgent.get(AGENT_VERSION_MAJOR), majorVersion); - overrideValue(userAgent.get(AGENT_NAME_VERSION_MAJOR), agentName + " " + majorVersion); - break; - default: - // Ignore - } - } - } else { - // No full versions available, only the major versions - ArrayList<Brand> brands = clientHints.getBrands(); - if (brands == null) { - return; - } + boolean usingFullVersions = true; + List<Brand> versionList = clientHints.getFullVersionList(); + if (versionList == null) { + versionList = clientHints.getBrands(); + usingFullVersions = false; + } - if (brands.size() == 1) { // NOTE: The grease was filtered out ! - Brand brand = brands.get(0); - if ("Chromium".equals(brand.getName())) { - // So we have "Chromium" and not "Chrome", "Edge", "Opera" or something else - String version = brand.getVersion(); - // NOTE: No full version available, only the major version - // We trust the Client hints more than the version we derived from the User-Agent. + if (versionList == null) { + return; // Nothing to do + } + + final Map<String, Brand> versionMap = new TreeMap<>(); + versionList.forEach(v -> versionMap.put(v.getName(), v)); - overrideValue(userAgent.get(LAYOUT_ENGINE_NAME), "Blink"); - overrideValue(userAgent.get(LAYOUT_ENGINE_VERSION), version); - overrideValue(userAgent.get(LAYOUT_ENGINE_NAME_VERSION), "Blink " + version); - overrideValue(userAgent.get(LAYOUT_ENGINE_VERSION_MAJOR), version); - overrideValue(userAgent.get(LAYOUT_ENGINE_NAME_VERSION_MAJOR), "Blink " + version); + // ======================== + Brand chromium = versionMap.get("Chromium"); + if (chromium != null) { + String version = chromium.getVersion(); + String[] versionSplits = version.split("\\."); + String majorVersion = versionSplits[0]; - // So we have "Chromium" and not "Chrome" or "Edge" or something else - if (CHROMIUM.contains(userAgent.getValue(AGENT_NAME))) { + // Work around the major in minor hack/feature of Chrome ~v99 + if (versionSplits.length==4 && !"0".equals(versionSplits[1])) { + version = versionSplits[1] + ".0." + versionSplits[2] + '.' + versionSplits[3]; + majorVersion = versionSplits[1]; + } + + // ==== Blink ? + MutableAgentField engineName = userAgent.get(LAYOUT_ENGINE_NAME); + if (engineName.isDefaultValue() || !"Blink".equals(engineName.getValue())) { + overrideValue(engineName, "Blink"); + } + MutableAgentField engineVersion = userAgent.get(LAYOUT_ENGINE_VERSION); + MutableAgentField engineMajorVersion = userAgent.get(LAYOUT_ENGINE_VERSION_MAJOR); + String blinkVersion = majorVersion; + if (versionSplits.length>1) { + blinkVersion = majorVersion + ".0"; + } + if (newVersionIsBetter(engineVersion, blinkVersion)) { + overrideValue(engineVersion, blinkVersion); + overrideValue(engineMajorVersion, majorVersion); + } + + overrideValue(userAgent.get(LAYOUT_ENGINE_NAME_VERSION), engineName.getValue() + " " + engineVersion.getValue()); + overrideValue(userAgent.get(LAYOUT_ENGINE_NAME_VERSION_MAJOR), engineName.getValue() + " " + engineMajorVersion.getValue()); + + // ===== Chromium browser? + if (versionList.size() == 1) { // NOTE: The grease was filtered out ! + // So we have "Chromium" and not "Chrome" or "Edge" or something else + MutableAgentField currentVersion = userAgent.get(AGENT_VERSION); + if (newVersionIsBetter(currentVersion, version)) { + overrideValue(userAgent.get(AGENT_NAME), "Chromium"); + overrideValue(userAgent.get(AGENT_VERSION), version); + overrideValue(userAgent.get(AGENT_NAME_VERSION), "Chromium " + version); + overrideValue(userAgent.get(AGENT_VERSION_MAJOR), majorVersion); + overrideValue(userAgent.get(AGENT_NAME_VERSION_MAJOR), "Chromium " + majorVersion); + } else { + // We ONLY update the name of the agent to Chromium in some cases + if ("Chrome".equals(userAgent.getValue(AGENT_NAME))) { overrideValue(userAgent.get(AGENT_NAME), "Chromium"); - overrideValue(userAgent.get(AGENT_VERSION), version); - overrideValue(userAgent.get(AGENT_NAME_VERSION), "Chromium " + version); - overrideValue(userAgent.get(AGENT_VERSION_MAJOR), version); - overrideValue(userAgent.get(AGENT_NAME_VERSION_MAJOR), "Chromium " + version); + overrideValue(userAgent.get(AGENT_NAME_VERSION), "Chromium " + currentVersion.getValue()); + + String currentMajorVersion = userAgent.getValue(AGENT_VERSION_MAJOR); + overrideValue(userAgent.get(AGENT_NAME_VERSION_MAJOR), "Chromium " + currentMajorVersion); } } + return; } + } + versionMap.remove("Chromium"); - for (Brand brand : brands) { - String[] versionSplits; - switch (brand.getName()) { - case "Microsoft Edge": - case "Edge": - MutableAgentField agentName = userAgent.get(AGENT_NAME); - if (agentName.getValue().equals("Edge")) { - continue; - } - String version = brand.getVersion(); - versionSplits = version.split("\\."); - if (versionSplits.length == 4) { - if (!"0".equals(versionSplits[1])) { - continue; - } - } - String majorVersion = versionSplits[0]; - - overrideValue(agentName, "Edge"); - overrideValue(userAgent.get(AGENT_VERSION), version); - overrideValue(userAgent.get(AGENT_NAME_VERSION), "Edge " + version); - overrideValue(userAgent.get(AGENT_VERSION_MAJOR), majorVersion); - overrideValue(userAgent.get(AGENT_NAME_VERSION_MAJOR), "Edge " + majorVersion); - break; - default: + // ======================== + Brand chrome = versionMap.get("Chrome"); + if (chrome == null) { + chrome = versionMap.get("Google Chrome"); + } + if (chrome != null) { + if (versionMap.size() == 1) { + // So we have "Chrome" and nothing else + MutableAgentField currentVersion = userAgent.get(AGENT_VERSION); + String version = chrome.getVersion(); + String[] versionSplits = version.split("\\."); + String majorVersion = versionSplits[0]; + + // Work around the major in minor hack/feature of Chrome ~v99 + // 99.100.x.y is really 100.0.x.y + if (versionSplits.length==4 && !"0".equals(versionSplits[1])) { + version = versionSplits[1] + ".0." + versionSplits[2] + '.' + versionSplits[3]; + majorVersion = versionSplits[1]; + } + +// if (currentVersion.isDefaultValue() || +// (!currentVersion.getValue().contains(".") && usingFullVersions)) { + if (newVersionIsBetter(currentVersion, version)) { + overrideValue(userAgent.get(AGENT_NAME), "Chrome"); + overrideValue(currentVersion, version); + overrideValue(userAgent.get(AGENT_NAME_VERSION), "Chrome " + version); + overrideValue(userAgent.get(AGENT_VERSION_MAJOR), majorVersion); + overrideValue(userAgent.get(AGENT_NAME_VERSION_MAJOR), "Chrome " + majorVersion); + return; } } } + versionMap.remove("Chrome"); + versionMap.remove("Google Chrome"); + // ======================== + + // If anything remains then (we think) THAT is the truth... + for (Map.Entry<String, Brand> brandEntry : versionMap.entrySet()) { + Brand brand = brandEntry.getValue(); + String rawBrandName = brand.getName(); + String agentName = rawBrandName; + + // Sanitize the common yet unwanted names + switch (rawBrandName) { + case "Microsoft Edge": + agentName = "Edge"; + break; + default: + } + + MutableAgentField agentNameField = userAgent.get(AGENT_NAME); + MutableAgentField agentVersionField = userAgent.get(AGENT_VERSION); + + switch (agentName) { + case "Opera": + // There is a bug in Opera which puts the wrong version in the client hints. + break; + + default: + // Only do this if the existing in only a major version, and we have received full versions + if (agentVersionField.getValue().contains(".") && !usingFullVersions){ + continue; + } + // In all other cases the client hint is expected to be "more" true. + String version = brand.getVersion(); + String majorVersion = version.split("\\.")[0]; + overrideValue(agentNameField, agentName); + overrideValue(userAgent.get(AGENT_VERSION), version); + overrideValue(userAgent.get(AGENT_NAME_VERSION), agentName + " " + version); + overrideValue(userAgent.get(AGENT_VERSION_MAJOR), majorVersion); + overrideValue(userAgent.get(AGENT_NAME_VERSION_MAJOR), agentName + " " + majorVersion); + break; + } + } } // In the above calculations there are fields that require additional input fields.
analyzer/src/main/resources/UserAgents/Anonymize-Kamo.yaml+1455 −0 added@@ -0,0 +1,1455 @@ +config: + +# Tags used by https://www.ccleaner.com/kamo that must be ignored +- set: + name: 'KamoAgents' + values: + - 'Agency' + - 'AtContent' + - 'Config' + - 'GLS' + - 'Herring' + - 'LikeWise' + - 'OpenWave' + - 'Trailer' + - 'Unique' + - 'Viewer' + + +- test: + input: + User-Agent : 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.0.0 Safari/537.36 Trailer/98.3.7512.13' + Sec-Ch-Ua : '" Not A;Brand";v="99", "Chromium";v="100", "Google Chrome";v="100"' + Sec-Ch-Ua-Mobile : '?0' + Sec-Ch-Ua-Platform : '"Windows"' + expected: + DeviceClass : 'Desktop' + DeviceName : 'Desktop' + DeviceBrand : 'Unknown' + DeviceCpu : 'Intel x86_64' + DeviceCpuBits : '64' + OperatingSystemClass : 'Desktop' + OperatingSystemName : 'Windows NT' + OperatingSystemVersion : '??' + OperatingSystemVersionMajor : '??' + OperatingSystemNameVersion : 'Windows NT ??' + OperatingSystemNameVersionMajor : 'Windows NT ??' + LayoutEngineClass : 'Browser' + LayoutEngineName : 'Blink' + LayoutEngineVersion : '100' + LayoutEngineVersionMajor : '100' + LayoutEngineNameVersion : 'Blink 100' + LayoutEngineNameVersionMajor : 'Blink 100' + AgentClass : 'Browser' + AgentName : 'Chrome' + AgentVersion : '100' + AgentVersionMajor : '100' + AgentNameVersion : 'Chrome 100' + AgentNameVersionMajor : 'Chrome 100' + UAClientHintBrands_0_Brand : 'Chromium' + UAClientHintBrands_0_Version : '100' + UAClientHintBrands_1_Brand : 'Google Chrome' + UAClientHintBrands_1_Version : '100' + UAClientHintMobile : 'false' + UAClientHintPlatform : 'Windows' + + +- test: + input: + User-Agent : 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.0.0 Safari/537.36 Trailer/98.3.7512.13' + Sec-Ch-Ua : '" Not A;Brand";v="99", "Chromium";v="100", "Google Chrome";v="100"' + Sec-Ch-Ua-Arch : '"x86"' + Sec-Ch-Ua-Bitness : '"64"' + Sec-Ch-Ua-Full-Version : '"100.0.4896.127"' + Sec-Ch-Ua-Full-Version-List : '" Not A;Brand";v="99.0.0.0", "Chromium";v="100.0.4896.127", "Google Chrome";v="100.0.4896.127"' + Sec-Ch-Ua-Mobile : '?0' + Sec-Ch-Ua-Model : '""' + Sec-Ch-Ua-Platform : '"Windows"' + Sec-Ch-Ua-Platform-Version : '"0.1.0"' + Sec-Ch-Ua-Wow64 : '?0' + expected: + DeviceClass : 'Desktop' + DeviceName : 'Desktop' + DeviceBrand : 'Unknown' + DeviceCpu : 'Intel x86_64' + DeviceCpuBits : '64' + OperatingSystemClass : 'Desktop' + OperatingSystemName : 'Windows NT' + OperatingSystemVersion : '7' + OperatingSystemVersionMajor : '7' + OperatingSystemNameVersion : 'Windows 7' + OperatingSystemNameVersionMajor : 'Windows 7' + LayoutEngineClass : 'Browser' + LayoutEngineName : 'Blink' + LayoutEngineVersion : '100.0' + LayoutEngineVersionMajor : '100' + LayoutEngineNameVersion : 'Blink 100.0' + LayoutEngineNameVersionMajor : 'Blink 100' + AgentClass : 'Browser' + AgentName : 'Chrome' + AgentVersion : '100.0.4896.127' + AgentVersionMajor : '100' + AgentNameVersion : 'Chrome 100.0.4896.127' + AgentNameVersionMajor : 'Chrome 100' + + UAClientHintArchitecture : 'x86' + UAClientHintBitness : '64' + UAClientHintBrands_0_Brand : 'Chromium' + UAClientHintBrands_0_Version : '100' + UAClientHintBrands_1_Brand : 'Google Chrome' + UAClientHintBrands_1_Version : '100' + UAClientHintFullVersion : '100.0.4896.127' + UAClientHintFullVersionList_0_Brand : 'Chromium' + UAClientHintFullVersionList_0_Version : '100.0.4896.127' + UAClientHintFullVersionList_1_Brand : 'Google Chrome' + UAClientHintFullVersionList_1_Version : '100.0.4896.127' + UAClientHintMobile : 'false' + UAClientHintPlatform : 'Windows' + UAClientHintPlatformVersion : '0.1.0' + UAClientHintWow64 : 'false' + + +- test: + input: + User-Agent : 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/108.0.0.0 Safari/537.36 GLS/93.10.5259.60' + Sec-Ch-Ua : '"Not?A_Brand";v="8", "Chromium";v="108", "Google Chrome";v="108"' + Sec-Ch-Ua-Arch : '"x86"' + Sec-Ch-Ua-Bitness : '"64"' + Sec-Ch-Ua-Full-Version : '"108.0.5359.72"' + Sec-Ch-Ua-Full-Version-List : '"Not?A_Brand";v="8.0.0.0", "Chromium";v="108.0.5359.72", "Google Chrome";v="108.0.5359.72"' + Sec-Ch-Ua-Mobile : '?0' + Sec-Ch-Ua-Model : '""' + Sec-Ch-Ua-Platform : '"Windows"' + Sec-Ch-Ua-Platform-Version : '"0.1.0"' + Sec-Ch-Ua-Wow64 : '?0' + expected: + DeviceClass : 'Desktop' + DeviceName : 'Desktop' + DeviceBrand : 'Unknown' + DeviceCpu : 'Intel x86_64' + DeviceCpuBits : '64' + OperatingSystemClass : 'Desktop' + OperatingSystemName : 'Windows NT' + OperatingSystemVersion : '7' + OperatingSystemVersionMajor : '7' + OperatingSystemNameVersion : 'Windows 7' + OperatingSystemNameVersionMajor : 'Windows 7' + LayoutEngineClass : 'Browser' + LayoutEngineName : 'Blink' + LayoutEngineVersion : '108.0' + LayoutEngineVersionMajor : '108' + LayoutEngineNameVersion : 'Blink 108.0' + LayoutEngineNameVersionMajor : 'Blink 108' + AgentClass : 'Browser' + AgentName : 'Chrome' + AgentVersion : '108.0.5359.72' + AgentVersionMajor : '108' + AgentNameVersion : 'Chrome 108.0.5359.72' + AgentNameVersionMajor : 'Chrome 108' + + UAClientHintArchitecture : 'x86' + UAClientHintBitness : '64' + UAClientHintBrands_0_Brand : 'Chromium' + UAClientHintBrands_0_Version : '108' + UAClientHintBrands_1_Brand : 'Google Chrome' + UAClientHintBrands_1_Version : '108' + UAClientHintFullVersion : '108.0.5359.72' + UAClientHintFullVersionList_0_Brand : 'Chromium' + UAClientHintFullVersionList_0_Version : '108.0.5359.72' + UAClientHintFullVersionList_1_Brand : 'Google Chrome' + UAClientHintFullVersionList_1_Version : '108.0.5359.72' + UAClientHintMobile : 'false' + UAClientHintPlatform : 'Windows' + UAClientHintPlatformVersion : '0.1.0' + UAClientHintWow64 : 'false' + + +- test: + input: + User-Agent : 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/108.0.0.0 Safari/537.36 LikeWise/94.6.5565.66' + Sec-Ch-Ua : '"Not?A_Brand";v="8", "Chromium";v="108", "Google Chrome";v="108"' + Sec-Ch-Ua-Arch : '"x86"' + Sec-Ch-Ua-Bitness : '"64"' + Sec-Ch-Ua-Full-Version : '"108.0.5359.72"' + Sec-Ch-Ua-Full-Version-List : '"Not?A_Brand";v="8.0.0.0", "Chromium";v="108.0.5359.72", "Google Chrome";v="108.0.5359.72"' + Sec-Ch-Ua-Mobile : '?0' + Sec-Ch-Ua-Model : '""' + Sec-Ch-Ua-Platform : '"Windows"' + Sec-Ch-Ua-Platform-Version : '"0.1.0"' + Sec-Ch-Ua-Wow64 : '?0' + expected: + DeviceClass : 'Desktop' + DeviceName : 'Desktop' + DeviceBrand : 'Unknown' + DeviceCpu : 'Intel x86_64' + DeviceCpuBits : '64' + OperatingSystemClass : 'Desktop' + OperatingSystemName : 'Windows NT' + OperatingSystemVersion : '7' + OperatingSystemVersionMajor : '7' + OperatingSystemNameVersion : 'Windows 7' + OperatingSystemNameVersionMajor : 'Windows 7' + LayoutEngineClass : 'Browser' + LayoutEngineName : 'Blink' + LayoutEngineVersion : '108.0' + LayoutEngineVersionMajor : '108' + LayoutEngineNameVersion : 'Blink 108.0' + LayoutEngineNameVersionMajor : 'Blink 108' + AgentClass : 'Browser' + AgentName : 'Chrome' + AgentVersion : '108.0.5359.72' + AgentVersionMajor : '108' + AgentNameVersion : 'Chrome 108.0.5359.72' + AgentNameVersionMajor : 'Chrome 108' + + UAClientHintArchitecture : 'x86' + UAClientHintBitness : '64' + UAClientHintBrands_0_Brand : 'Chromium' + UAClientHintBrands_0_Version : '108' + UAClientHintBrands_1_Brand : 'Google Chrome' + UAClientHintBrands_1_Version : '108' + UAClientHintFullVersion : '108.0.5359.72' + UAClientHintFullVersionList_0_Brand : 'Chromium' + UAClientHintFullVersionList_0_Version : '108.0.5359.72' + UAClientHintFullVersionList_1_Brand : 'Google Chrome' + UAClientHintFullVersionList_1_Version : '108.0.5359.72' + UAClientHintMobile : 'false' + UAClientHintPlatform : 'Windows' + UAClientHintPlatformVersion : '0.1.0' + UAClientHintWow64 : 'false' + + +- test: + input: + User-Agent : 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/108.0.0.0 Safari/537.36 LikeWise/95.6.7405.6' + Sec-Ch-Ua : '"Not?A_Brand";v="8", "Chromium";v="108", "Google Chrome";v="108"' + Sec-Ch-Ua-Arch : '"x86"' + Sec-Ch-Ua-Bitness : '"64"' + Sec-Ch-Ua-Full-Version : '"108.0.5359.72"' + Sec-Ch-Ua-Full-Version-List : '"Not?A_Brand";v="8.0.0.0", "Chromium";v="108.0.5359.72", "Google Chrome";v="108.0.5359.72"' + Sec-Ch-Ua-Mobile : '?0' + Sec-Ch-Ua-Model : '""' + Sec-Ch-Ua-Platform : '"Windows"' + Sec-Ch-Ua-Platform-Version : '"0.1.0"' + Sec-Ch-Ua-Wow64 : '?0' + expected: + DeviceClass : 'Desktop' + DeviceName : 'Desktop' + DeviceBrand : 'Unknown' + DeviceCpu : 'Intel x86_64' + DeviceCpuBits : '64' + OperatingSystemClass : 'Desktop' + OperatingSystemName : 'Windows NT' + OperatingSystemVersion : '7' + OperatingSystemVersionMajor : '7' + OperatingSystemNameVersion : 'Windows 7' + OperatingSystemNameVersionMajor : 'Windows 7' + LayoutEngineClass : 'Browser' + LayoutEngineName : 'Blink' + LayoutEngineVersion : '108.0' + LayoutEngineVersionMajor : '108' + LayoutEngineNameVersion : 'Blink 108.0' + LayoutEngineNameVersionMajor : 'Blink 108' + AgentClass : 'Browser' + AgentName : 'Chrome' + AgentVersion : '108.0.5359.72' + AgentVersionMajor : '108' + AgentNameVersion : 'Chrome 108.0.5359.72' + AgentNameVersionMajor : 'Chrome 108' + + UAClientHintArchitecture : 'x86' + UAClientHintBitness : '64' + UAClientHintBrands_0_Brand : 'Chromium' + UAClientHintBrands_0_Version : '108' + UAClientHintBrands_1_Brand : 'Google Chrome' + UAClientHintBrands_1_Version : '108' + UAClientHintFullVersion : '108.0.5359.72' + UAClientHintFullVersionList_0_Brand : 'Chromium' + UAClientHintFullVersionList_0_Version : '108.0.5359.72' + UAClientHintFullVersionList_1_Brand : 'Google Chrome' + UAClientHintFullVersionList_1_Version : '108.0.5359.72' + UAClientHintMobile : 'false' + UAClientHintPlatform : 'Windows' + UAClientHintPlatformVersion : '0.1.0' + UAClientHintWow64 : 'false' + + +- test: + input: + User-Agent : 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/108.0.0.0 Safari/537.36 OpenWave/98.4.3033.34' + Sec-Ch-Ua : '"Not?A_Brand";v="8", "Chromium";v="108", "Google Chrome";v="108"' + Sec-Ch-Ua-Arch : '"x86"' + Sec-Ch-Ua-Bitness : '"64"' + Sec-Ch-Ua-Full-Version : '"108.0.5359.72"' + Sec-Ch-Ua-Full-Version-List : '"Not?A_Brand";v="8.0.0.0", "Chromium";v="108.0.5359.72", "Google Chrome";v="108.0.5359.72"' + Sec-Ch-Ua-Mobile : '?0' + Sec-Ch-Ua-Model : '""' + Sec-Ch-Ua-Platform : '"Windows"' + Sec-Ch-Ua-Platform-Version : '"0.1.0"' + Sec-Ch-Ua-Wow64 : '?0' + expected: + DeviceClass : 'Desktop' + DeviceName : 'Desktop' + DeviceBrand : 'Unknown' + DeviceCpu : 'Intel x86_64' + DeviceCpuBits : '64' + OperatingSystemClass : 'Desktop' + OperatingSystemName : 'Windows NT' + OperatingSystemVersion : '7' + OperatingSystemVersionMajor : '7' + OperatingSystemNameVersion : 'Windows 7' + OperatingSystemNameVersionMajor : 'Windows 7' + LayoutEngineClass : 'Browser' + LayoutEngineName : 'Blink' + LayoutEngineVersion : '108.0' + LayoutEngineVersionMajor : '108' + LayoutEngineNameVersion : 'Blink 108.0' + LayoutEngineNameVersionMajor : 'Blink 108' + AgentClass : 'Browser' + AgentName : 'Chrome' + AgentVersion : '108.0.5359.72' + AgentVersionMajor : '108' + AgentNameVersion : 'Chrome 108.0.5359.72' + AgentNameVersionMajor : 'Chrome 108' + + UAClientHintArchitecture : 'x86' + UAClientHintBitness : '64' + UAClientHintBrands_0_Brand : 'Chromium' + UAClientHintBrands_0_Version : '108' + UAClientHintBrands_1_Brand : 'Google Chrome' + UAClientHintBrands_1_Version : '108' + UAClientHintFullVersion : '108.0.5359.72' + UAClientHintFullVersionList_0_Brand : 'Chromium' + UAClientHintFullVersionList_0_Version : '108.0.5359.72' + UAClientHintFullVersionList_1_Brand : 'Google Chrome' + UAClientHintFullVersionList_1_Version : '108.0.5359.72' + UAClientHintMobile : 'false' + UAClientHintPlatform : 'Windows' + UAClientHintPlatformVersion : '0.1.0' + UAClientHintWow64 : 'false' + + +- test: + input: + User-Agent : 'Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko GLS/93.10.5259.60' + expected: + DeviceClass : 'Desktop' + DeviceName : 'Desktop' + DeviceBrand : 'Unknown' + DeviceCpu : 'Intel x86_64' + DeviceCpuBits : '64' + OperatingSystemClass : 'Desktop' + OperatingSystemName : 'Windows NT' + OperatingSystemVersion : '7' + OperatingSystemVersionMajor : '7' + OperatingSystemNameVersion : 'Windows 7' + OperatingSystemNameVersionMajor : 'Windows 7' + LayoutEngineClass : 'Browser' + LayoutEngineName : 'Trident' + LayoutEngineVersion : '7.0' + LayoutEngineVersionMajor : '7' + LayoutEngineNameVersion : 'Trident 7.0' + LayoutEngineNameVersionMajor : 'Trident 7' + AgentClass : 'Browser' + AgentName : 'Internet Explorer' + AgentVersion : '11.0' + AgentVersionMajor : '11' + AgentNameVersion : 'Internet Explorer 11.0' + AgentNameVersionMajor : 'Internet Explorer 11' + + +- test: + input: + User-Agent : 'Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko LikeWise/94.6.5565.66' + expected: + DeviceClass : 'Desktop' + DeviceName : 'Desktop' + DeviceBrand : 'Unknown' + DeviceCpu : 'Intel x86_64' + DeviceCpuBits : '64' + OperatingSystemClass : 'Desktop' + OperatingSystemName : 'Windows NT' + OperatingSystemVersion : '7' + OperatingSystemVersionMajor : '7' + OperatingSystemNameVersion : 'Windows 7' + OperatingSystemNameVersionMajor : 'Windows 7' + LayoutEngineClass : 'Browser' + LayoutEngineName : 'Trident' + LayoutEngineVersion : '7.0' + LayoutEngineVersionMajor : '7' + LayoutEngineNameVersion : 'Trident 7.0' + LayoutEngineNameVersionMajor : 'Trident 7' + AgentClass : 'Browser' + AgentName : 'Internet Explorer' + AgentVersion : '11.0' + AgentVersionMajor : '11' + AgentNameVersion : 'Internet Explorer 11.0' + AgentNameVersionMajor : 'Internet Explorer 11' + + +- test: + input: + User-Agent : 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/107.0.0.0 Safari/537.36' + expected: + DeviceClass : 'Desktop' + DeviceName : 'Desktop' + DeviceBrand : 'Unknown' + DeviceCpu : 'Intel x86_64' + DeviceCpuBits : '64' + OperatingSystemClass : 'Desktop' + OperatingSystemName : 'Windows NT' + OperatingSystemVersion : '7' + OperatingSystemVersionMajor : '7' + OperatingSystemNameVersion : 'Windows 7' + OperatingSystemNameVersionMajor : 'Windows 7' + LayoutEngineClass : 'Browser' + LayoutEngineName : 'Blink' + LayoutEngineVersion : '107' + LayoutEngineVersionMajor : '107' + LayoutEngineNameVersion : 'Blink 107' + LayoutEngineNameVersionMajor : 'Blink 107' + AgentClass : 'Browser' + AgentName : 'Chrome' + AgentVersion : '107' + AgentVersionMajor : '107' + AgentNameVersion : 'Chrome 107' + AgentNameVersionMajor : 'Chrome 107' + + +- test: + input: + User-Agent : 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/107.0.0.0 Safari/537.36 Edg/107.0.1418.62' + Sec-Ch-Ua : '"Microsoft Edge";v="107", "Chromium";v="107", "Not=A?Brand";v="24"' + Sec-Ch-Ua-Arch : '"x86"' + Sec-Ch-Ua-Bitness : '"64"' + Sec-Ch-Ua-Full-Version : '"107.0.1418.62"' + Sec-Ch-Ua-Full-Version-List : '"Microsoft Edge";v="107.0.1418.62", "Chromium";v="107.0.5304.150", "Not=A?Brand";v="24.0.0.0"' + Sec-Ch-Ua-Mobile : '?0' + Sec-Ch-Ua-Model : '""' + Sec-Ch-Ua-Platform : '"Windows"' + Sec-Ch-Ua-Platform-Version : '"0.1.0"' + Sec-Ch-Ua-Wow64 : '?0' + expected: + DeviceClass : 'Desktop' + DeviceName : 'Desktop' + DeviceBrand : 'Unknown' + DeviceCpu : 'Intel x86_64' + DeviceCpuBits : '64' + OperatingSystemClass : 'Desktop' + OperatingSystemName : 'Windows NT' + OperatingSystemVersion : '7' + OperatingSystemVersionMajor : '7' + OperatingSystemNameVersion : 'Windows 7' + OperatingSystemNameVersionMajor : 'Windows 7' + LayoutEngineClass : 'Browser' + LayoutEngineName : 'Blink' + LayoutEngineVersion : '107.0' + LayoutEngineVersionMajor : '107' + LayoutEngineNameVersion : 'Blink 107.0' + LayoutEngineNameVersionMajor : 'Blink 107' + AgentClass : 'Browser' + AgentName : 'Edge' + AgentVersion : '107.0.1418.62' + AgentVersionMajor : '107' + AgentNameVersion : 'Edge 107.0.1418.62' + AgentNameVersionMajor : 'Edge 107' + + UAClientHintArchitecture : 'x86' + UAClientHintBitness : '64' + UAClientHintBrands_0_Brand : 'Microsoft Edge' + UAClientHintBrands_0_Version : '107' + UAClientHintBrands_1_Brand : 'Chromium' + UAClientHintBrands_1_Version : '107' + UAClientHintFullVersion : '107.0.1418.62' + UAClientHintFullVersionList_0_Brand : 'Microsoft Edge' + UAClientHintFullVersionList_0_Version : '107.0.1418.62' + UAClientHintFullVersionList_1_Brand : 'Chromium' + UAClientHintFullVersionList_1_Version : '107.0.5304.150' + UAClientHintMobile : 'false' + UAClientHintPlatform : 'Windows' + UAClientHintPlatformVersion : '0.1.0' + UAClientHintWow64 : 'false' + + +- test: + input: + User-Agent : 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/107.0.0.0 Safari/537.36 Edg/107.0.1418.62 GLS/93.10.5259.60' + Sec-Ch-Ua : '"Microsoft Edge";v="107", "Chromium";v="107", "Not=A?Brand";v="24"' + Sec-Ch-Ua-Arch : '"x86"' + Sec-Ch-Ua-Bitness : '"64"' + Sec-Ch-Ua-Full-Version : '"107.0.1418.62"' + Sec-Ch-Ua-Full-Version-List : '"Microsoft Edge";v="107.0.1418.62", "Chromium";v="107.0.5304.150", "Not=A?Brand";v="24.0.0.0"' + Sec-Ch-Ua-Mobile : '?0' + Sec-Ch-Ua-Model : '""' + Sec-Ch-Ua-Platform : '"Windows"' + Sec-Ch-Ua-Platform-Version : '"0.1.0"' + Sec-Ch-Ua-Wow64 : '?0' + expected: + DeviceClass : 'Desktop' + DeviceName : 'Desktop' + DeviceBrand : 'Unknown' + DeviceCpu : 'Intel x86_64' + DeviceCpuBits : '64' + OperatingSystemClass : 'Desktop' + OperatingSystemName : 'Windows NT' + OperatingSystemVersion : '7' + OperatingSystemVersionMajor : '7' + OperatingSystemNameVersion : 'Windows 7' + OperatingSystemNameVersionMajor : 'Windows 7' + LayoutEngineClass : 'Browser' + LayoutEngineName : 'Blink' + LayoutEngineVersion : '107.0' + LayoutEngineVersionMajor : '107' + LayoutEngineNameVersion : 'Blink 107.0' + LayoutEngineNameVersionMajor : 'Blink 107' + AgentClass : 'Browser' + AgentName : 'Edge' + AgentVersion : '107.0.1418.62' + AgentVersionMajor : '107' + AgentNameVersion : 'Edge 107.0.1418.62' + AgentNameVersionMajor : 'Edge 107' + + UAClientHintArchitecture : 'x86' + UAClientHintBitness : '64' + UAClientHintBrands_0_Brand : 'Microsoft Edge' + UAClientHintBrands_0_Version : '107' + UAClientHintBrands_1_Brand : 'Chromium' + UAClientHintBrands_1_Version : '107' + UAClientHintFullVersion : '107.0.1418.62' + UAClientHintFullVersionList_0_Brand : 'Microsoft Edge' + UAClientHintFullVersionList_0_Version : '107.0.1418.62' + UAClientHintFullVersionList_1_Brand : 'Chromium' + UAClientHintFullVersionList_1_Version : '107.0.5304.150' + UAClientHintMobile : 'false' + UAClientHintPlatform : 'Windows' + UAClientHintPlatformVersion : '0.1.0' + UAClientHintWow64 : 'false' + + +- test: + input: + User-Agent : 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/107.0.0.0 Safari/537.36 Edg/107.0.1418.62 LikeWise/94.6.5565.66' + Sec-Ch-Ua : '"Microsoft Edge";v="107", "Chromium";v="107", "Not=A?Brand";v="24"' + Sec-Ch-Ua-Arch : '"x86"' + Sec-Ch-Ua-Bitness : '"64"' + Sec-Ch-Ua-Full-Version : '"107.0.1418.62"' + Sec-Ch-Ua-Full-Version-List : '"Microsoft Edge";v="107.0.1418.62", "Chromium";v="107.0.5304.150", "Not=A?Brand";v="24.0.0.0"' + Sec-Ch-Ua-Mobile : '?0' + Sec-Ch-Ua-Model : '""' + Sec-Ch-Ua-Platform : '"Windows"' + Sec-Ch-Ua-Platform-Version : '"0.1.0"' + Sec-Ch-Ua-Wow64 : '?0' + expected: + DeviceClass : 'Desktop' + DeviceName : 'Desktop' + DeviceBrand : 'Unknown' + DeviceCpu : 'Intel x86_64' + DeviceCpuBits : '64' + OperatingSystemClass : 'Desktop' + OperatingSystemName : 'Windows NT' + OperatingSystemVersion : '7' + OperatingSystemVersionMajor : '7' + OperatingSystemNameVersion : 'Windows 7' + OperatingSystemNameVersionMajor : 'Windows 7' + LayoutEngineClass : 'Browser' + LayoutEngineName : 'Blink' + LayoutEngineVersion : '107.0' + LayoutEngineVersionMajor : '107' + LayoutEngineNameVersion : 'Blink 107.0' + LayoutEngineNameVersionMajor : 'Blink 107' + AgentClass : 'Browser' + AgentName : 'Edge' + AgentVersion : '107.0.1418.62' + AgentVersionMajor : '107' + AgentNameVersion : 'Edge 107.0.1418.62' + AgentNameVersionMajor : 'Edge 107' + + UAClientHintArchitecture : 'x86' + UAClientHintBitness : '64' + UAClientHintBrands_0_Brand : 'Microsoft Edge' + UAClientHintBrands_0_Version : '107' + UAClientHintBrands_1_Brand : 'Chromium' + UAClientHintBrands_1_Version : '107' + UAClientHintFullVersion : '107.0.1418.62' + UAClientHintFullVersionList_0_Brand : 'Microsoft Edge' + UAClientHintFullVersionList_0_Version : '107.0.1418.62' + UAClientHintFullVersionList_1_Brand : 'Chromium' + UAClientHintFullVersionList_1_Version : '107.0.5304.150' + UAClientHintMobile : 'false' + UAClientHintPlatform : 'Windows' + UAClientHintPlatformVersion : '0.1.0' + UAClientHintWow64 : 'false' + + +- test: + input: + User-Agent : 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/107.0.0.0 Safari/537.36 Edg/107.0.1418.62 LikeWise/95.6.7405.6' + Sec-Ch-Ua : '"Microsoft Edge";v="107", "Chromium";v="107", "Not=A?Brand";v="24"' + Sec-Ch-Ua-Arch : '"x86"' + Sec-Ch-Ua-Bitness : '"64"' + Sec-Ch-Ua-Full-Version : '"107.0.1418.62"' + Sec-Ch-Ua-Full-Version-List : '"Microsoft Edge";v="107.0.1418.62", "Chromium";v="107.0.5304.150", "Not=A?Brand";v="24.0.0.0"' + Sec-Ch-Ua-Mobile : '?0' + Sec-Ch-Ua-Model : '""' + Sec-Ch-Ua-Platform : '"Windows"' + Sec-Ch-Ua-Platform-Version : '"0.1.0"' + Sec-Ch-Ua-Wow64 : '?0' + expected: + DeviceClass : 'Desktop' + DeviceName : 'Desktop' + DeviceBrand : 'Unknown' + DeviceCpu : 'Intel x86_64' + DeviceCpuBits : '64' + OperatingSystemClass : 'Desktop' + OperatingSystemName : 'Windows NT' + OperatingSystemVersion : '7' + OperatingSystemVersionMajor : '7' + OperatingSystemNameVersion : 'Windows 7' + OperatingSystemNameVersionMajor : 'Windows 7' + LayoutEngineClass : 'Browser' + LayoutEngineName : 'Blink' + LayoutEngineVersion : '107.0' + LayoutEngineVersionMajor : '107' + LayoutEngineNameVersion : 'Blink 107.0' + LayoutEngineNameVersionMajor : 'Blink 107' + AgentClass : 'Browser' + AgentName : 'Edge' + AgentVersion : '107.0.1418.62' + AgentVersionMajor : '107' + AgentNameVersion : 'Edge 107.0.1418.62' + AgentNameVersionMajor : 'Edge 107' + + UAClientHintArchitecture : 'x86' + UAClientHintBitness : '64' + UAClientHintBrands_0_Brand : 'Microsoft Edge' + UAClientHintBrands_0_Version : '107' + UAClientHintBrands_1_Brand : 'Chromium' + UAClientHintBrands_1_Version : '107' + UAClientHintFullVersion : '107.0.1418.62' + UAClientHintFullVersionList_0_Brand : 'Microsoft Edge' + UAClientHintFullVersionList_0_Version : '107.0.1418.62' + UAClientHintFullVersionList_1_Brand : 'Chromium' + UAClientHintFullVersionList_1_Version : '107.0.5304.150' + UAClientHintMobile : 'false' + UAClientHintPlatform : 'Windows' + UAClientHintPlatformVersion : '0.1.0' + UAClientHintWow64 : 'false' + + +- test: + input: + User-Agent : 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/107.0.0.0 Safari/537.36 Edg/107.0.1418.62 OpenWave/98.4.3033.34' + Sec-Ch-Ua : '"Microsoft Edge";v="107", "Chromium";v="107", "Not=A?Brand";v="24"' + Sec-Ch-Ua-Arch : '"x86"' + Sec-Ch-Ua-Bitness : '"64"' + Sec-Ch-Ua-Full-Version : '"107.0.1418.62"' + Sec-Ch-Ua-Full-Version-List : '"Microsoft Edge";v="107.0.1418.62", "Chromium";v="107.0.5304.150", "Not=A?Brand";v="24.0.0.0"' + Sec-Ch-Ua-Mobile : '?0' + Sec-Ch-Ua-Model : '""' + Sec-Ch-Ua-Platform : '"Windows"' + Sec-Ch-Ua-Platform-Version : '"0.1.0"' + Sec-Ch-Ua-Wow64 : '?0' + expected: + DeviceClass : 'Desktop' + DeviceName : 'Desktop' + DeviceBrand : 'Unknown' + DeviceCpu : 'Intel x86_64' + DeviceCpuBits : '64' + OperatingSystemClass : 'Desktop' + OperatingSystemName : 'Windows NT' + OperatingSystemVersion : '7' + OperatingSystemVersionMajor : '7' + OperatingSystemNameVersion : 'Windows 7' + OperatingSystemNameVersionMajor : 'Windows 7' + LayoutEngineClass : 'Browser' + LayoutEngineName : 'Blink' + LayoutEngineVersion : '107.0' + LayoutEngineVersionMajor : '107' + LayoutEngineNameVersion : 'Blink 107.0' + LayoutEngineNameVersionMajor : 'Blink 107' + AgentClass : 'Browser' + AgentName : 'Edge' + AgentVersion : '107.0.1418.62' + AgentVersionMajor : '107' + AgentNameVersion : 'Edge 107.0.1418.62' + AgentNameVersionMajor : 'Edge 107' + + UAClientHintArchitecture : 'x86' + UAClientHintBitness : '64' + UAClientHintBrands_0_Brand : 'Microsoft Edge' + UAClientHintBrands_0_Version : '107' + UAClientHintBrands_1_Brand : 'Chromium' + UAClientHintBrands_1_Version : '107' + UAClientHintFullVersion : '107.0.1418.62' + UAClientHintFullVersionList_0_Brand : 'Microsoft Edge' + UAClientHintFullVersionList_0_Version : '107.0.1418.62' + UAClientHintFullVersionList_1_Brand : 'Chromium' + UAClientHintFullVersionList_1_Version : '107.0.5304.150' + UAClientHintMobile : 'false' + UAClientHintPlatform : 'Windows' + UAClientHintPlatformVersion : '0.1.0' + UAClientHintWow64 : 'false' + + +- test: + input: + User-Agent : 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/107.0.0.0 Safari/537.36 Edg/107.0.1418.62 Trailer/98.3.7512.13' + Sec-Ch-Ua : '"Microsoft Edge";v="107", "Chromium";v="107", "Not=A?Brand";v="24"' + Sec-Ch-Ua-Mobile : '?0' + Sec-Ch-Ua-Platform : '"Windows"' + expected: + DeviceClass : 'Desktop' + DeviceName : 'Desktop' + DeviceBrand : 'Unknown' + DeviceCpu : 'Intel x86_64' + DeviceCpuBits : '64' + OperatingSystemClass : 'Desktop' + OperatingSystemName : 'Windows NT' + OperatingSystemVersion : '7' + OperatingSystemVersionMajor : '7' + OperatingSystemNameVersion : 'Windows 7' + OperatingSystemNameVersionMajor : 'Windows 7' + LayoutEngineClass : 'Browser' + LayoutEngineName : 'Blink' + LayoutEngineVersion : '107' + LayoutEngineVersionMajor : '107' + LayoutEngineNameVersion : 'Blink 107' + LayoutEngineNameVersionMajor : 'Blink 107' + AgentClass : 'Browser' + AgentName : 'Edge' + AgentVersion : '107' + AgentVersionMajor : '107' + AgentNameVersion : 'Edge 107' + AgentNameVersionMajor : 'Edge 107' + + UAClientHintBrands_0_Brand : 'Microsoft Edge' + UAClientHintBrands_0_Version : '107' + UAClientHintBrands_1_Brand : 'Chromium' + UAClientHintBrands_1_Version : '107' + UAClientHintMobile : 'false' + UAClientHintPlatform : 'Windows' + + +- test: + input: + User-Agent : 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/107.0.0.0 Safari/537.36 Edg/107.0.1418.62 Trailer/98.3.7512.13' + Sec-Ch-Ua : '"Microsoft Edge";v="107", "Chromium";v="107", "Not=A?Brand";v="24"' + Sec-Ch-Ua-Arch : '"x86"' + Sec-Ch-Ua-Bitness : '"64"' + Sec-Ch-Ua-Full-Version : '"107.0.1418.62"' + Sec-Ch-Ua-Full-Version-List : '"Microsoft Edge";v="107.0.1418.62", "Chromium";v="107.0.5304.150", "Not=A?Brand";v="24.0.0.0"' + Sec-Ch-Ua-Mobile : '?0' + Sec-Ch-Ua-Model : '""' + Sec-Ch-Ua-Platform : '"Windows"' + Sec-Ch-Ua-Platform-Version : '"0.1.0"' + Sec-Ch-Ua-Wow64 : '?0' + expected: + DeviceClass : 'Desktop' + DeviceName : 'Desktop' + DeviceBrand : 'Unknown' + DeviceCpu : 'Intel x86_64' + DeviceCpuBits : '64' + OperatingSystemClass : 'Desktop' + OperatingSystemName : 'Windows NT' + OperatingSystemVersion : '7' + OperatingSystemVersionMajor : '7' + OperatingSystemNameVersion : 'Windows 7' + OperatingSystemNameVersionMajor : 'Windows 7' + LayoutEngineClass : 'Browser' + LayoutEngineName : 'Blink' + LayoutEngineVersion : '107.0' + LayoutEngineVersionMajor : '107' + LayoutEngineNameVersion : 'Blink 107.0' + LayoutEngineNameVersionMajor : 'Blink 107' + AgentClass : 'Browser' + AgentName : 'Edge' + AgentVersion : '107.0.1418.62' + AgentVersionMajor : '107' + AgentNameVersion : 'Edge 107.0.1418.62' + AgentNameVersionMajor : 'Edge 107' + + UAClientHintArchitecture : 'x86' + UAClientHintBitness : '64' + UAClientHintBrands_0_Brand : 'Microsoft Edge' + UAClientHintBrands_0_Version : '107' + UAClientHintBrands_1_Brand : 'Chromium' + UAClientHintBrands_1_Version : '107' + UAClientHintFullVersion : '107.0.1418.62' + UAClientHintFullVersionList_0_Brand : 'Microsoft Edge' + UAClientHintFullVersionList_0_Version : '107.0.1418.62' + UAClientHintFullVersionList_1_Brand : 'Chromium' + UAClientHintFullVersionList_1_Version : '107.0.5304.150' + UAClientHintMobile : 'false' + UAClientHintPlatform : 'Windows' + UAClientHintPlatformVersion : '0.1.0' + UAClientHintWow64 : 'false' + + +- test: + input: + User-Agent : 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/99.0.4844.84 Safari/537.36 OPR/85.0.4341.60' + Sec-Ch-Ua : '" Not A;Brand";v="99", "Chromium";v="99", "Opera";v="85"' + Sec-Ch-Ua-Arch : '"x86"' + Sec-Ch-Ua-Bitness : '"64"' + Sec-Ch-Ua-Full-Version : '"99.0.4844.84"' + Sec-Ch-Ua-Full-Version-List : '" Not A;Brand";v="99.0.0.0", "Chromium";v="99.0.4844.84", "Opera";v="99.0.4844.84"' + Sec-Ch-Ua-Mobile : '?0' + Sec-Ch-Ua-Model : '""' + Sec-Ch-Ua-Platform : '"Windows"' + Sec-Ch-Ua-Platform-Version : '"0.0.0"' + expected: + DeviceClass : 'Desktop' + DeviceName : 'Desktop' + DeviceBrand : 'Unknown' + DeviceCpu : 'Intel x86_64' + DeviceCpuBits : '64' + OperatingSystemClass : 'Desktop' + OperatingSystemName : 'Windows NT' + OperatingSystemVersion : '7' + OperatingSystemVersionMajor : '7' + OperatingSystemNameVersion : 'Windows 7' + OperatingSystemNameVersionMajor : 'Windows 7' + LayoutEngineClass : 'Browser' + LayoutEngineName : 'Blink' + LayoutEngineVersion : '99.0' + LayoutEngineVersionMajor : '99' + LayoutEngineNameVersion : 'Blink 99.0' + LayoutEngineNameVersionMajor : 'Blink 99' + AgentClass : 'Browser' + AgentName : 'Opera' + AgentVersion : '85.0.4341.60' + AgentVersionMajor : '85' + AgentNameVersion : 'Opera 85.0.4341.60' + AgentNameVersionMajor : 'Opera 85' + UAClientHintArchitecture : 'x86' + UAClientHintBitness : '64' + UAClientHintBrands_0_Brand : 'Chromium' + UAClientHintBrands_0_Version : '99' + UAClientHintBrands_1_Brand : 'Opera' + UAClientHintBrands_1_Version : '85' + UAClientHintFullVersion : '99.0.4844.84' + UAClientHintFullVersionList_0_Brand : 'Chromium' + UAClientHintFullVersionList_0_Version : '99.0.4844.84' + UAClientHintFullVersionList_1_Brand : 'Opera' + UAClientHintFullVersionList_1_Version : '99.0.4844.84' + UAClientHintMobile : 'false' + UAClientHintPlatform : 'Windows' + UAClientHintPlatformVersion : '0.0.0' + + +- test: + input: + User-Agent : 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/99.0.4844.84 Safari/537.36 OPR/85.0.4341.60 GLS/93.10.5259.60' + Sec-Ch-Ua : '" Not A;Brand";v="99", "Chromium";v="99", "Opera";v="85"' + Sec-Ch-Ua-Arch : '"x86"' + Sec-Ch-Ua-Bitness : '"64"' + Sec-Ch-Ua-Full-Version : '"99.0.4844.84"' + Sec-Ch-Ua-Full-Version-List : '" Not A;Brand";v="99.0.0.0", "Chromium";v="99.0.4844.84", "Opera";v="99.0.4844.84"' + Sec-Ch-Ua-Mobile : '?0' + Sec-Ch-Ua-Model : '""' + Sec-Ch-Ua-Platform : '"Windows"' + Sec-Ch-Ua-Platform-Version : '"0.0.0"' + expected: + DeviceClass : 'Desktop' + DeviceName : 'Desktop' + DeviceBrand : 'Unknown' + DeviceCpu : 'Intel x86_64' + DeviceCpuBits : '64' + OperatingSystemClass : 'Desktop' + OperatingSystemName : 'Windows NT' + OperatingSystemVersion : '7' + OperatingSystemVersionMajor : '7' + OperatingSystemNameVersion : 'Windows 7' + OperatingSystemNameVersionMajor : 'Windows 7' + LayoutEngineClass : 'Browser' + LayoutEngineName : 'Blink' + LayoutEngineVersion : '99.0' + LayoutEngineVersionMajor : '99' + LayoutEngineNameVersion : 'Blink 99.0' + LayoutEngineNameVersionMajor : 'Blink 99' + AgentClass : 'Browser' + AgentName : 'Opera' + AgentVersion : '85.0.4341.60' + AgentVersionMajor : '85' + AgentNameVersion : 'Opera 85.0.4341.60' + AgentNameVersionMajor : 'Opera 85' + + UAClientHintArchitecture : 'x86' + UAClientHintBitness : '64' + UAClientHintBrands_0_Brand : 'Chromium' + UAClientHintBrands_0_Version : '99' + UAClientHintBrands_1_Brand : 'Opera' + UAClientHintBrands_1_Version : '85' + UAClientHintFullVersion : '99.0.4844.84' + UAClientHintFullVersionList_0_Brand : 'Chromium' + UAClientHintFullVersionList_0_Version : '99.0.4844.84' + UAClientHintFullVersionList_1_Brand : 'Opera' + UAClientHintFullVersionList_1_Version : '99.0.4844.84' + UAClientHintMobile : 'false' + UAClientHintPlatform : 'Windows' + UAClientHintPlatformVersion : '0.0.0' + + +- test: + input: + User-Agent : 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/99.0.4844.84 Safari/537.36 OPR/85.0.4341.60 LikeWise/94.6.5565.66' + Sec-Ch-Ua : '" Not A;Brand";v="99", "Chromium";v="99", "Opera";v="85"' + Sec-Ch-Ua-Arch : '"x86"' + Sec-Ch-Ua-Bitness : '"64"' + Sec-Ch-Ua-Full-Version : '"99.0.4844.84"' + Sec-Ch-Ua-Full-Version-List : '" Not A;Brand";v="99.0.0.0", "Chromium";v="99.0.4844.84", "Opera";v="99.0.4844.84"' + Sec-Ch-Ua-Mobile : '?0' + Sec-Ch-Ua-Model : '""' + Sec-Ch-Ua-Platform : '"Windows"' + Sec-Ch-Ua-Platform-Version : '"0.0.0"' + expected: + DeviceClass : 'Desktop' + DeviceName : 'Desktop' + DeviceBrand : 'Unknown' + DeviceCpu : 'Intel x86_64' + DeviceCpuBits : '64' + OperatingSystemClass : 'Desktop' + OperatingSystemName : 'Windows NT' + OperatingSystemVersion : '7' + OperatingSystemVersionMajor : '7' + OperatingSystemNameVersion : 'Windows 7' + OperatingSystemNameVersionMajor : 'Windows 7' + LayoutEngineClass : 'Browser' + LayoutEngineName : 'Blink' + LayoutEngineVersion : '99.0' + LayoutEngineVersionMajor : '99' + LayoutEngineNameVersion : 'Blink 99.0' + LayoutEngineNameVersionMajor : 'Blink 99' + AgentClass : 'Browser' + AgentName : 'Opera' + AgentVersion : '85.0.4341.60' + AgentVersionMajor : '85' + AgentNameVersion : 'Opera 85.0.4341.60' + AgentNameVersionMajor : 'Opera 85' + + UAClientHintArchitecture : 'x86' + UAClientHintBitness : '64' + UAClientHintBrands_0_Brand : 'Chromium' + UAClientHintBrands_0_Version : '99' + UAClientHintBrands_1_Brand : 'Opera' + UAClientHintBrands_1_Version : '85' + UAClientHintFullVersion : '99.0.4844.84' + UAClientHintFullVersionList_0_Brand : 'Chromium' + UAClientHintFullVersionList_0_Version : '99.0.4844.84' + UAClientHintFullVersionList_1_Brand : 'Opera' + UAClientHintFullVersionList_1_Version : '99.0.4844.84' + UAClientHintMobile : 'false' + UAClientHintPlatform : 'Windows' + UAClientHintPlatformVersion : '0.0.0' + + +- test: + input: + User-Agent : 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/99.0.4844.84 Safari/537.36 OPR/85.0.4341.60 LikeWise/95.6.7405.6' + Sec-Ch-Ua : '" Not A;Brand";v="99", "Chromium";v="99", "Opera";v="85"' + Sec-Ch-Ua-Arch : '"x86"' + Sec-Ch-Ua-Bitness : '"64"' + Sec-Ch-Ua-Full-Version : '"99.0.4844.84"' + Sec-Ch-Ua-Full-Version-List : '" Not A;Brand";v="99.0.0.0", "Chromium";v="99.0.4844.84", "Opera";v="99.0.4844.84"' + Sec-Ch-Ua-Mobile : '?0' + Sec-Ch-Ua-Model : '""' + Sec-Ch-Ua-Platform : '"Windows"' + Sec-Ch-Ua-Platform-Version : '"0.0.0"' + expected: + DeviceClass : 'Desktop' + DeviceName : 'Desktop' + DeviceBrand : 'Unknown' + DeviceCpu : 'Intel x86_64' + DeviceCpuBits : '64' + OperatingSystemClass : 'Desktop' + OperatingSystemName : 'Windows NT' + OperatingSystemVersion : '7' + OperatingSystemVersionMajor : '7' + OperatingSystemNameVersion : 'Windows 7' + OperatingSystemNameVersionMajor : 'Windows 7' + LayoutEngineClass : 'Browser' + LayoutEngineName : 'Blink' + LayoutEngineVersion : '99.0' + LayoutEngineVersionMajor : '99' + LayoutEngineNameVersion : 'Blink 99.0' + LayoutEngineNameVersionMajor : 'Blink 99' + AgentClass : 'Browser' + AgentName : 'Opera' + AgentVersion : '85.0.4341.60' + AgentVersionMajor : '85' + AgentNameVersion : 'Opera 85.0.4341.60' + AgentNameVersionMajor : 'Opera 85' + + UAClientHintArchitecture : 'x86' + UAClientHintBitness : '64' + UAClientHintBrands_0_Brand : 'Chromium' + UAClientHintBrands_0_Version : '99' + UAClientHintBrands_1_Brand : 'Opera' + UAClientHintBrands_1_Version : '85' + UAClientHintFullVersion : '99.0.4844.84' + UAClientHintFullVersionList_0_Brand : 'Chromium' + UAClientHintFullVersionList_0_Version : '99.0.4844.84' + UAClientHintFullVersionList_1_Brand : 'Opera' + UAClientHintFullVersionList_1_Version : '99.0.4844.84' + UAClientHintMobile : 'false' + UAClientHintPlatform : 'Windows' + UAClientHintPlatformVersion : '0.0.0' + + +- test: + input: + User-Agent : 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/99.0.4844.84 Safari/537.36 OPR/85.0.4341.60 Trailer/98.3.7512.13' + Sec-Ch-Ua : '" Not A;Brand";v="99", "Chromium";v="99", "Opera";v="85"' + Sec-Ch-Ua-Arch : '"x86"' + Sec-Ch-Ua-Full-Version : '"99.0.4844.84"' + Sec-Ch-Ua-Full-Version-List : '" Not A;Brand";v="99.0.0.0", "Chromium";v="99.0.4844.84", "Opera";v="99.0.4844.84"' + Sec-Ch-Ua-Mobile : '?0' + Sec-Ch-Ua-Model : '""' + Sec-Ch-Ua-Platform : '"Windows"' + Sec-Ch-Ua-Platform-Version : '"0.0.0"' + expected: + DeviceClass : 'Desktop' + DeviceName : 'Desktop' + DeviceBrand : 'Unknown' + DeviceCpu : 'Intel x86_64' + DeviceCpuBits : '64' + OperatingSystemClass : 'Desktop' + OperatingSystemName : 'Windows NT' + OperatingSystemVersion : '7' + OperatingSystemVersionMajor : '7' + OperatingSystemNameVersion : 'Windows 7' + OperatingSystemNameVersionMajor : 'Windows 7' + LayoutEngineClass : 'Browser' + LayoutEngineName : 'Blink' + LayoutEngineVersion : '99.0' + LayoutEngineVersionMajor : '99' + LayoutEngineNameVersion : 'Blink 99.0' + LayoutEngineNameVersionMajor : 'Blink 99' + AgentClass : 'Browser' + AgentName : 'Opera' + AgentVersion : '85.0.4341.60' + AgentVersionMajor : '85' + AgentNameVersion : 'Opera 85.0.4341.60' + AgentNameVersionMajor : 'Opera 85' + + UAClientHintArchitecture : 'x86' + UAClientHintBrands_0_Brand : 'Chromium' + UAClientHintBrands_0_Version : '99' + UAClientHintBrands_1_Brand : 'Opera' + UAClientHintBrands_1_Version : '85' + UAClientHintFullVersion : '99.0.4844.84' + UAClientHintFullVersionList_0_Brand : 'Chromium' + UAClientHintFullVersionList_0_Version : '99.0.4844.84' + UAClientHintFullVersionList_1_Brand : 'Opera' + UAClientHintFullVersionList_1_Version : '99.0.4844.84' + UAClientHintMobile : 'false' + UAClientHintPlatform : 'Windows' + UAClientHintPlatformVersion : '0.0.0' + + +- test: + input: + User-Agent : 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10.13; rv:94.0) Gecko/20100101 Firefox/94.0 Herring/583.19.9' + expected: + DeviceClass : 'Desktop' + DeviceName : 'Apple Macintosh' + DeviceBrand : 'Apple' + DeviceCpu : 'Intel' + DeviceCpuBits : '64' + OperatingSystemClass : 'Desktop' + OperatingSystemName : 'Mac OS' + OperatingSystemVersion : '10.13' + OperatingSystemVersionMajor : '10.13' + OperatingSystemNameVersion : 'Mac OS 10.13' + OperatingSystemNameVersionMajor : 'Mac OS 10.13' + LayoutEngineClass : 'Browser' + LayoutEngineName : 'Gecko' + LayoutEngineVersion : '94.0' + LayoutEngineVersionMajor : '94' + LayoutEngineNameVersion : 'Gecko 94.0' + LayoutEngineNameVersionMajor : 'Gecko 94' + LayoutEngineBuild : '20100101' + AgentClass : 'Browser' + AgentName : 'Firefox' + AgentVersion : '94.0' + AgentVersionMajor : '94' + AgentNameVersion : 'Firefox 94.0' + AgentNameVersionMajor : 'Firefox 94' + + +- test: + input: + User-Agent : 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/103.0.5060.66 Safari/537.36 Edg/103.0.1264.44 Agency/100.8.7507.8' + expected: + DeviceClass : 'Desktop' + DeviceName : 'Desktop' + DeviceBrand : 'Unknown' + DeviceCpu : 'Intel x86_64' + DeviceCpuBits : '64' + OperatingSystemClass : 'Desktop' + OperatingSystemName : 'Windows NT' + OperatingSystemVersion : '>=10' + OperatingSystemVersionMajor : '>=10' + OperatingSystemNameVersion : 'Windows >=10' + OperatingSystemNameVersionMajor : 'Windows >=10' + LayoutEngineClass : 'Browser' + LayoutEngineName : 'Blink' + LayoutEngineVersion : '103.0' + LayoutEngineVersionMajor : '103' + LayoutEngineNameVersion : 'Blink 103.0' + LayoutEngineNameVersionMajor : 'Blink 103' + AgentClass : 'Browser' + AgentName : 'Edge' + AgentVersion : '103.0.1264.44' + AgentVersionMajor : '103' + AgentNameVersion : 'Edge 103.0.1264.44' + AgentNameVersionMajor : 'Edge 103' + + +- test: + input: + User-Agent : 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/103.0.5060.66 Safari/537.36 Edg/103.0.1264.44 AtContent/95.5.6374.75' + expected: + DeviceClass : 'Desktop' + DeviceName : 'Desktop' + DeviceBrand : 'Unknown' + DeviceCpu : 'Intel x86_64' + DeviceCpuBits : '64' + OperatingSystemClass : 'Desktop' + OperatingSystemName : 'Windows NT' + OperatingSystemVersion : ' ... [truncated]
analyzer/src/main/resources/UserAgents/ClientHints-Tests.yaml+15 −15 modified@@ -386,9 +386,9 @@ config: LayoutEngineNameVersionMajor : 'Blink 100' AgentClass : 'Browser' AgentName : 'Chrome' - AgentVersion : '100.0' + AgentVersion : '100.0.4896.75' AgentVersionMajor : '100' - AgentNameVersion : 'Chrome 100.0' + AgentNameVersion : 'Chrome 100.0.4896.75' AgentNameVersionMajor : 'Chrome 100' UAClientHintArchitecture : 'x86' UAClientHintBrands_0_Brand : 'Chromium' @@ -1230,7 +1230,7 @@ config: # Chromium Version 101.0.4951.64 (Official Build) snap (64-bit) on Ubuntu 20.04 LTS -# NOTE: There is no Chromium tag so we use the Sec-Ch-Ua provided version. +# NOTE: There is no Chromium tag so it is a bit unclear which version tag is to be used. - test: input: User-Agent : 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/101.0.4951.64 Safari/537.36' @@ -1251,15 +1251,15 @@ config: OperatingSystemNameVersionMajor : 'Linux ??' LayoutEngineClass : 'Browser' LayoutEngineName : 'Blink' - LayoutEngineVersion : '101' + LayoutEngineVersion : '101.0' LayoutEngineVersionMajor : '101' - LayoutEngineNameVersion : 'Blink 101' + LayoutEngineNameVersion : 'Blink 101.0' LayoutEngineNameVersionMajor : 'Blink 101' AgentClass : 'Browser' AgentName : 'Chromium' - AgentVersion : '101' #.0.4951.64' + AgentVersion : '101.0.4951.64' AgentVersionMajor : '101' - AgentNameVersion : 'Chromium 101' #.0.4951.64' + AgentNameVersion : 'Chromium 101.0.4951.64' AgentNameVersionMajor : 'Chromium 101' UAClientHintBrands_0_Brand : 'Chromium' UAClientHintBrands_0_Version : '101' @@ -1340,15 +1340,15 @@ config: OperatingSystemNameVersionMajor : 'Linux ??' LayoutEngineClass : 'Browser' LayoutEngineName : 'Blink' - LayoutEngineVersion : '95' + LayoutEngineVersion : '95.0' LayoutEngineVersionMajor : '95' - LayoutEngineNameVersion : 'Blink 95' + LayoutEngineNameVersion : 'Blink 95.0' LayoutEngineNameVersionMajor : 'Blink 95' AgentClass : 'Browser' AgentName : 'Chromium' - AgentVersion : '95' + AgentVersion : '95.0.4638.69' AgentVersionMajor : '95' - AgentNameVersion : 'Chromium 95' + AgentNameVersion : 'Chromium 95.0.4638.69' AgentNameVersionMajor : 'Chromium 95' UAClientHintBrands_0_Brand : 'Chromium' @@ -1382,15 +1382,15 @@ config: OperatingSystemNameVersionMajor : 'Linux 5' LayoutEngineClass : 'Browser' LayoutEngineName : 'Blink' - LayoutEngineVersion : '95' + LayoutEngineVersion : '95.0' LayoutEngineVersionMajor : '95' - LayoutEngineNameVersion : 'Blink 95' + LayoutEngineNameVersion : 'Blink 95.0' LayoutEngineNameVersionMajor : 'Blink 95' AgentClass : 'Browser' AgentName : 'Chromium' - AgentVersion : '95' + AgentVersion : '95.0.4638.69' AgentVersionMajor : '95' - AgentNameVersion : 'Chromium 95' + AgentNameVersion : 'Chromium 95.0.4638.69' AgentNameVersionMajor : 'Chromium 95' UAClientHintArchitecture : 'x86'
analyzer/src/main/resources/UserAgents/ExtendedAgents.yaml+7 −383 modified@@ -28,6 +28,7 @@ config: - 'HardwareTags' - 'SpecialChromeBrowserNames' - 'BrowserPluginNames' + - 'KamoAgents' values: - 'anonym' - 'OMI' # Seen in some Sony TVs @@ -74,7 +75,7 @@ config: - test: input: - User-Agent : 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10.13; rv:94.0) Gecko/20100101 Firefox/94.0 Herring/583.19.9' + User-Agent : 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10.13; rv:94.0) Gecko/20100101 Firefox/94.0 Basjes/1.2.3' expected: DeviceClass : 'Desktop' DeviceName : 'Apple Macintosh' @@ -95,386 +96,9 @@ config: LayoutEngineNameVersionMajor : 'Gecko 94' LayoutEngineBuild : '20100101' AgentClass : 'Browser' - AgentName : 'Herring' - AgentVersion : '583.19.9' - AgentVersionMajor : '583' - AgentNameVersion : 'Herring 583.19.9' - AgentNameVersionMajor : 'Herring 583' + AgentName : 'Basjes' + AgentVersion : '1.2.3' + AgentVersionMajor : '1' + AgentNameVersion : 'Basjes 1.2.3' + AgentNameVersionMajor : 'Basjes 1' - -- test: - input: - User-Agent : 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/103.0.5060.66 Safari/537.36 Edg/103.0.1264.44 Agency/100.8.7507.8' - expected: - DeviceClass : 'Desktop' - DeviceName : 'Desktop' - DeviceBrand : 'Unknown' - DeviceCpu : 'Intel x86_64' - DeviceCpuBits : '64' - OperatingSystemClass : 'Desktop' - OperatingSystemName : 'Windows NT' - OperatingSystemVersion : '>=10' - OperatingSystemVersionMajor : '>=10' - OperatingSystemNameVersion : 'Windows >=10' - OperatingSystemNameVersionMajor : 'Windows >=10' - LayoutEngineClass : 'Browser' - LayoutEngineName : 'Blink' - LayoutEngineVersion : '103.0' - LayoutEngineVersionMajor : '103' - LayoutEngineNameVersion : 'Blink 103.0' - LayoutEngineNameVersionMajor : 'Blink 103' - AgentClass : 'Browser' - AgentName : 'Agency' - AgentVersion : '100.8.7507.8' - AgentVersionMajor : '100' - AgentNameVersion : 'Agency 100.8.7507.8' - AgentNameVersionMajor : 'Agency 100' - - -- test: - input: - User-Agent : 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/103.0.5060.66 Safari/537.36 Edg/103.0.1264.44 AtContent/95.5.6374.75' - expected: - DeviceClass : 'Desktop' - DeviceName : 'Desktop' - DeviceBrand : 'Unknown' - DeviceCpu : 'Intel x86_64' - DeviceCpuBits : '64' - OperatingSystemClass : 'Desktop' - OperatingSystemName : 'Windows NT' - OperatingSystemVersion : '>=10' - OperatingSystemVersionMajor : '>=10' - OperatingSystemNameVersion : 'Windows >=10' - OperatingSystemNameVersionMajor : 'Windows >=10' - LayoutEngineClass : 'Browser' - LayoutEngineName : 'Blink' - LayoutEngineVersion : '103.0' - LayoutEngineVersionMajor : '103' - LayoutEngineNameVersion : 'Blink 103.0' - LayoutEngineNameVersionMajor : 'Blink 103' - AgentClass : 'Browser' - AgentName : 'AtContent' - AgentVersion : '95.5.6374.75' - AgentVersionMajor : '95' - AgentNameVersion : 'AtContent 95.5.6374.75' - AgentNameVersionMajor : 'AtContent 95' - - -- test: - input: - User-Agent : 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/103.0.5060.66 Safari/537.36 Edg/103.0.1264.44 Config/99.2.4311.12' - expected: - DeviceClass : 'Desktop' - DeviceName : 'Desktop' - DeviceBrand : 'Unknown' - DeviceCpu : 'Intel x86_64' - DeviceCpuBits : '64' - OperatingSystemClass : 'Desktop' - OperatingSystemName : 'Windows NT' - OperatingSystemVersion : '>=10' - OperatingSystemVersionMajor : '>=10' - OperatingSystemNameVersion : 'Windows >=10' - OperatingSystemNameVersionMajor : 'Windows >=10' - LayoutEngineClass : 'Browser' - LayoutEngineName : 'Blink' - LayoutEngineVersion : '103.0' - LayoutEngineVersionMajor : '103' - LayoutEngineNameVersion : 'Blink 103.0' - LayoutEngineNameVersionMajor : 'Blink 103' - AgentClass : 'Browser' - AgentName : 'Config' - AgentVersion : '99.2.4311.12' - AgentVersionMajor : '99' - AgentNameVersion : 'Config 99.2.4311.12' - AgentNameVersionMajor : 'Config 99' - - -- test: - input: - User-Agent : 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/103.0.5060.66 Safari/537.36 Edg/103.0.1264.44 GLS/90.10.6209.10' - expected: - DeviceClass : 'Desktop' - DeviceName : 'Desktop' - DeviceBrand : 'Unknown' - DeviceCpu : 'Intel x86_64' - DeviceCpuBits : '64' - OperatingSystemClass : 'Desktop' - OperatingSystemName : 'Windows NT' - OperatingSystemVersion : '>=10' - OperatingSystemVersionMajor : '>=10' - OperatingSystemNameVersion : 'Windows >=10' - OperatingSystemNameVersionMajor : 'Windows >=10' - LayoutEngineClass : 'Browser' - LayoutEngineName : 'Blink' - LayoutEngineVersion : '103.0' - LayoutEngineVersionMajor : '103' - LayoutEngineNameVersion : 'Blink 103.0' - LayoutEngineNameVersionMajor : 'Blink 103' - AgentClass : 'Browser' - AgentName : 'GLS' - AgentVersion : '90.10.6209.10' - AgentVersionMajor : '90' - AgentNameVersion : 'GLS 90.10.6209.10' - AgentNameVersionMajor : 'GLS 90' - - -- test: - input: - User-Agent : 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/103.0.5060.66 Safari/537.36 Edg/103.0.1264.44 Herring/96.1.1770.71' - expected: - DeviceClass : 'Desktop' - DeviceName : 'Desktop' - DeviceBrand : 'Unknown' - DeviceCpu : 'Intel x86_64' - DeviceCpuBits : '64' - OperatingSystemClass : 'Desktop' - OperatingSystemName : 'Windows NT' - OperatingSystemVersion : '>=10' - OperatingSystemVersionMajor : '>=10' - OperatingSystemNameVersion : 'Windows >=10' - OperatingSystemNameVersionMajor : 'Windows >=10' - LayoutEngineClass : 'Browser' - LayoutEngineName : 'Blink' - LayoutEngineVersion : '103.0' - LayoutEngineVersionMajor : '103' - LayoutEngineNameVersion : 'Blink 103.0' - LayoutEngineNameVersionMajor : 'Blink 103' - AgentClass : 'Browser' - AgentName : 'Herring' - AgentVersion : '96.1.1770.71' - AgentVersionMajor : '96' - AgentNameVersion : 'Herring 96.1.1770.71' - AgentNameVersionMajor : 'Herring 96' - - -- test: - input: - User-Agent : 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/103.0.5060.66 Safari/537.36 Edg/103.0.1264.44 LikeWise/91.6.3585.86' - expected: - DeviceClass : 'Desktop' - DeviceName : 'Desktop' - DeviceBrand : 'Unknown' - DeviceCpu : 'Intel x86_64' - DeviceCpuBits : '64' - OperatingSystemClass : 'Desktop' - OperatingSystemName : 'Windows NT' - OperatingSystemVersion : '>=10' - OperatingSystemVersionMajor : '>=10' - OperatingSystemNameVersion : 'Windows >=10' - OperatingSystemNameVersionMajor : 'Windows >=10' - LayoutEngineClass : 'Browser' - LayoutEngineName : 'Blink' - LayoutEngineVersion : '103.0' - LayoutEngineVersionMajor : '103' - LayoutEngineNameVersion : 'Blink 103.0' - LayoutEngineNameVersionMajor : 'Blink 103' - AgentClass : 'Browser' - AgentName : 'LikeWise' - AgentVersion : '91.6.3585.86' - AgentVersionMajor : '91' - AgentNameVersion : 'LikeWise 91.6.3585.86' - AgentNameVersionMajor : 'LikeWise 91' - - -- test: - input: - User-Agent : 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/103.0.5060.66 Safari/537.36 Edg/103.0.1264.44 OpenWave/95.4.2243.44' - expected: - DeviceClass : 'Desktop' - DeviceName : 'Desktop' - DeviceBrand : 'Unknown' - DeviceCpu : 'Intel x86_64' - DeviceCpuBits : '64' - OperatingSystemClass : 'Desktop' - OperatingSystemName : 'Windows NT' - OperatingSystemVersion : '>=10' - OperatingSystemVersionMajor : '>=10' - OperatingSystemNameVersion : 'Windows >=10' - OperatingSystemNameVersionMajor : 'Windows >=10' - LayoutEngineClass : 'Browser' - LayoutEngineName : 'Blink' - LayoutEngineVersion : '103.0' - LayoutEngineVersionMajor : '103' - LayoutEngineNameVersion : 'Blink 103.0' - LayoutEngineNameVersionMajor : 'Blink 103' - AgentClass : 'Browser' - AgentName : 'OpenWave' - AgentVersion : '95.4.2243.44' - AgentVersionMajor : '95' - AgentNameVersion : 'OpenWave 95.4.2243.44' - AgentNameVersionMajor : 'OpenWave 95' - - -- test: - input: - User-Agent : 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/103.0.5060.66 Safari/537.36 Edg/103.0.1264.44 Trailer/92.3.8742.43' - expected: - DeviceClass : 'Desktop' - DeviceName : 'Desktop' - DeviceBrand : 'Unknown' - DeviceCpu : 'Intel x86_64' - DeviceCpuBits : '64' - OperatingSystemClass : 'Desktop' - OperatingSystemName : 'Windows NT' - OperatingSystemVersion : '>=10' - OperatingSystemVersionMajor : '>=10' - OperatingSystemNameVersion : 'Windows >=10' - OperatingSystemNameVersionMajor : 'Windows >=10' - LayoutEngineClass : 'Browser' - LayoutEngineName : 'Blink' - LayoutEngineVersion : '103.0' - LayoutEngineVersionMajor : '103' - LayoutEngineNameVersion : 'Blink 103.0' - LayoutEngineNameVersionMajor : 'Blink 103' - AgentClass : 'Browser' - AgentName : 'Trailer' - AgentVersion : '92.3.8742.43' - AgentVersionMajor : '92' - AgentNameVersion : 'Trailer 92.3.8742.43' - AgentNameVersionMajor : 'Trailer 92' - - -- test: - input: - User-Agent : 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/103.0.5060.66 Safari/537.36 Edg/103.0.1264.44 Viewer/96.9.4198.99' - expected: - DeviceClass : 'Desktop' - DeviceName : 'Desktop' - DeviceBrand : 'Unknown' - DeviceCpu : 'Intel x86_64' - DeviceCpuBits : '64' - OperatingSystemClass : 'Desktop' - OperatingSystemName : 'Windows NT' - OperatingSystemVersion : '>=10' - OperatingSystemVersionMajor : '>=10' - OperatingSystemNameVersion : 'Windows >=10' - OperatingSystemNameVersionMajor : 'Windows >=10' - LayoutEngineClass : 'Browser' - LayoutEngineName : 'Blink' - LayoutEngineVersion : '103.0' - LayoutEngineVersionMajor : '103' - LayoutEngineNameVersion : 'Blink 103.0' - LayoutEngineNameVersionMajor : 'Blink 103' - AgentClass : 'Browser' - AgentName : 'Viewer' - AgentVersion : '96.9.4198.99' - AgentVersionMajor : '96' - AgentNameVersion : 'Viewer 96.9.4198.99' - AgentNameVersionMajor : 'Viewer 96' - - -- test: - input: - User-Agent : 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/103.0.5060.114 Safari/537.36 Edg/103.0.1264.62 Herring/98.1.5870.71' - expected: - DeviceClass : 'Desktop' - DeviceName : 'Desktop' - DeviceBrand : 'Unknown' - DeviceCpu : 'Intel x86_64' - DeviceCpuBits : '64' - OperatingSystemClass : 'Desktop' - OperatingSystemName : 'Windows NT' - OperatingSystemVersion : '>=10' - OperatingSystemVersionMajor : '>=10' - OperatingSystemNameVersion : 'Windows >=10' - OperatingSystemNameVersionMajor : 'Windows >=10' - LayoutEngineClass : 'Browser' - LayoutEngineName : 'Blink' - LayoutEngineVersion : '103.0' - LayoutEngineVersionMajor : '103' - LayoutEngineNameVersion : 'Blink 103.0' - LayoutEngineNameVersionMajor : 'Blink 103' - AgentClass : 'Browser' - AgentName : 'Herring' - AgentVersion : '98.1.5870.71' - AgentVersionMajor : '98' - AgentNameVersion : 'Herring 98.1.5870.71' - AgentNameVersionMajor : 'Herring 98' - - -- test: - input: - User-Agent : 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/103.0.5060.114 Safari/537.36 OPR/89.0.4447.48 Herring/95.1.6890.91' - expected: - DeviceClass : 'Desktop' - DeviceName : 'Desktop' - DeviceBrand : 'Unknown' - DeviceCpu : 'Intel x86_64' - DeviceCpuBits : '64' - OperatingSystemClass : 'Desktop' - OperatingSystemName : 'Windows NT' - OperatingSystemVersion : '10.0' - OperatingSystemVersionMajor : '10' - OperatingSystemNameVersion : 'Windows 10.0' - OperatingSystemNameVersionMajor : 'Windows 10' - LayoutEngineClass : 'Browser' - LayoutEngineName : 'Blink' - LayoutEngineVersion : '103.0' - LayoutEngineVersionMajor : '103' - LayoutEngineNameVersion : 'Blink 103.0' - LayoutEngineNameVersionMajor : 'Blink 103' - AgentClass : 'Browser' - AgentName : 'Herring' - AgentVersion : '95.1.6890.91' - AgentVersionMajor : '95' - AgentNameVersion : 'Herring 95.1.6890.91' - AgentNameVersionMajor : 'Herring 95' - - -- test: - input: - User-Agent : 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/103.0.0.0 Safari/537.36 Herring/100.1.7540.41' - expected: - DeviceClass : 'Desktop' - DeviceName : 'Desktop' - DeviceBrand : 'Unknown' - DeviceCpu : 'Intel x86_64' - DeviceCpuBits : '64' - OperatingSystemClass : 'Desktop' - OperatingSystemName : 'Windows NT' - OperatingSystemVersion : '??' - OperatingSystemVersionMajor : '??' - OperatingSystemNameVersion : 'Windows NT ??' - OperatingSystemNameVersionMajor : 'Windows NT ??' - LayoutEngineClass : 'Browser' - LayoutEngineName : 'Blink' - LayoutEngineVersion : '103' - LayoutEngineVersionMajor : '103' - LayoutEngineNameVersion : 'Blink 103' - LayoutEngineNameVersionMajor : 'Blink 103' - AgentClass : 'Browser' - AgentName : 'Herring' - AgentVersion : '100.1.7540.41' - AgentVersionMajor : '100' - AgentNameVersion : 'Herring 100.1.7540.41' - AgentNameVersionMajor : 'Herring 100' - - -- test: - input: - User-Agent : 'Mozilla/5.0 (Windows NT 6.3; Win64; x64; rv:101.0) Gecko/20100101 Firefox/101.0 Agency/95.8.7917.18' - expected: - DeviceClass : 'Desktop' - DeviceName : 'Desktop' - DeviceBrand : 'Unknown' - DeviceCpu : 'Intel x86_64' - DeviceCpuBits : '64' - OperatingSystemClass : 'Desktop' - OperatingSystemName : 'Windows NT' - OperatingSystemVersion : '8.1' - OperatingSystemVersionMajor : '8' - OperatingSystemNameVersion : 'Windows 8.1' - OperatingSystemNameVersionMajor : 'Windows 8' - LayoutEngineClass : 'Browser' - LayoutEngineName : 'Gecko' - LayoutEngineVersion : '101.0' - LayoutEngineVersionMajor : '101' - LayoutEngineNameVersion : 'Gecko 101.0' - LayoutEngineNameVersionMajor : 'Gecko 101' - LayoutEngineBuild : '20100101' - AgentClass : 'Browser' - AgentName : 'Agency' - AgentVersion : '95.8.7917.18' - AgentVersionMajor : '95' - AgentNameVersion : 'Agency 95.8.7917.18' - AgentNameVersionMajor : 'Agency 95'
analyzer/src/main/resources/UserAgents/FederatedSocialMedia.yaml+2 −2 modified@@ -244,9 +244,9 @@ config: OperatingSystemNameVersionMajor : 'Linux ??' LayoutEngineClass : 'Browser' LayoutEngineName : 'Blink' - LayoutEngineVersion : '104' + LayoutEngineVersion : '104.0' LayoutEngineVersionMajor : '104' - LayoutEngineNameVersion : 'Blink 104' + LayoutEngineNameVersion : 'Blink 104.0' LayoutEngineNameVersionMajor : 'Blink 104' AgentClass : 'Desktop App' AgentName : 'Element'
analyzer/src/main/resources/UserAgents/GeckoFirefox.yaml+1 −0 modified@@ -26,6 +26,7 @@ config: - 'ExactMatchMobileBrands' - 'BrowserPluginNames' - 'GenericUnwantedNames' + - 'KamoAgents' values: - 'AppleWebKit'
analyzer/src/main/resources/UserAgents/GoogleChromeFrozen.yaml+146 −0 modified@@ -1813,3 +1813,149 @@ config: AgentVersionMajor : '102' AgentNameVersion : 'Chrome 102' AgentNameVersionMajor : 'Chrome 102' + +- test: + input: + User-Agent : 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/107.0.0.0 Safari/537.36' + Sec-Ch-Ua : '"Google Chrome";v="107", "Chromium";v="107", "Not=A?Brand";v="24"' + Sec-Ch-Ua-Arch : '"arm"' + Sec-Ch-Ua-Bitness : '"64"' + Sec-Ch-Ua-Full-Version : '"107.0.5304.121"' + Sec-Ch-Ua-Full-Version-List : '"Google Chrome";v="107.0.5304.121", "Chromium";v="107.0.5304.121", "Not=A?Brand";v="24.0.0.0"' + Sec-Ch-Ua-Mobile : '?0' + Sec-Ch-Ua-Model : '""' + Sec-Ch-Ua-Platform : '"macOS"' + Sec-Ch-Ua-Platform-Version : '"12.6.0"' + Sec-Ch-Ua-Wow64 : '?0' + expected: + DeviceClass : 'Desktop' + DeviceName : 'Apple Macintosh' + DeviceBrand : 'Apple' + DeviceCpu : 'ARM' + DeviceCpuBits : '64' + OperatingSystemClass : 'Desktop' + OperatingSystemName : 'Mac OS' + OperatingSystemVersion : '12.6.0' + OperatingSystemVersionMajor : '12' + OperatingSystemNameVersion : 'Mac OS 12.6.0' + OperatingSystemNameVersionMajor : 'Mac OS 12' + LayoutEngineClass : 'Browser' + LayoutEngineName : 'Blink' + LayoutEngineVersion : '107.0' + LayoutEngineVersionMajor : '107' + LayoutEngineNameVersion : 'Blink 107.0' + LayoutEngineNameVersionMajor : 'Blink 107' + AgentClass : 'Browser' + AgentName : 'Chrome' + AgentVersion : '107.0.5304.121' + AgentVersionMajor : '107' + AgentNameVersion : 'Chrome 107.0.5304.121' + AgentNameVersionMajor : 'Chrome 107' + UAClientHintArchitecture : 'arm' + UAClientHintBitness : '64' + UAClientHintBrands_0_Brand : 'Google Chrome' + UAClientHintBrands_0_Version : '107' + UAClientHintBrands_1_Brand : 'Chromium' + UAClientHintBrands_1_Version : '107' + UAClientHintFullVersion : '107.0.5304.121' + UAClientHintFullVersionList_0_Brand : 'Google Chrome' + UAClientHintFullVersionList_0_Version : '107.0.5304.121' + UAClientHintFullVersionList_1_Brand : 'Chromium' + UAClientHintFullVersionList_1_Version : '107.0.5304.121' + UAClientHintMobile : 'false' + UAClientHintPlatform : 'macOS' + UAClientHintPlatformVersion : '12.6.0' + UAClientHintWow64 : 'false' + + +- test: + input: + User-Agent : 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/107.0.0.0 Safari/537.36 Edg/107.0.1418.52' + Sec-Ch-Ua : '"Microsoft Edge";v="107", "Chromium";v="107", "Not=A?Brand";v="24"' + Sec-Ch-Ua-Mobile : '?0' + Sec-Ch-Ua-Platform : '"Windows"' + expected: + DeviceClass : 'Desktop' + DeviceName : 'Desktop' + DeviceBrand : 'Unknown' + DeviceCpu : 'Intel x86_64' + DeviceCpuBits : '64' + OperatingSystemClass : 'Desktop' + OperatingSystemName : 'Windows NT' + OperatingSystemVersion : '??' + OperatingSystemVersionMajor : '??' + OperatingSystemNameVersion : 'Windows NT ??' + OperatingSystemNameVersionMajor : 'Windows NT ??' + LayoutEngineClass : 'Browser' + LayoutEngineName : 'Blink' + LayoutEngineVersion : '107' + LayoutEngineVersionMajor : '107' + LayoutEngineNameVersion : 'Blink 107' + LayoutEngineNameVersionMajor : 'Blink 107' + AgentClass : 'Browser' + AgentName : 'Edge' + AgentVersion : '107' + AgentVersionMajor : '107' + AgentNameVersion : 'Edge 107' + AgentNameVersionMajor : 'Edge 107' + UAClientHintBrands_0_Brand : 'Microsoft Edge' + UAClientHintBrands_0_Version : '107' + UAClientHintBrands_1_Brand : 'Chromium' + UAClientHintBrands_1_Version : '107' + UAClientHintMobile : 'false' + UAClientHintPlatform : 'Windows' + + +- test: + input: + User-Agent : 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/108.0.0.0 Safari/537.36' + Sec-Ch-Ua : '"Not?A_Brand";v="8", "Chromium";v="108", "Google Chrome";v="108"' + Sec-Ch-Ua-Arch : '"x86"' + Sec-Ch-Ua-Bitness : '"64"' + Sec-Ch-Ua-Full-Version : '"108.0.5359.72"' + Sec-Ch-Ua-Full-Version-List : '"Not?A_Brand";v="8.0.0.0", "Chromium";v="108.0.5359.72", "Google Chrome";v="108.0.5359.72"' + Sec-Ch-Ua-Mobile : '?0' + Sec-Ch-Ua-Model : '""' + Sec-Ch-Ua-Platform : '"Windows"' + Sec-Ch-Ua-Platform-Version : '"0.1.0"' + Sec-Ch-Ua-Wow64 : '?0' + expected: + DeviceClass : 'Desktop' + DeviceName : 'Desktop' + DeviceBrand : 'Unknown' + DeviceCpu : 'Intel x86_64' + DeviceCpuBits : '64' + OperatingSystemClass : 'Desktop' + OperatingSystemName : 'Windows NT' + OperatingSystemVersion : '7' + OperatingSystemVersionMajor : '7' + OperatingSystemNameVersion : 'Windows 7' + OperatingSystemNameVersionMajor : 'Windows 7' + LayoutEngineClass : 'Browser' + LayoutEngineName : 'Blink' + LayoutEngineVersion : '108.0' + LayoutEngineVersionMajor : '108' + LayoutEngineNameVersion : 'Blink 108.0' + LayoutEngineNameVersionMajor : 'Blink 108' + AgentClass : 'Browser' + AgentName : 'Chrome' + AgentVersion : '108.0.5359.72' + AgentVersionMajor : '108' + AgentNameVersion : 'Chrome 108.0.5359.72' + AgentNameVersionMajor : 'Chrome 108' + UAClientHintArchitecture : 'x86' + UAClientHintBitness : '64' + UAClientHintBrands_0_Brand : 'Chromium' + UAClientHintBrands_0_Version : '108' + UAClientHintBrands_1_Brand : 'Google Chrome' + UAClientHintBrands_1_Version : '108' + UAClientHintFullVersion : '108.0.5359.72' + UAClientHintFullVersionList_0_Brand : 'Chromium' + UAClientHintFullVersionList_0_Version : '108.0.5359.72' + UAClientHintFullVersionList_1_Brand : 'Google Chrome' + UAClientHintFullVersionList_1_Version : '108.0.5359.72' + UAClientHintMobile : 'false' + UAClientHintPlatform : 'Windows' + UAClientHintPlatformVersion : '0.1.0' + UAClientHintWow64 : 'false' +
analyzer/src/main/resources/UserAgents/GoogleChrome.yaml+73 −0 modified@@ -3207,3 +3207,76 @@ config: AgentVersionMajor : '80' AgentNameVersion : 'Brave 80.0.3987.149' AgentNameVersionMajor : 'Brave 80' + +- test: + input: + User-Agent : 'Mozilla/5.0 (Linux; Android 10; K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/107.0.0.0 Mobile Safari/537.36' + Sec-Ch-Ua : '"Brave";v="107", "Chromium";v="107", "Not=A?Brand";v="24"' + Sec-Ch-Ua-Mobile : '?1' + Sec-Ch-Ua-Platform : '"Android"' + expected: + DeviceClass : 'Phone' + DeviceName : 'Unknown' + DeviceBrand : 'Unknown' + OperatingSystemClass : 'Mobile' + OperatingSystemName : 'Android' + OperatingSystemVersion : '??' + OperatingSystemVersionMajor : '??' + OperatingSystemNameVersion : 'Android ??' + OperatingSystemNameVersionMajor : 'Android ??' + LayoutEngineClass : 'Browser' + LayoutEngineName : 'Blink' + LayoutEngineVersion : '107' + LayoutEngineVersionMajor : '107' + LayoutEngineNameVersion : 'Blink 107' + LayoutEngineNameVersionMajor : 'Blink 107' + AgentClass : 'Browser' + AgentName : 'Brave' + AgentVersion : '107' + AgentVersionMajor : '107' + AgentNameVersion : 'Brave 107' + AgentNameVersionMajor : 'Brave 107' + + UAClientHintBrands_0_Brand : 'Brave' + UAClientHintBrands_0_Version : '107' + UAClientHintBrands_1_Brand : 'Chromium' + UAClientHintBrands_1_Version : '107' + UAClientHintMobile : 'true' + UAClientHintPlatform : 'Android' + +- test: + input: + User-Agent : 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/107.0.0.0 Safari/537.36' + Sec-Ch-Ua : '"Google Chrome";v="107", "Chromium";v="107", "Not=A?Brand";v="24"' + Sec-Ch-Ua-Mobile : '?0' + Sec-Ch-Ua-Platform : '"macOS"' + expected: + DeviceClass : 'Desktop' + DeviceName : 'Apple Macintosh' + DeviceBrand : 'Apple' + DeviceCpu : 'Intel' + DeviceCpuBits : '64' + OperatingSystemClass : 'Desktop' + OperatingSystemName : 'Mac OS' + OperatingSystemVersion : '>=10.15.7' + OperatingSystemVersionMajor : '>=10.15' + OperatingSystemNameVersion : 'Mac OS >=10.15.7' + OperatingSystemNameVersionMajor : 'Mac OS >=10.15' + LayoutEngineClass : 'Browser' + LayoutEngineName : 'Blink' + LayoutEngineVersion : '107' + LayoutEngineVersionMajor : '107' + LayoutEngineNameVersion : 'Blink 107' + LayoutEngineNameVersionMajor : 'Blink 107' + AgentClass : 'Browser' + AgentName : 'Chrome' + AgentVersion : '107' + AgentVersionMajor : '107' + AgentNameVersion : 'Chrome 107' + AgentNameVersionMajor : 'Chrome 107' + UAClientHintBrands_0_Brand : 'Google Chrome' + UAClientHintBrands_0_Version : '107' + UAClientHintBrands_1_Brand : 'Chromium' + UAClientHintBrands_1_Version : '107' + UAClientHintMobile : 'false' + UAClientHintPlatform : 'macOS'
analyzer/src/main/resources/UserAgents/Robots.yaml+8 −8 modified@@ -10715,16 +10715,16 @@ config: OperatingSystemNameVersionMajor : 'Windows >=10' LayoutEngineClass : 'Browser' LayoutEngineName : 'Blink' - LayoutEngineVersion : '98' - LayoutEngineVersionMajor : '98' - LayoutEngineNameVersion : 'Blink 98' - LayoutEngineNameVersionMajor : 'Blink 98' + LayoutEngineVersion : '97.0' + LayoutEngineVersionMajor : '97' + LayoutEngineNameVersion : 'Blink 97.0' + LayoutEngineNameVersionMajor : 'Blink 97' AgentClass : 'Browser' AgentName : 'Chromium' - AgentVersion : '98' - AgentVersionMajor : '98' - AgentNameVersion : 'Chromium 98' - AgentNameVersionMajor : 'Chromium 98' + AgentVersion : '97.0.4692.99' + AgentVersionMajor : '97' + AgentNameVersion : 'Chromium 97.0.4692.99' + AgentNameVersionMajor : 'Chromium 97' UAClientHintBrands_0_Brand : 'Chromium' UAClientHintBrands_0_Version : '98'
CHANGELOG.md+2 −0 modified@@ -7,6 +7,8 @@ v7.9.0-SNAPSHOT - Support having multiple places to define a lookup or set which are then merged. - New/improved detections - Non standard Apple device tags. + - Ignore the tags created by Kamo + - Slightly better analysis of the Client Hints v7.8.0 ===
Vulnerability mechanics
Generated on May 9, 2026. Inputs: CWE entries + fix-commit diffs from this CVE's patches. Citations validated against bundle.
References
4- github.com/advisories/GHSA-c4pm-63cg-9j7hghsaADVISORY
- nvd.nist.gov/vuln/detail/CVE-2022-23496ghsaADVISORY
- github.com/nielsbasjes/yauaa/commit/3017a866e2cff0d308f264b66fde4fa79e3beb9eghsax_refsource_MISCWEB
- github.com/nielsbasjes/yauaa/security/advisories/GHSA-c4pm-63cg-9j7hghsax_refsource_CONFIRMWEB
News mentions
0No linked articles in our index yet.