Что такое вирус hydra

Нелегальный онлайн-рынок Hydra заявил о проведении ICO: комедия или трагедия?

Что такое вирус hydra

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

Это первый в истории индустрии криптовалют случай, когда на ICO открыто выходит изначально нелегальный проект.

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

Но смогут ли власти противостоять волне незаконных токенсейлов, проводимых через зашифрованные каналы связи и платежные системы?

Сразу нужно отметить, что деятельность Hydra незаконна как в России, так и в любой другой стране, поэтому любые операции с ее токенами повлекут уголовную ответственность и для продавцов, и для покупателей.

Как тебе такое, Росс Ульбрихт?

В отличие от своего наиболее известного предшественника Silk Road, о котором общественность узнала только после ареста его основателя Росса Ульбрихта, Гидра решила играть открыто и нагло.

В частности, она объявила себя монополистом даркнета и ликвидатором множества конкурирующих проектов: RAMP, IKLAD, BLACKMARKET, SOLARIS и RuSilk. По информации анонимных источников, Гидра даже оказывала поддержку правоохранителям в их обнаружении и закрытии.

Своей рекламной кампанией Гидра называет расследование, проведенное Lenta.ru. Разумеется, издание отрицает любую связь с нелегальным рынком.

Hydra решила обставить свое ICO с полной серьезностью, опубликовав инвестиционный меморандум (в отличие от White Paper, этот документ предоставляется в традиционной процедуре IPO). К нему не хватает только раскрытия организационной структуры, информации о бенефициарах, а также годовой и квартальной отчетности по МСФО.

Что еще более интересно, заявлен не только сбор денег на некое абстрактное развитие, но и описаны собственные технические наработки в области сохранения конфиденциальности и автоматизации сервисов.

По планам Гидры, на базе действующего рынка будет создана автоматизированная площадка для теневого бизнеса – Eternos, с «продвинутой» системой личных сообщений и другими инструментами для торговли наркотическими средствами, оружием, поддельными документами и другими предметами, находящимися под запретом. Также Hydra заявляет о якобы успешном тестировании «неуязвимой анонимной сети нового поколения» – AspaNET и искусственном интеллекте IronRat, способном решить 80% спорных ситуаций на платформе без участия человека. Запуск платформы планируется 1 сентября 2020 года.

Согласно «меморандуму», на ICO будет выставлена 49% доля проекта, представленная 1 470 000 токенами с начальной ценой $100. Простой расчет говорит, что владельцы площадки оценили ее в 300 миллионов долларов. Как тебе такое, Росс Ульбрихт? Сам «Ужасный пират Робертс» вряд ли планировал превратить свой скромный теневой рынок в «единорога» даркнета…

В документе прописана даже «дивидендная политика». Чтобы получить дивиденды, нужно приобрести не менее 100 токенов, с этого объема обещано 0.00333333% от чистой годовой прибыли.

Умножив эту сумму на общее количество токенов, получаем «дивидендную доходность» 200% годовых.

Какая легальная компания может похвастаться таким результатом? Сама Hydra прогнозирует, что за первые полгода работы прибыль составит 700%, то есть «инвесторы» получат далеко не все.

Технические подробности ICO, в том числе на каком блокчейне будут продаваться токены, пока не опубликованы.

Дмитрий Мачихин, основатель GMT LEGAL, прокомментировал возможность проведения этого ICO:

«Представим, что это не PR, а реальность. В таком случае есть два сценария:

Первый, если площадка делает классическое для большей части проектов размещение на каком-либо существующем блокчейне и предлагает публично получить токены в «личный кабинет токенхолдера» по определенной цене в эквиваленте биткоина или эфира.

Второй возможный подход – запуск своего анонимного блокчейна, без публичной продажи монет, но с возможностью получить их за какие-то действия на площадке или путём майнинга.

Оба сценария вполне реализуемы до определённого момента – попытки листинга. Ни одна биржа с объемами не разместит монету проекта-пособника торговле наркотиками. Многим пришлось делистить Монеро только потому, что она часто использовалась в незаконных целях.

А что тогда с биткоином? С ним все просто, объём его присутствия и интеграции в жизнь уже неотвратим, но даже его, гипотетически, любая крупная централизованная биржа уберёт по первому предписанию регуляторов, либо будет раскрывать любую информацию о транзакциях и владельцах аккаунтов.

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

Не говоря о том, что участие в таком ICO может автоматически сделать и его соучастником деятельности Гидры.

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

Чем обернется ICO Гидры?

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

Рассмотрим наиболее вероятные векторы развития событий.

Exit Scam

Более или менее успешно продав токены, организаторы этого «темного» ICO просто исчезнут с деньгами инвесторов, а сама Гидра прекратит работу.

