CWE-829: Inclusion of Functionality from Untrusted Control Sphere
CWE-494: Download of Code Without Integrity Check
This project is generating starter projects that are resolving dependencies over HTTP instead of HTTPS.
Additionally, the sample associated with this project are vulnerable to this as well. Any of these artifacts could have been MITM to maliciously compromise them and infect the build artifacts that were produced. Additionally, if any of these JARs or other dependencies were compromised, any developers using these could continue to be infected past updating to fix this.
This vulnerability has a CVSS v3.0 Base Score of 8.1/10
https://nvd.nist.gov/vuln-metrics/cvss/v3-calculator?vector=AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H
This isn't just theoretical
POC code has existed since 2014 to maliciously compromise a JAR file inflight.
See:
MITM Attacks Increasingly Common
See:
Source Locations
|
repositories { |
|
maven { url 'http://repo.jfrog.org/artifactory/gradle-plugins' } |
|
} |
|
mavenCentral(artifactUrls: ['http://maven.springframework.org/milestone']) |
|
maven { url "http://$artifactory:8080/artifactory/repo" } |
|
maven { url "http://dl.bintray.com/kotlin/ktor" } |
|
maven { url "https://dl.bintray.com/kotlin/kotlinx" } |
There are definitely more locations that I've listed here. I know that @wing328 has caught many of them here #2248. I just ask that the team take an extra sweep to check for this anywhere else and be aware of it in future PR's.
Public Disclosure
This issue requires public disclosure as it impacts users that have used this project to generate their starter projects.
A project maintainer needs to file for a CVE number to inform the public about this vulnerability.
If a maintainer on this project works for or is associated with a CNA, please have them file it with them:
cve.mitre.org/cve/request_id.html
Otherwise, an open source CVE should be filed for here:
iwantacve.org
CWE-829: Inclusion of Functionality from Untrusted Control Sphere
CWE-494: Download of Code Without Integrity Check
This project is generating starter projects that are resolving dependencies over HTTP instead of HTTPS.
Additionally, the sample associated with this project are vulnerable to this as well. Any of these artifacts could have been MITM to maliciously compromise them and infect the build artifacts that were produced. Additionally, if any of these JARs or other dependencies were compromised, any developers using these could continue to be infected past updating to fix this.
This vulnerability has a CVSS v3.0 Base Score of 8.1/10
https://nvd.nist.gov/vuln-metrics/cvss/v3-calculator?vector=AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H
This isn't just theoretical
POC code has existed since 2014 to maliciously compromise a JAR file inflight.
See:
MITM Attacks Increasingly Common
See:
Source Locations
openapi-generator/modules/openapi-generator/src/main/resources/Groovy/build.gradle.mustache
Lines 11 to 13 in c1afba7
openapi-generator/modules/openapi-generator/src/main/resources/Groovy/build.gradle.mustache
Lines 22 to 23 in c1afba7
openapi-generator/modules/openapi-generator/src/main/resources/kotlin-server/libraries/ktor/build.gradle.mustache
Lines 60 to 61 in 0eb385c
There are definitely more locations that I've listed here. I know that @wing328 has caught many of them here #2248. I just ask that the team take an extra sweep to check for this anywhere else and be aware of it in future PR's.
Public Disclosure
This issue requires public disclosure as it impacts users that have used this project to generate their starter projects.
A project maintainer needs to file for a CVE number to inform the public about this vulnerability.
If a maintainer on this project works for or is associated with a CNA, please have them file it with them:
cve.mitre.org/cve/request_id.html
Otherwise, an open source CVE should be filed for here:
iwantacve.org