sobota 16. října 2010

Jak hledat telefonní čísla na Facebooku

Často se hovoří o problému bezpečnosti osobních dat na síti Facebook. Méně často se ale mluví o tom, že zneužitelná data musíte nejdřívě sami na Facebook dát a jeden se diví, co všechno jsou ochotni uživatele na svou zeď napsat. Já například zkusil hleda předčíslí mobilního čísla 608. (přímý link). Nestačil jsem se divit, kolik lidí píše na své zdi čísla mobilů. V kombinaci s tím, že mají většinou veřejné profily, jsou idealním terčem pro telesales... A to v lepším případě.

čtvrtek 29. července 2010

100 milionů facebookových účtů a jak to bylo ve skutečnosti

Média zachvátila horečka. Z Facebooku prý unikly údaje o 100 milionech uživatelů. O tempora o mores!. Zlí hackeři v akci. Jaká je ale realita? Nejsem odborník na bezpečnost, ale relativně se vyznám v data (web, text) miningu. V Ataxu Interactive mám na starost nejen projekt www.klaboseni.cz, ale hlavně vývoj produktu Ataxo Social Insider, který se právě monitoringu komunikace na sociálních sítí věnuje a to včetně data miningu. A tak jsem sedl, hledal a našel...

Pravda je banální. Počítačový odborník jménem Ron Bowes napsal malý program, který automatizoval stáhování dat o uživatelích Facebooku. Program to byl poměrně old school viz dále a Bowes nevyužil Open Graph API (to je limitováno 100 dotazy za hodinu na jednu IP adresu, mrk, mrk pane Dočekale), ale šel cestou, které se říka scrapování stránek. Zachoval se vlastně jako běžný internetový vyhledávač, jen se soustředil na Facebook. Stažené údaje publikoval prostřednictvím sítě torrentové služby. Údaje jsou samy o sobě neškodné, jen propojují jméno uživatele a čísla na FB. Jak to kdosi komentoval na Twitteru: v telefoním seznamu je o vás víc informací.

Momentálně je originální blogpost nedostupný, stejně jako zdrojový kód, který bylo použit. Proto jeho hlavní část přetiskuji z cache Googlu pod článkem. (až bude opět dostupný, smažu ho). Stejně jako jsem umístil na Paste Code zdrojový kód programu, který použil. Když si ho projdete, zjistite jediné: ten člověk měl prostě dobrý nápad jak strojově vyškrabat veřejně přístupná data. Mimochodem pokud je na jeho činnosti něco nelegální, proč rovnou nekřičet na Google nebo Yahoo? Navíc Yahoo Boss Search API vám zajistí přístup ještě luxusnější.

Co z celé pseudokauzy plyne? V zásadě nic nového:

- drtivá většina novinářů nerozumí tomu o čem píše (zdravím novinky.cz)
- pokud už mají aspoň elementární znalost, neobtěžují se jít ke kořenů věcí (pooh.cz)
- a konečně Facebook je dnes stejně milován bulvárem jako velká hudební stár a tak podobných mediálních kravin můžeme čekat ještě víc

To je vše.

P.S. A ještě slibená podstatná část původního blogpostu Rona Bowese:

Return of the Facebook Snatchers


Background

Way back when I worked at Symantec, my friend Nick wrote a blog that caused a little bit of trouble for us: Attack of the Facebook Snatchers. I was blog editor at the time, and I went through the usual sign off process and, eventually, published it. Facebook was none too happy, but we fought for it and, in the end, we got to leave the blog up in its original form.

Why do I bring this up? Well last week @FSLabsAdvisor wrote an interesting Tweet: it turns out, by heading to https://www.facebook.com/directory, you can get a list of every searchable user on all of Facebook!

My first idea was simple: spider the lists, generate first-initial-last-name (and similar) lists, then hand them over to @Ithilgore to use in Nmap's awesome new bruteforce tool he's working on, Ncrack.

But as I thought more about it, and talked to other people, I realized that this is a scary privacy issue. I can find the name of pretty much every person on Facebook. Facebook helpfully informs you that "[a]nyone can opt out of appearing here by changing their Search privacy settings" -- but that doesn't help much anymore considering I already have them all (and you will too, when you download the torrent). Suckers!

Once I have the name and URL of a user, I can view, by default, their picture, friends, information about them, and some other details. If the user has set their privacy higher, at the very least I can view their name and picture. So, if any searchable user has friends that are non-searchable, those friends just opted into being searched, like it or not! Oops :)

The lists

