https://habrahabr.ru/post/280065/- Информационная безопасность
- Data Mining
- Big Data
В новом выпуске
«Черной археологии датамайнинга» мы немного поиграемся в шпионов. Увидим, что может узнать обычный Data Specialist на основе открытых в сети данных.
Всё началось со
статьи на хабре, о том, что некий анонимный хакер делился слитыми в сеть данными агентов ФБР. Я получил эти данные, и стал смотреть, что с ними можно сделать? В данных есть только фамилия, имя, и служебные мейлы и телефон – немного информации.
Получив эти данные, я увидел, что они заканчиваются буквой
J. То есть, датасет не полон. Интресено, каков его полный размер? Чтобы узнать его, надо построить статистику частоты встречаемости фамилий.
Для этого я начал искать наборы американских фамилий, и тут меня ждало открытие – в Америке можно найти открытые данные по, скажем, избирателям штата – как я понял, совершенно легально. Например, я за полчаса без проблем
получаю данные всех избирателей штата Юта.
Это уже намного интереснее! Если в первом датасете у нас были лишь фамилия, имя и одна буква «отчества» (здесь я называю middle name отчеством, хотя это
немного не так), то теперь мы можем найти гораздо больше информации по агенту ФБР – например, почтовый адрес, полное имя, возраст, политические предпочтения. Итак, приступим.
Для начала, оценим полноту датасета (с чего и начались мои изыскания). Строим статистику встречаемости фамилий в штате Юта, затем суммируем, и смотрим – какую долю составляют фамилии до букву J. Оказывается, у нас примерно половина всех данных, точнее
43%. Полный список агентов составил бы 50 тысяч записей. Да, если кому-то надо, вот частотное распределение американских фамилий:
Заголовок спойлераБуква |
Всего записей |
Частота |
A |
128934 |
0.030 |
B |
401048 |
0.093 |
C |
298668 |
0.069 |
D |
197078 |
0.046 |
E |
80467 |
0.019 |
F |
152500 |
0.035 |
G |
200349 |
0.046 |
H |
325591 |
0.075 |
I |
17765 |
0.004 |
J |
121452 |
0.028 |
K |
184007 |
0.043 |
L |
183266 |
0.042 |
M |
399768 |
0.093 |
N |
73607 |
0.017 |
O |
53166 |
0.012 |
P |
199195 |
0.046 |
Q |
5802 |
0.001 |
R |
224124 |
0.052 |
S |
456642 |
0.106 |
T |
147229 |
0.034 |
U |
10559 |
0.002 |
V |
52085 |
0.012 |
W |
272087 |
0.063 |
X |
371 |
0.000 |
Y |
28468 |
0.007 |
Z |
27642 |
0.006 |
Далее, найдём агентов в списке избирателей. Сначала мы попробуем найти пересечения по фамилии, имени, и первой букве отчества (это вся информация, которая у нас есть по агентам). Датасет избирателей очень большой, и этим действием мы его значительно уменьшим, чтобы он хотя бы помещался в памяти моего очень древнего компьютера.
Нахожу пересечения – и тут меня ожидает первый сюрприз. Их очень много – почти 15 тысяч из 22 тысяч по файлу агентов. Вряд ли всё ФБР живёт в одном штате, просто в Америке встречаются очень популярные фамилии, и совпадений Фамилия-Имя-Первая буква отчества слишком много. Что же, будем фильтровать дальше.
Находим фамилии, встречающиеся лишь один раз. Это редкие фамилии, и скорее всего совпадения Фамилия-Имя будет вполне достаточно, чтобы идентифицировать человека. Вряд ли нам встретится ещё одна Serine Hovhannisyan. Выполнив фильтрацию, получаем датасет из 193 уникальных записей. Есть!
С большой вероятностью, это и есть наши агенты, с полными данными – почтовый адрес, полное имя, дата рождения, политические предпочтения (у нас ведь список избирателей, и в нём есть данные о том, как голосовал этот человек, начиная с 2002 года). На всякий случай, результат публиковать не буду, вдруг у Агентства действительно длинные руки :)
Лучше подсчитаем статистику по этим данным. Например, гистограмма возраста:
Минимальный возраст: 21 год (с этого возраста можно голосовать)
Максимальный: 90 лет
Политические предпочтения. Принадлежность к партии я определял либо по заявленной принадлежности (такая информация есть в датасете, либо если человек постоянно голосует за одну из партий.
Из 193 людей
43 республиканца и
32 демократа.
Интересная информация, я думал республиканцев будет заметно больше.
Насколько правдивы эти данные? В указанной выше
ссылке на reddit в комментариях есть ссылки на датасеты большинства штатов. Можно было бы также собрать информацию из соцсетей, и…. нет, спасибо. Мне совсем не хочется провести остаток жизни в
посольстве Эквадора.
О, кто-то звонит в дверь — одну секунду, гляну кто там. А потом напишу про то, как сохра