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

Ilariae/security #2

Merged
merged 35 commits into from
Jul 31, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
35 commits
Select commit Hold shift + click to select a range
724164b
introduction wh page
Jul 25, 2024
d3c48ca
grammarly and style checklist checked
Jul 26, 2024
b574fd5
added security page
Jul 26, 2024
7384065
grammarly check
Jul 26, 2024
703950d
style check
Jul 26, 2024
67738da
deleted intro to avoid conflict
Jul 29, 2024
4316d7e
added meta title and description
Jul 29, 2024
c330845
Update learn/security.md
ilariae Jul 29, 2024
a0b25be
Update learn/security.md
ilariae Jul 29, 2024
a036203
Update learn/security.md
ilariae Jul 29, 2024
902a2a8
Update learn/security.md
ilariae Jul 29, 2024
42ac9ea
Update learn/security.md
ilariae Jul 29, 2024
1efa3b7
Update learn/security.md
ilariae Jul 29, 2024
383b646
Update learn/security.md
ilariae Jul 29, 2024
fdfd48d
Update learn/security.md
ilariae Jul 29, 2024
7d14166
Update learn/security.md
ilariae Jul 29, 2024
1025153
Update learn/security.md
ilariae Jul 29, 2024
5865bf3
Update learn/security.md
ilariae Jul 29, 2024
fea029b
Update learn/security.md
ilariae Jul 29, 2024
78081c9
update security page
Jul 29, 2024
dd66cea
Resolved merge conflict in learn/security.md
Jul 29, 2024
9e1ec99
Update learn/security.md
ilariae Jul 29, 2024
12723d3
Merge remote-tracking branch 'origin/ilariae/security' into ilariae/s…
Jul 29, 2024
8e6d9fb
Update learn/security.md
ilariae Jul 29, 2024
687739d
Update learn/security.md
ilariae Jul 29, 2024
9549997
Update learn/security.md
ilariae Jul 29, 2024
259fbec
Resolved conflicts in learn/security.md
Jul 29, 2024
c7d2817
Resolved conflicts in learn/security.md
Jul 29, 2024
0d0f300
Update learn/security.md
ilariae Jul 29, 2024
d3e560e
Update learn/security.md
ilariae Jul 29, 2024
66b22e0
Update learn/security.md
ilariae Jul 29, 2024
8fb1f2b
Update learn/security.md
ilariae Jul 29, 2024
642430d
Update learn/security.md
ilariae Jul 29, 2024
1567c38
Update learn/security.md
ilariae Jul 29, 2024
3114c1e
update security page
Jul 29, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Binary file added .DS_Store
Binary file not shown.
Binary file added images/.DS_Store
Binary file not shown.
Binary file added images/learn/.DS_Store
Binary file not shown.
Binary file added images/learn/introduction/overview.webp
Binary file not shown.
1 change: 1 addition & 0 deletions learn/.pages
Original file line number Diff line number Diff line change
Expand Up @@ -2,4 +2,5 @@ title: Learn
nav:
- index.md
- 'Introduction to Wormhole': 'introduction.md'
- 'Security': security.md
- infrastructure
Empty file removed learn/introduction.md
Empty file.
118 changes: 118 additions & 0 deletions learn/security.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,118 @@
---
title: Security
description: Explore Wormhole's security features, including the Guardian network, governance, monitoring, open-source development, and bug bounty programs.
---
<!--
some missing links will need to be added when pages are created
-->
# Security

## Core Security Assumptions

