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% ✓ 414      ✗ 0   
     data_received..................: 97 MB   402 kB/s
     data_sent......................: 54 kB   225 B/s
     http_req_blocked...............: avg=64.13µs  min=2.3µs    med=4.56µs   max=1.4ms    p(90)=148.5µs  p(95)=471.71µs
     http_req_connecting............: avg=41.06µs  min=0s       med=0s       max=1.35ms   p(90)=98.1µs   p(95)=135.44µs
     http_req_duration..............: avg=151.73ms min=17.2ms   med=91.29ms  max=865.48ms p(90)=351.28ms p(95)=459.99ms
       { expected_response:true }...: avg=151.73ms min=17.2ms   med=91.29ms  max=865.48ms p(90)=351.28ms p(95)=459.99ms
   ✓ http_req_failed................: 0.00%   ✓ 0        ✗ 414 
     http_req_receiving.............: avg=156.1µs  min=43.29µs  med=131.47µs max=1.2ms    p(90)=252.4µs  p(95)=320.59µs
     http_req_sending...............: avg=39.52µs  min=7.56µs   med=21.32µs  max=6.08ms   p(90)=37.64µs  p(95)=65.67µs 
     http_req_tls_handshaking.......: avg=0s       min=0s       med=0s       max=0s       p(90)=0s       p(95)=0s      
     http_req_waiting...............: avg=151.53ms min=17.08ms  med=91.17ms  max=865.3ms  p(90)=350.99ms p(95)=459.63ms
     http_reqs......................: 414     1.717827/s
     iteration_duration.............: avg=822.6ms  min=341.52ms med=821.78ms max=1.64s    p(90)=1.09s    p(95)=1.12s   
     iterations.....................: 77      0.319499/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 8 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 from 8961ff7 to 1ee9c12 Compare January 24, 2026 14:39
@openverse-bot openverse-bot force-pushed the gha-renovatenpm-vue-i18n-vulnerability branch from 1ee9c12 to 9106b73 Compare January 26, 2026 04:31
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