HSTS bypass via IDN
curl's HSTS check could be bypassed to trick it to keep using HTTP. Using its HSTS support, curl can be instructed to use HTTPS directly instead of using an insecure clear-text HTTP step even when HTTP is provided in the URL. This mechanism could be bypassed if the hostname in the given URL uses IDN characters that get replaced to ASCII counterparts as part of the IDN conversion. Like using the character UTF-8 U+3002 (`IDEOGRAPHIC FULL STOP`) instead of the common ASCII full stop (U+002E) `.`. Like this: `http://curl。se。`
- Products
- Not specified
- Affected versions
- Not specified
- Fixed versions
- Not specified
- CVEs
- CVE-2022-42916
- Confirmed fixed CVEs
- Not specified
- Updated in this feed
- 1 Nov 2026, 09:39 UTC · Revision 1
Source evidence
curl's HSTS check could be bypassed to trick it to keep using HTTP. Using its HSTS support, curl can be instructed to use HTTPS directly instead of using an insecure clear-text HTTP step even when HTTP is provided in the URL. This mechanism could be bypassed if the hostname in the given URL uses IDN characters that get replaced to ASCII counterparts as part of the IDN conversion. Like using the character UTF-8 U+3002 (`IDEOGRAPHIC FULL STOP`) instead of the common ASCII full stop (U+002E) `.`. Like this: `http://curl。se。`
osv:CURL-CVE-2022-42916
Complete source record
{
"id": "e51d5706d01ccbedb075c1cc1ba5e433f271401cc516231227e696e32d77b418",
"url": "https://osv.dev/vulnerability/CURL-CVE-2022-42916",
"method": "structured",
"payload": {
"kind": "advisory",
"title": "HSTS bypass via IDN",
"summary": "curl's HSTS check could be bypassed to trick it to keep using HTTP. Using its HSTS support, curl can be instructed to use HTTPS directly instead of using an insecure clear-text HTTP step even when HTTP is provided in the URL. This mechanism could be bypassed if the hostname in the given URL uses IDN characters that get replaced to ASCII counterparts as part of the IDN conversion. Like using the character UTF-8 U+3002 (`IDEOGRAPHIC FULL STOP`) instead of the common ASCII full stop (U+002E) `.`. Like this: `http://curl。se。`",
"evidence": "osv:CURL-CVE-2022-42916",
"products": [],
"severity": "medium",
"structured": {
"id": "CURL-CVE-2022-42916",
"aliases": [
"CURL-CVE-2022-42916",
"CVE-2022-42916"
],
"affected": [
{
"ranges": [
{
"type": "SEMVER",
"events": [
{
"introduced": "7.77.0"
},
{
"fixed": "7.86.0"
}
]
},
{
"repo": "https://github.com/curl/curl.git",
"type": "GIT",
"events": [
{
"introduced": "7385610d0c74c6a254fea5e4cd6e1d559d848c8c"
},
{
"fixed": "53bcf55b4538067e6dc36242168866becb987bb7"
}
]
}
],
"versions": [
"7.85.0",
"7.84.0",
"7.83.1",
"7.83.0",
"7.82.0",
"7.81.0",
"7.80.0",
"7.79.1",
"7.79.0",
"7.78.0",
"7.77.0",
"curl-7_85_0",
"curl-7_84_0",
"curl-7_83_1",
"curl-7_83_0",
"curl-7_82_0",
"curl-7_81_0",
"curl-7_80_0",
"curl-7_79_1",
"curl-7_79_0",
"curl-7_78_0",
"curl-7_77_0",
"curl-7_76_1",
"curl-7_76_0",
"curl-7_75_0",
"curl-7_74_0"
],
"database_specific": {
"source": "https://curl.se/docs/CURL-CVE-2022-42916.json",
"vanir_signatures": [
{
"id": "CURL-CVE-2022-42916-12531e8b",
"digest": {
"threshold": 0.9,
"line_hashes": [
"75107644506556931257839734745456594778",
"42044597254118802783507473983065446054",
"106485663130800929975671924726703558082",
"15999568815776653480033726278070187576",
"298802949360025253102477335493426961450",
"226031619676144204948728541996323025886",
"83565965808143116816602880943162234402",
"99111331056051150360841119739035710359",
"248371552790000917660180970131853738924",
"138235347098520216592907151270925216",
"332379120256841151707688734596365992864",
"115520424302230138298796121363648023567",
"116875644766770142877076463488246793587",
"104278356396383426619471619116276805662",
"329593957423421623966844451133585797053",
"227230350864470955163156543576614345601",
"175480898032272737354300925689259200686",
"270663691216286470486512797168809679066",
"304787360703412945384302540922630434582",
"327679326065517452833486961146454131127",
"177898379110637064503080678971123011046",
"187519522983891401729004566785046007834",
"201828046743865531488373427948287117845",
"147038231609941192317384960984072747528",
"174988572505711722422001190842731842096",
"186260712260723753909033636883694484089",
"278422629132883446350874988803082327404",
"1676954084558231879176817749451523299",
"229614720272057867854298589476783268798",
"214232556770858808594636913438370761431",
"54962445254502315437201154258309858901",
"209996503232981804868505299647402522137",
"308830015629257446961946828640339021875",
"196144543928929887087831021139237295202",
"182707647717647346469230947290975879069",
"321994174146889560038739064209743410061",
"245798318246260845538571341095419627204",
"308650669242612315274791965913057652582",
"12263600173226882060056727278823402490",
"53327177092035353638536486854703091803",
"133189311330754793865265601033160557464",
"261075140940187401730927381559652894676",
"184217470643600794455378728258914747102",
"57515447276371526737650122354422753157",
"233198043719645789025825038566621441267",
"152653257769245431270585784123078808711"
]
},
"source": "https://github.com/curl/curl.git/commit/53bcf55b4538067e6dc36242168866becb987bb7",
"target": {
"file": "lib/url.c"
},
"deprecated": false,
"signature_type": "Line",
"signature_version": "v1"
},
{
"id": "CURL-CVE-2022-42916-3d926b16",
"digest": {
"length": 5320,
"function_hash": "277931467909993625871566389517568582754"
},
"source": "https://github.com/curl/curl.git/commit/53bcf55b4538067e6dc36242168866becb987bb7",
"target": {
"file": "lib/url.c",
"function": "parseurlandfillconn"
},
"deprecated": false,
"signature_type": "Function",
"signature_version": "v1"
},
{
"id": "CURL-CVE-2022-42916-adb0406b",
"digest": {
"length": 9897,
"function_hash": "31822263015254063761364928829698076583"
},
"source": "https://github.com/curl/curl.git/commit/53bcf55b4538067e6dc36242168866becb987bb7",
"target": {
"file": "lib/url.c",
"function": "create_conn"
},
"deprecated": false,
"signature_type": "Function",
"signature_version": "v1"
}
],
"vanir_signatures_modified": "2026-10-25T01:05:32Z"
}
}
],
"modified": "2026-10-25T01:05:32.136941930Z",
"provider": "osv",
"references": [],
"provider_metadata": {
"CWE": {
"id": "CWE-319",
"desc": "Cleartext Transmission of Sensitive Information"
},
"URL": "https://curl.se/docs/CVE-2022-42916.json",
"www": "https://curl.se/docs/CVE-2022-42916.html",
"award": {
"amount": "2400",
"currency": "USD"
},
"issue": "https://hackerone.com/reports/1730660",
"affects": "both",
"package": "curl",
"severity": "Medium",
"last_affected": "7.85.0"
}
},
"related_cves": [
{
"value": "CVE-2022-42916",
"evidence": "/aliases"
}
],
"security_relevant": true,
"severity_evidence": "/database_specific/severity"
},
"source_id": "core-osv",
"document_id": 444399,
"published_at": "2022-10-26T08:00:00+00:00"
}