В конце концов, владельцы Гидры здесь рискуют только своей репутацией. Да, она стоит дорого и в анонимной среде.

Например, репутация владельцев BTC-e была настолько высока, что многие бывшие клиенты биржи снова принесли немалые деньги на WEX и потеряли их дважды.

С другой стороны, продать репутацию почти за 300 миллионов долларов – достаточно выгодная сделка. После бегства с деньгами владельцы Гидры станут мишенью не только правоохранительной системы, но и своих «коллег» из преступного мира.

Но они и так ежедневно рискуют сесть в тюрьму на весь остаток жизни, а продолжение деятельности эти риски только усиливает.

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

И, что в этом случае самое интересное – ни один из покупателей токенов не пойдет писать заявление в полицию.

Если жертвы мошеннических ICO и разорившихся бирж могут иметь хотя бы призрачную надежду на возмещение убытков, то «инвесторы» Гидры после обращения в полицию в лучшем случае сядут на скамью подсудимых вместе со своими обидчиками, а скорее всего даже без них.

Не стоит забывать, что покупка токенов Гидры – это прямое финансирование организованной преступной группы и участие в отмывании доходов от незаконной деятельности. А такие действия подразумевают уголовную ответственность в любой стране мира.

Темная империя

Возможно, Hydra сможет выполнить заявленные обязательства, и ее анонимная система будет широко использоваться в даркнете, породив подпольную темную империю.

А полностью анонимные для всех сторон ICO станут «закрытой» альтернативой всем попыткам легализации оборота токенов, таким как STO, IEO и т.п.

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

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

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

И кажущаяся безнаказанность и анонимность могут и для администраторов Гидры закончиться тем же, чем для Ульбрихта и его последователей.

Жирная точка в эпохе ICO

И, наконец, остановимся на более глобальном влиянии этого, еще не состоявшегося, ICO. Для тех, кто не собирается в нем участвовать, «инвестиционный меморандум» Гидры станет только краткосрочным поводом для насмешек в соцсетях. Но такое мнение слишком поверхностно.

В свое время Silk Road побудил американские спецслужбы усилить подразделения для борьбы с киберпреступностью, а Росс Ульбрихт был назначен козлом отпущения, получив два с половиной пожизненных срока. Теперь же борьба выходит на новый виток.

Своими заявлениями Hydra может «разозлить» регуляторов и дать им повод для полного запрета анонимных продаж токенов и ужесточения наказания за сам факт незарегистрированного токенсейла. А вслед за ними будут запрещены и «первоисточники зла» – публичные блокчейны и анонимные платежные системы, то есть криптовалюты.

Этот повод может быть даже более весомым, чем продолжающееся «минирование» общественных зданий или взлом корпоративных сетей с требованием выкупа в биткоинах.

Напомним, что по данным аналитической компании Chainalysis, объем платежей в биткоинах для покупки нелегальных товаров в даркнете в этом году может превысить $1 млрд. И власти всех стран рано или поздно будут вынуждены отвечать на эти вызовы.

Источник: https://bits.media/nelegalnyy-onlayn-rynok-hydra-zayavil-o-provedenii-ico-komediya-ili-tragediya/

Тысячи на метадоновых кумарах. Как карантин повлиял на наркопотребителей

Что такое вирус hydra

31 марта владельцам всех магазинов, продающих наркотики на даркнет-площадке Hydra, пришло уведомление от администрации сервиса: «Уважаемые магазины.

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

Не создавайте дополнительных сложностей себе, покупателями и модераторам. После снятия ограничений выставите их обратно». 

Первоначально скриншот сообщения распространился в телеграм-каналах — администратору пишущего о наркотиках канала «Сомы грамм» его прислал подписчик, который, по его словам, работал кладменом у одного из дилеров; администраторы двух магазинов на Hydra подтвердили «Медиазоне» подлинность скриншота. Один из них уточнил, что речь идет прежде всего о закладках, оставленных в парках, закрытых распоряжением местных властей: к примеру, в Москве 26 марта мэр Сергей Собянин ограничил доступ в крупнейшие зоны отдыха — ВДНХ, Парк Горького, Царицыно, Коломенское, Зарядье, Кусково и Сокольники.

Опрошенные «Медиазоной» администраторы магазинов на Hydra говорят, что карантин, безусловно, сказался и на ассортименте, и на логистике — у некоторых из них больше не осталось закладок на территории Москвы; все продавцы сходятся в том, что теперь наполнение витрин зависит не столько от поставок, сколько от смелости кладменов: рисков стало больше, многие отказываются работать. «Мы не можем прогнозировать влияние карантина на поведение кладменов», — написал администратор одного из крупнейших магазинов. 

Покупатели

«Все очень боятся наблюдения, залепляют камеры жвачкой, не ездят в лес», — пересказывает администратор «Сомы грамм» опасения участников тематических чатов.