Which brings me to the next topic: the list! I wrote a quick Ruby script (which has since become a more involved Nmap Script that I haven't used for harvesting yet) that I used to download the full directory. I should warn you that it isn't exactly the most user friendly interface -- I wrote it for myself, primarily, I'm only linking to it for reference. I don't really suggest you try to recreate my spidering. It's a waste of several hundred gigs of bandwidth.

The results were spectacular. 171 million names (100 million unique). My original plan was to use this list to generate a list of the top usernames (based on first initial last name):

129369 jsmith
79365 ssmith
77713 skhan
75561 msmith
74575 skumar
72467 csmith
71791 asmith
67786 jjohnson
66693 dsmith
66431 akhan

Or first name last initial:

100225 johns
97676 johnm
97310 michaelm
93386 michaels
88978 davids
85481 michaelb
84824 davidm
82677 davidb
81500 johnb
77800 michaelc

Or even the top usernames based on first name dot last name (sorry, I can't link this one due to bandwidth concerns; but it's included in the torrent):

17204 john.smith
7440 david.smith
7200 michael.smith
6784 chris.smith
6371 mike.smith
6149 arun.kumar
5980 james.smith
5939 amit.kumar
5926 imran.khan
5861 jason.smith

Or even the most common first or last names:

977014 michael
963693 john
924816 david
819879 chris
640957 mike
602088 james
584438 mark
515686 jason
503658 robert
484403 jessica

913465 smith
571819 johnson
512312 jones
503266 williams
471390 brown
386764 lee
360010 khan
355639 singh
343220 kumar
324972 miller

So, those are the top 10 lists. But I'll bet you want everything!

The Torrent

But it occurred to me that this is public information that Facebook puts out, I'm assuming for search engines or whatever, and that it wouldn't be right for me to keep it private. Why waste Facebook's bandwidth and make everybody scrape it, right?

So, I present you with: a torrent! If you haven't download it, download it now! And seed it for as long as you can.

This torrent contains:

* The URL of every searchable Facebook user's profile
* The name of every searchable Facebook user, both unique and by count (perfect for post-processing, datamining, etc)
* Processed lists, including first names with count, last names with count, potential usernames with count, etc
* The programs I used to generate everything

So, there you have it: lots of awesome data from Facebook. Now, I just have to find one more problem with Facebook so I can write "Revenge of the Facebook Snatchers" and complete the trilogy. Any suggestions? >:-)

Limitations

So far, I have only indexed the searchable users, not their friends. Getting their friends will be significantly more data to process, and I don't have those capabilities right now. I'd like to tackle that in the future, though, so if anybody has any bandwidth they'd like to donate, all I need is an ssh account and Nmap installed.

An additional limitation is that these are only users whose first characters are from the latin charset. I plan to add non-Latin names in future releases.

sobota 29. května 2010

Výsledky crowdsourcingového výzkumu pro předpověď voleb do PSP

Konečně můžu uvolnit výsledky crowdsourcingového výzkumu, který jsme provedli se studenty Studia nových médií 18. května 2010. Cílem bylo jednak ověřit Surowieckého teorii o moudrosti davu a za druhé udělat kontrolní měření pro experimenty Adama Javůrka z projektu NextBig www.100chytrych.cz

Experiment SNM stál na 350 odpovědích náhodně získaných v ulicích Prahy. Otázka zněla: Které strany se podle Vás dostanou do parlamentu? A kolik získají procent. Po odfiltrování evidentních mašíblů zbylo 190 odpovědí. Pak už jsme jen spočítali výsledná čísla.






strananáš výzkumskutečný výsledek
ČSSD 27,322
ODS 24,620,2
TOP 09 12,716,7
KSČM 12,211,2
VV810,8


Předběžně: podařilo se nám trefit pořadí, procenta však nikoli. Otázkou je proč. Jednou z možností je, že lidé nemuseli nic investovat do svých odpovědí (například sázku) a tak projikovali svá přáním. Zkusíme to ověřit při podzimních volbách. O dalších poznatcích budu určitě informovat.

pátek 28. května 2010

The Mechanical Cinderella na GUGcampu

Před pár týdny jsme byl prezentovat Mechanickou Popelku na českém GUGcampu. Záznam prezentace je již dostupný na YouTubu a já ho zde jen vkládám.



čtvrtek 22. dubna 2010

Populární stránky podle Facebooku

Facebook spustil včera celou řadu nových funkcí, které narušují hranici mezi Facebookem a okolním webem. Pro mne osobně je velice zajímavá funkce Recommendations. Jedná se o jednoduchý widget, který má na vstupu URL webu a na výstupu seznam aktuálně nejvíc sdílených (a zřejmě i dobře hodnocených) stránek ze zadaného webu.

Zajímavé ale je, že nemusíte nutně vložit jen svoje URL, ale i cizí. Uvidíte tak seznam populárních podstránek webů, které vám nepatří. Vybírány jsou zřejmě buď podle vašich přátel v případě, že jste přihlášeni nebo z celého okruhu Facebooku. V praxi tak můžete například jednoduše testovat, které články ze zpravodajských serverů jsou momentálně nejvíce populární. Ve chvíli kdy píšu tenhle text, tak na Novinkách celkově kraluje článek Autorům South Parku hrozí smrt kvůli dílu s prorokem Mohamedem.

Pokud vás tedy zajímá, co zajímá dav, tak máte v ruce ideální nástroj. A Facebook zřejmě zase získal další střípek do mozaiky jménem personalizovaná reklama.



