Skip to content

Conversation

@openverse-bot
Copy link
Collaborator

@openverse-bot openverse-bot commented Nov 24, 2025

This PR contains the following updates:

Package Type Update Change
vue-i18n (source) devDependencies patch 11.1.2 -> 11.1.10

GitHub Vulnerability Alerts

CVE-2025-53892

Summary

The escapeParameterHtml: true option in Vue I18n is designed to protect against HTML/script injection by escaping interpolated parameters. However, this setting fails to prevent execution of certain tag-based payloads, such as <img src=x onerror=...>, if the interpolated value is inserted inside an HTML context using v-html.

This may lead to a DOM-based XSS vulnerability, even when using escapeParameterHtml: true, if a translation string includes minor HTML and is rendered via v-html.

Details

When escapeParameterHtml: true is enabled, it correctly escapes common injection points.

However, it does not sanitize entire attribute contexts, which can be used as XSS vectors via:

<img src=x onerror=alert(1)>

PoC

In your Vue I18n configuration:

const i18n = createI18n({
  escapeParameterHtml: true,
  messages: {
    en: {
      vulnerable: 'Caution: <img src=x onerror="{payload}">'
    }
  }
});

Use this interpolated payload:

const payload = '<script>alert("xss")</script>';
Render the translation using v-html (even not using v-html):

<p v-html="$t('vulnerable', { payload })"></p>
Expected: escaped content should render as text, not execute.

Actual: script executes in some environments (or the payload is partially parsed as HTML).

Impact

This creates a DOM-based Cross-Site Scripting (XSS) vulnerability despite enabling a security option (escapeParameterHtml) .


Release Notes

intlify/vue-i18n (vue-i18n)

v11.1.10

Compare Source

🔒 Security Fixes
  • fix: DOM-based XSS via tag attributes for escape parameter, about details see GHSA-x8qp-wqqm-57ph

Full Changelog: intlify/vue-i18n@v11.1.9...v11.1.10

v11.1.9

Compare Source

Full Changelog: intlify/vue-i18n@v11.1.8...v11.1.9

v11.1.8

Compare Source

What's Changed

⚡ Improvement Features

Full Changelog: intlify/vue-i18n@v11.1.7...v11.1.8

v11.1.7

Compare Source

What's Changed

🐛 Bug Fixes

Full Changelog: intlify/vue-i18n@v11.1.6...v11.1.7

v11.1.6

Compare Source

What's Changed

⚡ Improvement Features

Full Changelog: intlify/vue-i18n@v11.1.5...v11.1.6

v11.1.5

Compare Source

What's Changed

🐛 Bug Fixes

Full Changelog: intlify/vue-i18n@v11.1.4...v11.1.5

v11.1.4

Compare Source

What's Changed

🌟 Features
⚡ Improvement Features

Full Changelog: intlify/vue-i18n@v11.1.3...v11.1.4

v11.1.3

Compare Source

What's Changed

🐛 Bug Fixes
⚡ Improvement Features

Full Changelog: intlify/vue-i18n@v11.1.2...v11.1.3


Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled because a matching PR was automerged previously.

Rebasing: Whenever PR becomes conflicted, 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 Renovate Bot.

@openverse-bot openverse-bot requested a review from a team as a code owner November 24, 2025 08:12
@openverse-bot openverse-bot added dependencies Pull requests that update a dependency file 💻 aspect: code Concerns the software code in the repository 🟨 tech: javascript Involves JavaScript 🟩 priority: low Low priority and doesn't need to be rushed 🧰 goal: internal improvement Improvement that benefits maintainers, not users labels Nov 24, 2025
@openverse-bot openverse-bot requested a review from krysal November 24, 2025 08:12
@openverse-bot openverse-bot added the 🧱 stack: frontend Related to the Nuxt frontend label Nov 24, 2025
@openverse-bot openverse-bot added 🟩 priority: low Low priority and doesn't need to be rushed 💻 aspect: code Concerns the software code in the repository dependencies Pull requests that update a dependency file 🧰 goal: internal improvement Improvement that benefits maintainers, not users 🟨 tech: javascript Involves JavaScript 🧱 stack: frontend Related to the Nuxt frontend labels Nov 24, 2025
@openverse-bot openverse-bot moved this to 👀 Needs Review in Openverse PRs Nov 24, 2025
@github-actions
Copy link