At its core, Wormhole is secured by a network of [Guardian](#){target=\_blank} nodes that validate and sign messages. If a super majority (e.g., 13 out of 19) of Guardians sign the same message, it can be considered valid. A smart contract on the target chain will verify the signatures and format of the message before approving any transaction.

- Wormhole's core security primitive is its signed messages (signed VAAs)
- The Guardian network is currently secured by a collection of 19 of the world's top [validator companies](https://wormhole-foundation.github.io/wormhole-dashboard/#/?endpoint=Mainnet){target=\_blank}
- Guardians produce signed state attestations (signed VAAs) when requested by a Core Contract integrator
- Every Guardian runs full nodes (rather than light nodes) of every blockchain in the Wormhole network, so if a blockchain suffers a consensus attack or hard fork, the blockchain will disconnect from the network rather than potentially produce invalid signed VAAs
- Any Signed VAA can be verified as authentic by the Core Contract of any other chain
- Relayers are considered untrusted in the Wormhole ecosystem

In summary:

- **Core integrators aren't exposed to risk from chains and contracts they don't integrate with**
- By default, you only trust Wormhole's signing process and the core contracts of the chains you're on
- You can expand your contract and chain dependencies as you see fit

Core assumptions aside, many other factors impact the real-world security of decentralized platforms. Here is more information on additional measures that have been put in place to ensure the security of Wormhole.

## Guardian Network

Wormhole is an evolving platform. While the Guardian set currently comprises 19 validators, this is a limitation of current blockchain technology.

### Governance

Governance is the process through which contract upgrades happen. Guardians manually vote on governance proposals that originate inside the Guardian Network and are then submitted to ecosystem contracts.

This means that governance actions are held to the same security standard as the rest of the system. A two-thirds supermajority of the Guardians is required to pass any governance action.

Governance messages can target any of the various wormhole modules, including the core contracts and all currently deployed token bridge contracts. When a Guardian signs such a message, its signature implies a vote on the action in question. Once more than two-thirds of the Guardians have signed, the message and governance action are considered valid.

All governance actions and contract upgrades have been managed via Wormhole's on-chain governance system.

Via governance, the Guardians can:

- Change the current Guardian set
- Expand the Guardian set
- Upgrade ecosystem contract implementations

The governance system is fully open source in the core repository. See the [Open Source section](#){target=\_blank} for contract source.

## Monitoring

A key element of Wormhole's defense-in-depth strategy is that each Guardian is a highly competent validator company with its own in-house processes for running, monitoring, and securing blockchain operations. This heterogeneous approach to monitoring increases the likelihood that fraudulent activity is detected and reduces the number of single failure points in the system.

Guardians are not just running Wormhole validators; they're running validators for every blockchain inside of Wormhole as well, which allows them to perform monitoring holistically across decentralized computing rather than just at a few single points.

Guardians monitor:

- Block production and consensus of each blockchain - if a blockchain's consensus is violated, it will be disconnected from the network until the Guardians resolve the issue
- Smart contract level data - via processes like the Governor, Guardians constantly monitor the circulating supply and token movements across all supported blockchains
- Guardian level activity - the Guardian Network functions as an autonomous decentralized computing network, complete with its blockchain ([Gateway](#){target=\_blank})

## Gateway And Asset Layer Protections

One of the most powerful aspects of the Wormhole ecosystem is that Guardians effectively have the entire state of DeFi available to them.

Gateway is a Cosmos-based blockchain that runs internally to the Guardian network, whereby the Guardians can effectively execute smart contracts against the current state of all blockchains rather than just one blockchain.

This enables additional protection for the Wormhole Asset Layer in addition to the core assumptions:

- **Global Accountant** - the accountant tracks the total circulating supply of all Wormhole assets across all chains and prevents any blockchain from bridging assets which would violate the supply invariant

In addition to the Global Accountant, Guardians may only sign transfers that do not violate the requirements of the Governor. The [Governor](https://github.com/wormhole-foundation/wormhole/blob/main/whitepapers/0007_governor.md){target=\_blank} tracks inflows and outflows of all blockchains and delays suspicious transfers that may indicate an exploit.

## Open Source

Wormhole builds in the open and is always open source.

- **[Wormhole core repository](https://github.com/wormhole-foundation/wormhole){target=\_blank}**
- **[Wormhole Foundation GitHub organization](https://github.com/wormhole-foundation){target=\_blank}**
- **[Wormhole contract deployments](#){target=\_blank}** <!-- link to core contracts page-->

## Audits

Wormhole has been heavily audited, with _29 third-party audits completed_ and more started.

Wormhole has had audits performed by the following firms, and continues to seek more:

- Trail of Bits
- Neodyme
- Kudelski
- OtterSec
- Certik
- Hacken
- Zellic
- Coinspect
- Halborn

[The most up-to-date list of audits, as well as the final reports](https://github.com/wormhole-foundation/wormhole/blob/main/SECURITY.md#3rd-party-security-audits){target=\blank}.

## Bug Bounties

Wormhole has one of the largest bug bounty programs in software development and has repeatedly shown commitment to engaging with the white hat community.

Wormhole hosts two bug bounty programs:

- An [Immunefi](https://immunefi.com/bug-bounty/wormhole/){target=\blank} program
- As well as a [self-hosted program](https://immunefi.com/bug-bounty/wormhole/){target=\blank}

Both platforms have a top payout of _2.5 million dollars_.

If you are interested in contributing to Wormhole security, please look at this section for [Getting Started as a White Hat](https://github.com/wormhole-foundation/wormhole/blob/main/SECURITY.md#white-hat-hacking){target=\blank}, and follow the [Wormhole Contributor Guidelines](https://github.com/wormhole-foundation/wormhole/blob/main/CONTRIBUTING.md){target=\blank}.

For more information about submitting to the bug bounty programs, refer to the [Wormhole Immunefi page](https://immunefi.com/bug-bounty/wormhole/){target=\blank}.

## Learn More

The [SECURITY.md](https://github.com/wormhole-foundation/wormhole/blob/main/SECURITY.md){target=\blank} from the official repository has the latest security policies and updates.
Loading