Update dependency vm2 to v3.9.18 [SECURITY] #1697

Closed
opened 2026-04-05 16:34:03 +02:00 by MrUnknownDE · 0 comments
Owner

Originally created by @renovate[bot] on 8/6/2023

Mend Renovate

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
vm2 3.9.14 -> 3.9.18 age adoption passing confidence

GitHub Vulnerability Alerts

CVE-2023-29017

vm2 was not properly handling host objects passed to Error.prepareStackTrace in case of unhandled async errors.

  • vm2 version: ~3.9.14
  • Node version: 18.15.0, 19.8.1, 17.9.1

Impact

A threat actor can bypass the sandbox protections to gain remote code execution rights on the host running the sandbox.

Patches

This vulnerability was patched in the release of version 3.9.15 of vm2.

Workarounds

None.

CVE-2023-29199

There exists a vulnerability in source code transformer (exception sanitization logic) of vm2 for versions up to 3.9.15, allowing attackers to bypass handleException() and leak unsanitized host exceptions which can be used to escape the sandbox and run arbitrary code in host context.

Impact

A threat actor can bypass the sandbox protections to gain remote code execution rights on the host running the sandbox.

Patches

This vulnerability was patched in the release of version 3.9.16 of vm2.

Workarounds

None.

References

Github Issue - https://github.com/patriksimek/vm2/issues/516
PoC - https://gist.github.com/leesh3288/f05730165799bf56d70391f3d9ea187c

For more information

If you have any questions or comments about this advisory:

  • Open an issue in VM2

Thanks to Xion (SeungHyun Lee) of KAIST Hacking Lab for disclosing this vulnerability.

CVE-2023-30547

There exists a vulnerability in exception sanitization of vm2 for versions up to 3.9.16, allowing attackers to raise an unsanitized host exception inside handleException() which can be used to escape the sandbox and run arbitrary code in host context.

Impact

A threat actor can bypass the sandbox protections to gain remote code execution rights on the host running the sandbox.

Patches

This vulnerability was patched in the release of version 3.9.17 of vm2.

Workarounds

None.

References

PoC - https://gist.github.com/leesh3288/381b230b04936dd4d74aaf90cc8bb244

For more information

If you have any questions or comments about this advisory:

  • Open an issue in VM2

Thanks to Xion (SeungHyun Lee) of KAIST Hacking Lab for disclosing this vulnerability.

CVE-2023-32314

A sandbox escape vulnerability exists in vm2 for versions up to 3.9.17. It abuses an unexpected creation of a host object based on the specification of Proxy.

Impact

A threat actor can bypass the sandbox protections to gain remote code execution rights on the host running the sandbox.

Patches

This vulnerability was patched in the release of version 3.9.18 of vm2.

Workarounds

None.

References

PoC - https://gist.github.com/arkark/e9f5cf5782dec8321095be3e52acf5ac

For more information

If you have any questions or comments about this advisory:

  • Open an issue in VM2

Thanks to @​arkark (Takeshi Kaneko) of GMO Cybersecurity by Ierae, Inc. for disclosing this vulnerability.

CVE-2023-32313

In versions 3.9.17 and lower of vm2 it was possible to get a read-write reference to the node inspect method and edit options for console.log.

Impact

A threat actor can edit options for console.log.

Patches

This vulnerability was patched in the release of version 3.9.18 of vm2.

Workarounds

After creating a vm make the inspect method readonly with vm.readonly(inspect).

References

PoC - https://gist.github.com/arkark/c1c57eaf3e0a649af1a70c2b93b17550

For more information

If you have any questions or comments about this advisory:

  • Open an issue in VM2

Thanks to @​arkark (Takeshi Kaneko) of GMO Cybersecurity by Ierae, Inc. for disclosing this vulnerability.


Release Notes

patriksimek/vm2 (vm2)

v3.9.18

Compare Source