sobota 10. dubna 2010

Google: Na rychlosti záleží

Včera potvrdil oficiální blog Googlu, že rychlost načítání vaší stránky je součástí jejího rankingu a tudíž je důležitá pro umístění stránek ve vyhledávači. Zároveň doporučil několik nástrojů pro měření rychlosti načítání a případné návrhy jak načítání urychlit. Mezi nástroji je i funkce z Labu Google Webmaster Tools, která automaticky vytváří přehled o rychlosti stránek a to včetně porovnání s rychlostí jiných stránek v internetu.

Zároveň ale Google v postu uvádí, že změna se týká hodnocení méně než 1 procenta stránek a že je v provozu již několik týdnu. Jak tedy říká Matt Cuts na svém blogu: pokud si toho moc lidí do teď nevšimlo, tak to zas tak převratná změna není. Nicméně z mého pohledu by to mohlo přivést tvůrce stránek, aby se více zabývali na jakých serverech běží jejich aplikace a vyvinuli tlak na hostingové firmy směrem k zlepšení.

úterý 6. dubna 2010

Krize končí? Google si to nemyslí


Google Insight je služba, která dává uživatelům představu o tom, jak moc bylo klíčové slovo v minulosti hledáno na Googlu. Nabízí i komfortní zobrazení grafů a možnost filtrovat výsledky podle zemí a podobně. O užitečnosti této aplikace se můžete přesvědčit ve dvou studiích: americké Predicting the Present with Google Trends a německá Google Econometrics and Unemployment Forecasting.

V té první výzkumníci z Googlu ukazují, jak jsou si podobné křívky hledání z ekonomických oblastí a skutečné výsledky jednotlivých segmentů, ba co víc jak spolu vzájemně souvisí hospodářské výsledky firem a vyhledávání jejich výrobků. Podobnost jde tak daleko, že podle hledání jde předpovídat do jaké země budou lidé jezdit na dovolenou. Německá studie nás bude zajímat o něco více. Odborníci z Forschungsinstitut zur Zukunft der Arbeit v ní ukazují, jak hledání inzerátů práce dokáže přepovídat skutečný stav nezaměstnanosti v Německu. Jak to může fungovat? Poměrně jednoduše: co hledáme na internetu, hledáme z nějakých reálných důvodů. Pokud se poohlížeme po práci, zřejmě jí chcem změnit.

Mimochodem uvedené práce vznikaly před tím, než Google doplnil Insight o novou vlastnost, kterou je schopnost předpovídat jak se bude křivka hledání v budoucnu pohybovat v závislosti na svém minulém průběhu. Nechme stranou teorii, jak je to možné a zkusme se podívat na analytické možnosti, které tato volba nabízí v kontextu ekonomické krize. Dopředu říkám, že to nejsou data moc optimistická.

Začněme nejdříve bez předpovědí. Podle informací, které přinesl server Novinky, v roce 2009 překročil počet exekucí 1.000.000, v roce 2008 to bylo 550.000 a v roce 2007 428.000.

Pokud se podívate na křivku hledání slova "exekuce", tak zcela věrně kopíruje tento trend.





Leden 2010 má skoro dvojnásobek hledání oproti lednu 2009.

To ovšem není vše. Podívejme se, jak vypadá hledání klíčového slova "volná místa" i s předpovědí:





Vidíme, že předpověď ukazuje víceméně stejný průběh pro rok 2010, jako byl v roce 2009. Podobně stagnuje i trend pro klíčová slova "hledám práci"







Pro rok 2010 nás tedy podle Googlu žádné zlepšení nečeká. Začínáme skoro na deseti procentech nezaměstnaných a stejně tak s nimi i zřejmě skončíme. Mimochodem v tom se Google Insight shoduje i s předpověďmi ekonomů. Pokud chceme nepřímé potvrzení této teorie, tak můžeme zkusit vyhledávání slova "psycholog". Je obecně známo, že v době krize roste potřeba psychologické porady, takže pokud je zde zřejmá souvislost, měl by s ní souviset i počet hledání psychologů. Je to tak? Je!





Dobře: čeká nás rok nezaměstnanosti a šetření. Jak to bude vypadat? Kupříkladu lehce poklesne zájem o dovolené:






a v Egyptě se jich zřejmě bude konat o něco míň:






A opět: analytici si to myslí také,

Vyhlídka jsou to nevábné. Na faktu, že letošní rok nebude o nic lepší než minulý, ba zřejmě o něco horší nic nezmění ani volby. Možná o to pečlivěji bychom se měli rozhodovat.

Na závěr se ale sluší dodat nějakou tu pozitivní zprávu. Zkusím to: pokud skutečně fungují předpovědi a měření na základě našeho hledání ve vyhledávačích, dostáváme zajímavý a důležitý klíč ke kolektivnímu vědomí a to je fajn.

P.S. Data jsem sbíral 5.4. 2010 Google je může dál zpřesňovat a měnit.