区块链安全—白话parity多签名合约漏洞

Parity是目前以太坊使用最广泛的钱包之一,此次事件是一起因为只能合约代码漏洞导致的以太币被盗事件。 一、Parity合约漏洞事件概述 由于读者可能没有接触过区块链的知识,所以我在开始的时候将简短的介绍下此应用的背景。首先,我们需要介绍一下Parity。 Parity是用 Rust 语言开发的以太坊节点应用,其特点就是速度块、轻量化,性能远优于 Go 语言实现的 Geth 以太坊客户端。Pa

· 10060浏览 · 2018-10-20 09:18
智能合约逆向初探

前言 说起以太坊的智能合约,因为区块链上所有的数据都是公开透明的,所以合约的代码也都是公开的。但是其实它公开的都是经过编译的OPCODE,真正的源代码公开与否就得看发布合约的人了。如果要真正的掌握一个合约会干什么,就得从OPCODE逆向成solidity代码。下面进行练手和实战,实战的是今年PHDays安全会议的比赛里的一道题。 在etherscan上看到的合约的代码示例: 工欲善其事,必先利其

· 8777浏览 · 2018-10-18 10:27
区块链安全—安全守卫者“哈希函数”的详细分析

工程领域从来没有黑科技,而密码学不仅仅是工程。 一、何为哈希? 密码哈希是一类数学函数,可以在有限合理的时间内将任意长度的消息压缩为固定长度的二进制串,其输出值为成为哈希值或者散列值。哈希在密码学中扮演着十分重要的角色,用于实现数据完整性验证以及认证工作。公式表示为:h=H(m) 函数说明: m:任意长度消息(不同算法实现,长度限制不同,有的哈希函数(SHA-3)不限制消息长度,有的限制(

· 11084浏览 · 2018-10-17 13:54
区块链安全—THE DAO攻击事件源码分析

一、DAO项目介绍 DAO(Decentralized Autonomous Organization)是一种通过智能合约将个体与个体、个人与组织、或组织与组织联系在一起的新型组织形式。The DAO项目于2016年4月30日开始,融资窗口开放了28天。The DAO项目就这么火起来了,截止5月15日这个项目筹得了超过一亿美元,而到整个融资期结束,共有超过11,000位热情的成员参与进来,筹得1

· 12693浏览 · 2018-10-15 14:31
区块链安全—论激励机制与激励层中的Race-To-Empty攻击

最近针对区块链的“币圈”进行了一个小范围的资料阅读与研究,学习总结了一些安全方面的知识。通过对“币圈”发生的一些重大安全事件的研究,我也接触了许多“激励层”方面的知识。希望将内容简单的总结于此。 通过这几个月的对区块链知识的学习,我提炼前人的话简单的对区块链进行总结——简单来说区块链为“去中心化”+“Token机制”的结合。而去中心化我们在这里先不谈,我们就主要讨论下这个Token机制(激励机

· 11185浏览 · 2018-10-15 09:36
矿池攻击了解一下

前言 最近对区块链的底层的一些算法以及机制做了一定的了解与研究,今天我们来看看比特币的底层激励机制也就是挖矿所形成的矿池所存在的一些攻击手法,希望大家能有所收获 简单介绍 对于区块链的相关技术有所了解的同学对于挖矿也一定不会陌生,这是工作量证明的共识机制的核心,大家一起求解一个密码学问题以获取可用的区块头,从而产生新的区块,早期的时候你直接用自己电脑都可以参与挖矿,然而随着比特币价值的增长,参与人

· 10116浏览 · 2018-10-12 19:05
TheDAO悲剧重演,SpankChain重入漏洞分析

前言 在10月8日,区块链项目方SpankChain在medium上发表了一篇文章, 并表明其受到了攻击,导致损失了160多个ETH和一些Token,这次攻击事件,相对来说损失金额是较小的,约4万美元,不过值得一提的是:这次攻击事件的起因与2016年闹得沸沸扬扬的TheDAO事件如出一辙!一共被盗走300多万ETH,更为严重的是还间接导致了以太坊硬分叉... 自那次事件起,以太坊的智能合约开发者大

· 6992浏览 · 2018-10-11 11:10
区块链安全—匿名性以及隐私性

一、引言 提及区块链我们不得不想到“币圈”的那些事情。而提到数字货币我们又不得不感叹一下数字货币的优点之一——匿名性。对此,我从一下四个点进行切入,逐一为大家介绍“币圈”里关于“匿名”的是是非非。欢迎大家与我留言讨论! 比特币的匿名性 关于匿名性的CoinJoin方案 Zcash中的匿名性 我们所未曾熟悉的“门罗币” 下面就请跟随我的文章,一点一点进入密码学与区块链中,来了解属于Block

· 19119浏览 · 2018-10-11 07:46
从 Ethernaut 看以太坊智能合约漏洞(一)

前言 Ethernaut 是由 Zeppelin 开发并维护的一个平台,上面有很多包含了以太坊经典漏洞的合约,以类似 CTF 题目的方式呈现给我们,目前已有 19 个挑战。平台网址:https://ethernaut.zeppelin.solutions/ 完成该项挑战需要一定的 solidity 语言基础,以及一点的 javascript 语法基础。如果对区块链没有任何基础,推荐根据教程快速学习

· 11567浏览 · 2018-10-07 04:32
利用随机数冲突的ECDSA签名恢复以太坊私钥

前言 这篇文章应该算是capture the ether中Account Takeover那道题的题解,题目链接如下 https://capturetheether.com/challenges/accounts/account-takeover/ 给出的意思很明确,就是要你找到指定的以太坊地址的私钥,这当时确实是把我难倒了,我们知道以太坊使用的密钥的生成算法是ECC椭圆曲线加密算法,只知道公钥

· 52687浏览 · 2018-09-08 17:44
区块链安全思考

本文对区块链技术的安全问题和面临的一些挑战进行了分析,并提出一些安全建议。 区块链(Blockchain)是比特币的一个重要概念,它本质上是一个去中心化的数据库,同时作为比特币的底层技术。区块链是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一次比特币网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。 可以应用区块链的一些领域包括智能合约、证券交易、电子商务、物联网、社交

· 10291浏览 · 2018-06-19 06:37
从DDCTF中看区块链安全之51%攻击

author: Homaebic team: Syclover mini blockchain DDCTF2018出了一道区块链题目,对于区块链的web安全网上还没有很多的教程,这道题目给了一个很好的入门机会,我也将学习到的知识分享出来。 DD自己创造了一个自己的区块链货币用于商店,但它并不是真正的区块链,因为链只保存在服务器的session中,不过这不影响我们理解和做题。 来看一张交易模型 关于

· 9990浏览 · 2018-04-20 03:50