{"metadata": {"vulnerability": "CVE-2026-126346", "count": 12, "kinds": {"milestone": 4, "sighting": 2, "kev": 0, "other": 6}, "linked_omitted": 0}, "data": [{"timestamp": "2026-10-30T06:33:17Z", "date_only": false, "value": "2026-10-30T06:33:17.000000Z", "kind": "sighting", "label": "Published proof of concept", "source": "https://github.com/patrickjuchli/basic-ftp/security/advisories/GHSA-r4jh-29pc-gfqr", "record": "CVE-2026-126346", "field": "creation_timestamp", "uuid": "6e17cd46-670d-436f-8a30-d6eefe8be9de", "url": "https://github.com/patrickjuchli/basic-ftp/security/advisories/GHSA-r4jh-29pc-gfqr", "metric_role": "exploit_publication", "metric_basis": "sighting_report"}, {"timestamp": "2026-11-10T21:12:01.227Z", "date_only": false, "value": "2026-11-10T21:12:01.227Z", "kind": "milestone", "label": "Reserved", "source": "cvelistv5", "record": "CVE-2026-126346", "field": "cveMetadata.dateReserved"}, {"timestamp": "2026-11-12T21:42:09.509Z", "date_only": false, "value": "2026-11-12T21:42:09.509Z", "kind": "milestone", "label": "Published", "source": "cvelistv5", "record": "CVE-2026-126346", "field": "cveMetadata.datePublished", "metric_role": "disclosure", "metric_basis": "recorded_event"}, {"timestamp": "2026-11-12T21:42:09.509Z", "date_only": false, "value": "2026-11-12T21:42:09.509Z", "kind": "other", "label": "Updated", "source": "cvelistv5 / GitHub_M", "record": "CVE-2026-126346", "field": "containers.cna.providerMetadata.dateUpdated"}, {"timestamp": "2026-11-12T21:47:19.737Z", "date_only": false, "value": "2026-11-12T21:47:19.737252Z", "kind": "sighting", "label": "Seen", "source": "https://infosec.exchange/users/cve/statuses/117605665289117275", "record": "CVE-2026-126346", "field": "creation_timestamp", "uuid": "e88aa73c-3934-40fd-b1a1-ae701d44d0c9", "content": "CVE-2026-126346 basic-ftp: Uncaught exception crashes the Node.js process when a password (or resumed-download path) contains CR/LF basic-ftp is an FTP client for Node.js. Prior to 6.2.3, FTPContext.send() throws when a command contains carriage return, line feed, or NUL characters, but calls made from response handlers execute synchronously inside the control socket's data event without an exception boundary. In Client.login(), an attacker-influenced password reaches the PASS command after a server sends a 331 response, and in a resumed download an attacker-influenced remote path reaches the RETR command after a 350 response to REST. The resulting exception does not reject client.access() or downloadTo(), escapes ordinary promise error handling, and terminates the Node.js process, while the validation guard still prevents command injection. This issue is fixed in version 6.2.3.\nhttps://www.cve.org/CVERecord?id=CVE-2026-126346https://github.com/patrickjuchli/basic-ftp/security/advisories/GHSA-r4jh-29pc-gfqrhttps://github.com/patrickjuchli/basic-ftp/commit/0495b906bdf891e68806721b07b333dba65ec88ehttps://github.com/patrickjuchli/basic-ftp/releases/tag/v6.2.3#patrickjuchli #basic-ftp#CVE_2026_126346#bot", "url": "https://infosec.exchange/users/cve/statuses/117605665289117275"}, {"timestamp": "2026-11-12T22:19:19.607Z", "date_only": false, "value": "2026-11-12T22:19:19.607", "kind": "milestone", "label": "Published", "source": "fkie_nvd \u00b7 FKIE_CVE-2026-126346", "record": "FKIE_CVE-2026-126346", "field": "published", "metric_role": "disclosure", "metric_basis": "recorded_event", "linked_record": true}, {"timestamp": "2026-11-12T22:19:19.733Z", "date_only": false, "value": "2026-11-12T22:19:19.733", "kind": "other", "label": "Updated", "source": "fkie_nvd \u00b7 FKIE_CVE-2026-126346", "record": "FKIE_CVE-2026-126346", "field": "lastModified", "linked_record": true}, {"timestamp": "2026-11-12T22:23:50Z", "date_only": false, "value": "2026-11-12T22:23:50Z", "kind": "milestone", "label": "Published", "source": "github \u00b7 GHSA-R4JH-29PC-GFQR", "record": "GHSA-R4JH-29PC-GFQR", "field": "published", "metric_role": "disclosure", "metric_basis": "recorded_event", "linked_record": true}, {"timestamp": "2026-11-12T22:23:50Z", "date_only": false, "value": "2026-11-12T22:23:50Z", "kind": "other", "label": "Updated", "source": "github \u00b7 GHSA-R4JH-29PC-GFQR", "record": "GHSA-R4JH-29PC-GFQR", "field": "modified", "linked_record": true}, {"timestamp": "2026-11-13T15:28:48.090Z", "date_only": false, "value": "2026-11-13T15:28:48.090634Z", "kind": "other", "label": "Recorded", "source": "cvelistv5 / CISA-ADP", "record": "CVE-2026-126346", "field": "containers.adp.0.metrics.0.other.content.timestamp"}, {"timestamp": "2026-11-13T16:03:49.107Z", "date_only": false, "value": "2026-11-13T16:03:49.107Z", "kind": "other", "label": "Updated", "source": "cvelistv5", "record": "CVE-2026-126346", "field": "cveMetadata.dateUpdated"}, {"timestamp": "2026-11-13T16:03:49.107Z", "date_only": false, "value": "2026-11-13T16:03:49.107Z", "kind": "other", "label": "Updated", "source": "cvelistv5 / CISA-ADP", "record": "CVE-2026-126346", "field": "containers.adp.0.providerMetadata.dateUpdated"}], "metrics": {"as_of": "2026-11-15T03:13:47.603Z", "anchors": {"origin": {"timestamp": "2026-11-12T21:42:09.509Z", "date_only": false, "value": "2026-11-12T21:42:09.509Z", "kind": "milestone", "label": "Published", "source": "cvelistv5", "record": "CVE-2026-126346", "field": "cveMetadata.datePublished", "metric_role": "disclosure", "metric_basis": "recorded_event"}, "discovery": null, "report": null, "acknowledgement": null, "disclosure": {"timestamp": "2026-11-12T21:42:09.509Z", "date_only": false, "value": "2026-11-12T21:42:09.509Z", "kind": "milestone", "label": "Published", "source": "cvelistv5", "record": "CVE-2026-126346", "field": "cveMetadata.datePublished", "metric_role": "disclosure", "metric_basis": "recorded_event"}, "exploit_publication": {"timestamp": "2026-10-30T06:33:17Z", "date_only": false, "value": "2026-10-30T06:33:17.000000Z", "kind": "sighting", "label": "Published proof of concept", "source": "https://github.com/patrickjuchli/basic-ftp/security/advisories/GHSA-r4jh-29pc-gfqr", "record": "CVE-2026-126346", "field": "creation_timestamp", "uuid": "6e17cd46-670d-436f-8a30-d6eefe8be9de", "url": "https://github.com/patrickjuchli/basic-ftp/security/advisories/GHSA-r4jh-29pc-gfqr", "metric_role": "exploit_publication", "metric_basis": "sighting_report"}, "exploitation": null, "patch": null}, "vendor_response_time": {"available": false, "missing": ["start", "end"]}, "time_to_exploit": {"available": false, "missing": ["end"]}, "disclosure_to_exploit": {"available": false, "missing": ["end"]}, "disclosure_to_exploit_publication": {"available": true, "seconds": -1177732.509, "hours": -327.14791916666667, "days": -13.631163298611112, "min_seconds": -1177732.509, "max_seconds": -1177732.509, "approximate": false, "ongoing": false, "order_known": true, "batch_listing": false, "end_before_start": true, "start": {"timestamp": "2026-11-12T21:42:09.509Z", "date_only": false, "value": "2026-11-12T21:42:09.509Z", "kind": "milestone", "label": "Published", "source": "cvelistv5", "record": "CVE-2026-126346", "field": "cveMetadata.datePublished", "metric_role": "disclosure", "metric_basis": "recorded_event"}, "end": {"timestamp": "2026-10-30T06:33:17Z", "date_only": false, "value": "2026-10-30T06:33:17.000000Z", "kind": "sighting", "label": "Published proof of concept", "source": "https://github.com/patrickjuchli/basic-ftp/security/advisories/GHSA-r4jh-29pc-gfqr", "record": "CVE-2026-126346", "field": "creation_timestamp", "uuid": "6e17cd46-670d-436f-8a30-d6eefe8be9de", "url": "https://github.com/patrickjuchli/basic-ftp/security/advisories/GHSA-r4jh-29pc-gfqr", "metric_role": "exploit_publication", "metric_basis": "sighting_report"}}, "time_to_patch": {"available": false, "missing": ["start", "end"]}, "total_time_to_patch": {"available": false, "missing": ["start", "end"]}, "disclosure_to_patch": {"available": false, "missing": ["end"]}, "time_unpatched": {"available": true, "seconds": 192698.094611, "hours": 53.52724850305556, "days": 2.2303020209606483, "min_seconds": 192698.094611, "max_seconds": 192698.094611, "approximate": false, "ongoing": true, "order_known": true, "batch_listing": false, "end_before_start": false, "start": {"timestamp": "2026-11-12T21:42:09.509Z", "date_only": false, "value": "2026-11-12T21:42:09.509Z", "kind": "milestone", "label": "Published", "source": "cvelistv5", "record": "CVE-2026-126346", "field": "cveMetadata.datePublished", "metric_role": "disclosure", "metric_basis": "recorded_event"}, "end": {"timestamp": "2026-11-15T03:13:47.603Z", "date_only": false, "label": "As of", "source": "Calculation clock"}}, "exploitation_to_patch": {"available": false, "missing": ["start"]}, "exploit_publication_to_patch": {"available": true, "seconds": 1370430.603611, "hours": 380.67516766972227, "days": 15.86146531957176, "min_seconds": 1370430.603611, "max_seconds": 1370430.603611, "approximate": false, "ongoing": true, "order_known": true, "batch_listing": false, "end_before_start": false, "start": {"timestamp": "2026-10-30T06:33:17Z", "date_only": false, "value": "2026-10-30T06:33:17.000000Z", "kind": "sighting", "label": "Published proof of concept", "source": "https://github.com/patrickjuchli/basic-ftp/security/advisories/GHSA-r4jh-29pc-gfqr", "record": "CVE-2026-126346", "field": "creation_timestamp", "uuid": "6e17cd46-670d-436f-8a30-d6eefe8be9de", "url": "https://github.com/patrickjuchli/basic-ftp/security/advisories/GHSA-r4jh-29pc-gfqr", "metric_role": "exploit_publication", "metric_basis": "sighting_report"}, "end": {"timestamp": "2026-11-15T03:13:47.603Z", "date_only": false, "label": "As of", "source": "Calculation clock"}}}}
