Live data from Hacker News

Ethereum Contracts Are Going to Be Candy for Hackers

vessenes.com

61–70 of 85 posts

Re: Ethereum Contracts Are Going to Be Candy for Hackers

#61
post #43
post #28

Earlier quoted context omitted.

The security history of the JVM suggests that one shouldn't be optimistic there either.

counterpoint: I haven't really heard of any "javascript escaping the container" bugs in a really long time (excepting node.js-related issues)

Funny, most pwn2owns there are multiple successful escapes of any of a number of js sandboxes. I hear about it at least yearly, if not more often.

Re: Ethereum Contracts Are Going to Be Candy for Hackers

#62
post #16

Earlier quoted context omitted.

In Bitcoin, almost all the people use the same script, so it's enough to review it. (I think the only problem is a small malleability.) And when a big problem is discovered almost all the people will change in a short time. In Ethereum is more encourage to write smart weird custom contracts, so many people write a custom contract with only one pair of eyes to review it, so it's more probable to find errors.

For sure, but I think there's opportunity/vulnerability in bitcoin too. From the top of my mind I recall reading about people grabbing coins quickly from: bad random number generators in at least android, brainwallets/rainbow-tabley private keys, non-standard script for fun or error to the tune of having to solve "2+2" A little similar to how bad guys hook onto github feeds and instantly exploit leaked aws keys etc

Those a problems with wallets, not bitcoin.

Re: Ethereum Contracts Are Going to Be Candy for Hackers

#63
post #43

Earlier quoted context omitted.

counterpoint: I haven't really heard of any "javascript escaping the container" bugs in a really long time (excepting node.js-related issues)

JavaScript doesn't run on the JVM.

thanks for saying this, sometimes I'm like "wow" on hackernews comments, because you kind of assume people know what they're talking about but then its like not really.

Re: Ethereum Contracts Are Going to Be Candy for Hackers

#64
post #43

Earlier quoted context omitted.

counterpoint: I haven't really heard of any "javascript escaping the container" bugs in a really long time (excepting node.js-related issues)

JavaScript has several mature, thoroughly scrutinized implementations. Ethereum has one brand new implementation. To put it mildly: There will be blood.

There are at least two ethereum implementations, the main one and one in Rust.

Re: Ethereum Contracts Are Going to Be Candy for Hackers

#66
post #43

Earlier quoted context omitted.

counterpoint: I haven't really heard of any "javascript escaping the container" bugs in a really long time (excepting node.js-related issues)

JavaScript has several mature, thoroughly scrutinized implementations. Ethereum has one brand new implementation. To put it mildly: There will be blood.

There are actually eight different implementations at this time, although the go client has a slight majority of users according to ethstats.net

http://ethdocs.org/en/latest/ethereum-clients/index.html

Re: Ethereum Contracts Are Going to Be Candy for Hackers

#67

Earlier quoted context omitted.

JavaScript doesn't run on the JVM.

thanks for saying this, sometimes I'm like "wow" on hackernews comments, because you kind of assume people know what they're talking about but then its like not really.

I know that Javascript isn't run in the JVM, my point was that it's possible to write a virtual machine that doesn't get exploited every 5 minutes.

the JVM is a bit special because there are a large amount of escape hatches, native code and a complex trust model, which has caused a lot of the exploits you end up seeing.

Re: Ethereum Contracts Are Going to Be Candy for Hackers

#69
post #59

Earlier quoted context omitted.

I had the same difficulty looking at the code. Do we count import lines and variable defs? Seems sort of lame. J of course has a different problem; only a handful of people can even parse it, much less opine on correctness.

Handful is a bit extreme ;) But seriously, it is easy to troubleshoot due to the interative nature of development in the REPL, the similiarity with mathematical formula and their layout. A PhD student wrote his thesis in 2008 about parallelization, FPGAs, ASICS and arrays, and was fully intending to write it in J, but his advisor suggested something more known, so he wrote it in Haskell. I'll put in the reference whe…

"it is easy to troubleshoot due to the interactive nature" isn't going to cut it. You cannot change the code of an etherum contract after the fact. Once it's used there is no second chance.

Re: Ethereum Contracts Are Going to Be Candy for Hackers

#70
post #43
post #28

Earlier quoted context omitted.

The security history of the JVM suggests that one shouldn't be optimistic there either.

counterpoint: I haven't really heard of any "javascript escaping the container" bugs in a really long time (excepting node.js-related issues)

But. JS was designed with this in mind, and has been tested for it for years. It's actually one of the greatest strengths of JS, but I imagine it was a lot of work (except, perhaps, maybe functional languages).
Post reply on HN