了解一个非常常见的攻击手法 —— 抢跑。
BNO事件代码复现
北京时间2023年7月18日,OceanBNO遭受闪电贷攻击,攻击者已获利约50万美元。SharkTeam对此事件第一时间进行了技术分析,并总结了安全防范手段,希望后续项目可以引以为戒,共筑区块链行业的安全防线。一、事件分析攻击者地址:0xa6566574edc60d7b2adbac
你随身携带的硬件钱包真的安全么?事实上:无论是热钱包还是硬件钱包,你拿到的助记词都是软件通过随机自动帮你生成的。
7月3日,AzukiDAO遭到攻击,攻击者获利约6.9万美元。SharkTeam对此事件第一时间进行了技术分析,并总结了安全防范手段,希望后续项目可以引以为戒,共筑区块链行业的安全防线。一、事件分析攻击者地址:0x85D231C204B82915c909A05847CCa8557
7月2日,PolyNetwork被攻击,在多条链上增发了价值三百多亿的资产,攻击者已获利约1000万美元。通过分析,我们发现攻击者在4月28日就已实施了攻击,但当时并没有攻击成功,7月2日再次实施攻击并成功,SharkTeam对本次攻击的攻击原理和黑客目前的资金转移模式进行了分析。一、攻击原理
遍历所有的节点处理变量读写关系的示例
在 DeFi 合约中,常见模式是Checks-Effects-Interactions(检查-生效-交互)模式, 不够好,它会让开发者忘记协议的核心不变性。 作者提出了一个新的模式:FREI-PI: 功能检查-生效-交互+协议不变性,让我们更多关注协议的不变性(安全性)。
Checks-Effects-Interactions(检查-生效-交互)
功能检查-生效-交互+协议不变性
本文会涉及到slither中几类call的区别,slither遍历node时的常用的递归框架,以及将这两类知识应用到批量函数调用风险的检测中。
1.理解自杀函数检测自杀函数的风险与应用场景。自杀函数可以做为一种隐藏的transfer的手段。 2.shift汇编函数与其它语言的参数不一致,容易混淆。
Hook 是一个强大功能,可以带来更灵活的组合性。向任何强大的武器一样,使用不当可能会伤害到自己。 当任意调用与 Hook 在一起,更要小心。
09.状态变量覆盖的含义状态变量覆盖是指子类中的状态变量将父类的状态变量进行覆盖,子类和父类使用了相同名称的状态变量。在这种情况下,如果操作子类的状态变量不会修改父类的状态变量,而此时代码的真实意图可能是为了修改父类的状态变量。
1.理解数据依赖性的概念。 2.在源代码分析时,可以从用户的输入跟踪受影响的合约变量。
1.理解irs与irs_ssa的区别。 2.理解实现ssa时的支配边界的定义。 3.理解Node对象常用的方法。
节点、表达式与IR的是什么样的关系?如何根据代码生如何提取出IR指令?在遍历节点时,有哪些对象经常用到。
北京时间6月28日,Themisprotocol遭受闪电贷攻击,攻击者已获利约37万美元。SharkTeam对此事件第一时间进行了技术分析,并总结了安全防范手段,希望后续项目可以引以为戒,共筑区块链行业的安全防线。一、事件分析攻击者地址:0xdb73eb484e7dea3785520d
介绍Slither中Function对象常用的方法及应用示例
Contract对象常用方法分析及应用示例
02.slither基本使用参数解析
Slither基于python开发,它可以无需用户干预的情况下在几秒钟内找到真正的漏洞。它是高度可定制化的,并提供一组API接口来轻松检查和分析Solidity代码。
扫一扫 - 使用登链小程序
41 篇文章,411 学分
74 篇文章,301 学分
30 篇文章,258 学分
158 篇文章,167 学分
11 篇文章,160 学分