{"api_version":"1","generated_at":"2026-04-23T00:38:24+00:00","cve":"CVE-2017-15042","urls":{"html":"https://cve.report/CVE-2017-15042","api":"https://cve.report/api/cve/CVE-2017-15042.json","docs":"https://cve.report/api","cve_org":"https://www.cve.org/CVERecord?id=CVE-2017-15042","nvd":"https://nvd.nist.gov/vuln/detail/CVE-2017-15042"},"summary":{"title":"CVE-2017-15042","description":"An unintended cleartext issue exists in Go before 1.8.4 and 1.9.x before 1.9.1. RFC 4954 requires that, during SMTP, the PLAIN auth scheme must only be used on network connections secured with TLS. The original implementation of smtp.PlainAuth in Go 1.0 enforced this requirement, and it was documented to do so. In 2013, upstream issue #5184, this was changed so that the server may decide whether PLAIN is acceptable. The result is that if you set up a man-in-the-middle SMTP server that doesn't advertise STARTTLS and does advertise that PLAIN auth is OK, the smtp.PlainAuth implementation sends the username and password.","state":"PUBLIC","assigner":"cve@mitre.org","published_at":"2017-10-05 21:29:00","updated_at":"2019-10-03 00:03:00"},"problem_types":["CWE-319"],"metrics":[],"references":[{"url":"https://github.com/golang/go/issues/22134","name":"https://github.com/golang/go/issues/22134","refsource":"CONFIRM","tags":["Issue Tracking","Patch","Vendor Advisory"],"title":"smtp.PlainAuth susceptible to man-in-the-middle password harvesting [Go 1.8] · Issue #22134 · golang/go · GitHub","mime":"text/html","httpstatus":"200","archivestatus":"200"},{"url":"https://golang.org/cl/68210","name":"https://golang.org/cl/68210","refsource":"CONFIRM","tags":["Vendor Advisory"],"title":"","mime":"text/html","httpstatus":"200","archivestatus":"200"},{"url":"https://access.redhat.com/errata/RHSA-2017:3463","name":"RHSA-2017:3463","refsource":"REDHAT","tags":[],"title":"Red Hat Customer Portal","mime":"text/html","httpstatus":"200","archivestatus":"200"},{"url":"https://access.redhat.com/errata/RHSA-2018:0878","name":"RHSA-2018:0878","refsource":"REDHAT","tags":[],"title":"Red Hat Customer Portal","mime":"text/html","httpstatus":"200","archivestatus":"200"},{"url":"https://groups.google.com/d/msg/golang-dev/RinSE3EiJBI/kYL7zb07AgAJ","name":"https://groups.google.com/d/msg/golang-dev/RinSE3EiJBI/kYL7zb07AgAJ","refsource":"CONFIRM","tags":["Mailing List","Vendor Advisory"],"title":"Google Groups","mime":"text/html","httpstatus":"200","archivestatus":"200"},{"url":"https://security.gentoo.org/glsa/201710-23","name":"GLSA-201710-23","refsource":"GENTOO","tags":["Third Party Advisory"],"title":"Go: Multiple vulnerabilities (GLSA 201710-23) — Gentoo Security","mime":"text/html","httpstatus":"200","archivestatus":"200"},{"url":"http://www.securityfocus.com/bid/101197","name":"101197","refsource":"BID","tags":["Third Party Advisory","VDB Entry"],"title":"Golang Go CVE-2017-15042 Man in the Middle Information Disclosure Vulnerability","mime":"text/html","httpstatus":"200","archivestatus":"0"},{"url":"https://golang.org/cl/68023","name":"https://golang.org/cl/68023","refsource":"CONFIRM","tags":["Issue Tracking","Patch","Vendor Advisory"],"title":"","mime":"text/html","httpstatus":"200","archivestatus":"200"},{"url":"https://www.cve.org/CVERecord?id=CVE-2017-15042","name":"CVE Program record","refsource":"CVE.ORG","tags":["canonical"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2017-15042","name":"NVD vulnerability detail","refsource":"NVD","tags":["canonical","analysis"]}],"affected":[],"timeline":[],"solutions":[],"workarounds":[],"exploits":[],"credits":[],"nvd_cpes":[{"cve_year":"2017","cve_id":"15042","vulnerable":"1","versionEndIncluding":"","cpe1":"cpe","cpe2":"2.3","cpe3":"a","cpe4":"golang","cpe5":"go","cpe6":"1.9","cpe7":"*","cpe8":"*","cpe9":"*","cpe10":"*","cpe11":"*","cpe12":"*","cpe13":"*"},{"cve_year":"2017","cve_id":"15042","vulnerable":"1","versionEndIncluding":"1","cpe1":"cpe","cpe2":"2.3","cpe3":"a","cpe4":"golang","cpe5":"go","cpe6":"1.9","cpe7":"*","cpe8":"*","cpe9":"*","cpe10":"*","cpe11":"*","cpe12":"*","cpe13":"*"},{"cve_year":"2017","cve_id":"15042","vulnerable":"1","versionEndIncluding":"1.8.3","cpe1":"cpe","cpe2":"2.3","cpe3":"a","cpe4":"golang","cpe5":"go","cpe6":"*","cpe7":"*","cpe8":"*","cpe9":"*","cpe10":"*","cpe11":"*","cpe12":"*","cpe13":"*"}],"vendor_comments":[],"enrichments":{"kev":null,"epss":null,"legacy_qids":[{"cve":"CVE-2017-15042","qid":"296075","title":"Oracle Solaris 11.4 Support Repository Update (SRU) 21.69.0 Missing (CPUAPR2020)"},{"cve":"CVE-2017-15042","qid":"710511","title":"Gentoo Linux Go Multiple Vulnerabilities (GLSA 201710-23)"}]},"source_records":{"cve_program":{"CVE_data_meta":{"ASSIGNER":"cve@mitre.org","ID":"CVE-2017-15042","STATE":"PUBLIC"},"affects":{"vendor":{"vendor_data":[{"product":{"product_data":[{"product_name":"n/a","version":{"version_data":[{"version_value":"n/a"}]}}]},"vendor_name":"n/a"}]}},"data_format":"MITRE","data_type":"CVE","data_version":"4.0","description":{"description_data":[{"lang":"eng","value":"An unintended cleartext issue exists in Go before 1.8.4 and 1.9.x before 1.9.1. RFC 4954 requires that, during SMTP, the PLAIN auth scheme must only be used on network connections secured with TLS. The original implementation of smtp.PlainAuth in Go 1.0 enforced this requirement, and it was documented to do so. In 2013, upstream issue #5184, this was changed so that the server may decide whether PLAIN is acceptable. The result is that if you set up a man-in-the-middle SMTP server that doesn't advertise STARTTLS and does advertise that PLAIN auth is OK, the smtp.PlainAuth implementation sends the username and password."}]},"problemtype":{"problemtype_data":[{"description":[{"lang":"eng","value":"n/a"}]}]},"references":{"reference_data":[{"name":"RHSA-2017:3463","refsource":"REDHAT","url":"https://access.redhat.com/errata/RHSA-2017:3463"},{"name":"RHSA-2018:0878","refsource":"REDHAT","url":"https://access.redhat.com/errata/RHSA-2018:0878"},{"name":"101197","refsource":"BID","url":"http://www.securityfocus.com/bid/101197"},{"name":"https://golang.org/cl/68210","refsource":"CONFIRM","url":"https://golang.org/cl/68210"},{"name":"https://golang.org/cl/68023","refsource":"CONFIRM","url":"https://golang.org/cl/68023"},{"name":"https://github.com/golang/go/issues/22134","refsource":"CONFIRM","url":"https://github.com/golang/go/issues/22134"},{"name":"GLSA-201710-23","refsource":"GENTOO","url":"https://security.gentoo.org/glsa/201710-23"},{"name":"https://groups.google.com/d/msg/golang-dev/RinSE3EiJBI/kYL7zb07AgAJ","refsource":"CONFIRM","url":"https://groups.google.com/d/msg/golang-dev/RinSE3EiJBI/kYL7zb07AgAJ"}]}},"nvd":{"publishedDate":"2017-10-05 21:29:00","lastModifiedDate":"2019-10-03 00:03:00","problem_types":["CWE-319"],"metrics":{"baseMetricV3":{"cvssV3":{"version":"3.0","vectorString":"CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N","attackVector":"NETWORK","attackComplexity":"HIGH","privilegesRequired":"NONE","userInteraction":"NONE","scope":"UNCHANGED","confidentialityImpact":"HIGH","integrityImpact":"NONE","availabilityImpact":"NONE","baseScore":5.9,"baseSeverity":"MEDIUM"},"exploitabilityScore":2.2,"impactScore":3.6},"baseMetricV2":{"cvssV2":{"version":"2.0","vectorString":"AV:N/AC:M/Au:N/C:P/I:N/A:N","accessVector":"NETWORK","accessComplexity":"MEDIUM","authentication":"NONE","confidentialityImpact":"PARTIAL","integrityImpact":"NONE","availabilityImpact":"NONE","baseScore":4.3},"severity":"MEDIUM","exploitabilityScore":8.6,"impactScore":2.9,"obtainAllPrivilege":false,"obtainUserPrivilege":false,"obtainOtherPrivilege":false,"userInteractionRequired":false}},"configurations":{"CVE_data_version":"4.0","nodes":[{"operator":"OR","children":[],"cpe_match":[{"vulnerable":true,"cpe23Uri":"cpe:2.3:a:golang:go:1.9:*:*:*:*:*:*:*","cpe_name":[]},{"vulnerable":true,"cpe23Uri":"cpe:2.3:a:golang:go:*:*:*:*:*:*:*:*","versionEndIncluding":"1.8.3","cpe_name":[]}]}]}},"legacy_mitre":{"record":{"CveYear":"2017","CveId":"15042","Ordinal":"112541","Title":"CVE-2017-15042","CVE":"CVE-2017-15042","Year":"2017"},"notes":[{"CveYear":"2017","CveId":"15042","Ordinal":"1","NoteData":"An unintended cleartext issue exists in Go before 1.8.4 and 1.9.x before 1.9.1. RFC 4954 requires that, during SMTP, the PLAIN auth scheme must only be used on network connections secured with TLS. The original implementation of smtp.PlainAuth in Go 1.0 enforced this requirement, and it was documented to do so. In 2013, upstream issue #5184, this was changed so that the server may decide whether PLAIN is acceptable. The result is that if you set up a man-in-the-middle SMTP server that doesn't advertise STARTTLS and does advertise that PLAIN auth is OK, the smtp.PlainAuth implementation sends the username and password.","Type":"Description","Title":null},{"CveYear":"2017","CveId":"15042","Ordinal":"2","NoteData":"2017-10-05","Type":"Other","Title":"Published"},{"CveYear":"2017","CveId":"15042","Ordinal":"3","NoteData":"2018-04-11","Type":"Other","Title":"Modified"}]}}}