原文标题:How To Stop Losing Money To DeFi Hacks
หัวข้อเดิม: วิธีหยุดเสียเงินให้กับแฮก DeFi
原文作者:sysls,openforage
ผู้เขียนต้นฉบับ: sysls, openforage
原文编译:AididiaoJP,Foresight News
แปลต้นฉบับ: AididiaoJP, Foresight News
在了解大量 DeFi 协议黑客攻击事件,让我对「国家行为体」产生了恐惧。他们技术精湛、资源充足,并且玩的是极度长期的游戏;这些超级反派专注于梳理你协议和基础设施的每一个角落寻找漏洞,而普通协议团队的注意力却被分散在六七个不同的业务方向上。
การศึกษากรณีการโจมตีแฮกเกอร์จำนวนมากในโปรโตคอล DeFi ทำให้ผมเกิดความกลัวต่อ “หน่วยงานรัฐ” พวกเขามีความเชี่ยวชาญทางเทคนิค ทรัพยากรเพียงพอ และเล่นเกมระยะยาวสุด ๆ อาชญากรระดับซูเปอร์ยังคงมุ่งเน้นไปที่การตรวจสอบทุกซอกทุกมุมของโปรโตคอลและโครงสร้างพื้นฐานของคุณ เพื่อค้นหาช่องโหว่ ในขณะที่ทีมโปรโตคอลทั่วไปมักจะถูกเบี่ยงเบนความสนใจไปยังธุรกิจหลายด้าน
我并不自称是安全专家,但我在高风险环境中领导过团队(包括军队和高额资金的金融领域),在思考和规划应急预案方面经验丰富。
ผมไม่ได้อ้างตัวว่าเป็นผู้เชี่ยวชาญด้านความปลอดภัย แต่มีประสบการณ์ในการนำทีมในสภาพแวดล้อมความเสี่ยงสูง (รวมถึงกองทัพและภาคการเงินที่มีทุนสูง) ในการวางแผนและคิดกลยุทธ์รับมือฉุกเฉิน
我真心相信,只有偏执者才能生存。没有团队会一开始就想着「我要对安全采取漫不经心、敷衍了事的态度」;然而黑客攻击还是发生了。我们需要做得更好。
ผมเชื่ออย่างจริงใจว่า เฉพาะผู้ที่มีความคลั่งไคล้เท่านั้นที่จะอยู่รอด ไม่มีทีมใดที่จะเริ่มต้นด้วยความคิดว่า “จะไม่ใส่ใจด้านความปลอดภัย” แต่การโจมตีแฮกเกอร์ก็ยังคงเกิดขึ้น เราต้องทำให้ดีกว่านี้
(数据来源:https://defillama.com/hacks)
(แหล่งข้อมูล: https://defillama.com/hacks)
黑客攻击并不罕见,但频率明显在增加。2026 年第一季度是有记录以来 DeFi 黑客攻击数量最多的季度,而第二季度才刚刚开始,却已经有望打破上一季度的纪录。
การโจมตีแฮกเกอร์ไม่ใช่เรื่องแปลก แต่แนวโน้มเพิ่มขึ้นอย่างชัดเจน ไตรมาสแรกของปี 2026 เป็นไตรมาสที่มีจำนวนการโจมตี DeFi สูงที่สุดเท่าที่บันทึกไว้ และเพิ่งเริ่มไตรมาสที่สอง ก็มีแนวโน้มที่จะทำลายสถิติของไตรมาสก่อนหน้าแล้ว
我的核心假设是:AI 大幅降低了寻找漏洞的成本,并极大扩展了攻击面。人类需要好几周时间才能梳理一百个协议的配置寻找错误配置;而最新的基础模型只需几个小时就能完成。
สมมุติฐานหลักของผมคือ: AI ช่วยลดต้นทุนในการค้นหาช่องโหว่ลงอย่างมาก และขยายพื้นผิวการโจมตีอย่างมหาศาล มนุษย์ต้องใช้เวลาหลายสัปดาห์ในการตรวจสอบการตั้งค่าของโปรโตคอล 100 รายการเพื่อหา configuration ผิดพลาด ในขณะที่โมเดลพื้นฐานรุ่นล่าสุดสามารถทำได้ภายในไม่กี่ชั่วโมง
这应该彻底改变我们思考和应对黑客攻击的方式。那些习惯于 AI 变得强大之前安全措施的老协议,正越来越面临被「秒杀」的风险。
สิ่งนี้ควรเปลี่ยนแปลงวิธีคิดและการรับมือกับการโจมตีแฮกเกอร์ของเราอย่างสิ้นเชิง โปรโตคอลเก่า ๆ ที่เคยพึ่งพามาตรการความปลอดภัยก่อนที่ AI จะแข็งแกร่งขึ้น กำลังเผชิญกับความเสี่ยงที่จะถูก “ฆ่าในพริบตา” มากขึ้นเรื่อย ๆ
(数据来源:https://defillama.com/hacks)
(แหล่งข้อมูล: https://defillama.com/hacks)
黑客攻击的表面面积实际上可以归结为三个:协议团队、智能合约与基础设施、用户信任边界(DSN、社交媒体等)。
พื้นผิวของการโจมตีแฮกเกอร์สามารถสรุปได้เป็นสามด้าน: ทีมโปรโตคอล, สัญญาอัจฉริยะและโครงสร้างพื้นฐาน, ขอบเขตความเชื่อมั่นของผู้ใช้ (DSN, โซเชียลมีเดีย ฯลฯ)
一旦确定了这些表面,就叠加防御层:
เมื่อกำหนดพื้นผิวเหล่านี้แล้ว ก็ให้เสริมชั้นการป้องกันเข้าไป:
· 预防:如果严格执行,就能最大限度降低被利用概率的流程。
· การป้องกัน: หากดำเนินการอย่างเคร่งครัด จะลดความน่าจะเป็นในการถูกใช้ประโยชน์สูงสุด
· 缓解:预防失败时,限制损害程度。
· การบรรเทา: เมื่อการป้องกันล้มเหลว ให้จำกัดความเสียหาย
· 暂停:没有人能在巨大压力下做出最佳决策。一旦确认攻击,就立即启动总杀开关。冻结能阻止进一步损失,并争取思考空间……
· การหยุดชะงัก: ไม่มีใครสามารถตัดสินใจได้ดีที่สุดภายใต้แรงกดดันมหาศาล เมื่อยืนยันการโจมตี ให้เปิดสวิตช์หยุดฉุกเฉินทันที การระงับสามารถป้องกันความเสียหายเพิ่มเติมและให้เวลาคิดวิเคราะห์…
· 夺回:如果你失去了对有毒或被攻破组件的控制,就抛弃并替换它们。
· การคืนความควบคุม: หากคุณสูญเสียการควบคุมส่วนประกอบที่เป็นพิษหรือถูกโจมตี ให้ทิ้งและแทนที่มัน
· 恢复:夺回你失去的东西。提前规划好联系能够冻结资金、撤销交易并协助调查的机构合作伙伴。
· การฟื้นฟู: คืนสิ่งที่สูญเสียไป วางแผนล่วงหน้ากับพันธมิตรที่สามารถระงับทุน ยกเลิกธุรกรรม และช่วยสืบสวนได้
这些原则指导我们实施各层防御的具体行动。
หลักการเหล่านี้เป็นแนวทางในการดำเนินการแต่ละชั้นของการป้องกัน
大量使用前沿模型 AI 来扫描你的代码库和配置,寻找漏洞,并在大范围表面上进行红队测试:尝试在前端寻找漏洞,看它们是否能触达后端。攻击者会这么做。你能通过防御性扫描发现的,他们的进攻性扫描早就发现了。
ใช้โมเดล AI ชั้นนำจำนวนมากในการสแกนฐานโค้ดและการตั้งค่าของคุณ ค้นหาช่องโหว่ และทำการทดสอบแบบ Red Team บนพื้นผิวขนาดใหญ่: ลองค้นหาช่องโหว่จากฝั่งหน้าเว็บ ดูว่ามันสามารถเข้าถึงฝั่งหลังได้หรือไม่ นักโจมตีทำเช่นนี้ คุณสามารถค้นพบได้จากการสแกนเชิงรับ แต่การสแกนเชิงรุกของพวกเขาก็ได้ค้นพบไปแล้วเช่นกัน
使用 pashov、nemesis 等技能,以及 Cantina (Apex) 和 Zellic (V12) 等 AI 平台,在提交完整审计前快速扫描代码库。
ใช้ทักษะเช่น pashov, nemesis รวมถึงแพลตฟอร์ม AI อย่าง Cantina (Apex) และ Zellic (V12) ในการสแกนฐานโค้ดอย่างรวดเร็วก่อนส่งรายงานการตรวจสอบสมบูรณ์
对任何可能造成损害的操作增加多步流程和时间锁。你需要足够的时间在发现异常时介入并冻结。
เพิ่มขั้นตอนและล็อคเวลาในทุกการดำเนินการที่อาจสร้างความเสียหาย คุณต้องมีเวลาพอที่จะเข้าแทรกแซงและระงับเมื่อพบความผิดปกติ
过去反对时间锁和多步设置的理由是会给协议团队带来摩擦。现在你不用太担心这一点:AI 可以轻松在后台点击通过这些摩擦。
เหตุผลก่อนหน้านี้ที่คัดค้านการล็อคเวลาและการตั้งค่าหลายขั้นตอนคือมันจะสร้างความเสียดทานให้กับทีมโปรโตคอล แต่ตอนนี้ไม่ต้องกังวลมากนัก: AI สามารถคลิกผ่านความเสียดทานเหล่านี้ได้อย่างง่ายดายในเบื้องหลัง
智能合约可以通过写下不可变的「事实」来进行防御性构建:如果这些事实被打破,整个协议逻辑就会崩溃。
สัญญาอัจฉริยะสามารถสร้างความปลอดภัยโดยการเขียน “ข้อเท็จจริง” ที่ไม่เปลี่ยนแปลงได้ หากข้อเท็จจริงเหล่านี้ถูกทำลาย โครงสร้างของโปรโตคอลทั้งหมดจะล่มสลาย
你通常只有少数几个不变量。要谨慎地将它们提升到代码层面;在每个函数中强制执行多个不变量会变得难以管理。
โดยปกติคุณจะมีไม่กี่ตัวแปรคงที่ ควรระมัดระวังในการยกระดับมันขึ้นสู่ระดับโค้ด การบังคับใช้หลายตัวในแต่ละฟังก์ชันจะทำให้จัดการยากขึ้น
许多黑客攻击源于被攻破的钱包。你需要这样的配置:即使多签被攻破,也能迅速遏制损害,并将协议带回治理可以决策的状态。
หลายการโจมตีแฮกเกอร์มาจากกระเป๋าเงินที่ถูกโจมตี คุณต้องมีการตั้งค่าที่สามารถควบคุมความเสียหายได้อย่างรวดเร็ว แม้จะมีการโจมตีหลายลายเซ็นก็ตาม และสามารถนำโปรโตคอลกลับสู่สถานะที่สามารถตัดสินใจได้โดยการบริหารจัดการ
这需要在治理(决定一切)和救援(恢复可治理稳定性的能力,但不能替换或推翻治理本身)之间取得平衡。
สิ่งนี้ต้องสมดุลระหว่างการบริหาร (การตัดสินใจทุกอย่าง) กับการช่วยเหลือ (ความสามารถในการฟื้นฟูความเสถียรที่สามารถบริหารจัดการได้ โดยไม่สามารถแทนที่หรือโค่นล้มการบริหารได้)
从一开始就假设:无论你有多聪明,你都会被黑。你的智能合约或依赖项可能会失效。你可能会遭受社会工程攻击,新升级可能会引入你没有预料到的漏洞。
ตั้งแต่แรกเริ่ม คิดเสมอว่า: ไม่ว่าคุณจะฉลาดแค่ไหน คุณก็จะถูกโจมตี สัญญาอัจฉริยะหรือ dependencies ของคุณอาจล้มเหลว การโจมตีแบบวิศวกรรมสังคมก็อาจเกิดขึ้น การอัปเกรดใหม่อาจนำช่องโหว่ที่คุณไม่คาดคิดเข้ามา
一旦你这样思考,限制损害的速率限制和锁定协议的断路器就会成为你最好的朋友。将损害限制在 5-10%,然后冻结,再规划你的应对方案。没有人能在枪林弹雨中做出最佳决策。
เมื่อคุณคิดเช่นนี้ ตัวจำกัดอัตราการเสียหายและสวิตช์ตัดการเชื่อมต่อของโปรโตคอลจะกลายเป็นเพื่อนที่ดีที่สุดของคุณ จำกัดความเสียหายไว้ที่ 5-10% แล้วทำการระงับและวางแผนรับมือ ไม่มีใครสามารถตัดสินใจได้ดีที่สุดในสถานการณ์วิกฤติเต็มไปด้วยอันตราย
เวลาที่ดีที่สุดในการวางแผนคือเดี๋ยวนี้
在被黑之前就思考你的应对方案。尽可能将流程编码化,并与团队一起演练,这样你就不会在冲击发生时手忙脚乱。在 AI 时代,这意味着拥有能够尽可能快地呈现大量信息的技能和算法,并以摘要和长形式分享给你的核心圈子。
คิดล่วงหน้าก่อนถูกโจมตี พยายามเขียนกระบวนการเป็นโค้ดให้มากที่สุด และซ้อมกับทีม เพื่อให้คุณไม่สับสนในช่วงวิกฤติ ในยุค AI นี่หมายถึงการมีทักษะและอัลกอริทึมที่สามารถแสดงข้อมูลจำนวนมากได้อย่างรวดเร็ว และแชร์สรุปหรือข้อมูลในรูปแบบยาวให้กับกลุ่มคนสำคัญของคุณ
你不需要完美,但你必须生存。没有系统从第一天起就是坚不可摧的;通过多次迭代,你会通过吸取教训变得反脆弱。
คุณไม่จำเป็นต้องสมบูรณ์แบบ แต่คุณต้องอยู่รอด ไม่มีระบบใดที่สมบูรณ์แบบตั้งแต่วันแรก ผ่านการทำซ้ำหลายครั้ง คุณจะกลายเป็นระบบที่มีความต้านทานต่อความล้มเหลวจากการเรียนรู้
没有被黑的证据,并不等于你不会被黑。最大舒适点往往就是最大危险点。
หลักฐานว่าไม่เคยถูกโจมตีไม่ได้แปลว่าคุณจะไม่ถูกโจมตี จุดที่รู้สึกปลอดภัยที่สุดมักเป็นจุดอันตรายที่สุด
มาตรการป้องกัน
一旦确定了不变量,就将它们提升为运行时检查。仔细思考哪些不变量实际上值得强制执行。
เมื่อกำหนดตัวแปรคงที่แล้ว ให้ยกระดับเป็นการตรวจสอบในเวลารันไทม์ คิดให้ดีว่าข้อเท็จจริงใดที่ควรบังคับใช้จริง ๆ
这就是 FREI-PI(Function Requirements, Effects, Interactions, Protocol Invariants)模式:在每个触及价值的函数结束时,重新验证该函数承诺要维护的王冠不变量。许多通过 CEI(Checks-Effects-Interactions)的抽干攻击(闪电贷三明治、预言机辅助清算 grief、跨函数偿付能力抽干)都能被函数结束时的不变量检查捕获。
นี่คือโมเดล FREI-PI (Function Requirements, Effects, Interactions, Protocol Invariants): ในแต่ละฟังก์ชันที่เกี่ยวข้องกับค่าของโปรโตคอล ให้ทำการตรวจสอบข้อเท็จจริงที่ไม่เปลี่ยนแปลงอีกครั้งเมื่อจบการทำงาน การโจมตีแบบ CEI (Checks-Effects-Interactions) เช่น การโจมตีแบบสแนปช็อต (flash loan sandwich), การชำระบัญชีด้วย oracle, การดูดเงินจากฟังก์ชันข้ามกัน สามารถจับได้ด้วยการตรวจสอบข้อเท็จจริงในตอนจบของฟังก์ชัน
状态化模糊测试(Stateful fuzzing)会针对协议的完整公开表面生成随机调用序列,并在每一步断言不变量。大多数生产环境中的漏洞都是多笔交易的,状态化模糊测试几乎是唯一可靠的在攻击者之前发现这些路径的方法。
การทดสอบแบบ Stateful fuzzing สร้างชุดคำสั่งเรียกแบบสุ่มบนพื้นผิวสาธารณะของโปรโตคอล และตรวจสอบข้อเท็จจริงในแต่ละขั้นตอน ช่องโหว่ในสภาพแวดล้อมการผลิตส่วนใหญ่มักเป็นหลายธุรกรรม การทดสอบแบบนี้จึงเป็นวิธีเดียวที่เชื่อถือได้ในการค้นหาเส้นทางเหล่านี้ก่อนนักโจมตี
使用不变量测试来断言属性在模糊器能生成的所有调用序列中都成立。辅以形式验证,它能证明属性在所有可达状态下都成立。你的王冠不变量绝对应该接受这种处理。
ใช้การทดสอบข้อเท็จจริงเพื่อยืนยันว่าคุณสมบัติยังคงเป็นจริงในทุกชุดคำสั่งเรียกที่โมเดล fuzz สร้างขึ้น พร้อมกับการพิสูจน์ด้วยแบบฟอร์ม ซึ่งสามารถแสดงให้เห็นว่าคุณสมบัติเป็นจริงในทุกสถานะที่เข้าถึงได้ ข้อเท็จจริงของคุณควรได้รับการรับรองด้วยวิธีนี้อย่างแน่นอน
复杂性是安全的敌人。每一个外部依赖都会扩展攻击面。如果你在设计原语,就把信任谁和信任什么的选择权交给用户。如果无法移除依赖,就对其进行多元化,让没有任何单一故障点能摧毁你的协议。
ความซับซ้อนเป็นศัตรูของความปลอดภัย ทุก dependency ภายนอกเพิ่มพื้นผิวการโจมตี หากคุณออกแบบ primitive ให้ให้ผู้ใช้เลือกว่าจะเชื่อใครและอะไร หากไม่สามารถกำจัด dependency ได้ ควรทำให้มันหลากหลาย เพื่อไม่ให้จุดล้มเหลวเดียวสามารถทำลายโปรโตคอลของคุณได้
将审计范围扩展到模拟预言机和依赖项可能失败的方式,并对如果它们失败可能造成的灾难程度施加速率限制。
ขยายขอบเขตการตรวจสอบไปยังการจำลองวิธีที่ oracle และ dependencies อาจล้มเหลว และกำหนดขีดจำกัดอัตราในการรับมือกับความเสียหายหากเกิดความล้มเหลว
最近的 KelpDAO 漏洞就是一个例子:他们继承了 LayerZero 默认的 requiredDVNCount=1 配置,而这个配置在他们的审计范围之外。最终被攻破的是审计范围之外的链下基础设施。
ช่องโหว่ล่าสุดของ KelpDAO เป็นตัวอย่าง: พวกเขาใช้การตั้งค่า default ของ LayerZero ที่ requiredDVNCount=1 ซึ่งอยู่นอกขอบเขตการตรวจสอบของพวกเขา สุดท้ายแล้ว โครงสร้างพื้นฐานนอกขอบเขตการตรวจสอบบน chain ก็ถูกโจมตี
DeFi 中的大多数表面攻击已经被列举出来。逐一检查每个类别,问它是否适用于你的协议,然后实施针对该攻击向量的控制。培养红队技能,让你的 AI 智能体主动在你的协议中寻找漏洞;这在当下已经是基本要求。
การโจมตีพื้นผิวใน DeFi ส่วนใหญ่มักถูกระบุไว้แล้ว ตรวจสอบแต่ละหมวดหมู่ ถามว่ามันใช้ได้กับโปรโตคอลของคุณหรือไม่ แล้วดำเนินมาตรการควบคุมสำหรับแต่ละช่องโหว่ ฝึกทักษะ Red Team ให้ AI ของคุณค้นหาช่องโหว่ในโปรโตคอลของคุณเอง ซึ่งตอนนี้กลายเป็นข้อบังคับพื้นฐานไปแล้ว
在基于投票的治理中,权力最初集中在团队的多签中,需要时间才能扩散。即使代币分布广泛,委托也往往会将权威集中到少数钱包(有时甚至是 n=1)。当这些钱包被攻破时,游戏就结束了。
ในการบริหารแบบโหวต อำนาจแรกเริ่มอยู่ในกลุ่ม multi-sig ของทีม ต้องใช้เวลาในการกระจายออกไป แม้แต่โทเคนจะแพร่หลาย การมอบหมายอำนาจก็อาจรวมศูนย์อยู่ในกระเป๋าเงินไม่กี่ใบ (บางครั้งถึงขั้น n=1) เมื่อกระเป๋าเหล่านี้ถูกโจมตี เกมก็จบ
部署「守护者钱包」,赋予其严格狭窄的授权:它们只能暂停协议,并且在 >=4/7 阈值下,可以在极端情况下将受损委托轮换到预定义的替换钱包。守护者永远不能执行治理提案。
ติดตั้ง “กระเป๋าเงินผู้พิทักษ์” ที่มีสิทธิ์จำกัดอย่างเข้มงวด: สามารถหยุดโปรโตคอลได้เท่านั้น และภายใต้เกณฑ์ >=4/7 สามารถเปลี่ยนมอบหมายที่เสียหายไปยังกระเป๋าเงินสำรองที่กำหนดไว้ล่วงหน้าได้ในกรณีฉุกเฉิน ผู้พิทักษ์ไม่สามารถดำเนินการเสนอการบริหารใด ๆ ได้ตลอดเวลา
这样,你就拥有了一个始终能恢复可治理稳定性的救援层,而不会拥有推翻治理的权力。失去 >=4/7 守护者的最坏情况概率极低(考虑到持有者多样性),并且一旦治理成熟且分散,这一层可以逐步淘汰。
ด้วยวิธีนี้ คุณจะมีชั้นช่วยเหลือที่สามารถฟื้นฟูความเสถียรในการบริหารได้เสมอ โดยไม่สามารถโค่นล้มการบริหารได้ โอกาสที่ “ผู้พิทักษ์” ที่มีสิทธิ์ >=4/7 จะถูกโจมตีในสถานการณ์เลวร้ายที่สุดนั้นต่ำมาก (เมื่อพิจารณาถึงความหลากหลายของผู้ถือครอง) และเมื่อการบริหารมีความเป็นผู้ใหญ่และกระจายตัว ชั้นนี้ก็สามารถค่อย ๆ ถูกยกเลิกได้
多签钱包是基本要求,最低 4/7。没有单个人控制所有的 7 把密钥。频繁轮换签名者,并且要悄无声息地进行。
กระเป๋าเงิน multi-sig เป็นข้อกำหนดพื้นฐาน อย่างน้อย 4/7 ไม่มีบุคคลใดควบคุมกุญแจทั้ง 7 ใบอย่างสมบูรณ์ ควรเปลี่ยนผู้ลงนามบ่อย ๆ และทำอย่างเงียบ ๆ
密钥永远不应与日常使用的设备交互。如果你用签名设备浏览互联网、收发邮件或打开 Slack,就当这个签名者已经被攻破了。
กุญแจควรไม่เคยเชื่อมต่อกับอุปกรณ์ที่ใช้ในชีวิตประจำวัน หากคุณใช้เครื่องมือเซ็นชื่อในการท่องเว็บ ส่งอีเมล หรือเปิด Slack ก็เท่ากับว่ากุญแจนั้นถูกโจมตีแล้ว
拥有多个多签,每个有不同的用途。假设至少有一个完整多签会被攻破,并从那里开始规划。没有任何单个人应该拥有足够控制权来攻破协议,即使在极端情景下(绑架、酷刑等)也是如此。
มีหลายกระเป๋าเงิน multi-sig แต่ละใบมีวัตถุประสงค์แตกต่างกัน สมมุติว่ามีอย่างน้อยหนึ่งใบที่ถูกโจมตีและเริ่มวางแผนจากจุดนั้น ไม่มีบุคคลใดควรมีอำนาจควบคุมเพียงพอที่จะโจมตีโปรโตคอลได้ แม้ในสถานการณ์สุดขีด (การลักพาตัว การทรมาน ฯลฯ)
如果你有资源,相对于协议 TVL 设置一个高额漏洞赏金是非常值得的;即使你是相对较小的协议,漏洞赏金也应该尽可能慷慨(例如最低 7-8 位数)。
ถ้าคุณมีทรัพยากร การตั้งรางวัลสำหรับช่องโหว่ในระดับสูงเมื่อเทียบกับ TVL ของโปรโตคอลเป็นสิ่งที่คุ้มค่า แม้แต่โปรโตคอลขนาดเล็กก็ควรให้รางวัลช่องโหว่ในระดับที่ใจกว้างที่สุด (เช่น ตัวเลขหลักแสนถึงหลักล้าน)
如果你面对的是国家行为体的攻击,他们可能不会谈判,但你仍然可以参与「白帽安全港」计划,授权白帽代表你行动以保护资金,并收取漏洞金额的一定百分比作为费用(实际上是由存款人支付的赏金)。
ถ้าคุณเผชิญกับการโจมตีจากหน่วยงานรัฐ พวกเขาอาจไม่เจรจา แต่คุณยังสามารถเข้าร่วมโครงการ “White Hat Safe Harbor” ได้ โดยให้สิทธิ์ White Hat ดำเนินการแทนคุณเพื่อปกป้องทุน และรับส่วนแบ่งเป็นเปอร์เซ็นต์ของมูลค่าช่องโหว่ (ซึ่งจริง ๆ แล้วจ่ายโดยผู้ฝากเงิน)
我之前写过,随着大语言模型变得更聪明,聘请审计师的边际价值会下降。我仍然坚持这一观点,但我的看法有所转变。
ผมเคยเขียนไว้ก่อนว่า เมื่อโมเดลภาษาขนาดใหญ่ฉลาดขึ้น มูลค่าการจ้างนักตรวจสอบก็จะลดลง ผมยังคงเชื่อในแนวคิดนี้ แต่ความเห็นของผมได้เปลี่ยนไปบ้างแล้ว
首先,好的审计师会走在曲线前面。如果你正在做一些新颖的东西,你的代码及其漏洞可能不在训练数据中,单纯增加 Token 数量尚未被证明能有效发现新型漏洞。你不希望成为独特漏洞的第一个样本点。
อันดับแรก นักตรวจสอบที่ดีจะอยู่ล้ำหน้ากว่าเส้นโค้ง หากคุณกำลังทำสิ่งใหม่ โค้ดและช่องโหว่ของคุณอาจไม่อยู่ในข้อมูลการฝึก โมเดลที่เพิ่ม Token อย่างเดียวยังไม่ได้รับการพิสูจน์ว่าสามารถค้นพบช่องโหว่ใหม่ได้ คุณไม่อยากเป็นตัวอย่างแรกของช่องโหว่เฉพาะ
其次,一个被低估的好处是:聘请审计师是在用他们的声誉做担保。如果他们签字批准而你被攻击,他们会受到强烈激励来帮忙。与那些职业就是做安全的人建立关系,是巨大的优势。
ประโยชน์ที่มักถูกมองข้ามคือ การจ้างนักตรวจสอบเป็นการใช้ชื่อเสียงของพวกเขาเป็นประกัน หากพวกเขาเซ็นอนุมัติและคุณถูกโจมตี พวกเขาจะมีแรงจูงใจสูงที่จะช่วยเหลือ การสร้างความสัมพันธ์กับผู้เชี่ยวชาญด้านความปลอดภัยเป็นข้อได้เปรียบอย่างมาก
将操作安全视为成功指标。进行钓鱼演练;聘请(可信的)红队尝试对团队进行社会工程攻击。准备备用硬件钱包和设备,以便在需要时替换整个多签。你不希望在 D-day 时匆忙去购买这些东西。
มองความปลอดภัยในการดำเนินงานเป็นตัวชี้วัดความสำเร็จ ฝึกซ้อมการโจมตีแบบฟิชชิ่ง จ้าง Red Team (ที่เชื่อถือได้) ทดสอบการโจมตีทางสังคม เตรียมฮาร์ดแวร์วอลเล็ตสำรองและอุปกรณ์อื่น ๆ เพื่อเปลี่ยนกระเป๋า multi-sig ทั้งหมดในกรณีฉุกเฉิน คุณไม่อยากรีบซื้อของเหล่านี้ในวัน D-day
缓解措施
มาตรการบรรเทา
你的退出路径就是损失上限
เส้นทางออกของคุณคือขีดจำกัดความเสียหายสูงสุด
任何将价值移出协议的路径的封顶大小,就是该路径被漏洞滥用时的最大理论损失。简单来说:没有每区块上限的铸币函数,就是给任何无限铸币漏洞开了一张空白支票。没有周上限的赎回函数,就是给任何资产余额损坏开了一张空白支票。
เส้นทางที่นำมูลค่าออกจากโปรโตคอลที่มีขีดจำกัดคือความเสียหายสูงสุดที่เป็นไปได้ เมื่อพูดง่าย ๆ: ฟังก์ชันการสร้างเหรียญที่ไม่มีขีดจำกัดต่อบล็อก ก็เหมือนให้เช็คเปล่าสำหรับช่องโหว่การสร้างเหรียญไม่จำกัด ขณะที่ฟังก์ชันการไถ่ถอนที่ไม่มีขีดจำกัดรายสัปดาห์ ก็เหมือนให้เช็คเปล่าสำหรับความเสียหายของยอดคงเหลือสินทรัพย์ใด ๆ
谨慎思考你的退出路径的明确数值。这个数字需要在你愿意承受的最大损害与用户最极端 UX 需求之间取得平衡。如果出了问题,这就是能让你免于彻底毁灭的东西。
พิจารณาอย่างรอบคอบเกี่ยวกับค่าขีดจำกัดของเส้นทางออก ค่าต้องสมดุลระหว่างความเสียหายสูงสุดที่คุณยอมรับได้ กับความต้องการ UX ที่สุดขีดของผู้ใช้ หากเกิดปัญหา นี่คือสิ่งที่จะช่วยให้คุณรอดพ้นจากการล่มสลายอย่างสมบูรณ์
大多数协议都有可以被调用、交易或接收的列表,以及用户绝对不能做的列表。即使是隐式的,这些也是信任边界,应该被正式化。
โปรโตคอลส่วนใหญ่มีรายการที่สามารถเรียกใช้ ทำธุรกรรม หรือรับได้ รวมถึงรายการที่ผู้ใช้ไม่ควรทำ แม้จะเป็นแบบนามธรรม ก็เป็นขอบเขตความเชื่อมั่นที่ควรเป็นทางการ
将其正式化让你可以设置两阶段 setter,制造有意义的摩擦。攻击者首先需要添加到白名单(和 / 或从黑名单移除),然后才能行动。同时拥有两者意味着攻击者偷偷引入新向量时,必须同时攻破两个流程:市场必须被允许(集成 / 上市),并且该行动不能被禁止(安全审查)。
ทำให้เป็นทางการเพื่อให้สามารถตั้งค่ากระบวนการสองขั้นตอน สร้างความเสียดทานที่มีความหมาย ผู้โจมตีต้องเพิ่มเข้าไปในรายชื่อขาว (และ/หรือเอาออกจากรายชื่อดำ) ก่อนจึงจะดำเนินการได้ การมีทั้งสองรายการหมายความว่า เมื่อผู้โจมตีแอบแฝงช่องทางใหม่ เขาต้องโจมตีสองกระบวนการพร้อมกัน: ตลาดต้องได้รับอนุญาต (บูรณาการ/เข้าจดทะเบียน) และการดำเนินการนั้นต้องไม่ถูกห้าม (การตรวจสอบความปลอดภัย)
夺回
การคืนความควบคุม
如果没有人监控,杀开关就毫无用处。链下监控器应该持续监控不变量,一旦出现问题就算法化地升级警报。最终路径应该到达守护者多签的人类手中,并提供足够上下文,让他们在几分钟内做出决策。
หากไม่มีคนเฝ้าระวัง สวิตช์หยุดฉุกเฉินก็ไร้ประโยชน์ ตัวตรวจสอบนอกสายต้องคอยตรวจสอบข้อเท็จจริงอย่างต่อเนื่อง เมื่อพบปัญหา ควรอัปเกรดการแจ้งเตือนโดยอัลกอริทึม เส้นทางสุดท้ายควรนำไปสู่มือของมนุษย์ที่ดูแล multi-sig และให้ข้อมูลบริบทเพียงพอ เพื่อให้พวกเขาตัดสินใจภายในไม่กี่นาที
如果你中枪了,你要先止血,而不是在倒计时中做决策。对于协议来说,这就是杀开关(也要在 UI 上体现):一个按钮就能在一笔交易中暂停所有价值移动路径。准备一个「暂停一切」的辅助脚本,枚举所有可暂停组件并原子化地暂停它们。
ถ้าคุณโดนโจมตี คุณต้องหยุดเลือดก่อน ไม่ใช่ตัดสินใจในช่วงนับถอยหลัง สำหรับโปรโตคอล นี่คือสวิตช์หยุดฉุกเฉิน (ซึ่งควรแสดงใน UI ด้วย): ปุ่มเดียวที่สามารถหยุดเส้นทางการเคลื่อนย้ายมูลค่าทั้งหมดในธุรกรรมเดียว เตรียมสคริปต์ช่วยเหลือ “หยุดทุกอย่าง” เพื่อวนลูปและหยุดส่วนประกอบที่สามารถหยุดได้อย่างเป็นออปติคัล
只有治理才能解除暂停,因此杀开关不能暂停治理合约本身。如果守护者层可以暂停治理合约,被攻破的守护者层就能永久死锁恢复流程。
เฉพาะการบริหารเท่านั้นที่สามารถปลดล็อคการหยุดชะงักได้ ดังนั้น สวิตช์หยุดฉุกเฉินไม่สามารถหยุดสัญญาบริหารได้ หากชั้นผู้พิทักษ์สามารถหยุดสัญญาบริหารได้ ก็จะทำให้กระบวนการฟื้นฟูถูกล็อคถาวร
冻结、止血,然后把你信任的所有人(小圈子,提前约定)拉到一个沟通频道。你希望表面小一些,以防止信息泄露给攻击者、公众或恶意套利者。
ทำการระงับและหยุดเลือด แล้วเชิญคนที่คุณไว้วางใจ (กลุ่มเล็ก ๆ ที่ตกลงกันล่วงหน้า) เข้าช่องสื่อสาร คุณควรให้กลุ่มเล็ก ๆ นี้เป็นกลุ่มหลัก เพื่อป้องกัน