SafeMoon "upgrade" has a fatal bug: public burn function

It’s game over for the “SafeMoon” contract. It’s neither safe nor going to the moon, after its recent “upgrade”:

Smart Contracts can be one of the most secure organizing principles for society when done properly (witness UniSwap for instance). But like any software or engineering project, a lot has to be done right before deploying them. If contracts are “upgradeable”, then everyone is trusting the team behind them not to do something that will compromise their security (as happened here). The most secure contracts are immutable – meaning once deployed, no one can change them. This means that any bugs found in those contracts persist forever, but over time, as they are “battle tested”, the chances get reduced. The original SafeMoon contract seems to have been safe.

The Clone Wars

The last crypto boom cycle saw lots of projects that wanted to “go to the moon” quickly, and didn’t bother to even create a product. Their main differentiator was in the various ways they shuffled money around (usually from later investors to earlier ones, like a collective Ponzi scheme). Besides the fact that it was a zero-sum game financed by people who bought the tops, there was a bigger problem: all smart contracts were manually cloned from something like SafeMoon, and manually deployed onto the blockchain. Teams engaged in a sort of cargo-cult development model, and it was a badge of honor to be audited by CertiK or ConsenSys. Many projects didn’t bother being audited, and lots of them intentionally planted lines of code that would let them siphon money out of their ecosystem afterwards. Investing in new crypto tokens became the “wild west”, and investors turned into pure gamblers.

Ironically, the whole original premise of Bitcoin and Crypto was to eliminate the need for trusted middlemen. No one worries whether the Bitcoin or Dogecoin network will “rugpull” them one day. And such guarantees are indeed possible with Ethereum smart contracts too, as long as they are produced by smart contract factories. A software development company like ours is in the business of producing code to be used by millions of people. We’re now going to market with a dozen applications that communities can use to get things done.

Anyone can deploy these contracts without having to “hire a dev” or manually “deploy any code” on to the blockchain. They simply fill out a form with parameters, press a button and boom – a contract can be produced, with all the security without any of the worry. What’s more, rather than competing on new ways their clone shuffles tokens around in a zero-sum game, the teams will have to compete on actual utility and grow businesses to serve their communities. After all, that is what Intercoin is all about.

We’ll soon be announcing a competition for front end web developers to design the most beautiful front end interfaces (dapps) to interact with these contracts.

We can even hook up ChatGPT to make a natural language interface to this. But for now, if you’re interested to learn more, just visit the below link:

Whatever you do, DON’T DO THIS:

2 Likes

Definitely gotta set things up in a way that assure individuals involved in our marketplace are Safe…not sending them off to the MOON with investments others have worked SOOO hard for. Thanks for creating effective and meaningful smart contracts and posting this article.

Oh it gets better:

The public burn function lets you move tokens from any address back to the deployer wallet. Someone unburned the burned tokens back to the deployer

https://twitter.com/realfud/status/1640865631904858118

:man_facepalming:t2: