Простая Dos атака с Golden Eye в Kali Linux
В этой статье мы разберём один из самых простых способов Dos атак с помощью «Golden Eye»
DoS-атака представляет собой генерацию «мусорного» трафика с одного устройства (IP-адреса) на ресурс-«жертву» (например, сайт). Цель — исчерпать вычислительные и иные мощности «жертвы», чтобы заблокировать работу последней.
Не стоит путать DDos с Dos, хотя аббревиатуры различаются всего лишь на одну букву, за ней скрывается огромная фактическая разница. Dos атаку производит одна машина, а DDos атака зачастую делается с использованием ботнета.
Ботнет — это сеть компьютеров, зараженных вредоносным ПО. Киберпреступники используют специальные троянские программы, чтобы обойти систему защиты компьютеров, получить контроль над ними и объединить их в единую сеть (ботнет), которой можно управлять удаленно.
Действия в данной статье являются образовательными и будут проходить на собственном ресурсе. Автор никого не призывает к действиям и не несёт ответственности.
Установка
Для начала нам понадобится поставить на OC «Golden Eye». Выделим каталог под наш софт, в моём случае я создам новый.
Перейдём в него:
Теперь качаем архив:
Атака
Тесты
Следить за состоянием сервера я буду командой top:
Cервер находится в состоянии простоя, процесс полностью свободен, свободной оперативной памяти доступно 350 мегабайт.
Результат
Можно посмотреть по скриншоту, процессор по-прежнему практически бездействует, но количество свободной памяти резко сократилось, увеличилось количество спящих процессов.
Анализ логов
Одного взгляда на логи достаточно, что каждый запрос GET содержит различные строки, различные пользовательские агенты и различных реферов, среди которых Bing, Baidu, Yandex и другие рандомные поисковые системы.
Так что происходит, когда ваш веб-сервер встречается с этой атакой? Он анализирует входящий трафик, проверяет запрашиваемые URL, адреса источников и поле Referrer и пропускает их с кодом 200 OK. Почему? Потому что каждый браузер был различным.
Инструмент был создан остроумно так, чтобы любой сервер мог подумать, что это различные пользователи, пытающие зайти с одного IP (может быть IP прокси или большой организации?) с различными браузерами (Firefox, Chrome, MSIE, Safari и т. д.), различными операционными системами (Mac, Linux, Windows и т.д.) и даже с различными реферами. Да, возможно запрашиваемый URL был неправильным, но нормальные веб-сервера всё равно пропустят его, перенаправят на страницу ошибки в то время как соединение будет оставаться открытым (например, Apache worker/socket). Стандартный веб-сервер обычно позволяет X число одновременных пользователей с одного IP и с большим количеством соединений/используемых сокетов, этот тип атаке приводит к тяжёлому давлению на сервер и последующие пользователи получают ошибку (HTTP 503 или наподобии). Следовательно, атакующий с несколькими рандомными proxy/VPN может быстро истощить ресурсы сервера. Он даже может замедлить атаки на один IP для избежания начального выявления:
Вышеприведённая команда использует:
-w = 10 одновременные рабочие
-s = 10 одновременных соединений
-m = рандом, смесь GET и POST
Заключение
GoldenEye выглядит как расширенная (или схожая на) HTTP Flooder программа. Обе работают похожим образом, но NoCache и KeepAlive от GoldenEye делают большую разницу. Также она использует интересный способ перемешивания браузеров, операционных систем и рефереров, что может обмануть файервол.
В общем, это хороший инструмент для тестирования на нагрузку своего собственного веб-сайта (с разрешения вашей хостинг компании), вашего корпоративного веб-сайта и любых веб-приложений, которые позволяют входящие GET или POST запросы. Используйте её для обновления ваших правил файервола. WAF и благодаря этому избежите будущих атак.
Источник
Goldeneye DDos Tool in Kali Linux
Goldeneye is a free and Open source tool available on GitHub. We can perform a denial of service attack using this tool. It’s a framework written in .NET Core. This tool provides many base classes and extensions to use with your daily work. This tool allows a single machine to take down another machine’s web server it uses perfectly legitimate HTTP traffic. It makes a full TCP connection and then requires only a few hundred requests at long-term and regular intervals. As a result, the tool doesn’t need to use a lot of traffic to exhaust the available connections on a server.
Uses of Goldeneye:
- Goldeneye uses perfectly legitimate HTTP traffic.
- Deniel of service attack can be executed with the help of Goldeneye by generating heavy traffic of botnets.
- Goldeneye sends multiple requests to the target as a result generates heavy traffic botnets.
- Goldeneye is an open-source tool, so you can download it from GitHub free of cost.
- Goldeneye can be used to perform ddos attacks on any webserver.
Installation
Step 1: Open your Kali Linux and then Open your Terminal. Use the following command to install the tool.
Step 2: Use the following command to move to Goldeneye directory.
Step 3: Use the following command to list out the contents of the directory.
Step 4: The tool is running successfully now.
Usage
Example 1: Use the GoldenEye tool to perform DDoS attack on any domain.
The tool is running successfully and started attacking the domain www.google.com. This tool is useful for security researchers.
Example 2: To display all usage options of the golden eye tool, type the following command
Example 3: To send traffic in ‘random’ mode with 5 workers running 10 connections each
Example 4: Use the GoldenEye tool to send traffic to the target machine and capture traffic on Wireshark tool.
The tool will start hitting the server. Now open Wireshark and capture packets.
The tool is running successfully and started attacking the domain and the Wireshark is capturing the packets.
Источник
Goldeneye github kali linux
THIS PROJECT IS NO LONGER MAINTAINED
GoldenEye is a Python 3 app for SECURITY TESTING PURPOSES ONLY!
GoldenEye is an HTTP DoS Test Tool.
Attack Vector exploited: HTTP Keep Alive + NoCache
- util/getuas.py — Fetches user-agent lists from http://www.useragentstring.com/pages/useragentstring.php subpages (ex: ./getuas.py «http://www.useragentstring.com/pages/useragentstring.php?name=All») REQUIRES BEAUTIFULSOUP4
- res/lists/useragents — Text lists (one per line) of User-Agent strings (from http://www.useragentstring.com)
- 2016-02-06 Added support for not verifying SSL Certificates
- 2014-02-20 Added randomly created user agents (still RFC compliant).
- 2014-02-19 Removed silly referers and user agents. Improved randomness of referers. Added external user-agent list support.
- 2013-03-26 Changed from threading to multiprocessing. Still has some bugs to resolve like I still don’t know how to propperly shutdown the manager.
- 2012-12-09 Initial release
- Change from getopt to argparse
- Change from string.format() to printf-like
This software is distributed under the GNU General Public License version 3 (GPLv3)
THIS SOFTWARE IS PROVIDED FOR EDUCATIONAL USE ONLY! IF YOU ENGAGE IN ANY ILLEGAL ACTIVITY THE AUTHOR DOES NOT TAKE ANY RESPONSIBILITY FOR IT. BY USING THIS SOFTWARE YOU AGREE WITH THESE TERMS.
About
GoldenEye Layer 7 (KeepAlive+NoCache) DoS Test Tool
Источник
Статья Стресс-тест сети: DoS веб-сайта в Kali Linux с GoldenEye
На страницах codeby.net уже говорилось об инструментах DoS, которые могут сильно нагрузить серверы HTTP, чтобы парализовать их работу из-за исчерпания пула ресурсов. GoldenEye — это ещё один, со своими особенностями, который может положить сервер за 30 секунд, в зависимости от того, насколько велик пул его памяти. Конечно, он не работает на защищённых серверах и серверах за правильно настроенными WAF, IDS. Но это отличный инструмент для тестирования вашего веб-сервера на повышенную нагрузку. А на основании полученных результатов можно изменить правила iptables/файерволов для увеличения устойчивости и сопротивляемости к негативным факторам.
Это интересно:
- xerxes — Мошнейший инструмент для организации DoS-атак
- Пишем самый мощный инструмент для DoS атак [Python]
- Список лучших инструментов для DOS атак
Подробности об инструменте GoldenEye:
- Название утилиты: GoldenEye
- Автор: Jan Seidl
- Веб-сайт: http://wroot.org/
Из поста автора GoldenEye:
- Этот инструмент предназначен только для целей исследования и любое другое вредоносное его использование запрещено.
- GoldenEye — это приложение на питоне для ТОЛЬКО ЦЕЛЕЙ ТЕСТИРОВАНИЯ БЕЗОПАСНОСТИ!
- GoldenEye это инструмент тестирования HTTP DoS.
- Эксплуатируемый вектор атаки: HTTP Keep Alive + NoCache
Типы DoS или DDoS атак
Давайте пройдёмся по самой базовой информации об атаках DoS или. DDoS. Обычно выделяют три вида DoS и DDoS атак:
- DoS и DDoS атаки уровня приложений
- DoS и DDoS атаки уровня протокола
- DoS и DDoS атаки насыщения полосы пропускания
DoS и DDoS атаки уровня приложений
DoS и DDoS атаки уровня приложений — это атаки, которые нацелены на Windows, Apache, OpenBSD или другое программное обеспечение для выполнения атаки и краха сервера.
DoS и DDoS атаки уровня протокола
DoS и DDoS атаки уровня протокола — это атаки на уровне протокола. Эта категория включает Synflood, Ping of Death и другие.
DoS и DDoS атаки насыщения полосы пропускания
Этот тип атак включает ICMP-флуд, UDP-флуд и другие типы флуда, осуществляемые через поддельные пакеты.
Слова DoS и DDoS близки по значению. Когда атака ведётся с одной машины, обычно говорят о DoS атаке. При большом количестве атакующих из ботнета (или группы) говорят о DDoS атаке. Об этих атаках доступно много информации, но не важна, какого типа эта атака, т. к. они все одинаково вредны для сервера/сети.
Сторонние программы, установленные не из репозитория, я собираю в каталоге
/opt. Если у вас нет каталога для сторонних программ, то создайте его и перейдите туда:
Следующая большая команда создаст каталог, загрузит туда последнюю версию GoldenEye, распакует архив и сразу запустит GoldenEye (покажет справку по программе):
mkdir GoldenEye && cd GoldenEye && wget https://codeload.github.com/jseidl/GoldenEye/zip/master && unzip master.zip && cd GoldenEye-master/ && ./goldeneye.py
Если вам хочется всё сделать самому — постепенно, то продолжаем. Для начала создаём каталог GoldenEye, переходим туда и скачиваем архив с программой:
Теперь у нас появился каталог GoldenEye-master, переходим туда и проверяем его содержимое:
Запуск GoldenEye – досим веб-сайт
Запуск очень прост, делается это так:
Программа показывает нам свою справку:
Необходимо осведомлять пользователей о расписании тестирования и возможных перебоях в работе. Поскольку часто результатом симуляции атаки является остановка работы.
Ну и все другие предупреждения: вы не должны тестировать (симулировать атаку) других без их разрешения. Поскольку в случае причинения вреда, вы можете быть привлечены к ответственности в соответствии с законодательством.
Данная информация размещена в образовательных целях. Для тестирования своих серверов, для анализа качества их настройки и разработки мер противодействия атакам.
Запуск слегка различается от используемой вами ОС:
В зависимости от того, где вы сохранили файлы, подредактируйте ваш путь и команду.
Далее тесты GoldenEye:
Следить за состоянием сервера я буду командой top :
Т.е. сервер находится в состоянии простоя, процесс полностью свободен, свободной оперативной памяти доступно 350 мегабайт.
Можно посмотреть по скриншоту, процессор по-прежнему практически бездействует, но количество свободной памяти резко сократилось, увеличилось количество спящих процессов.
Тем не менее, сервер не удалось полностью положить при атаке в один поток (хотя вообще-то, такая задача и не ставилась).
Анализ атаки GoldenEye
Посмотрим лог сервера:
Я использую grep -E ‘192.168.1.55’, чтобы отфильтровать подключения только с машины, с которой велась атака.
Видим там примерно такое:
Одного взгляда на логи достаточно, что каждый запрос GET содержит различные строки, различные пользовательские агенты и различных реферов, среди которых Bing, Baidu, Yandex и другие рандомные поисковые системы.
Так что происходит, когда ваш веб-сервер встречается с этой атакой? Он анализирует входящий трафик, проверяет запрашиваемые URL, адреса источников и поле Referrer и пропускает их с кодом 200 OK. Почему? Потому что каждый браузер был различным.
Инструмент был создан остроумно так, чтобы любой сервер мог подумать, что это различные пользователи, пытающие зайти с одного IP (может быть IP прокси или большой организации?) с различными браузерами (Firefox, Chrome, MSIE, Safari и т. д.), различными операционными системами (Mac, Linux, Windows и т.д.) и даже с различными реферами. Да, возможно запрашиваемый URL был неправильным, но нормальные веб-сервера всё равно пропустят его, перенаправят на страницу ошибки в то время как соединение будет оставаться открытым (например, Apache worker/socket). Стандартный веб-сервер обычно позволяет X число одновременных пользователей с одного IP и с большим количеством соединений/используемых сокетов, этот тип атаке приводит к тяжёлому давлению на сервер и последующие пользователи получают ошибку (HTTP 503 или наподобии). Следовательно, атакующий с несколькими рандомными proxy/VPN может быстро истощить ресурсы сервера. Он даже может замедлить атаки на один IP для избежания начального выявления:
Вышеприведённая команда использует:
- -w = 10 одновременные рабочие
- -s = 10 одновременных соединений
- -m = рандом, смесь GET и POST
Совершенный DoS!
Интересное наблюдение по Google Analytics и GoldenEye
Я попробовал это в живую, чтобы просто посмотреть, как поведёт себя реальный веб-сервер. Интересно, оказывается что Google Analytics воспринимает этот трафик как реальный и добавляет данные от флуда в статистику (хотя он и идёт с одного IP, но различные рефереры и браузеры убеждают Google в том, что это отдельные пользователи). Можно придумать ещё пару способов эксплуатировать это:
- Можно повышать свой рейтинг в Google, т. к. она будет воспринимать это как легитимный трафик.
- Если Google будет наказывать за это, то тогда можно зафлудить веб-сайты конкурентов для понижения их ранжирования в Google.
Эта палка о двух концах.
Блокирование/защита от атаки GoldenEye
Следующие предложения хорошо сработают, когда вы используете Apache:
- Понижение соединений на один IP (обычно их 300 на IP для Apache)
- Редактирование порога соединений на IP
- Отключить настройки KeepAlive и нижний Connection Timeout (по умолчанию это 300)
- Если вы хоститесь на общем сервере, обратитесь к сисадминам. Если они не могут защитить от этой простой атаки, то просто переезжайте к хостинг компании получше.
- Используйте Web application Firewall (WAF).
- Использование белых листов для входящих запросов – и эта атака не окажет эффекта на ваш сервер.
- NGINX и Node.js вроде бы лучше справляются с атаками подобного рода.
Заключение
GoldenEye выглядит как расширенная (или схожая на) HTTP Flooder программа. Обе работают похожим образом, но NoCache и KeepAlive от GoldenEye делают большую разницу. Также она использует интересный способ перемешивания браузеров, операционных систем и рефереров, что может обмануть файервол.
В общем, это хороший инструмент для тестирования на нагрузку своего собственного веб-сайта (с разрешения вашей хостинг компании), вашего корпоративного веб-сайта и любых веб-приложений, которые позволяют входящие GET или POST запросы. Используйте её для обновления ваших правил файервола. WAF и благодаря этому избежите будущих атак.
Будет интересно послушать ваши решения для подобного типа атак — пишите их в комментариях. Ретвит и расшаривание статьи в соц. сетях приветствуются.
Источник