Live data from Hacker News

OptiFi Program Incident Report

medium.com

61–70 of 158 posts

Re: OptiFi Program Incident Report

#62
post #47

Earlier quoted context omitted.

This is missing the point to a degree that makes me think you're being intentionally obtuse, but maybe you're just ignorant so I'll bite. Banking computer errors can easily be rectified by humans, banks are regulated, your funds are at least partially guaranteed by the government (depending on where you live). The degree to which you're trusting computer programs with your finances is orders of magnitude less than wi…

CitiBank can't get the money back they accidentally transferred to another company. https://www.bloomberg.com/news/articles/2022-08-15/citi-sues... You can say that's an edge case today but I and OP are saying, the future will look more like crypto looks today. Not a bright future.

> I and OP are saying, the future will look more like crypto looks today. Not a bright future.

I don’t agree. I trust that loopholes like that will be slowly rectified with legislation if not present today.

In fact, it’s likely that crypto will (problematically?) be heading the same way. There was a recent case of a crypto buff who found a bug in some project and made off with a few $Million and I think the courts said he could be arrested and expected to return it, just as if he made off with cash. Importantly, they basically said “blockchain isn’t the source of truth to the courts” which was the guys defense. IMO a bright future for people, but not for a crypto venture.

Re: OptiFi Program Incident Report

#64

Commands like that really need a confirmation prompt and a command line switch to override like --do-as-i-say (long form only). Good example of developers being put in an end user's shoes, I hope they learn from that mistake and update their programs.

An example of such a command came up on Linus Tech Tips (LTT), from apt (IIRC) on Pop_OS!. Basically (paraphrasing) "this will destroy your system and render it useless; type 'I'm an idiot and wish to proceed'". Our eponymous youtuber went right on, typed the phrase and blitzed the system, and then moaned about how the system shouldn't have let him break it ... I suspect such prompts only work for cautious people, wh…

That guy is a savvy YouTuber, man. He did that because the resulting content has high memetic replication properties.

I find the prompt for dangerous ops useful. GitHub will ask you to repeat the name of the repo before you destructive actions, Terraform will ask you to say yes to the prompt. These are all good things.

Re: OptiFi Program Incident Report

#65

This is one of the biggest flaws in crypto. Small errors can erode hundreds of millions of value. That's when most crypto companies right now are very small. Can you imagine the chaos if crypto were to actually become big and dev count were to grow to 1k+ people spread across multiple offices? There's definite efficiency gains with crypto (a dex like Uniswap can do massive volume with very few developers for instance…

> This is one of the biggest flaws in crypto. Small errors can erode hundreds of millions of value.

This is hardly exclusive to crypto.

> Can you imagine the chaos if crypto were to actually become big and dev count were to grow to 1k+ people spread across multiple offices?

Yeah I can already imagine in other places, just ask Santander Bank. [0]

[0] https://www.theguardian.com/business/2021/dec/30/santander-b...

Re: OptiFi Program Incident Report

#66

I once deleted like, maybe a few petabytes of data valuable enough to store on FusionIO cards with a bad config change. I think it destroyed $50-100MM once the dust settled in all the various ways that it cost money were added up. I’m quite sure the hacker who pressed the button feels plenty bad enough already, and I hope the people around them were as kind as the people around me were.

Was it Cambridge Analytica that was going to pay 50MM for that data? ;)

Re: OptiFi Program Incident Report

#67
post #5

For all its flaws (and there are countless) the one thing about the show cryptocurrency space that stands out to me as a programmer is that programming errors can be suddenly very costly (granted, in this case it was more of a DevOps blunder). Being able to very easily put a price tag on sloppy programming is intriguing to me.

Please send $100 each time you have a bug in your code, to following ETH wallet; 0x17C489878E89136cd399D162ECCed25924749822

You're welcome.

Re: OptiFi Program Incident Report

#68

So the keys to manage this specific program were kept on disk? (~/solana-keys as per the logs). Doesn't even look like the Solana cli supports an HSM for this usecase.

Might just be a demonstration. Can just use process substitution to mimic files if necessary.

Re: OptiFi Program Incident Report

#69

Earlier quoted context omitted.

An example of such a command came up on Linus Tech Tips (LTT), from apt (IIRC) on Pop_OS!. Basically (paraphrasing) "this will destroy your system and render it useless; type 'I'm an idiot and wish to proceed'". Our eponymous youtuber went right on, typed the phrase and blitzed the system, and then moaned about how the system shouldn't have let him break it ... I suspect such prompts only work for cautious people, wh…

That guy is a savvy YouTuber, man. He did that because the resulting content has high memetic replication properties. I find the prompt for dangerous ops useful. GitHub will ask you to repeat the name of the repo before you destructive actions, Terraform will ask you to say yes to the prompt. These are all good things.

It's a solid practice in UX design. Physically having to type or copy/paste it in really highlights the action for the end user. There's only so much you can do to stop people setting their own house on fire but something like that puts the onus on them and fairly places the blame where it belongs.

Re: OptiFi Program Incident Report

#70
post #4

Earlier quoted context omitted.

I think there are some lessons that can learned from this. For example, the command line: solana program close didn't seem to sufficiently represent the destructive nature of the action. The program's designers should likely have chosen the verb "shutdown", instead of "close".

A simple confirmation step with a relevant warning could possibly make developers think twice before proceeding.

From the many depressing years I've done UX work I can promise you no amount of changes they make will protect users from their own mistakes. It is far better for your own sanity to accept people make mistakes. This is what development and staging environments are for.
Post reply on HN