Об этом говорят и результаты опроса, который провел в своем телеграм-канале Фонд содействия защите здоровья и социальной справедливости имени Андрея Рылькова.

О том, что забирать закладки стало сложнее из-за обострившегося внимания полиции и прохожих, сообщили 54% из более чем 300 пользователей, поучаствовавших в опросе; большинство из них связали это с карантином.

35% участников опроса столкнулись с дефицитом на рынке психоактивных веществ, 37% считают, что все осталось по-прежнему, 28% заметили небольшие изменения на рынке, но сомневаются, что они связаны с пандемией COVID-19 или карантином. Многие из потребителей, не испытывающие финансовых проблем, предпочли закупить вещества на длительный срок, опасаясь, что в дальнейшем они столкнутся с трудностями в приобретении.

«Но нужно понимать, что люди, которые проходили опрос, это прежде всего публика телеграма — они более социальные, стабильные в денежном плане, на 90% — потребители марихуаны, мефедрона. Потребителей героина там приняли участие единицы, а им как раз сейчас гораздо сложней», — объясняет социальный работник ФАР Максим Малышев. 

В связи с пандемией фонд с 30 марта перестал заниматься аутрич-работой — ездить по районам Москвы в специально оборудованном автобусе, чтобы раздавать наркопотребителям шприцы и презервативы, проводить тесты на ВИЧ, юридические или медицинские консультации.

«Пока мы работаем в таком формате — заранее договариваемся с ключевыми лидерами сообщества на том или ином районе, спрашиваем, что им конкретно нужно, если пять-шесть человек заинтересованы, то договариваемся о встрече, на которую я собираю все, что им нужно, раскладываю по отдельным пакетам.

Приезжаю, кладу в боковую дверь, они приходят и забирают, без прямого контакта с нами», — рассказывает Малышев. 

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

«С несколькими мы общались по телефону — они говорят, что пока все вроде нормально, но, конечно, стало сложнее, например добывать деньги на наркотики.

Они ведь, прежде всего, отрабатывают по магазинам, и сложнее стало этим путем добывать деньги, потому что мало людей, много внимания, все сложно», — объясняет Малышев. Такими же наблюдениями делится и соцработница Екатерина Селиванова.

«Когда человек зависим, он вынужден добывать наркотики, иначе ему плохо — у него нет другого выбора. Основной выход — это воровать в магазинах, девочки могут заниматься проституцией, а сейчас это стало очень сложно делать», — говорит она. 

Госпитализация 

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

В Москве наркопотребителей с тяжелой формой зависимости могут направить на бесплатную детоксикацию, но только в 19-ю или 17-ю наркологические больницы при Московском научно-практическом центре наркологии (МНПЦ) или в клинику Национального научного центра наркологии (ННЦ). 

При этом без прописки в Москве, паспорта и страхового полиса, а утрата документов не редкость среди наркопотребителей, можно попасть только в ННЦ. Однако в связи с карантином центр не принимает пациентов.

«Сейчас мы работаем только на выписку, новых госпитализированных не принимаем, пока ситуация не изменится.

Старые госпитализированные пока остаются, но продлить срок госпитализации мы им не можем», — сообщили «Медиазоне» в медицинском учреждении. 

«То есть получилась такая ситуация, что принимает только МНПЦ, но попасть туда бесплатно можно только с документами и с московской пропиской.

А ННЦ принимает людей, которые приехали из другого города и находятся в ситуации наркозависимости, но сейчас он закрыт на карантин.

То есть получить помощь для детоксикации можно только на платной основе, а у людей в такой ситуации денег, как правило, нет», — объясняет соцработница Селиванова. 

С подобным отказом в госпитализации столкнулся Олег Смирнов, социальным сопровождением которого занимается Селиванова — зависимый от героина мужчина потерял паспорт, сейчас он оформляет новый; Олег принял решение лечь в стационар, но выяснилось, что сделать это в новых обстоятельствах невозможно.

Юрист Фонда Рылькова написал жалобу в департамент здравоохранения Москвы, в которой указал, что отказ в госпитализации вредит здоровью Смирнова, вынуждает его нарушать Уголовный кодекс, продолжать употреблять наркотики и тратить время на их поиски, а не на попытки трудоустроиться и вернуться к социальной жизни, и подвергает риску смерти в результате передозировки. Ответ на жалобу пока не пришел. «То есть для его детоксикации, получается, единственная возможность — это или где-то найти деньги, чтобы на платной основе лечь на какой-то минимальный курс реабилитации, либо дождаться более благоприятных условий и положить его в ННЦ. Но непонятно, когда это кончится», — говорит Селиванова. 

