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..................: 98 MB   407 kB/s
     data_sent......................: 54 kB   224 B/s
     http_req_blocked...............: avg=121.71µs min=2.25µs   med=5.06µs   max=3.07ms   p(90)=232.99µs p(95)=1.17ms  
     http_req_connecting............: avg=59.64µs  min=0s       med=0s       max=2.96ms   p(90)=114.66µs p(95)=228.17µs
     http_req_duration..............: avg=160.31ms min=17.12ms  med=107.38ms max=974.7ms  p(90)=355.39ms p(95)=456.42ms
       { expected_response:true }...: avg=160.31ms min=17.12ms  med=107.38ms max=974.7ms  p(90)=355.39ms p(95)=456.42ms
   ✓ http_req_failed................: 0.00%   ✓ 0        ✗ 412 
     http_req_receiving.............: avg=187.23µs min=54.48µs  med=150.76µs max=2.58ms   p(90)=281.57µs p(95)=343.39µs
     http_req_sending...............: avg=30.69µs  min=8.63µs   med=24.54µs  max=188.67µs p(90)=48.83µs  p(95)=87.15µs 
     http_req_tls_handshaking.......: avg=0s       min=0s       med=0s       max=0s       p(90)=0s       p(95)=0s      
     http_req_waiting...............: avg=160.1ms  min=16.99ms  med=107.27ms max=974.41ms p(90)=355.11ms p(95)=456.18ms
     http_reqs......................: 412     1.709518/s
     iteration_duration.............: avg=865.93ms min=282.59ms med=929.44ms max=1.76s    p(90)=1.17s    p(95)=1.22s   
     iterations.....................: 77      0.319497/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 11 times, most recently from 47eab3d to daef98f Compare December 10, 2025 14:42
@openverse-bot openverse-bot force-pushed the gha-renovatenpm-vue-i18n-vulnerability branch 6 times, most recently from b98b1f5 to c4e1237 Compare December 19, 2025 05:10
@openverse-bot openverse-bot force-pushed the gha-renovatenpm-vue-i18n-vulnerability branch 4 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 3 times, most recently from 19ad008 to 494ff71 Compare January 8, 2026 05:11
@openverse-bot openverse-bot force-pushed the gha-renovatenpm-vue-i18n-vulnerability branch from 494ff71 to 26ad730 Compare January 8, 2026 14:44
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