witnet / witnet-rust

Open source Rust implementation of the Witnet decentralized oracle protocol, including full node and wallet backend 👁️🦀
https://docs.witnet.io
GNU General Public License v3.0
179 stars 56 forks source link

RUSTSEC-2022-0040: Multiple soundness issues in `owning_ref` #2244

Open github-actions[bot] opened 2 years ago

github-actions[bot] commented 2 years ago

Multiple soundness issues in owning_ref

Details
Package owning_ref
Version 0.4.1
URL https://github.com/noamtashma/owning-ref-unsoundness
Date 2022-01-26

No patched versions are available at this time. While a pull request with some fixes is outstanding, the maintainer appears to be unresponsive.

See advisory page for additional details.

tmpolaczyk commented 2 years ago

owning_ref is a dependency of async-jsonrpc-client, which is a legacy package that we use in some projects. The async-jsonrpc-client package has many outdated dependencies like futures 0.1, which forces us to add compatibility workarounds such as the Compat01As03 type. The best solution would be to find or create a modern jsonrpc client.

$ cargo tree --no-dedupe --workspace -i owning_ref
owning_ref v0.4.1
└── lock_api v0.1.5
    └── parking_lot v0.7.1
        └── async-jsonrpc-client v0.1.0 (https://github.com/witnet/async-jsonrpc-client?branch=fix-tcp-leak#600a2d69)
            ├── witnet-centralized-ethereum-bridge v0.1.0 (/witnet-rust/bridges/centralized-ethereum)
            ├── witnet-ethereum-bridge v0.1.0 (/witnet-rust/bridges/ethereum)
            ├── witnet_net v0.1.0 (/witnet-rust/net)
            │   ├── witnet-centralized-ethereum-bridge v0.1.0 (/witnet-rust/bridges/centralized-ethereum)
            │   └── witnet_wallet v0.3.2 (/witnet-rust/wallet)
            │       └── witnet v1.5.2 (/witnet-rust)
            └── witnet_wallet v0.3.2 (/witnet-rust/wallet)
                └── witnet v1.5.2 (/witnet-rust)