Последствия карантина для наркозависимых по-настоящему проявятся к концу апреля, однако предположить, каковы они будут, можно уже сейчас, рассуждает Малышев.

«Сейчас коронавирус — это не то, что их прямо заботит, потому что есть куча других проблем, более насущных — где взять вещества, как найти на них деньги, как свалить от полиции. Но, думаю, они скоро почувствуют какое-то усиление, через недельку-две, — говорит он.

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

Если карантин в наркологичках так и продолжится, то тысячи людей останутся на метадоновых кумарах, и им не позавидуешь». 

Редактор: Дмитрий Ткачев

Источник: https://zona.media/article/2020/04/03/covid-19-vs-hydra

Ломаем простую «крякми» при помощи Ghidra — Часть 1

Что такое вирус hydra

О том, что это за зверь такой — Ghidra («Гидра») — и с чем его едят она ест программки, многие уже, наверняка, знают не понаслышке, хотя в открытый доступ сей инструмент попал совсем недавно — в марте этого года. Не буду докучать читателям описанием Гидры, ее функциональности и т.д.

Те, кто в теме, уже, уверен, всё это сами изучили, а кто еще не в теме — могут это сделать в любое время, благо на просторах веба сейчас найти подробную информацию не составит труда.

Кстати, один из аспектов Гидры (разработку плагинов к ней) уже освещался на Хабре (отличная статья!) Я же дам только основные ссылки:
Итак, Гидра — это бесплатный кроссплатформенный интерактивный дизассемблер и декомпилятор с модульной структурой, с поддержкой почти всех основных архитектур ЦПУ и гибким графическим интерфейсом для работы с дизассемблированным кодом, памятью, восстановленным (декомпилированным) кодом, отладочными символами и многое-многое другое. Давайте попробуем уже что-нибудь сломать этой Гидрой!

Шаг 1. Находим и изучаем крякми

В качестве «жертвы» найдем простую «крякми» (crackme) программку. Я просто зашел на сайт crackmes.

one, указал в поиске уровень сложности = 2-3 («простой» и «средний»), исходный язык программы = «C/C++» и платформу = «Multiplatform», как на скриншоте ниже:

Поиск выдал 2 результата (внизу зеленым шрифтом).

Первая крякми оказалась 16-битной и не запустилась на моей Win10 64-bit, а вот вторая (level_2 by seveb) подошла. Вы можете скачать ее по этой ссылке.

Скачиваем и распаковываем крякми; пароль на архив, как указано на сайте, — crackmes.de. В архиве находим два каталога, соответствующие ОС Linux и Windows. На своей машине я перехожу в каталог Windows и встречаю в нем единственную «экзешку» — level_2.exe. Давайте запустим и посмотрим, чего она хочет:

Похоже, облом! При запуске программа ничего не выводит. Пробуем запустить еще раз, передав ей произвольную строку в качестве параметра (вдруг, она ждет ключ?) — и вновь ничего… Но не стоит отчаиваться. Давайте предположим, что и параметры запуска нам тоже предстоит выяснить в качестве задания! Пора расчехлять наш «швейцарский нож» — Гидру.

Шаг 2. Создание проекта в Гидре и предварительный анализ

Предположим, что Гидра у тебя уже установлена. Если еще нет, то все просто. Установка Ghidra1) установи JDK версии 11 или выше (у меня 12)

2) скачай Гидру (например, отсюда) и установи ее (на момент написания статьи последняя версия Гидры — 9.0.2, у меня стоит 9.0.1)

Запускаем Гидру и в открывшемся Менеджере проектов сразу создаем новый проект; я дал ему имя crackme3 (т.е.проекты crackme и crackme2 уже у меня созданы). Проект — это, по сути, каталог файлов, в него можно добавлять любые файлы для изучения (exe, dll и т.д.). Мы сразу же добавим наш level_2.exe (File | Import или просто клавиша I): Видим, что уже до импорта Гидра определила нашу подопытную крякми как 32-разрядный PE (portable executable) для ОС Win32 и платформы x86. После импорта наш ждет еще больше информации:

Здесь, кроме вышеуказанной разрядности, нас может еще заинтересовать порядок байтов (endianness), который в нашем случае — Little (от младшего к старшему байту), что и следовало ожидать для «интеловской» 86-й платформы.

С предварительным анализом мы закончили.

Шаг 3. Выполнение автоматического анализа

Время запустить полный автоматический анализ программы в Гидре. Это делается двойным кликом на соответствующем файле (level_2.exe). Имея модульную структуру, Гидра обеспечивает всю свою основную функциональность при помощи системы плагинов, которые можно добавлять / отключать или самостоятельно разрабатывать.

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

