Skip to content

Commit 73f7cb7

Browse files
committed
run prettier
1 parent 2c5526b commit 73f7cb7

File tree

1 file changed

+6
-5
lines changed

1 file changed

+6
-5
lines changed

development-guidelines/incident_response.md

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -3,19 +3,20 @@
33
How you respond during an incident is a direct reflection of your preparatory efforts. Shift from a reactive approach to a **proactive** one by planning with the assumption that incidents are inevitable. To fully leverage the following guidelines, consider them during the application development, and not at the final stage.
44

55
## Application design
6+
67
- **Identify the components that should/should not to be**
78
- **Pausable**. While pausing a component can be beneficial during an incident, you must assess its potential impact on other contracts.
89
- **Migrable or upgradeable**. Discovering a bug might necessitate a [migration strategy](https://blog.trailofbits.com/2018/10/29/how-contract-migration-works/) or contract upgradeable to fix the issue. However always be aware that upgradeability has its own [sets of risks](https://blog.trailofbits.com/2020/12/16/breaking-aave-upgradeability/). Making all contracts upgradeable might not be the best approach.
9-
- **Decentralized**. Using decentralized components can sometimes restrict rescue measures.
10+
- **Decentralized**. Using decentralized components can sometimes restrict rescue measures.
1011
- **Evaluate what events are needed**. A missed event in a critical spot might result in unnoticed incidents.
11-
- **Evaluate what components must be on-chain and off-chain**. On-chain components are generally more at risk, but off-chain components push the risks to the off-chain owner.
12+
- **Evaluate what components must be on-chain and off-chain**. On-chain components are generally more at risk, but off-chain components push the risks to the off-chain owner.
1213
- **Use an access control that allows fine-grained access**. Avoid setting all access controls to be available to an EOA. Opt for multisig wallets/MPC, and segregate access (e.g., the key responsible for setting fees shouldn't have access to the upgradeability feature).
1314

1415
## Documentation
1516

1617
- **Document how to interpret abnormal events emission**. Only emitting events isn't sufficient; proper documentation is crucial, and users should be empowered to decode them.
1718
- **Document how to access the wallets**. Clearly outline how to access wallets. Both the location and access procedures for every wallet should be clear and straightforward.
18-
- **Document the deployment and upgrade process**. Deployment and upgrade are risky processes, and must be thoroughly documented. This should include how to test the deployment/upgrade (ex: using fork testing) and how to validate it.
19+
- **Document the deployment and upgrade process**. Deployment and upgrade are risky processes, and must be thoroughly documented. This should include how to test the deployment/upgrade (ex: using fork testing) and how to validate it.
1920
- **Document how to contact the users and external dependencies**. Define guidelines regarding which stakeholders to contact, including the timing and mode of communication in case of incidents.
2021

2122
## Process
@@ -30,7 +31,7 @@ How you respond during an incident is a direct reflection of your preparatory ef
3031
## Threat Intelligence
3132

3233
- **Identify similar protocols, and stay informed of related compromises**. Being aware of vulnerabilities in similar systems can help preemptively address potential threats in your own.
33-
- **Identify dependencies, and monitor their behaviors to be alerted in case of compromise.** Follow twitter, discord, newsletter, etc.
34+
- **Identify dependencies, and monitor their behaviors to be alerted in case of compromise.** Follow twitter, discord, newsletter, etc.
3435
- **Maintain open communication lines with your dependencies owners**. This will help you to stay informed if one of your dependency is compromised.
3536
- **Subscribe to https://newsletter.blockthreat.io/**. Block threat will help you to know about recent incidents
3637

@@ -42,6 +43,6 @@ Additionally, consider conducting a threat modeling exercise. This will identify
4243
- [Emergency Steps – Yearn](https://github.com/yearn/yearn-devdocs/blob/master/docs/developers/v2/EMERGENCY.md)
4344
- [Monitoring & Incident Response - Heidi Wilder (DSS 2023)](https://www.youtube.com/watch?v=TDlkkg8N0wc)
4445

45-
### Examples of incidents retrospective
46+
### Examples of incidents retrospective
4647

4748
- [Yield Protocol](https://medium.com/yield-protocol/post-mortem-of-incident-on-august-5th-2022-7bb70dbb9ada)

0 commit comments

Comments
 (0)