
As many may have noticed, there has been a spam attack happening on some of the more active Status public channels such as #status, #support, #dapps, & #watercooler. The immediate issue has been mitigated but has the potential to restart.
The attack is coming in the form of very long messages being repeatedly sent to public channels, rendering them relatively unusable for the community. This attack only affects public channels that are widely known. It does not impact private 1:1 or private group chats at all. The attack is coming from separate accounts so to get rid of the spam currently, you have to block each one of these accounts individually – but spammers can easily and cheaply create new ones.
Status is committed to a core set of principles, Privacy, Censorship Resistance, and Decentralization being 3 of them. This attack is an interesting challenge to solve while staying true to the core values of the community and project.
Also, as noted in the Status open discuss forum, account creation is extremely cheap. A fundamental feature — which is a challenge in this scenario — is the ability for a user to generate any number of accounts (i.e. key pairs) with the click of a button or a script. Therefore, account based filtering does not work in Status.
For the reasons stated above, this provides a unique challenge for the crypto idealists committed to the values of Web3. These are issues that have been in the minds of the Status Core team for some time and have been under active investigation to find the right solution….not merely a simple fix.
This attack has brought a pressing issue top of mind for the Status Core Contributors and community contributors alike. Many ideas have been put forth by the Ethereum and security community.
Status is looking to mitigate the issue as soon as possible while deeply exploring the best possible long term solution to DoS (denial of service), sybil, and spam attacks. For security purposes, specifics of the immediate plans will be outlined in detail once fixes are in place and a post-mortem has been completed. However, all Status code is available in the open source, public repos.
Status will continue to provide updates on the issue. For more information please ask in the Status #security public channel or view the code yourself on Github.