Discourse spam

Discourse handles spam well, and follows through with all the actions one needs to block it.

We’ve been pretty lucky on talkgroup so far. All the discussion has been by real folks, wanting to talk. Today we got a spammer posting a couple of messages, but Discourse immediately caught it and flagged the posts.

I hadn’t used the interface for handling spam, but I was happy to see a single button that deletes the messages, deletes the account, and blocks IP and email addresses:

Dialog box showing actions done to spammers in Discourse software

I like it. I wish we could bundle these actions in other software, like WordPress and MediaWiki (off the top of my head). ^_^

New wiki notice

I sent this out to the users that registered with an email address on maiwiki:

Hiya! This is maiki, the one that runs this wiki. I recently found that the database has so many bot registrations, it is now 17GB! While we don’t have an issue with spam in the articles, I did run out of hard drive space, so I am going to start over with a new wiki instance.

My plan is to migrate all the content over from this wiki to a new one, and turn off user registration. I will manually add folks to the wiki that wants to edit it, which has only been a handful of us, and that should take care of it.

I would also like to relicense everything under CC0 (http://creativecommons.org/about/cc0). The current wiki is CC-BY-SA. The reason is that most of the content on the wiki is created by me, and I want to dedicate it to the commons.

If you do not want your content relicensed with CC0, please let me know and I will remove your contributions from the new wiki. ^_^

maiki

“…maximal pride.”

A spammer shared a Picasa photo album with me, for a freight and logistics provider. Weird. Two things popped out for me. First, I had never seen a spammer try to lure me in with a photo album before. And second, they sent me this gem:

We seek no strongest only more specialized, senior. Your satisfied will be our maximal pride.

Indeed! ^_^

Misconfigured spambot

One of the sites I host got this message in a contact form the other day (moved to the bottom of the post due to length).

I had never seen one of these dumps, because I am not scum of the net, but it is interesting. It looks a lot of the syntax I would use to program a mud mob, and I think it would be hilarious to create an NPC that went around spouting spam messages at players! Maybe they would drop cans of processed meats. ^_^

Footnotes* Real-time {U|Ough|You|Oughout}.S.
{stock|inventory|share|investment|supply|stock
options|commodity|store|carry|products|keep}
{quotes|estimates|rates|quotations|prices|insurance quotes|offers|insurance
quotations|proposals|bids|price quotes}
{reflect|mirror|reveal|echo|replicate|indicate|represent|show|magnify|share|exhibit}
{trades|deals|investments|positions|trading|transactions|tradings|markets|buys
and sells|sells|swaps}
{reported|documented|noted|described|claimed|revealed|announced|recorded|said|experienced|stated}
{through|via|by means of|by way of|as a result of|by|thru|because of|by
using|throughout|with} {Nasdaq|Pink sheets .|Dow jones|Otc pink
sheets|Market}
{only|just|simply|merely|solely|exclusively|mainly|primarily|basically|sole|no
more than}; {comprehensive|extensive|thorough|complete|detailed|in
depth|all-inclusive|well-rounded|wide-ranging|all-encompassing|in-depth}
{U|Ough|You|Oughout}.S. {stock|inventory|share|investment|supply|stock
options|commodity|store|carry|products|keep}
{quotes|estimates|rates|quotations|prices|insurance quotes|offers|insurance
quotations|proposals|bids|price quotes}
{reflect|mirror|reveal|echo|replicate|indicate|represent|show|magnify|share|exhibit}
trad #file_linkskeywords4.txt,1, #file_linkskeywords2.txt,1,S] S]
{ing|ent||’s|e|sing|aging|er} {in all|in most|in every|in all of the|to
all|in any|overall|in all of|in every one|to all of the|for all}
{markets|marketplaces|market segments|areas|promotes|trading
markets|sells|economies|industry|industries|real estate markets} {and are|and
therefore are|and so are|and they are|and are also|and are generally|and tend
to be|so are|and are usually|consequently they are|as they are}
{delayed|postponed|late|overdue|detained|deferred|past
due|slowed|retarded|untimely} {at least|a minimum of|no less than|at the very
least|at the least|not less than|as a minimum|at a minimum|around|more
than|at minimum} {15 minutes|Fifteen minutes|Quarter-hour|A quarter-hour}.
{All|Just about all|Almost all|Most|Many|All of|Virtually all|Pretty much
all|Every|Most of|All of the}
{quote|quotation|estimate|offer|price|line|insurance
quote|rate|policy|premium|saying} {volume|quantity|amount|size|volume
level|level|sound level|quantities|fullness|numbers|volume levels}
#file_linkskeywords3.txt,1,S] {is|is actually|will be|can be|is
definitely|is usually|is certainly|is without a doubt|is undoubtedly|might
be|is normally} {comprehensive|extensive|thorough|complete|detailed|in
depth|all-inclusive|well-rounded|wide-ranging|all-encompassing|in-depth}
{and|as well as|and also|along with|in addition to|plus|together with|and
even|not to mention|and additionally|and then}
{reflects|displays|demonstrates|echos|shows|mirrors|echoes|bends
away|bounces} {trading|buying and selling|investing|exchanging|dealing|stock
trading|forex trading|buying|currency trading|fx trading|trading stocks} {in
all|in most|in every|in all of the|to all|in any|overall|in all of|in every
one|to all of the|for all} {markets|marketplaces|market
segments|areas|promotes|trading
markets|sells|economies|industry|industries|real estate markets},
{delayed|postponed|late|overdue|detained|deferred|past
due|slowed|retarded|untimely} {at least|a minimum of|no less than|at the very
least|at the least|not less than|as a minimum|at a minimum|around|more
than|at minimum} #file_linkskeywords5.txt,1,S] {15 minutes|Fifteen
minutes|Quarter-hour|A quarter-hour}.
{International|Worldwide|Global|Intercontinental|Overseas|Foreign|World-wide|World|World
wide|Unusual|Abroad} {stock|inventory|share|investment|supply|stock
options|commodity|store|carry|products|keep}
{quotes|estimates|rates|quotations|prices|insurance quotes|offers|insurance
quotations|proposals|bids|price quotes} {are|tend to be|are usually|are
generally|usually are|will be|happen to be|are actually|can be|really
are|seem to be} {delayed|postponed|late|overdue|detained|deferred|past
due|slowed|retarded|untimely} {as per|according to|depending on|much
like|per|down to|based on|are anticipated to
grow|professionals|specialists|as documented in}
{exchange|trade|swap|change|alternate|return|transaction|trading|swapping|market|substitute}
requiremen #file_linkskeywords1.txt,1,S] ts.

