The proxy mode of WireMock, can be protected by the network restrictions configuration, as documented in Preventing proxying to and recording from specific target addresses. These restrictions can be configured using the domain names, and in such a case the configuration is vulnerable to the DNS rebinding attacks. A similar patch was applied in WireMock 3.0.0-beta-15 for the WireMock Webhook Extensions.
The root cause of the attack is a defect in the logic which allows for a race condition triggered by a DNS server whose address expires in between the initial validation and the outbound network request that might go to a domain that was supposed to be prohibited. Control over a DNS service is required to exploit this attack, so it has high execution complexity and limited impact.
Affected versions
WireMock 3,x until 3.0.3 (security patch), on default settings in environments with access to the network
WireMock 2.x until 2.35.1 (security patch), on default settings in environments with access to the network
Python WireMock until 2.6.1
WireMock Studio - all versions, this proprietary product was discontinued in 2022
Patches
WireMock 3.0.3 + the 3.0.3-1 Docker image
WireMock 2.35.1 + the 2.35.1-1 Docker image - backport to WireMock 2.x
Python WireMock 2.6.1
Workarounds
For WireMock:
Option 1: Configure WireMock to use IP addresses instead of the domain names in the outbound URLs subject to DNS rebinding
Option 2: Use external firewall rules to define the list of permitted destinations
For WireMock Studio: N/A. Switch to another distribution, there will be no fix provided. The vendor of former WireMock Studio recommends migration to WireMock Cloud
References
CVE-2023-41327 - Related issue in the WireMock Webhooks Extension
Release Notes
wiremock/wiremock (com.github.tomakehurst:wiremock-jre8-standalone)
### [`v2.35.1`](https://togithub.com/wiremock/wiremock/releases/tag/2.35.1): - Security Release
[Compare Source](https://togithub.com/wiremock/wiremock/compare/2.35.0...2.35.1)
🔒 This is a security release that addresses the following issues
- [CVE-2023-41327](https://togithub.com/wiremock/wiremock/security/advisories/GHSA-hq8w-9w8w-pmx7) - Controlled SSRF through URL in the WireMock Webhooks Extension and WireMock Studio
- Overall CVSS Score: 4.6 ([AV:A/AC:L/PR:N/UI:R/S:U/C:N/I:L/A:L/E:F/RL:O/RC:C](https://nvd.nist.gov/vuln-metrics/cvss/v3-calculator?vector=AV:A/AC:L/PR:N/UI:R/S:U/C:N/I:L/A:L/E:F/RL:O/RC:C\&version=3.1))
- [CVE-2023-41329](https://togithub.com/wiremock/wiremock/security/advisories/GHSA-pmxq-pj47-j8j4) - Domain restrictions bypass via DNS
Rebinding in WireMock and WireMock Studio webhooks, proxy and recorder modes
- Overall CVSS Score: 3.9 ([AV:A/AC:H/PR:H/UI:N/S:U/C:L/I:L/A:L/E:F/RL:O/RC:C](https://nvd.nist.gov/vuln-metrics/cvss/v3-calculator?vector=AV:A/AC:H/PR:H/UI:N/S:U/C:L/I:L/A:L/E:F/RL:O/RC:C\&version=3.1))
**NOTE:** WireMock Studio, a proprietary distribution discontinued in 2022, is also affected by those issues and also affected by [CVE-2023-39967 - Overall CVSS Score 8.6](https://togithub.com/wiremock/wiremock/security/advisories/GHSA-676j-xrv3-73vc) - “Controlled and full-read SSRF through URL parameter when testing a request, webhooks and proxy mode”. The fixes will not be provided. The vendor recommends migrating to [WireMock Cloud](https://www.wiremock.io/product) which is available as SaaS and private beta for on-premises deployments
Credits: [@W0rty](https://togithub.com/W0rty), [@numacanedo](https://togithub.com/numacanedo), [@Mahoney](https://togithub.com/Mahoney), [@tomakehurst](https://togithub.com/tomakehurst), [@oleg-nenashev](https://togithub.com/oleg-nenashev)
Configuration
📅 Schedule: Branch creation - "" (UTC), Automerge - At any time (no schedule defined).
🚦 Automerge: Enabled.
♻ Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
[ ] If you want to rebase/retry this PR, check this box
This PR has been generated by Mend Renovate. View repository job log here.
This PR contains the following updates:
2.35.0
->2.35.1
GitHub Vulnerability Alerts
CVE-2023-41329
Impact
The proxy mode of WireMock, can be protected by the network restrictions configuration, as documented in Preventing proxying to and recording from specific target addresses. These restrictions can be configured using the domain names, and in such a case the configuration is vulnerable to the DNS rebinding attacks. A similar patch was applied in WireMock 3.0.0-beta-15 for the WireMock Webhook Extensions.
The root cause of the attack is a defect in the logic which allows for a race condition triggered by a DNS server whose address expires in between the initial validation and the outbound network request that might go to a domain that was supposed to be prohibited. Control over a DNS service is required to exploit this attack, so it has high execution complexity and limited impact.
Affected versions
Patches
Workarounds
For WireMock:
For WireMock Studio: N/A. Switch to another distribution, there will be no fix provided. The vendor of former WireMock Studio recommends migration to WireMock Cloud
References
Release Notes
wiremock/wiremock (com.github.tomakehurst:wiremock-jre8-standalone)
### [`v2.35.1`](https://togithub.com/wiremock/wiremock/releases/tag/2.35.1): - Security Release [Compare Source](https://togithub.com/wiremock/wiremock/compare/2.35.0...2.35.1) 🔒 This is a security release that addresses the following issues - [CVE-2023-41327](https://togithub.com/wiremock/wiremock/security/advisories/GHSA-hq8w-9w8w-pmx7) - Controlled SSRF through URL in the WireMock Webhooks Extension and WireMock Studio - Overall CVSS Score: 4.6 ([AV:A/AC:L/PR:N/UI:R/S:U/C:N/I:L/A:L/E:F/RL:O/RC:C](https://nvd.nist.gov/vuln-metrics/cvss/v3-calculator?vector=AV:A/AC:L/PR:N/UI:R/S:U/C:N/I:L/A:L/E:F/RL:O/RC:C\&version=3.1)) - [CVE-2023-41329](https://togithub.com/wiremock/wiremock/security/advisories/GHSA-pmxq-pj47-j8j4) - Domain restrictions bypass via DNS Rebinding in WireMock and WireMock Studio webhooks, proxy and recorder modes - Overall CVSS Score: 3.9 ([AV:A/AC:H/PR:H/UI:N/S:U/C:L/I:L/A:L/E:F/RL:O/RC:C](https://nvd.nist.gov/vuln-metrics/cvss/v3-calculator?vector=AV:A/AC:H/PR:H/UI:N/S:U/C:L/I:L/A:L/E:F/RL:O/RC:C\&version=3.1)) **NOTE:** WireMock Studio, a proprietary distribution discontinued in 2022, is also affected by those issues and also affected by [CVE-2023-39967 - Overall CVSS Score 8.6](https://togithub.com/wiremock/wiremock/security/advisories/GHSA-676j-xrv3-73vc) - “Controlled and full-read SSRF through URL parameter when testing a request, webhooks and proxy mode”. The fixes will not be provided. The vendor recommends migrating to [WireMock Cloud](https://www.wiremock.io/product) which is available as SaaS and private beta for on-premises deployments Credits: [@W0rty](https://togithub.com/W0rty), [@numacanedo](https://togithub.com/numacanedo), [@Mahoney](https://togithub.com/Mahoney), [@tomakehurst](https://togithub.com/tomakehurst), [@oleg-nenashev](https://togithub.com/oleg-nenashev)Configuration
📅 Schedule: Branch creation - "" (UTC), Automerge - At any time (no schedule defined).
🚦 Automerge: Enabled.
♻ Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR has been generated by Mend Renovate. View repository job log here.