Сам анализ выполняется довольно быстро (у меня занял около 7 секунд), хотя пользователи на форумах сетуют на то, что для больших проектов Гидра проигрывает в скорости IDA Pro. Возможно, это и так, но для небольших файлов эта разница несущественна. Итак, анализ завершен.

Его результаты отображены в окне браузера кода (Code Browser): Это окно является основным для работы в Гидре, поэтому следует изучить его более внимательно. Обзор интерфейса браузера кодаНастройки интерфейса по умолчанию разбивают окно на три части.

В центральной части располагается основное окно — листинг дизассемблера, который более или менее похож на своих «собратьев» в IDA, OllyDbg и т.д. По умолчанию столбцы в этом листинге таковы (слева направо): адрес памяти, опкод команды, ASM команда, параметры ASM команды, перекрестная ссылка (если применимо).

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

В левой части 3 панели:

  1. Секции программы (для перехода по секциям кликаем мышью)
  2. Дерево символов (импорты, экспорты, функции, заголовки и т.д.)
  3. Дерево типов используемых переменных

Для нас самое полезное здесь окно — это дерево символов, которое позволяет быстро найти, например, функцию по ее имени и перейти на соответствующий адрес.

В правой части — листинг декомпилированного кода (в нашем случае на языке C).

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

Для удобства я добавил окно просмотра памяти (Bytes) и окно с графом функций (Function Graph) в центральную часть, а в правую часть — строковые переменные (Strings) и таблицу функций (Functions). Эти окна теперь доступны в отдельных вкладках.

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

Шаг 4. Изучение алгоритма программы — функция main()

Что ж, приступим к непосредственному анализу нашей крякми-программки. Начинать следует в большинстве случаев с поиска точки входа программы, т.е. основной функции, которая вызывается при ее запуске.

Зная, что наша крякми написана на C/C++, догадываемся, что имя основной функции будет main() или что-то в этом духе 🙂 Сказано-сделано.

Вводим «main» в фильтр Дерева символов (в левой панели) и видим функцию _main() в секции Functions. Переходим на нее кликом мыши.

Обзор функции main() и переименование непонятных функций

В листинге дизассемблера сразу же отображается соответствующий участок кода, а справа видим декомпилированный C-код этой функции. Здесь стоит отметить еще одну удобную фишку Гидры — синхронизацию выделения: при выделении мышью диапазона ASM-команд выделяется и соответствующий участок кода в декомпиляторе и наоборот.

Кроме того, если открыто окно просмотра памяти, выделение синхронизируется и с памятью. Как говорится, все гениальное просто!

Сразу отмечу важную особенность работы в Гидре (в отличие, скажем, от работы в IDA). Работа в Гидре ориентирована, в первую очередь, именно на анализ декомпилированного кода.

По этой причине создатели Гидры (мы помним — речь о шпионах из АНБ :)) уделили большое внимание качеству декомпиляции и удобству работы с кодом. В частности, перейти к определению функций, переменных и секций памяти можно просто двойным кликом в коде.

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

Итак, перед нами функция main(), которую Гидра «препарировала» следующим образом:
Листинг main()int __cdecl _main(int _Argc,char **_Argv,char **_Env) { bool bVar1; int iVar2; char *_Dest; size_t sVar3; FILE *_File; char **ppcVar4; int local_18; ___main(); if (_Argc == 3) { bVar1 = false; _Dest = (char *)_text(0x100,1); local_18 = 0; while (local_18 < 3) { if (bVar1) { _text(_Dest,0,0x100); _text(_Dest,_Argv[local_18],0x100); break; } sVar3 = _text(_Argv[local_18]); if (((sVar3 == 2) && (((int)*_Argv[local_18] & 0x7fffffffU) == 0x2d)) && (((int)_Argv[local_18][1] & 0x7fffffffU) == 0x66)) { bVar1 = true; } local_18 = local_18 + 1; } if ((bVar1) && (*_Dest != 0)) { _File = _text(_Dest,"rb"); if (_File == (FILE *)0x0) { _text("Failed to open file"); return 1; } ppcVar4 = _construct_key(_File); if (ppcVar4 == (char **)0x0) { _text("Nope."); _free_key((void **)0x0); } else { _text("%s%s%s%s",*ppcVar4 + 0x10d,*ppcVar4 + 0x219,*ppcVar4 + 0x325,*ppcVar4 + 0x431); _free_key(ppcVar4); } _text(_File); } _text(_Dest); iVar2 = 0; } else { iVar2 = 1; } return iVar2;} Вроде бы с виду все нормально — определения переменных, стандартные C-шные типы, условия, циклы, вызовы функций. Но взглянув на код внимательнее, замечаем, что имена некоторых функций почему-то не определились и заменены псевдофункцией _text() (в окне декомпилятора — .text()). Давайте сразу начнем определения, что это за функции. Перейдя двойным кликом в тело первого вызова _Dest = (char *)_text(0x100,1);
видим, что это — всего лишь функция-обертка вокруг стандартной функции calloc(), служащей для выделения памяти под данные. Поэтому давайте просто переименуем эту функцию в calloc2(). Установив курсор на заголовке функции, вызываем контекстное меню и выбираем Rename function (горячая клавиша — L) и вводим в открывшееся поле новое название:

