A place to cache linked articles (think custom and personal wayback machine)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

index.md 6.1KB

5 years ago
123456789101112131415161718192021222324252627282930313233
  1. title: This is what a graph of 8,000 fake Twitter accounts looks like
  2. url: https://shkspr.mobi/blog/2015/03/this-is-what-a-graph-of-8000-fake-twitter-accounts-looks-like/
  3. hash_url: 7e0da5e7753f006ab85507ff826850aa
  4. <p>Recently I've been plagued with Tweets saying that I'm "trending in London." </p>
  5. <img src="https://shkspr.mobi/blog/wp-content/uploads/2015/03/Twitter-Spam-Trending-fs8.png" alt="Twitter Spam Trending-fs8" width="846" height="227" class="aligncenter size-full wp-image-20730"/>
  6. <img src="https://shkspr.mobi/blog/wp-content/uploads/2015/03/Twitter-Spam-Trending-Again-fs8.png" alt="Twitter Spam Trending Again-fs8" width="793" height="245" class="aligncenter size-full wp-image-20742"/>
  7. <img src="https://shkspr.mobi/blog/wp-content/uploads/2015/03/More-bloody-spammers-fs8.png" alt="More bloody spammers-fs8" width="770" height="222" class="aligncenter size-full wp-image-20746"/>
  8. <p>As flattering as that is, it's not true. There appears to be a network of Twitter bots which are randomly repeating other people's tweets, ripping off avatars and bios, and generally causing a nuisance.</p>
  9. <p>Looking at the users' Twitter name, I don't think it's unreasonable to think that "ekip_uhokoqeq" and "utadaqusoxeh" are randomly generated sequence of characters. And, without wishing to judge, that photo doesn't <em>look</em> like a Susan...</p>
  10. <p>Let's take a look at one of the user's profile :</p>
  11. <img src="https://shkspr.mobi/blog/wp-content/uploads/2015/03/Twitter-Spam-Profile-fs8.png" alt="Twitter Spam Profile-fs8" width="814" height="731" class="aligncenter size-full wp-image-20731"/>
  12. <p>It's possible to trace back the bio and photo to different users - they've had their details misappropriated. The Tweets seem to be just randomly taken from other users.</p>
  13. <p>Let's take a look at who this bot is following :</p>
  14. <img src="https://shkspr.mobi/blog/wp-content/uploads/2015/03/Twitter-Spam-Following-fs8.png" alt="Twitter Spam Following-fs8" width="1186" height="880" class="aligncenter size-full wp-image-20732"/>
  15. <p>Again, random sequences of letters, hijacked bios and photos. Clicking through each of these profiles reveals a network of <em>thousands of fake accounts</em>. </p>
  16. <p>I adapted <a href="http://mark-kay.net/blog/2014/08/15/generating-a-network-graph-of-twitter-followers-using-python-and-networkx/">a script to visualise the network of accounts</a> - this is only looking 3 levels deep (Twitter's API limits make going much further a time consuming task) :</p>
  17. <a href="https://shkspr.mobi/blog/wp-content/uploads/2015/03/Spam-Graph-fs8.png"><img src="https://shkspr.mobi/blog/wp-content/uploads/2015/03/Spam-Graph-fs8.png" alt="Spam Graph-fs8" width="1060" height="786" class="aligncenter size-full wp-image-20738"/></a>
  18. <p>I used <a href="https://gephi.github.io/">Gephi</a> to draw the graph.</p>
  19. <p>As you can see - there are dozens of randomly named accounts. They appear to only be following each other - I don't think any "real" users are in there. I can only assume that by forming a network like this, they can evade Twitter's filters. The bots can then either start generating spam, be sold off as fake followers, or used for some other unsavoury purpose.</p>
  20. <p>I ran the script over the weekend to a recursive depth of 4 and <strong>identified over 8,000 spam accounts</strong>. Using <a href="http://apps.cytoscape.org/apps/allegrolayout">Cytoscape and Allegro Layout</a> I was able to create this visualisation of the tangled web of connections.</p>
  21. <a href="https://shkspr.mobi/blog/wp-content/uploads/2015/03/Big-Graph-of-Twitter-Spammers-fs8.png"><img src="https://shkspr.mobi/blog/wp-content/uploads/2015/03/Big-Graph-of-Twitter-Spammers-fs8.png" alt="Big Graph of Twitter Spammers-fs8" width="855" height="790" class="aligncenter size-full wp-image-20747"/></a>
  22. <p>Using <a href="http://graph-tool.skewed.de/">Python's Graph-Tool</a> I generated a somewhat prettier visualisation of how all these accounts are connected.<br/>
  23. <a href="https://shkspr.mobi/blog/wp-content/uploads/2015/03/Network-Diagram-Spammers-fs8.png"><img src="https://shkspr.mobi/blog/wp-content/uploads/2015/03/Network-Diagram-Spammers-fs8.png" alt="Network Diagram Spammers-fs8" width="1024" height="1024" class="aligncenter size-full wp-image-20750"/></a><br/>
  24. They each mostly follow around 8 accounts - there's a fair bit of clustering. While there are a few accounts with larger follower numbers, it's hard to discern if there's a definitive pattern. The large gap appears to be users who have been suspended.</p>
  25. <p>As the weekend drew to a close, I'd reached the fifth level of my recursive algorithm. Using Cytoscape's "Organic" layout, another interesting pattern emerges.<br/>
  26. <a href="https://shkspr.mobi/blog/wp-content/uploads/2015/03/Circles-of-Spam-fs8.png"><img src="https://shkspr.mobi/blog/wp-content/uploads/2015/03/Circles-of-Spam-fs8.png" alt="Circles of Spam-fs8" width="1024" height="640" class="aligncenter size-full wp-image-20752"/></a><br/>
  27. There appears to be several "loops" - that is bots which are in an almost closed network with each other. I see at least half a dozen circles - the rest appear to be following other fake accounts at random.</p>
  28. <p>The centre of those circles <em>appear</em> to be real people. I can't say <em>why</em> they have lots of fake followers - it's possible that they - or someone else - has just bought them to make it look like they're more popular than they really are. There's no suggestion that they control the fake accounts.</p>
  29. <p>One of the central nodes has <strong>650,000 followers</strong>. It's not possible to know quite how many of those are fake - I'm guessing the majority are.</p>
  30. <p>It seems that there's a nasty nest of these bots. In the last few weeks I've reported a dozen or so for spam - but with literately tens of thousands in the network it's impossible for any individual to make a meaningful impact. </p>
  31. <p>I wish Twitter could track down the source of this problem and eradicate it.</p>
  32. <p>If you want to have a play with this dataset - you can <a href="https://shkspr.mobi/blog/wp-content/uploads/2015/03/Fake-Followers.zip">download a .zip file of the relationships and their metadata</a>.</p>