Как искать данные в Даркнете
Тёмная сторона 🌑В нашем распоряжении оказалась база из более чем восьми тысяч ссылок на сайты в даркнете. Это практически полный реестр работающих открытых ресурсов, доступных в Tor Hidden Services. Мы выбрали наиболее интересные, чтобы рассказать как искать данные в даркнете.
Форум кардеров, коллекция фотографий женщин, которые давят каблуками животных, зеркало русского форума по Counter-Strike, женщины с листьями и шишками марихуаны в интимных местах, чья-то файлопомойка с кучей книг и подшивкой старых выпусков «Хакера», форум любителей оружия, фотографии писающих женщин, архив книг на китайском, форум для мужчин, увлеченных увеличением члена, и, конечно, наркотики во всех видах, формах и агрегатных состояниях. Все это можно увидеть меньше чем за десять минут изучения темной стороны веба.
Откопать что-то в этой куче мусора не так-то просто. Мы в автоматическом режиме прошлись по всем ссылкам, и из восьми тысяч страниц открылись лишь 4300. Порядка тысячи сайтов с ходу требуют авторизации или показывают форму логина без каких-либо пояснений — тут на кривой козе не подъедешь. Немало набралось и пустых страниц, страниц с дефолтным ответом веб-сервера, а также разнообразных зеркал, клонов и заглушек. В общем, даже если учесть, что какие-то потенциально полезные сайты доступны не 100% времени и просто не попали в нашу базу, в целом живых ресурсов набирается не так-то много — может, пара тысяч.
Используем Tor из Python
Запрашивать из своих скриптов страницы через Tor не намного сложнее, чем из обычного интернета. Все, что для этого нужно, — локальная нода Tor (достаточно просто открыть Tor Browser), Python и библиотека SocksiPy. Вот скрипт, который скачивает через Tor главную страницу The Pirate Bay и выводит ее содержимое. Ты наверняка разберешься, как скачать что-нибудь другое.
import socks, socket, urllib
url = "http://hss3uro2hsxfogfq.onion"
def create_connection(address, timeout=None, source_address=None):
sock = socks.socksocket()
sock.connect(address)
return sock
socks.setdefaultproxy(socks.PROXY_TYPE_SOCKS5, "127.0.0.1", 9150, True)
socket.socket = socks.socksocket
socket.create_connection = create_connection
contents = urllib.urlopen(url).read()
print contents
Что же это за ресурсы? После предварительной сортировки оказалось, что набор тем крайне узок. Значительная часть сайтов — это магазины и торговые площадки, выполненные в виде форумов или аукционов по образу eBay. Наркотики, оружие, поддельные документы, краденые товары, кредитные карты, эксплоиты, ботнеты — все это можно во множестве найти на виртуальных развалах. О конкретных примерах мы еще поговорим подробнее.
К этой же категории можно отнести и сайты, где предлагают разные услуги — от отмыва биткойнов до заказных убийств. И если первое звучит правдоподобно, то второе наверняка обман. Мошенничество, считай, прилегает к сегменту магазинов, делая его еще больше.
Другой большой сегмент — это разного рода порнография. От изысков вроде тех, что перечислены в начале статьи, до обычной разновидности, которой полно и в открытом интернете.
Собственно, немалая доля ресурсов вызывает вопрос: ну и зачем было прятать это в .onion? Либертарианские блоги, хакерские манифесты, домашние странички… Часто складывается впечатление, что кто-то просто хотел выпендриться или поупражняться в размещении сайта модным способом. Такие ресурсы пропадают один за другим — их владельцы быстро понимают, что держать сервер накладно, а толку от него нет.
[ad name=»Responbl»]
Поиск и каталоги
Первое, чем хочется себя обеспечить, оказавшись в альтернативной версии интернета, — это поисковик. Тут вроде бы никаких проблем: существуют Torch, Grams, not Evil, Fess, Candle, Ahima и, может, еще пара-тройка менее известных попыток повторить успех Google в дарквебе.
Сравнивать поисковики, объективно оценивая качество выдачи, не возьмемся: для этого нужны хитрые метрики и методики, которыми мы не располагаем. По чисто субъективным ощущениям, у Grams серьезно заспамленные результаты, а not Evil и Torch слабо сортируют выдачу: наверху вместо больших сайтов может оказаться совершенно случайная фигня. Это не всегда недостаток (фигня тоже может быть интересной), но наиболее приятным нам в итоге показался Fess.