Видим, что функция тут же переименовалась. Возвращаемся назад в тело main() (кнопка Back в тулбаре или Alt + Convert), в этом случае данное число везде будет отображаться в выбранной системе счисления (в дизассемблере и в декомпиляторе); но лично я предпочитаю в коде оставлять hex'ы для стройности работы, т.к. адреса памяти, смещения и т.д.

везде задаются именно hex'ами.
После цикла идет этот код: if ((bVar1) && (*_Dest != 0)) { /* если получили аргументы 1) “-f” и 2) строку – открыть указанный файл для чтения в двоичном формате */ _File = fopen2(_Dest,”rb”); if (_File == (FILE *)0x0) { /* вернуть 1 при ошибке чтения */ perror2(“Failed to open file”); return 1; } …

}
Здесь я сразу добавил комментарии. Проверяем правильность аргументов (“-f путь_к_файлу”) и открываем соответствующий файл (2-й переданный аргумент, который мы скопировали в _Dest). Файл будет читаться в двоичном формате, на что указывает параметр «rb» функции fopen().

При ошибке чтения (например, файл недоступен) выводится сообщение об ошибке в поток stderror и программа завершается с кодом 1. Далее — самое интересное: /* !!! ПРОВЕРКА КЛЮЧА В ФАЙЛЕ !!! */ppcVar3 = _construct_key(_File);if (ppcVar3 == (char **)0x0) { /* если получили пустой массив, вывести “Nope” */puts2(“Nope.

“);_free_key((void **)0x0);}else { /* массив не пуст – вывести ключ и освободить память */printf2(“%s%s%s%s”,*ppcVar3 + 0x10d,*ppcVar3 + 0x219,*ppcVar3 + 0x325,*ppcVar3 + 0x431);_free_key(ppcVar3);}fclose2(_File);
Дескриптор открытого файла (_File) передается в функцию _construct_key(), которая, очевидно, и производит проверку искомого ключа.

Эта функция возвращает двумерный массив байтов (char**), который сохраняется в переменную ppcVar3. Если массив оказывается пуст, в консоль выводится лаконичное «Nope» (т.е. по-нашему «Не-а!») и память освобождается. В противном случае (если массив не пуст) — выводится по-видимому верный ключ и память также освобождается.

В конце функции закрывается дескриптор файла, освобождается память и возвращается значение iVar2. Итак, теперь мы поняли, что нам необходимо:

1) создать двоичный файл с верным ключом;
2) передать его путь в крякми после аргумента “-f”

Во второй части статьи мы будем анализировать функцию _construct_key(), которая, как мы выяснили, отвечает за проверку искомого ключа в файле.

Хабы:

Источник: https://habr.com/ru/post/447450/

Как пользоваться Hydra

Что такое вирус hydra

Тестирование безопасности серверов и веб-приложений имеет очень важное значение, поскольку если уязвимость смогли найти вы, то ее найдет и злоумышленник, а значит он сможет получить доступ к вашим персональным данным или испортить приложение. Одним из самых эффективных и очень простых методов взлома есть перебор паролей. Поэтому очень важно убедиться, что ваш пароль будет сложно перебрать.

Hydra – это программное обеспечение с открытым исходным кодом для перебора паролей в реальном времени от различных онлайн сервисов, веб-приложений, FTP, SSH и других протоколов.

Особенность инструмента в том, что здесь выполняется перебор не по хэшу, а напрямую с помощью запросов к серверу, это значит что вы сможете проверить правильно ли настроены фаерволы,  блокируются ли такие попытки, а также можете ли вы вообще определить такую атаку на сервер. В этой статье мы рассмотрим как пользоваться thc hydra для перебора паролей.

Установка THC Hydra

Первым делом нам необходимо установить этот инструмент. Это довольно популярная утилита для тестирования безопасности, поэтому вы можете найти ее в официальных репозиториях. Для установки нужных пакетов в Ubuntu выполните:

sudo apt install hydra

Чтобы установить программу в Red Hat/CentOS команда аналогичная:

sudo yum install hydra

Но в официальных репозиториях, как правило, находятся более старые версии программы. Если вы хотите самую свежую, то придется собрать ее из исходников. Но здесь нет ничего сложного. Сначала загрузим исходники последней версии с GitHub, на данный момент, это 8.4:

wget https://github.com/vanhauser-thc/thc-hydra/archive/v8.4.tar.gz