Locking down the wiki

I thought about it for a day, and decided to set the wiki to only be editable by those with a confirmed email address. The main reason is that I don’t have time to fight spam now, and this may help. It isn’t a permanent decision, though I fear that I may just leave it like that out of frustration.

Eventually I hope to find a different method for combating spam, and if I went ahead with my plans for a wikae cluster and filled it with active communities, it might work. I’ve got to think about this, but I don’t have the energy to do so now.

Bummer.

I am bummed out by the amount of spam I am getting in MediaWiki. My impulse is to turn on confirmed editing (meaning they need to confirm their email address), but that isn’t the wiki spirit. On the other hand, only folks that I know are using it. Sad.

AbuseFilter: First edit warning

I notice that a large majority of the bots that publish articles to the wiki only post once. I bet that most of them aren’t equipped to deal with additional pages in the workflow, so I made a very simple new filter. All it does is check if an account has ever edited before:

user_editcount = 0

Then it just pops up a message that says, “Hi! I am glad you are editing the wiki. We pop up this message the first time someone edits the wiki, to throw off the spambots. But you, precious human, should just submit again and we will let ya on your way! ^_^”

So far it seems to be doing a good job so far. ^_^

Wikae spam

My wikae are getting spammed, so now I’ve got to step up my game. ^_^

Unfortunately, wikae get targeted for spam very easily. And despite this becoming more and more of a problem, the tools used to combat it kinda suck.

In order to minimize the inconvenience for legit folks, I made some changes to help me monitor the issue. They are: SpamBlacklist, Nuke and .

  • Extension:SimpleAntiSpam – Catches dumb bots right off the bat.
  • Extension:SpamBlacklist – Uses the Wikimedia blacklist, which is okay for now. I will customize it as I see patterns emerge.
  • Extension:Nuke – Mass page deleting. Pro-tip: Searching for pages without putting in anything will give you a list of recent content with checkboxes, which is a fast way to get a lot of spam deleted at once.
  • $wgEmailConfirmToEdit – This is the worst one, which requires an email address to edit. I am just turning this on so I can have a small respite until I have more time to look into this.

It is tough having a publicly editable wiki. While Wikipedia is awesome precisely because anyone can edit it, most other wikae have neither the resources nor the critical mass required to effectively combat spam. I have to think about whether requiring an account is going to be okay for my specific needs, or if I really do think my projects can benefit from more accessibility.

One cool thing about the wikae farm is that I only have to block an account once! Makes it a bit easier to manage. ^_^