CVE-2022-46149: out-of-bounds read possible when setting list-of-pointers

Published Nov 30, 2022
·
Updated

Cap'n Proto is a data interchange format and remote procedure call (RPC) system. Cap'n Proro prior to versions 0.7.1, 0.8.1, 0.9.2, and 0.10.3, as well as versions of Cap'n Proto's Rust implementation prior to 0.13.7, 0.14.11, and 0.15.2 are vulnerable to out-of-bounds read due to logic error handling list-of-list. This issue may lead someone to remotely segfault a peer by sending it a malicious message, if the victim performs certain actions on a list-of-pointer type. Exfiltration of memory is possible if the victim performs additional certain actions on a list-of-pointer type. To be vulnerable, an application must perform a specific sequence of actions, described in the GitHub Security Advisory. The bug is present in inlined code, therefore the fix will require rebuilding dependent applications. Cap'n Proto has C++ fixes available in versions 0.7.1, 0.8.1, 0.9.2, and 0.10.3. The capnp Rust crate has fixes available in versions 0.13.7, 0.14.11, and 0.15.2.

Other sources

If a message consumer expects data of type "list of pointers", and if the consumer performs certain specific actions on such data, then a message producer can cause the consumer to read out-of-bounds memory. This could trigger a process crash in the consumer, or in some cases could allow exfiltration of private in-memory data.

The C++ Cap'n Proto library is also affected by this bug. See the advisory on the main Cap'n Proto repo for a succinct description of the exact circumstances in which the problem can arise.

— OSV

Affected Software

20 affected componentsFixes available
capnproto capnproto<0.7.1
capnproto capnproto>=0.9.0<0.9.2
capnproto capnproto>=0.10.0<0.10.3
capnproto capnproto=0.8.0
capnproto Capnp Rust<0.13.7
capnproto Capnp Rust>=0.14.0<0.14.11
capnproto Capnp Rust>=0.15.0<0.15.2
Fedoraproject Fedora=36
Fedoraproject Fedora=37
debian/capnproto
0.9.2-21.1.0-21.5.0-2
debian/rust-capnp
0.14.11-1.20.19.2-10.27.2-1
debian/capnproto<0.9.2-2
0.9.2-2
debian/capnproto<0.9.2-2
0.9.2-2
debian/capnproto<0.9.2-2
0.9.2-2
debian/rust-capnp<0.14.11-1.1
0.14.11-1.1
debian/rust-capnp<0.14.11-1.1
0.14.11-1.1
debian/rust-capnp<0.14.11-1.1
0.14.11-1.1
rust/capnp>=0.0.0-0<0.13.7
0.13.7
rust/capnp>=0.14.0-0<0.14.11
0.14.11
rust/capnp>=0.15.0-0<0.15.2
0.15.2

Remediation

Recommended actions to resolve this vulnerability, in priority order.

  1. Upgrade

    Upgrade debian/capnproto to a version that resolves this vulnerability.

    Fixed in 0.9.2-2Fixed in 1.1.0-2Fixed in 1.5.0-2
  2. Upgrade

    Upgrade debian/rust-capnp to a version that resolves this vulnerability.

    Fixed in 0.14.11-1.2Fixed in 0.19.2-1Fixed in 0.27.2-1
  3. Upgrade

    Upgrade debian/capnproto to a version that resolves this vulnerability.

    Fixed in 0.9.2-2
  4. Upgrade

    Upgrade debian/rust-capnp to a version that resolves this vulnerability.

    Fixed in 0.14.11-1.1
  5. Upgrade

    Upgrade rust/capnp to a version that resolves this vulnerability.

    Fixed in 0.13.7
  6. Upgrade

    Upgrade rust/capnp to a version that resolves this vulnerability.

    Fixed in 0.14.11
  7. Upgrade

    Upgrade rust/capnp to a version that resolves this vulnerability.

    Fixed in 0.15.2
  8. Upgrade

    Upgrade Cap'n Proto C++ library to a version that resolves this vulnerability.

    Fixed in 0.10.3
  9. Upgrade

    Upgrade capnp Rust crate to a version that resolves this vulnerability.

    Fixed in 0.15.2
  10. Operational

    Rebuild dependent applications after upgrading because the bug is present in inlined code.

Event History

Nov 30, 2022
CVE Published
via MITRE·12:00 AM
Data Sourced
via MITRE·12:00 AM
DescriptionSeverityWeakness
Advisory Published
via OSV·12:00 PM
Data Sourced
via OSV·12:00 PM
DescriptionAffected Software
Data Sourced
via OSV·05:15 PM
Severity

Frequently Asked Questions

1

What is CVE-2022-46149?

CVE-2022-46149 is a vulnerability in Cap'n Proto that allows for out-of-bounds read due to a logic error handling.

2

What is the severity of CVE-2022-46149?

The severity of CVE-2022-46149 is medium with a CVSS score of 5.4.

3

Which versions of Cap'n Proto are affected by CVE-2022-46149?

Versions 0.7.1, 0.8.1, 0.9.2, and 0.10.3 of Cap'n Proto, as well as versions of Cap'n Proto's Rust implementation prior to 0.13.7, 0.14.11, and 0.15.2 are affected by CVE-2022-46149.

4

Where can I find more information about CVE-2022-46149?

You can find more information about CVE-2022-46149 on the official GitHub page of Cap'n Proto and the Fedora project's mailing list.

5

How can I fix CVE-2022-46149?

To fix CVE-2022-46149, it is recommended to update to versions 0.7.1, 0.8.1, 0.9.2, or 0.10.3 of Cap'n Proto, or versions 0.13.7, 0.14.11, or 0.15.2 of Cap'n Proto's Rust implementation.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203