Skip to content

Conversation

@openverse-bot
Copy link
Collaborator

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 17, 2025 12:13
@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 🧱 stack: frontend Related to the Nuxt frontend labels Nov 17, 2025
@openverse-bot openverse-bot moved this to 👀 Needs Review in Openverse PRs Nov 17, 2025
@openverse-bot openverse-bot force-pushed the gha-renovatenpm-vue-i18n-vulnerability branch from d057258 to eea33f3 Compare November 17, 2025 14:40
@github-actions
Copy link

github-actions bot commented Nov 17, 2025

Latest k6 run output1

     ✓ status was 200

     checks.........................: 100.00% ✓ 396      ✗ 0   
     data_received..................: 90 MB   372 kB/s
     data_sent......................: 52 kB   217 B/s
     http_req_blocked...............: avg=53.17µs  min=2.42µs   med=5µs      max=3.61ms   p(90)=155.17µs p(95)=190.39µs
     http_req_connecting............: avg=39.02µs  min=0s       med=0s       max=3.54ms   p(90)=103.86µs p(95)=126.19µs
     http_req_duration..............: avg=155.01ms min=15.83ms  med=116.37ms max=998.46ms p(90)=316.62ms p(95)=398.82ms
       { expected_response:true }...: avg=155.01ms min=15.83ms  med=116.37ms max=998.46ms p(90)=316.62ms p(95)=398.82ms
   ✓ http_req_failed................: 0.00%   ✓ 0        ✗ 396 
     http_req_receiving.............: avg=204.03µs min=67.06µs  med=153.56µs max=4.41ms   p(90)=319.29µs p(95)=418.65µs
     http_req_sending...............: avg=33.58µs  min=7.88µs   med=23.78µs  max=3.05ms   p(90)=41.93µs  p(95)=49.45µs 
     http_req_tls_handshaking.......: avg=0s       min=0s       med=0s       max=0s       p(90)=0s       p(95)=0s      
     http_req_waiting...............: avg=154.77ms min=15.68ms  med=116.09ms max=998.06ms p(90)=316.47ms p(95)=398.62ms
     http_reqs......................: 396     1.646604/s
     iteration_duration.............: avg=825.39ms min=277.85ms med=918.98ms max=1.8s     p(90)=1.12s    p(95)=1.26s   
     iterations.....................: 75      0.311857/s
     vus............................: 0       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 8 times, most recently from 580f05d to 1f9bf67 Compare November 22, 2025 14:07
@openverse-bot openverse-bot force-pushed the gha-renovatenpm-vue-i18n-vulnerability branch from 1f9bf67 to 1515a3f Compare November 22, 2025 20:08
@dhruvkb dhruvkb merged commit cd0ef74 into main Nov 22, 2025
46 checks passed
@dhruvkb dhruvkb deleted the gha-renovatenpm-vue-i18n-vulnerability branch November 22, 2025 21:55
@github-project-automation github-project-automation bot moved this from 👀 Needs Review to 🤝 Merged in Openverse PRs Nov 22, 2025
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: 🤝 Merged

Development

Successfully merging this pull request may close these issues.

3 participants