Live data from Hacker News

153k Ether Stolen in Parity Multi-Sig Attack

etherscan.io

471–480 of 754 posts

Re: 153k Ether Stolen in Parity Multi-Sig Attack

#471
post #444
post #407

Earlier quoted context omitted.

> But if banks and major retailers who have huge budgets can get hacked, of course we can too. Here's the thing: banks and major retailers can't get hacked. At least, not in the sense you're using "hacked". When Target's credit card systems were compromised, resulting in the CEO resigning and and about $300M in costs to the company to deal with the breach, not one customer lost a penny. When $171M from Union Bank of…

But Bitcoin and Ethereum can do this too. In fact Ethereum already has done it (and is arguably designed to do it). Ethereum simply has to convince a majority of the participants to fix the bug and reset to a good hash (whereas bitcoin would need a majority of the mining power unless they went out of band and used old school politics/force/coercion).

They did this already? I'm guessing it happened in the dao accident?

If so, this seems terrifying, what if I had accepted stolen ETH to sell physical goods?

Re: 153k Ether Stolen in Parity Multi-Sig Attack

#472
post #140
post #34

Earlier quoted context omitted.

Why would an unmarked function get the broadest possible scope in a language designed for contracts? I'm always surprised by the decisions made around Ethereum, and just how much value people have poured into it.

Because the cryptocurrency space attracts only the brightest minds .

If you have such a bright mind, you often need a dark hat, to avoid blinding the others.

Re: 153k Ether Stolen in Parity Multi-Sig Attack

#473

Earlier quoted context omitted.

Thank you for this.

I guess that settles it then!

We (tech geeks) tend to think of situations like this as analogous to code, where the local declaration supercedes the global one. We see a specific investment platform with specific terms and rules and our gut says those override more general ideas about how it should work because they're more immediate to the context.

But civil society is the opposite: Contracts cannot violate the law; the law cannot violate the constitution. The justice system would care about the terms of the DAO only insofar as those terms fail to conflict with the law, which includes a massive body of precedent in contracts and torts.

Re: 153k Ether Stolen in Parity Multi-Sig Attack

#474
The vulnerability was extremely simple, as suggested by the three keyword-long patch. I've written about this and other Solidity/EVM bugs from a technical perspective, if anybody is curious:

- https://ericrafaloff.com/parity-multi-sig-contract-vulnerabi...

- https://ericrafaloff.com/analyzing-the-erc20-short-address-a...

I think at least a big part of the solution to these security problems is two-fold:

- More secure conventions. All of the gotchas in Solidity make for a bad time. Even non-security bugs create a bad developer experience. Opting into private functions by default

- More code review. Engineers need to be diligent or hire security professionals who are (I'm one).

Re: 153k Ether Stolen in Parity Multi-Sig Attack

#475

Earlier quoted context omitted.

This is why I keep saying that "smart contracts" should be expressed in some declarative notation like decision tables. Byte-coded programs as contracts were a really bad idea. Contracts need to be readable, not just executable.

Time to revive Prolog, perhaps?

Yes! Prolog is a great language for such use cases in my opinion.

Re: 153k Ether Stolen in Parity Multi-Sig Attack

#476

From the post mortem (1) -=> - A hacker managed to exploit a ICO multisig wallet vulnerability and drain 44,055 ETH - $9,119,385 at present. - A white hat showed up and "saved" 377,000 ETH - $78,039,000 !!! - by draining other accounts. I get the "see cryptos are too insecure / it's a pyramid / it's a bubble / ICOs are scams / etc" arguments. But holy shit turning a world currency into the wild west - for better or w…

> That $10m out the window is like a Series A for a nefarious hacker with deep crypto skills [..]

Where "deep crypto skills" refers to someone who bothered to read the documentation on Solidity (the Ethereum contract language), specifically the section on function visibility[1], and the Parity wallet contract itself[2].

In other words, an obscure security hole was not found by a genius hacker. An obvious, trivial, simple mistake was exploited for $9m because the people investing money in it provably didn't know what they're were doing.

[1] http://solidity.readthedocs.io/en/develop/contracts.html#vis...

[2] https://github.com/paritytech/parity/blob/4c32177ef3f4521c66...

Re: 153k Ether Stolen in Parity Multi-Sig Attack

#477
post #405

Earlier quoted context omitted.

Every single second, mountains of new information becomes relevant. Parties cannot know what they are getting into, because they cannot see the future. They can only make assumptions. But that's basically obvious to anyone not hinging their personal identities on peddling technocratic revolution.

But history is full of successful unmodified contracts despite non-omniscient actors.

History is full of everything.

Re: 153k Ether Stolen in Parity Multi-Sig Attack

#478
post #477

Earlier quoted context omitted.

But history is full of successful unmodified contracts despite non-omniscient actors.

History is full of everything.

Omniscience has never been a requisite for mutual material success.

Re: 153k Ether Stolen in Parity Multi-Sig Attack

#479

Earlier quoted context omitted.

I guess that settles it then!

We (tech geeks) tend to think of situations like this as analogous to code, where the local declaration supercedes the global one. We see a specific investment platform with specific terms and rules and our gut says those override more general ideas about how it should work because they're more immediate to the context. But civil society is the opposite: Contracts cannot violate the law; the law cannot violate the co…

There can be an immutable smart contract which is in compliance with the law (though you have to be more specific with which law, but for these purposes I know we mean US law).

Point being, immutability is not sufficient to demonstrate that a contract is in conflict with the law.

Post reply on HN