Затем необходимо их распаковать и перейти в папку с исходниками:

tar xvpzf thc-hydra-v8.4.tar.gz
$ cd thc-hydra-v8.4

Дальше выполните такие команды для компиляции и установки:

./configure$ make

$ sudo make install

Разработчики поступили очень грамотно, когда настроили установку в /usr/local. Таким образом, утилита не распространится по всей файловой системе, а будет в одном месте. Если вы еще хотите установить графическую оболочку, то вам нужно переместиться в папку hydra-gtk и выполнить те же команды:

cd hydra-gtk$ ./configure$ make
$ sudo make install

Нужно заметить, что для ее сборки необходимы пакеты разработки gtk2. Но я бы не советовал вам использовать этот графический интерфейс. Если разобраться в работе с утилитой через терминал, то он совсем не нужен, тем более, что вся гибкость утилиты раскрывается через командную строку.

Программа THC Hydra

Перед тем как мы начнем рассматривать как пользоваться htc hydra, нам необходимо разобраться какие параметры команде передавать и как это делать. Давайте сначала рассмотрим общий синтаксис:

$ hydra опции логины пароли -s порт адрес_цели модуль параметры_модуля

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

  • -R – восстановить ранее прерванную сессию Hydra;
  • -S – использовать SSL для подключения;
  • -s – указать порт;
  • -l – использовать логин;
  • -L – выбирать логины из файла со списком;
  • -p – использовать пароль;
  • -P – использовать пароль из файла со списком;
  • -M – взять список целей из файла;
  • -x – генератор паролей;
  • -u – по умолчанию hydra проверяет все пароли для первого логина, эта опция позволяет проверить один пароль для всех логинов;
  • -f – выйти, если правильный логин/пароль найден;
  • -o – сохранить результат в файл;
  • -t – количество потоков для программы;
  • -w – время между запросами в секундах;
  • -v – подробный вывод;
  • -V – выводить тестируемые логины и пароли.

Это были основные опции, которые, вы будете использовать. Теперь рассмотрим модули, а также способы аутентификации, которые вы можете подобрать:

  • adam6500;
  • asterisk;
  • cisco;
  • cisco-enable;
  • cvs;
  • ftp;
  • http-head;
  • http-get;
  • http-post;
  • http-get-form;
  • http-post-form;
  • http-proxy;
  • http-proxy-urlenum;
  • icq;
  • imap;
  • irc;
  • ldap2;
  • ldap3;
  • mssql;
  • nntp;
  • pcanywhere;
  • pcnfs;
  • pop3;
  • redis;
  • rexec;
  • rlogin;
  • rpcap;
  • rsh;
  • rtsp;
  • s7-300;
  • smb;
  • smtp;
  • smtp-enum;
  • snmp;
  • socks5;
  • ssh;
  • teamspeak;
  • telnet;
  • vmauthd;
  • vnc;
  • xmpp.

Как видите, количество доступных протоколов достаточно большое, вы можете проверить безопасность как ssh, ftp, и до веб-форм. Дальше мы рассмотрим как пользоваться hydra, как использовать самые часто применяемые протоколы.

Как пользоваться thc-hydra

Как вы уже догадались, hydra перебирает пароли из переданного ей файла, оттуда же берутся и логины. Также вы можете попросить программу генерировать пароли самостоятельно, на основе регулярного выражения. А вот уже их подстановка и передача на удаленный сервер настраивается с помощью строки параметров модуля.

Естественно, что файлы с паролями нужно заготовить. В этой статье для примеров я буду использовать файл паролей от John the ripper, который вы можете без проблем найти в интернете. Также можно использовать словари топ500 паролей, и от Cain & Abel, где находится более 300000 пароля.

Логин будем использовать только один – admin.

Перебор пароля FTP

Сначала поговорим про использование hydra в консольной версии. На самом деле, это основная программа. Команда будет выглядеть таким образом:

hydra -l admin -P john.txt ftp://127.0.0.1

Как вы помните опция -l задает логин пользователя, -P – файл со списком паролей. Далее мы просто указываем протокол и айпи цели.

Готово, вот так просто можно перебрать пароль от вашего FTP, если вы установили его слишком простым и не настроили защиты. Как видите, утилита перебирает пароли со скоростью 300 шт в минуту.

Это не очень быстро, но для простых паролей достаточно опасно. Если вы хотите получить больше информации во время перебора нужно использовать опции -v и -V вместе:

hydra -l admin -P john.txt -vV ftp://127.0.0.1

Также, с помощью синтаксиса квадратных скобок, вы можете задать не одну цель, а атаковать сразу целую сеть или подсеть:

hydra -l admin -P john.txt ftp://[192.168.0.0/24]

