NewTechAudit
274

Darknet: что необходимо знать?

Привычный для нас Интернет (верхушка «Интернет-айсберга») составляет лишь небольшую часть от всего Web-пространства. Его называют «TheSurfaceWeb» – «Интернет на поверхности», или ClearNet. Сайты в этом сегменте индексируются поисковыми системами, а их доля составляет примерно 4%.

В закладки

Остальные 96% – это невидимая часть, или «DeepWeb» –«глубинный» Интернет. Сюда входят данные, принадлежащие компаниям, госструктурам, научным и медицинским центрам, военным и т.д. Информация в этом сегменте не индексируется. Нижнюю часть «Интернет-айсберга» составляет «DarkNet» –«теневой» Интернет, доступ к которому осуществляется с использованием специализированного ПО.

Интернет-айсберг

История DarkNet берет своё начало ещё в начале 1970-х годов, когда разрабатывался прообраз будущего Интернета, и вплоть до 2000-х годов о нем практически ничего не было известно. В 2004 году начала работу специальная система анонимизации серверов, позволяющая скрыть истинное местонахождение пользователя. Сейчас доступ к этим серверам осуществляется с помощью специального клиента Tor-сети (Тог Browser). Обмен данными в этой сети происходит в зашифрованном виде и анонимно, что позволяет передавать информацию без опасений её перехвата и гарантирует злоумышленникам безнаказанно осуществлять свою деятельность. По этой причине DarkNet стал популярной площадкой для торговли различными инструментами взлома и кибератак, а также незаконно добытой информацией, в том числе персональными данными клиентов.

За последние годы деятельность киберпреступников значительно усилилась: появление «черных рынков» в DarkNet способствовало распространению вредоносного ПО, а также инструментов и методов обхода фрод-мониторинга. Но знает ли начинающий хакер, как всем этим пользоваться и при этом действовать анонимно? Увы, знает: если в прошлом для совершения кибератаки ему требовался многолетний опыт, то сейчас многие инструменты доступны в виде пошаговых руководств, причем за незначительную плату!

Так, исследования ценообразования на «черном рынке» DarkNet показывают, что значительный набор инструментов для кибератак (вредоносные программы, готовые фишинговые страницы, взломщики паролей и др.) можно приобрести всего за несколько долларов. Команда исследователей изучила тысячи объявлений в пяти крупнейших «черных рынков» DarkNet и составила индекс цен Dark Web Market Price Index. Полученные результаты показывают, что цена осуществления кибератаки стала значительно доступнее, а существовавшие раньше барьеры для входа практически исчезли.

Ещё одним значимым фактором для развития «черного рынка» стало появление криптовалют. Цифровые монеты, в особенности BitCoin, очень популярны во многих сервисах «теневого» Интернета. Они выступают в качестве главного платежного инструмента, т.к. покупатели и продавцы стремятся добиться максимальной анонимности. Появление криптовалют дало новое дыхание «черным рынкам» в DarkNet.

Что всё это означает? Прежде всего, нужно понимать, что бороться с «черными рынками» на текущий момент практически бессмысленно: на смену одному закрывшемуся рынку приходят два новых.

Как пользователи, мы должны начать серьезно относиться к защите своих персональных данных. В этом помогут надежные пароли, двухфакторная аутентификация, сервисы по защите конфиденциальности, использование зашифрованных VPN-сетей и др.

Как разработчики, мы должны ставить безопасность выше удобства и заставлять пользователей соблюдать высокие стандарты защиты, нравится ли им это или нет. Безопасность должна стать неоспоримым преимуществом и весомым аргументом.

Как аудиторы, в «теневом» сегменте Интернета мы должны на регулярной основе осуществлять обзор и поиск новых киберугроз, которые потенциально могут нанести вред информационной безопасности организации. Но не стоит ограничиваться лишь одним DarkNet’ом для поиска такой информации.

В своё время посетители DarkNet пользовались зашифрованным мессенджером Jabber.Со временем его вытеснил новый защищённый мессенджер Telegram, ставший тихой гаванью для любителей анонимности. В нем появилась возможность создавать тематические каналы, что, безусловно, способствовало появлению каналов и про DarkNet. Но как проанализировать регулярно поступающий поток информации в этих каналах?

