Описание
Sentry Next.js vulnerable to SSRF via Next.js SDK tunnel endpoint
Impact
An unsanitized input of Next.js SDK tunnel endpoint allows sending HTTP requests to arbitrary URLs and reflecting the response back to the user. This could open door for other attack vectors:
- client-side vulnerabilities: XSS/CSRF in the context of the trusted domain;
- interaction with internal network;
- read cloud metadata endpoints (AWS, Azure, Google Cloud, etc.);
- local/remote port scan.
This issue only affects users who have Next.js SDK tunneling feature enabled.
Patches
The problem has been fixed in sentry/nextjs@7.77.0
Workarounds
Disable tunneling by removing the tunnelRoute option from Sentry Next.js SDK config — next.config.js or next.config.mjs.
References
Credits
Ссылки
- https://github.com/getsentry/sentry-javascript/security/advisories/GHSA-2rmr-xw8m-22q9
- https://nvd.nist.gov/vuln/detail/CVE-2023-46729
- https://github.com/getsentry/sentry-javascript/pull/9415
- https://github.com/getsentry/sentry-javascript/commit/ddbda3c02c35aba8c5235e0cf07fc5bf656f81be
- https://blog.sentry.io/next-js-sdk-security-advisory-cve-2023-46729
- https://docs.sentry.io/platforms/javascript/guides/nextjs/manual-setup/#configure-tunneling-to-avoid-ad-blockers
- https://www.npmjs.com/package/@sentry/nextjs/v/7.77.0
Пакеты
@sentry/nextjs
>= 7.26.0, < 7.77.0
7.77.0
Связанные уязвимости
sentry-javascript provides Sentry SDKs for JavaScript. An unsanitized input of Next.js SDK tunnel endpoint allows sending HTTP requests to arbitrary URLs and reflecting the response back to the user. This issue only affects users who have Next.js SDK tunneling feature enabled. The problem has been fixed in version 7.77.0.
Уязвимость набора средств разработки программного обеспечения для создания веб-приложений sentry-javascript, связанная с недостаточной проверкой поступающих запросов, позволяющая нарушителю провести SSRF-атаку