Также вы можете брать цели из файла со списком. Для этого используется опция -M:

hydra -l admin -P john.txt -M targets.txt ftp

Если подбор по словарю не сработал, можно применить перебор с автоматической генерацией символов, на основе заданного набора. Вместо списка паролей нужно задать опцию -x а ей передать строку с параметрами перебора. Синтаксис ее такой:

минимальная_длина:максимальная_длина:набор_символов

С максимальным и минимальным количеством, я думаю все понятно, они указываются цифрами. В наборе символов нужно указать a для всех букв в нижнем регистре, A – для букв в верхнем регистре и 1 для всех цифр от 0 до 9. Дополнительные символы указываются после этой конструкции как есть. Например:

  • 4:4:1 – пароль размером четыре символа, состоящий только из цифр. А именно все пароли в диапазоне 0000-9999;
  • 4:8:1 – пароль от четырех до восьми символов, только из цифр;
  • 4:5:aA1. – пароль, размером от 4 до 5 символов, состоит из цифр, букв верхнего и нижнего регистра или точки.

Вся команда будет выглядеть вот так:

hydra -l admin -x 4:4:aA1. ftp://127.0.0.1

Можно пойти другим путем и указать ip цели и порт вручную с помощью опции -s, а затем указать модуль:

hydra -l admin -x 4:4:aA1 -s 21 127.0.0.1 ftp

Пароли для ssh, telet и других подобных сервисов перебираются подобным образом. Но более интересно рассмотреть перебор паролей для http и html форм.

Перебор пароля аутентификции HTTP

Различные роутеры часто используют аутентификацию на основе HTTP. Перебор пароля от такого типа формы входа выполняется очень похожим образом на ftp и ssh. Строка запуска программы будет выглядеть вот так:

hydra -l admin -P ~/john.txt -o ./result.log -V -s 80 127.0.0.1 http-get /login/

Здесь мы использовали логин admin, список паролей из файла john.txt, адрес цели 127.0.0.1 и порт 80, а также модуль http-get. В параметрах модулю нужно передать только адрес страницы входа на сервере. Как видите, все не так сильно отличается.

Перебор паролей веб-форм

Самый сложный вариант – это перебор паролей для веб-форм. Здесь нам нужно узнать что передает на сервер нужная форма в браузере, а затем передать в точности те же данные с помощью hydra.

Вы можете посмотреть какие поля передает браузер с помощью перехвата в wireshark, tcpdump, в консоли разработчика и так далее. Но проще всего открыть исходный код формы и посмотреть что она из себя представляет.

Далеко ходить не будем и возьмем форму WordPress:

Как видите, передаются два поля log и pwd, нас будут интересовать только значения полей input. Здесь несложно догадаться, что это логин и пароль. Поскольку форма использует метод POST для передачи данных, то нам нужно выбрать модуль http-post-form. Синтаксис строки параметров будет выглядеть вот так:

адрес_страницы:имя_поля_логина=USER&имя_поля_пароля=PASS&произвольное_поле=значение:строка_при_неудачном_входе

Строчка запуска программы будет выглядеть вот так:

hydra -l user -P ~/john.txt -o ./result.log -V -s 80 127.0.0.1 http-post-form “/wp-admin:log=USER&pwd=PASS:Incorrect Username or Password”

Переменные USER и PASS содержат имя пользователя и пароль взятые из словаря, также, возможно, придется передать дополнительные параметры, они передаются также, только значения будут фиксированы. Заканчивается выражение строкой, которая присутствует на странице при неудачном входе. Скорость перебора может достигать 1000 паролей в минуту, что очень быстро.

Графическая утилита xhydra

Хотелось бы еще сказать несколько слов про графическую версию. Это просо интерфейс, который помогает вам сформировать команду для консольной hydra. Главное окно программы выглядит вот так:

Здесь есть несколько вкладок:

  • Target – цели атаки;
  • Passwords – списки паролей;
  • Tuning – дополнительные настройки;
  • Specific – настройки модулей;
  • Start – запуск и просмотр статуса атаки.

Я думаю, вы без труда во всем этом разберетесь когда освоите консольный вариант. Например, так выполняется настройка перебора паролей ftp:

Выводы

В этой статье мы рассмотрели как пользоваться hydra для перебора паролей от различных сетевых сервисов онлайн, а также тестирования безопасности своих систем. Помните, что использовать такие инструменты против чужих систем – преступление. Вы можете тестировать только свои машины и службы. Проводить время от времени такое тестирование в большой компании может быть крайне полезно.

(14 5,00 из 5)
Загрузка…

Источник: https://losst.ru/kak-polzovatsya-hydra

Поделиться:
Нет комментариев

    Добавить комментарий

    Ваш e-mail не будет опубликован. Все поля обязательны для заполнения.