[fix] Multiple security fixes.
[new] Add resolver API to create a shared resolver for multiple NodeVM instances allowing to cache scripts and increase sandbox startup times.
[new] Allow to pass a function to require.context which is called with the filename allowing to specify the context pre file.

v3.9.17

Compare Source

[fix] Multiple security fixes.

v3.9.16

Compare Source

[fix] Security fix (seehttps://github.com/patriksimek/vm2/issues/5166).

v3.9.15

Compare Source

[fix] Security fix (seehttps://github.com/patriksimek/vm2/issues/5155).


Configuration

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

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

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 Mend Renovate. View repository job log here.

*Originally created by @renovate[bot] on 8/6/2023* [![Mend Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com) This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [vm2](https://togithub.com/patriksimek/vm2) | [`3.9.14` -> `3.9.18`](https://renovatebot.com/diffs/npm/vm2/3.9.14/3.9.18) | [![age](https://developer.mend.io/api/mc/badges/age/npm/vm2/3.9.18?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/vm2/3.9.18?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/vm2/3.9.14/3.9.18?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/vm2/3.9.14/3.9.18?slim=true)](https://docs.renovatebot.com/merge-confidence/) | ### GitHub Vulnerability Alerts #### [CVE-2023-29017](https://togithub.com/patriksimek/vm2/security/advisories/GHSA-7jxr-cg7f-gpgv) vm2 was not properly handling host objects passed to `Error.prepareStackTrace` in case of unhandled async errors. - vm2 version: ~3.9.14 - Node version: 18.15.0, 19.8.1, 17.9.1 ### Impact A threat actor can bypass the sandbox protections to gain remote code execution rights on the host running the sandbox. ### Patches This vulnerability was patched in the release of version `3.9.15` of `vm2`. ### Workarounds None. #### [CVE-2023-29199](https://togithub.com/patriksimek/vm2/security/advisories/GHSA-xj72-wvfv-8985) There exists a vulnerability in source code transformer (exception sanitization logic) of vm2 for versions up to 3.9.15, allowing attackers to bypass `handleException()` and leak unsanitized host exceptions which can be used to escape the sandbox and run arbitrary code in host context. ### Impact A threat actor can bypass the sandbox protections to gain remote code execution rights on the host running the sandbox. ### Patches This vulnerability was patched in the release of version `3.9.16` of `vm2`. ### Workarounds None. ### References Github Issue - [https://github.com/patriksimek/vm2/issues/516](https://togithub.com/patriksimek/vm2/issues/516) PoC - https://gist.github.com/leesh3288/f05730165799bf56d70391f3d9ea187c ### For more information If you have any questions or comments about this advisory: - Open an issue in [VM2](https://togithub.com/patriksimek/vm2) Thanks to [Xion](https://twitter.com/0x10n) (SeungHyun Lee) of [KAIST Hacking Lab](https://kaist-hacking.github.io/) for disclosing this vulnerability. #### [CVE-2023-30547](https://togithub.com/patriksimek/vm2/security/advisories/GHSA-ch3r-j5x3-6q2m) There exists a vulnerability in exception sanitization of vm2 for versions up to 3.9.16, allowing attackers to raise an unsanitized host exception inside `handleException()` which can be used to escape the sandbox and run arbitrary code in host context. ### Impact A threat actor can bypass the sandbox protections to gain remote code execution rights on the host running the sandbox. ### Patches This vulnerability was patched in the release of version `3.9.17` of `vm2`. ### Workarounds None. ### References PoC - https://gist.github.com/leesh3288/381b230b04936dd4d74aaf90cc8bb244 ### For more information If you have any questions or comments about this advisory: - Open an issue in [VM2](https://togithub.com/patriksimek/vm2) Thanks to [Xion](https://twitter.com/0x10n) (SeungHyun Lee) of [KAIST Hacking Lab](https://kaist-hacking.github.io/) for disclosing this vulnerability. #### [CVE-2023-32314](https://togithub.com/patriksimek/vm2/security/advisories/GHSA-whpj-8f3w-67p5) A sandbox escape vulnerability exists in vm2 for versions up to 3.9.17. It abuses an unexpected creation of a host object based on the specification of `Proxy`. ### Impact A threat actor can bypass the sandbox protections to gain remote code execution rights on the host running the sandbox. ### Patches This vulnerability was patched in the release of version `3.9.18` of `vm2`. ### Workarounds None. ### References PoC - https://gist.github.com/arkark/e9f5cf5782dec8321095be3e52acf5ac ### For more information If you have any questions or comments about this advisory: - Open an issue in [VM2](https://togithub.com/patriksimek/vm2) Thanks to @&#8203;arkark (Takeshi Kaneko) of GMO Cybersecurity by Ierae, Inc. for disclosing this vulnerability. #### [CVE-2023-32313](https://togithub.com/patriksimek/vm2/security/advisories/GHSA-p5gc-c584-jj6v) In versions 3.9.17 and lower of vm2 it was possible to get a read-write reference to the node `inspect` method and edit options for `console.log`. ### Impact A threat actor can edit options for `console.log`. ### Patches This vulnerability was patched in the release of version `3.9.18` of `vm2`. ### Workarounds After creating a vm make the `inspect` method readonly with `vm.readonly(inspect)`. ### References PoC - https://gist.github.com/arkark/c1c57eaf3e0a649af1a70c2b93b17550 ### For more information If you have any questions or comments about this advisory: - Open an issue in [VM2](https://togithub.com/patriksimek/vm2) Thanks to @&#8203;arkark (Takeshi Kaneko) of GMO Cybersecurity by Ierae, Inc. for disclosing this vulnerability. --- ### Release Notes <details> <summary>patriksimek/vm2 (vm2)</summary> ### [`v3.9.18`](https://togithub.com/patriksimek/vm2/blob/HEAD/CHANGELOG.md#v3918-2023-05-15) [Compare Source](https://togithub.com/patriksimek/vm2/compare/3.9.17...3.9.18) \[fix] Multiple security fixes. \[new] Add resolver API to create a shared resolver for multiple `NodeVM` instances allowing to cache scripts and increase sandbox startup times. \[new] Allow to pass a function to `require.context` which is called with the filename allowing to specify the context pre file. ### [`v3.9.17`](https://togithub.com/patriksimek/vm2/blob/HEAD/CHANGELOG.md#v3917-2023-04-17) [Compare Source](https://togithub.com/patriksimek/vm2/compare/3.9.16...3.9.17) \[fix] Multiple security fixes. ### [`v3.9.16`](https://togithub.com/patriksimek/vm2/blob/HEAD/CHANGELOG.md#v3916-2023-04-11) [Compare Source](https://togithub.com/patriksimek/vm2/compare/3.9.15...3.9.16) \[fix] Security fix (see[https://github.com/patriksimek/vm2/issues/516](https://togithub.com/patriksimek/vm2/issues/516)6). ### [`v3.9.15`](https://togithub.com/patriksimek/vm2/blob/HEAD/CHANGELOG.md#v3915-2023-04-06) [Compare Source](https://togithub.com/patriksimek/vm2/compare/3.9.14...3.9.15) \[fix] Security fix (see[https://github.com/patriksimek/vm2/issues/515](https://togithub.com/patriksimek/vm2/issues/515)5). </details> --- ### Configuration 📅 **Schedule**: Branch creation - "" (UTC), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **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. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View repository job log [here](https://developer.mend.io/github/OneUptime/oneuptime). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNi4yNy4xIiwidXBkYXRlZEluVmVyIjoiMzYuMjcuMSIsInRhcmdldEJyYW5jaCI6Im1hc3RlciJ9-->
Sign in to join this conversation.
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github/oneuptime#1697