Проведя исследование, мы выяснили, что решить эту задачу возможно двумя способами: обращаясь напрямую к Telegram API или с использованием различных агрегатов Telegram-каналов. Главное преимущество последнего заключается в том, что подборка популярных каналов осуществляется самим агрегатором, что существенно облегчает работу. Наш выбор пал в пользу агрегатора tgstat.ru, содержащий в себе, в отличие от аналогичных сервисов, большое количество каналов. С применением языка Python 3 (библиотек django, selenium, pymorphy), а также NLTK, PostgreSQL, Nginx+Gunicorn+Supervisor, мы создали специальный инструмент, который на периодической основе фильтрует и передает сообщения из различных каналов и чатов в единую базу данных, обращаясь к которой, мы можем отследить тенденции и тренды по интересующим нас темам.

В процессе реализации мы столкнулись с ситуацией, когда похожие по содержанию новости публикуются в различных источниках, и нам необходимо выявить сходство между этими новостями. Для решения этой задачи мы использовали техники NLP.

С помощью регулярных выражений находим в тексте только последовательности символов длиной больше одного (эта операция также убирает предлоги длиной один символ).

1: text_ = re.findall(r'\w+', text_)

Следующая команда убирает стоп-слова. К ним относятся все предлоги, междометия и т.д. Это делается для того, чтобы убрать незначимые слова, т.к. далее мы будем выделять самые важные слова из текста.

2: stop_words = nltk.corpus.stopwords.words('russian') 3: text_ = [w.lower() for w in text_ 4: if len(w) > 0 and w not in stop_words]

С помощью библиотеки pymorphy2 мы приводим все слова к нормальной форме (преобразование глаголов в инфинитив, существительных — в единственное число именительного падежа и т.д.).

5: morph = pymorphy2.MorphAnalyzer() 6: text_ = list(map(lambda w: morph.parse(w)[0].normal_form, text_))

Следующая функция выделяет из текста words_number ключевых слов (в нашем случае – 10) с помощью алгоритма TFIDF.

7: def get_key_words(text, words_number=10): 8: vectorizer = TfidfVectorizer(encoding='cp1251', min_df=1) 9: _ = vectorizer.fit([text]) 10: vectorizer.transform([text]) 11: word_count = {i: j for i, j in zip(vectorizer.get_feature_names(), vectorizer.transform([text]).data)} 12: word_count = {i: round(j, 4) for i, j in sorted(word_count.items(), key=lambda w: w[1], reverse=True)} 13: top_words = list(word_count.keys())[:words_number] 14: return top_words

Таким образом, мы имеем два массива: массив всех нормализованных слов и массив ключевых слов. С помощью библиотеки textdistance сравниваем этот текст с другими текстами. В качестве критериев сравнения были выбраны:

  • Сходство Джаро — Винклера,
  • Коэффициент Отиаи (косинусное расстояние),
  • Коэффициент Саккара

Про эти меры вы можете подробнее узнать в интернете. Обобщая эти оценки, мы получаем значения от 0 до 1. Значения, близкие или равные 1, говорят о том, что тексты являются идентичными, а значения, близкие или равные 0 — обратное.

Лайфхаки IT, проверенные AI-решения для стандартных задач
{ "author_name": "NewTechAudit", "author_type": "editor", "tags": [], "comments": 0, "likes": 0, "favorites": 0, "is_advertisement": false, "subsite_label": "newtechaudit", "id": 116766, "is_wide": false, "is_ugc": false, "date": "Wed, 01 Apr 2020 11:17:14 +0300", "is_special": false }
Личный опыт
Как мы сэкономили 3 млн рублей в год, заменив Slack на Rocket.Chat
Google Talk, Jabber, Slack, WhatsApp, Telegram, Zulip, Rocket.Chat, Selectel Chat, — мы не собрали рейтинг…
Объявление на vc.ru
0
Комментариев нет
Популярные
По порядку

Прямой эфир