Opitmism คือโปรเจคที่มุ่งหน้า scale เทคโนโลยีของ Ethereum และให้คนมี decentralize economy
OP stack คือ modular + decentralize software ที่เป็นขุมพลังให้ Optimism
ตอนนี้ OP stack เป็นพื้นฐานให้กับ blockchain เช่น Optimism mainnet และ Base อีกด้วย
Optimism Collective คือกลุ่มคนที่ การบริหารจัดการOP Stack
OP Stack codebase ชุดแรกที่ออกมาชื่อ Bedrock เป็น software ที่จะช่วยให้ L2 ต่างๆมีประสิทธิภาพมากขึ้น ใช้ gas น้อยลง และลด technological debt ด้วย
อ่านเพิ่มเกี่ยวกับ Optimism https://www.optimism.io/.เกี่ยวกับ OP Stack https://stack.optimism.io/.
The Optimism network จะได้รับการอัพเกรด Bedrock 6 มิย.นี้ (พรุ่งนี้ละ) เราเลยจัด bounty program ซึ่งเน้นป้องกัน:
การถูกขโมยทรัพย์สินที่ถืออยู่ในสมาร์ทคอนแทร็กต์
การถูกขโมย หรือการตรวจพบว่าเงินถูกตรวจสอบหรือสูญหายอื่นๆ เนื่องจากช่องโหว่ในสมาร์ทคอนแทร็กต์หรือบริการของไคลเอ็นต์บล็อกเชนที่สำคัญ (op-node และ op-geth)
เพื่อส่งเสริมให้มีการรายงานปัญหาให้ทันเวลาเพื่อให้เราสามารถตรวจสอบและตอบสนองได้ การรับรายงานจะไม่ได้รับการยอมรับหลังเวลา 9 โมงเช้าเวลาตะวันออก (EDT) ในวันที่ 5 มิถุนายน ค.ศ. 2023
และโปรแกรม bug bounty จะเปิดให้บริการอีกครั้งเมื่อระบบ Bedrock เปิดใช้งาน
รางวัลจะถูกแจกจ่ายตามผลกระทบของช่องโหว่โดยอิงตามระบบการจัดลำดับความรุนแรงของช่องโหว่ Immunefi Vulnerability Severity Classification System นี่เป็นเกณฑ์ที่มีระดับที่รวดเร็ว 5 ระดับ โดยมีเกณฑ์ที่แยกต่างหากสำหรับเว็บไซต์/แอปพลิเคชันและสมาร์ทคอนแทร็กต์/บล็อกเชน ซึ่งครอบคลุมทุกอย่างตั้งแต่ผลกระทบของการประยุกต์ใช้ไปจนถึงสิทธิ์ที่จำเป็นสำหรับการประยุกต์ใช้สำเร็จได้
รายงานข้อบกพร่องในสมาร์ทคอนแทร็กต์ทุกรายงานจะต้องมีหลักฐานการทดสอบ (PoC) เพื่อให้พิจารณาในการให้รางวัล
สำหรับ KYC, OptimismPBC จะขอใบแจ้งหนี้พร้อมชื่อและที่อยู่ของคุณเพื่อชำระเงินรางวัล
การแข่งขันใดที่การแช่แข็งของเงินที่สามารถกู้คืนผ่านการอัพเกรดจะถือว่ามีความรุนแรงสูง
ช่องโหว่ที่รุนแรงจะถูกจำกัดไว้ที่ 10% ของความเสียหายทางเศรษฐกิจเพิ่มเติมกับความเสียหายทางเงินที่ได้รับผลกระทบ รวมถึงการพิจารณา PR และแบรนด์ตามดุลยพินิจของทีม อย่างไรก็ตาม มีการรับรายงานช่องโหว่ที่รุนแรงด้วยเป็นอย่างต่ำ 75,000 ดอลลาร์สหรัฐสำหรับรายงานช่องโหว่ที่รุนแรง
สำหรับการทดสอบข้อบกพร่องใดๆ เกี่ยวกับการทำธุรกรรมระหว่างโดเมน แนะนำให้ใช้งานบริการด็อกเกอร์และปรับเปลี่ยนการทดสอบการรวมของเรา
ปัญหาที่รู้จักต่อไปนี้ถือว่าอยู่นอกขอบเขตของโครงการรางวัลช่องโหว่นี้
ปัญหาที่รู้จักสำหรับระบบทั้งระบบเก่าและระบบ Bedrock:
มีบักที่ชัดเจนที่จะอนุญาตให้ผู้โจมตีถอนเหรียญ ERC20 เทียบเท่ากับเหรียญ ERC20 จริง (เช่น WBTC) จาก L2 แลกกับเหรียญ ERC20 เทียบเท่ากับเหรียญ ERC20 เทียบเท่ากับเหรียญ ERC20 เทียบเท่ากับเหรียญ ERC20 เทียบเท่ากับเหรียญ ERC20 จริง (เช่น WBTC) ที่จะไม่สามารถรับการชำระเงินใน L2 โดยปกติ หากคุณพบวิธีการหลีกเลี่ยงการป้องกันของเรา เราจะมอบรางวัลให้คุณ ความเป็นไปได้ที่สัญญาของพวกเขาสามารถอัปเกรดผ่านการเซ็นเนอร์มัลติซิก ความเป็นไปได้ที่เอกสารเพื่อป้องกันข้อผิดพลาดยังไม่ได้ทำงาน ข้อบกพร่องใน Lib_MerkleTrie.sol ซึ่งจะป้องกันการถอนเงินจากการสำเร็จในบางกรณี มีวิธีการหลีกเลี่ยงโดยการปรับแต่งพรูฟเพื่อเพิ่มองค์ประกอบเพิ่มเติม ข้อบกพร่องใน Lib_ResolvedDelegateProxy.sol ซึ่งอาจเกิดข้อผิดพลาดในการบันทึกช่องเก็บรักษากุญแจโดยเขียนทับที่อยู่ของการปฏิบัติ ข้อบกพร่องนี้ขึ้นอยู่กับโครงสร้างของสัญญาที่ใช้เป็นผลต่อความเป็นไปได้ของ Optimism แต่ Optimism ไม่ได้รับผลกระทบ ปัญหาที่รู้จักสำหรับระบบเก่า:
ผู้ใช้ไม่สามารถกำหนดราคาแก๊สใน L1 ได้ OVM_GasPriceOracle เป็นคนควบคุมโดย Optimism และรับผิดชอบในการกำหนดราคาแก๊สใน L1 ปัญหาที่รู้จักสำหรับระบบ Bedrock:
มีกรณีเฉพาะที่เงิน ETH ที่ฝากไว้ใน OptimismPortal โดยที่จะไม่สามารถกู้คืนได้: เมื่อธุรกรรมฝากล้มเหลวที่จะดำเนินการ ยอดเงินในบัญชีของผู้ส่งยังคงเพิ่มขึ้นตามมูลค่าเหรียญที่ถูกสร้าง อย่างไรก็ตาม หากผู้ส่งใน L1 ของธุรกรรมฝากเป็นสัญญาณ จะมีการเชื่อมโยงที่ผิดพลาดเกิดขึ้น และที่อยู่เชื่อมโยงนี้จะได้รับเหรียญที่ถูกสร้างใน L2 โดยทั่วไปสัญญาณใน L1 จะไม่สามารถกู้คืนเงินได้ เราได้ระบุความเสี่ยงนี้และขอให้ผู้ใช้ใช้ประโยชน์จากสัญญาณ CrossDomainMessenger ของเราซึ่งให้มาตรการความปลอดภัยเพิ่มเติม ธุรกรรมการฝากสามารถถูกปกป้องได้ด้วยการโจมตี MAX_RESOURCE_LIMIT โดยมีค่าใช้จ่ายสำหรับผู้โจมตี โดยการแก้ไข PR 5064 ซึ่งไม่แก้ไขปัญหาอย่างสมบูรณ์แต่จะเพิ่มค่าใช้จ่ายของการโจมตีแบบสั่นสะเทือน การแก้ไขอย่างสมบูรณ์อาจจำเป็นต้องมีการเปลี่ยนแปลงโครงสร้าง มี 'foot guns' ต่างๆ ในสะพานที่อาจเกิดจากการตั้งค่าเหรียญที่ไม่ถูกต้อง ในการลดความซับซ้อน การออกแบบสะพานของเราไม่พยายามป้องกันการผิดพลาดทั้งหมดของผู้พัฒนาและผู้ใช้ ตัวอย่างของ 'foot guns' เช่น:
มีทั้งสองฝ่าย (หรือไม่มีทั้งสองฝ่าย) ที่จะเป็น OptimismMintable
เหรียญที่เปลี่ยนแปลงจำนวนของเหรียญที่ถือโดยบัญชี เช่นเหรียญที่มีค่าธรรมเนียมตามการโอนและเหรียญที่มีการเบส เมื่อทำงานในโหมด non-archive op-geth มีความยากลำบากในการดำเนินการ deep reorg ขณะนี้เรากำลังทำการแก้ไข การจ่ายเงินจัดการโดยทีม Optimism โดยตรงและมีการเปรียบเทียบในสกุลเงินดอลลาร์สหรัฐ (USD) การจ่ายเงินทั้งหมดจะใช้เงิน USDC ในการดำเนินการ
Critical Level:
Payout: Up to USD $2,000,042
PoC Required
High Level:
Payout: USD $50,000
PoC Required
The rewards for critical level vulnerabilities are up to USD $2,000,042, and proof of concept (PoC) is required to be eligible for the reward.
For high level vulnerabilities, the payout is USD $50,000, and a PoC is also required.
Target: Geth (LEGACY) Type: Blockchain/DLT Link: https://github.com/ethereum-optimism/optimism/tree/master/l2geth
Target: Lib_AddressManager (LEGACY) Type: Smart Contract Link: https://etherscan.io/address/0xdE1FCfB0851916CA5101820A69b13a4E276bd81F
Target: StateCommitmentChain (LEGACY) Type: Smart Contract Link: https://etherscan.io/address/0xBe5dAb4A2e9cd0F27300dB4aB94BeE3A233AEB19
Target: CanonicalTransactionChain (LEGACY) Type: Smart Contract Link: https://etherscan.io/address/0x5E4e65926BA27467555EB562121fac00D24E9dD2
Target: ChainStorageContainer-CTC-batches (LEGACY) Type: Smart Contract Link: https://etherscan.io/address/0xD16463EF9b0338CE3D73309028ef1714D220c024
Target: ChainStorageContainer-SCC-batches (LEGACY) Type: Smart Contract Link: https://etherscan.io/address/0x40e0c049f4671846e9cff93aaed88f2b48e527bb
Target: Proxy__OVM_L1CrossDomainMessenger (LEGACY) Type: Smart Contract Link: https://etherscan.io/address/0x29Ea454F8f2750e345E52e302A0c09f1A5215AC7
Target: OVM_L1CrossDomainMessenger (LEGACY) Type: Smart Contract Link: https://etherscan.io/address/0xd9166833FF12A5F900ccfBf2c8B62a90F1Ca1FD5
Target: Proxy__OVM_L1StandardBridge (LEGACY) Type: Smart Contract Link: https://etherscan.io/address/0x99C9fc46f92E8a1c0deC1b1747d010903E884bE1
Target: L1StandardBridge (LEGACY) Type: Smart Contract Link: https://etherscan.io/address/0x40e0c049f4671846e9cff93aaed88f2b48e527bb
Target: L1StandardBridge (not in use, but included for source code verification) (LEGACY) Type: Smart Contract Link: https://etherscan.io/address/0x25ace71c97B33Cc4729CF772ae268934F7ab5fA1
Target: OVM_L2ToL1MessagePasser (LEGACY) Type: Smart Contract Link: https://optimistic.etherscan.io/address/0x4200000000000000000000000000000000000000
Target: L2CrossDomainMessenger (LEGACY) Type: Smart Contract Link: https://optimistic.etherscan.io/address/0x4200000000000000000000000000000000000007
Target: L2StandardBridge (LEGACY) Type: Smart Contract Link: https://optimistic.etherscan.io/address/0x4200000000000000000000000000000000000010
Target: L2StandardTokenFactory (LEGACY) Type: Smart Contract Link: https://optimistic.etherscan.io/address/0x4200000000000000000000000000000000000012
Target: L2StandardToken (LEGACY) Type: Smart Contract Link: https://optimistic.etherscan.io/address/0xc40f949f8a4e094d1b49a23ea9241d289b7b2819
Target: OVM_ETH (LEGACY) Type: Smart Contract Link: https://optimistic.etherscan.io/address/0xDeadDeAddeAddEAddeadDEaDDEAdDeaDDeAD0000
Target: SequencerFeeVault (LEGACY) Type: Smart Contract Link: https://optimistic.etherscan.io/address/0x4200000000000000000000000000000000000011
Target: OVM_GasPriceOracle (LEGACY) Type: Smart Contract Link: https://optimistic.etherscan.io/address/0x420000000000000000000000000000000000000F
Target: WETH9 (LEGACY) Type: Smart Contract Link: https://optimistic.etherscan.io/address/0x4200000000000000000000000000000000000006
Target: op-geth (Bedrock) Type: Smart Contract Link: https://github.com/ethereum-optimism/op-geth
Target: op-node (Bedrock) Type: Smart Contract Link: https://github.com/ethereum-optimism/optimism/tree/develop/op-node
Target: SystemConfigProxy (Bedrock) Type: Smart Contract Link: https://etherscan.io/address/0x229047fed2591dbec1eF1118d64F7aF3dB9EB290
Target: SystemConfig (Bedrock) Type: Smart Contract Link: https://etherscan.io/address/0x5efa852e92800D1C982711761e45c3FE39a2b6D8
Target: L2OutputOracleProxy (Bedrock) Type: Smart Contract Link: https://etherscan.io/address/0xdfe97868233d1aa22e815a266982f2cf17685a27
Target: L2OutputOracle (Bedrock) Type: Smart Contract Link: https://etherscan.io/address/0xd2E67B6a032F0A9B1f569E63ad6C38f7342c2e00
Target: OptimismPortalProxy (Bedrock) Type: Smart Contract Link: https://etherscan.io/address/0xbEb5Fc579115071764c7423A4f12eDde41f106Ed
Target: OptimismPortal (Bedrock) Type: Smart Contract Link: https://etherscan.io/address/0x28a55488fef40005309e2DA0040DbE9D300a64AB
Target: L1CrossDomainMessengerProxy (Bedrock) Type: Smart Contract Link: https://etherscan.io/address/0x25ace71c97B33Cc4729CF772ae268934F7ab5fA1
Target: L1CrossDomainMessenger (Bedrock) Type: Smart Contract Link: https://etherscan.io/address/0x2150Bc3c64cbfDDbaC9815EF615D6AB8671bfe43
Target: L1ERC721BridgeProxy (Bedrock) Type: Smart Contract Link: https://etherscan.io/address/0x5a7749f83b81B301cAb5f48EB8516B986DAef23D
Target: L1ERC721Bridge (Bedrock) Type: Smart Contract Link: https://etherscan.io/address/0x3268Ed09f76e619331528270B6267D4d2C5Ab5C2
Target: L1StandardBridgeProxy (Bedrock) Type: Smart Contract Link: https://etherscan.io/address/0x99C9fc46f92E8a1c0deC1b1747d010903E884bE1
Target: L1StandardBridge (Bedrock) Type: Smart Contract Link: https://etherscan.io/address/0xBFB731Cd36D26c2a7287716DE857E4380C73A64a
Target: OptimismMintableERC20FactoryProxy (Bedrock) Type: Smart Contract Link: https://etherscan.io/address/0x75505a97BD334E7BD3C476893285569C4136Fa0F
Target: OptimismMintableERC20Factory (Bedrock) Type: Smart Contract Link: https://etherscan.io/address/0xaE849EFA4BcFc419593420e14707996936E365E2
Target: ProxyAdmin (Bedrock) Type: Smart Contract Link: https://etherscan.io/address/0x543bA4AADBAb8f9025686Bd03993043599c6fB04
Target: Lib_AddressManager (Bedrock) Type: Smart Contract Link: https://etherscan.io/address/0xdE1FCfB0851916CA5101820A69b13a4E276bd81F
Target: Geth (Post-Bedrock Migration) Type: Smart Contract Link: https://github.com/ethereum-optimism/optimism/tree/master/l2geth
Target: Lib_AddressManager (Post-Bedrock Migration) Type: Smart Contract Link: https://etherscan.io/address/0xdE1FCfB0851916CA5101820A69b13a4E276bd81F
Target: StateCommitmentChain (Post-Bedrock Migration) Type: Smart Contract Link: https://etherscan.io/address/0xBe5dAb4A2e9cd0F27300dB4aB94BeE3A233AEB19
Target: CanonicalTransactionChain (Post-Bedrock Migration) Type: Smart Contract Link: https://etherscan.io/address/0x5E4e65926BA27467555EB562121fac00D24E9dD2
For Blockchain/DLT:
Network not being able to confirm new transactions (Total network shutdown) - Critical Impact
Direct loss of funds - Critical Impact
Permanent freezing of funds (fix requires hardfork) - Critical Impact
Transient consensus failures - High Impact
For Smart Contract:
Loss of user funds by permanent freezing or direct theft, other than unclaimed yield - Critical Impact
Permanent freezing of funds - Critical Impact
Protocol Insolvency - Critical Impact
Temporary freezing of funds - High Impact
ข้อผิดพลาดต่อไปนี้ถูกยกเว้นจากการตอบแก่ผู้แจ้งเรื่องในโปรแกรมการค้นหาช่องโหว่นี้:
การโจมตีที่ผู้รายงานเองได้โจมตีแล้วและทำให้เกิดความเสียหาย
การโจมตีที่ต้องการการเข้าถึงคีย์/ข้อมูลประจำตัวที่หลุดออกไป
การโจมตีที่ต้องการการเข้าถึงที่อยู่ที่มีสิทธิพิเศษ (การปกครองหรือกลยุทธ์)
สำหรับสมาร์ทคอนแทร็กและบล็อกเชน
ข้อมูลที่ไม่ถูกต้องที่ได้รับจากออรัคเคิลบุคคลที่สาม
ไม่ได้ยกเว้นการโจมตีด้วยการแก้ไขข้อมูลที่ได้จากออรัคเคิล/การโจมตีด้วยเงินกู้แฟลช
การโจมตีทางเศรษฐกิจองค์การ (เช่น การโจมตี 51%)
ช่องโหว่ในการดำเนินการของ 'custom token bridges' ที่เขียนโดยบุคคลที่สามสำหรับการเชื่อมต่อโทเค็นไปยังเครือข่ายของพวกเขา
ขาดความสามารถในการซื้อขายลิควิดิตี้
การวิจารณ์ที่เป็นที่ยอมรับสมบูรณ์
การโจมตีซิบิล
ความเสี่ยงในการกลายเป็นกลุ่มใหญ่
เนื่องจาก Optimism ใช้ฟอร์กของ Geth ปัญหาที่ได้รับการเปิดเผยแก่รากฐานไม่สามารถ "เล่นซ้ำ" ในโปรแกรมการค้นหาช่องโหว่ของ Optimism หากช่องโหว่ได้รับการเปิดเผยแล้ว หากช่องโหว่ถูกเปิดเผยให้ Optimism พร้อมกับ Geth อย่างเดียวกัน ช่องโหว่จะมีสิทธิ์ในโปรแกรมการค้นหาช่องโหว่
ข้อผิดพลาดที่รู้จักต่อไปนี้ถือว่าอยู่นอกขอบเขตของโปรแกรมการค้นหาช่องโหว่นี้:
กิจกรรมต่อไปนี้ถูกห้ามในโปรแกรมการค้นหาช่องโหว่นี้:
การทดสอบกับสัญญาหลักและสัญญาทดสอบสาธารณะ; ควรทดสอบบนเครือข่ายทดสอบส่วนตัว
การทดสอบกับการตรวจสอบราคาหรือสัญญาอัจฉริยะของบุคคลที่สาม
พยายามใช้การโจมตีลักษณะฟิชชิ่งหรือการโจมตีด้านสังคมต่อพนักงานและ/หรือลูกค้าของเรา
การทดสอบกับระบบและแอปพลิเคชันของบุคคลที่สามรวมถึงเว็บไซต์ (เช่นผู้ให้บริการ SSO, ระบบโฆษณา)
การโจมตีการบิดเบือนบริการ
การทดสอบอัตโนมัติของบริการที่สร้างจำนวนข้อมูลสูงอย่างสังเกตเจอ
เปิดเผยเป็นสาธารณะเกี่ยวกับช่องโหว่ที่ยังไม่ได้รับการแก้ไขในการจ่ายรางวัลในโปรแกรมการค้นหาช่องโหว่ที่ถูกล็อกเป็นความลับ