Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

x/vulndb: potential Go vuln in github.com/cosmos/cosmos-sdk: GHSA-23px-mw2p-46qm #2047

Closed
GoVulnBot opened this issue Sep 6, 2023 · 3 comments
Assignees
Labels
excluded: NOT_IMPORTABLE This vulnerability only exists in a binary and is not importable.

Comments

@GoVulnBot
Copy link

In GitHub Security Advisory GHSA-23px-mw2p-46qm, there is a vulnerability in the following Go packages or modules:

Unit Fixed Vulnerable Ranges
github.com/cosmos/cosmos-sdk 0.46 < 0.46

Cross references:

See doc/triage.md for instructions on how to triage this report.

modules:
    - module: github.com/cosmos/cosmos-sdk
      versions:
        - fixed: 0.46.0
      vulnerable_at: 0.46.0-rc3
      packages:
        - package: github.com/cosmos/cosmos-sdk
summary: Cosmos-SDK Cosmovisor component may be vulnerable to denial of service
description: |-
    **Component**: Cosmovisor **Criticality**: Medium **Affected Versions**:
    Cosmovisor < v1.0.0 (distributed with Cosmos-SDK < 0.46) **Affected Users**:
    Validators and Node operators utilizing unsupported versions of Cosmovisor
    **Impact**: DOS, potential RCE on node depending on configuration

    An issue has been identified on unsupported versions of Cosmovisor which may
    result in a Denial of Service or Remote Code Execution path depending on
    configuration for a node or validator using the vulnerable version to manage
    their node.

    If a validator is utilizing an affected version of Cosmovisor with
    `DAEMON_ALLOW_DOWNLOAD_BINARIES` set to true, a non-default configuration, it
    may be possible for an attacker to trigger a Remote Code Execution path as well
    on the host. In this configuration it is recommended to immediately stop use of
    the `DAEMON_ALLOW_DOWNLOAD_BINARIES` feature, and then proceed with an upgrade
    of Cosmovisor.

    It is recommended that all validators utilizing unsupported versions of
    Cosmovisor to upgrade to the latest supported versions immediately. If you are
    utilizing a forked version of Cosmos-SDK, it is recommended to stop use of
    Cosmovisor until it is possible to update to a supported version of Cosmovisor,
    whether through your project’s fork, or directly compiled from the Cosmos-SDK.
    At the time of this advisory, the latest version of Cosmovisor is v1.5.0.

    Additionally, the Amulet team recommends that developers building chains powered
    by Cosmos-SDK share this advisory with validators and node operators to ensure
    this information is available to all impacted parties within their ecosystems.

    For more information about Cosmovisor, see
    https://docs.cosmos.network/main/tooling/cosmovisor

    This issue was discovered by [Maxwell Dulin](https://maxwelldulin.com) and
    Nathan Kirkland, who reported it to the Cosmos Bug Bounty Program. If you
    believe you have found a bug in the Interchain Stack or would like to contribute
    to the program by reporting a bug, please see
    [https://hackerone.com/cosmos](https://hackerone.com/cosmos).

    ## How to tell if I am affected?

    Running the following command will output whether your cosmovisor version is
    vulnerable to this issue or not.

    Vulnerable to this issue:

    ``` strings ./cosmovisor | grep -q "NEEDED at" && echo "vulnerable" || echo "NOT
    vulnerable"

    vulnerable ```

    NOT vulnerable to this issue:

    ``` strings ./cosmovisor_new | grep -q "NEEDED at" && echo "vulnerable" || echo
    "NOT vulnerable"

    NOT vulnerable ```

    *****

    A Note from Amulet on the Security Advisory Process

    In the interest of timely resolution of this issue for validators and node
    operators, the Amulet team has chosen to use existing processes and resources
    for distributing security advisories within the Cosmos and Interchain
    Ecosystems. Stay tuned as we implement an improved, more robust security
    advisory distribution system that will provide equitable access to information
    about security issues in the Interchain Stack.
ghsas:
    - GHSA-23px-mw2p-46qm
references:
    - advisory: https://github.com/cosmos/cosmos-sdk/security/advisories/GHSA-23px-mw2p-46qm
    - web: https://github.com/cosmos/cosmos-sdk/blob/tools/cosmovisor/v1.5.0/tools/cosmovisor/CHANGELOG.md
    - web: https://github.com/cosmos/cosmos-sdk/releases/tag/v0.46.0
    - advisory: https://github.com/advisories/GHSA-23px-mw2p-46qm

@timothy-king
Copy link
Contributor

The vulnerability is in cosmovisor. The module is github.com/cosmos/cosmos-sdk/cosmovisor at the vulnerable version v0.46.0-rc3. I am marking this as NOT_IMPORTABLE following the reasoning of #255. It's go.mod has the same replace directive issue:

https://github.com/cosmos/cosmos-sdk/blob/v0.46.0-rc3/cosmovisor/go.mod

replace github.com/gogo/protobuf => github.com/regen-network/protobuf v1.3.3-alpha.regen.1

@timothy-king timothy-king self-assigned this Sep 8, 2023
@timothy-king timothy-king added the excluded: NOT_IMPORTABLE This vulnerability only exists in a binary and is not importable. label Sep 8, 2023
@gopherbot
Copy link
Contributor

Change https://go.dev/cl/527176 mentions this issue: data/excluded: batch add 14 excluded reports

@gopherbot
Copy link
Contributor

Change https://go.dev/cl/592762 mentions this issue: data/reports: unexclude 75 reports

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
excluded: NOT_IMPORTABLE This vulnerability only exists in a binary and is not importable.
Projects
None yet
Development

No branches or pull requests

3 participants