github-actions bot commented Nov 24, 2025

Latest k6 run output1

     ✓ status was 200

     checks.........................: 100.00% ✓ 412      ✗ 0   
     data_received..................: 96 MB   399 kB/s
     data_sent......................: 54 kB   223 B/s
     http_req_blocked...............: avg=50.56µs  min=2.24µs   med=5.13µs   max=2.99ms   p(90)=158.63µs p(95)=185.69µs
     http_req_connecting............: avg=36.71µs  min=0s       med=0s       max=2.92ms   p(90)=104.72µs p(95)=125.94µs
     http_req_duration..............: avg=151.8ms  min=17.29ms  med=101.81ms max=940.4ms  p(90)=333.13ms p(95)=421.11ms
       { expected_response:true }...: avg=151.8ms  min=17.29ms  med=101.81ms max=940.4ms  p(90)=333.13ms p(95)=421.11ms
   ✓ http_req_failed................: 0.00%   ✓ 0        ✗ 412 
     http_req_receiving.............: avg=170.92µs min=45.88µs  med=144.01µs max=1.39ms   p(90)=265.11µs p(95)=344.8µs 
     http_req_sending...............: avg=26.92µs  min=7.65µs   med=23.45µs  max=182.38µs p(90)=42.35µs  p(95)=50.25µs 
     http_req_tls_handshaking.......: avg=0s       min=0s       med=0s       max=0s       p(90)=0s       p(95)=0s      
     http_req_waiting...............: avg=151.6ms  min=17.13ms  med=101.66ms max=939.93ms p(90)=332.95ms p(95)=420.93ms
     http_reqs......................: 412     1.709444/s
     iteration_duration.............: avg=829.89ms min=317.43ms med=930.18ms max=1.78s    p(90)=1.12s    p(95)=1.21s   
     iterations.....................: 76      0.315334/s
     vus............................: 3       min=0      max=6 
     vus_max........................: 60      min=60     max=60

Footnotes

  1. This comment will automatically update with new output each time k6 runs for this PR

@openverse-bot openverse-bot force-pushed the gha-renovatenpm-vue-i18n-vulnerability branch 5 times, most recently from 9a6bb25 to 260518d Compare November 28, 2025 14:39
@openverse-bot openverse-bot force-pushed the gha-renovatenpm-vue-i18n-vulnerability branch 7 times, most recently from fdfda5d to c8e09fb Compare December 4, 2025 11:37
@openverse-bot openverse-bot force-pushed the gha-renovatenpm-vue-i18n-vulnerability branch 7 times, most recently from 7ac4e0c to d7e1a5d Compare December 21, 2025 06:10
@openverse-bot openverse-bot force-pushed the gha-renovatenpm-vue-i18n-vulnerability branch 4 times, most recently from 316b838 to 1f4248a Compare December 31, 2025 15:39
@openverse-bot openverse-bot force-pushed the gha-renovatenpm-vue-i18n-vulnerability branch 7 times, most recently from 6e81211 to c5d30ec Compare January 12, 2026 18:11
@openverse-bot openverse-bot force-pushed the gha-renovatenpm-vue-i18n-vulnerability branch 8 times, most recently from 7125961 to 8961ff7 Compare January 23, 2026 14:11
@openverse-bot openverse-bot force-pushed the gha-renovatenpm-vue-i18n-vulnerability branch 2 times, most recently from 1ee9c12 to 9106b73 Compare January 26, 2026 04:31
@openverse-bot openverse-bot force-pushed the gha-renovatenpm-vue-i18n-vulnerability branch from 9106b73 to 8c155cf Compare January 26, 2026 16:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

💻 aspect: code Concerns the software code in the repository dependencies Pull requests that update a dependency file 🧰 goal: internal improvement Improvement that benefits maintainers, not users 🟩 priority: low Low priority and doesn't need to be rushed 🧱 stack: frontend Related to the Nuxt frontend 🟨 tech: javascript Involves JavaScript

Projects

Status: 👀 Needs Review

Development

Successfully merging this pull request may close these issues.

2 participants