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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
gopacket — منفذ Go كامل لـ Impacket - 63 أداة CLI و24 مكتبة لهجمات بروتوكولات Windows وActive Directory، مُجمَّعة في ملف ثنائي واحد بدون تبعيات. | Kitploit
أدوات/GitHubGitHub/mandiant/gopacket
أطر اختبار الاختراقتصعيد الامتيازاتأطر الاستغلالهجمات كلمات المرورالحركة الجانبيةما بعد الاستغلالأمن الشبكاتالقيادة والسيطرةالفريق الأحمرأداة الوصول عن بعد
GitHub
7076180منذ شهر واحدتمت المراجعة من قبل Kitploit
mandiant/gopacket

gopacket

منفذ Go كامل لـ Impacket - 63 أداة CLI و24 مكتبة لهجمات بروتوكولات Windows وActive Directory، مُجمَّعة في ملف ثنائي واحد بدون تبعيات.

عرض المستودع

الأكثر شعبية

عرض الكل →

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

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

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

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

gopacket

بواسطة Jacob Paullus (@psycep_)

تطبيق Go كامل لـ Impacket - 63 أداة و24 حزمة مكتبة للتفاعل مع بروتوكولات شبكات Windows، وتعداد Active Directory، وتنفيذ الهجمات. مبني كإطار عمل Go أصلي بحيث يمكنك الترجمة مرة واحدة وتشغيله في أي مكان دون تبعيات Python.

إصدار تجريبي - تجريبي للغاية. gopacket قيد التطوير النشط. تم اختبار الأدوات الأساسية مقابل بيئات مختبر Active Directory، لكن الحالات الحدية وتقلبات البروتوكولات متوقعة. إذا لم يعمل شيء ما، يرجى اختبار نفس العملية مع Impacket جنبًا إلى جنب وتضمين كلا المخرجات في تقرير الخطأ. يساعدنا هذا في تحديد ما إذا كانت المشكلة خاصة بـ gopacket أو قيدًا مشتركًا في البروتوكول.

التثبيت

root@kitploit:~
git clone https://github.com/mandiant/gopacket
cd gopacket

# Default: Linux/macOS build + install to /usr/local/bin
./install.sh

# Run with no flags and it prompts you through the choices interactively.
# Or pick a target directly:
./install.sh --target portable   # static Linux binaries in ./dist/portable/
./install.sh --target windows    # Windows .exe cross-compiles in ./dist/windows/
./install.sh --target all        # build every target in one run

# Build without installing (native only)
./install.sh --build-only

# Or build with make
make build

يتطلب البناء الافتراضي (--target native) الإصدار Go 1.24.13+ وGCC وملفات تطوير libpcap ( على Debian/Ubuntu/Kali، على RHEL/CentOS، أو على macOS). تحتاج أهداف و فقط إلى سلسلة أدوات Go؛ يصبح و واجهات وهمية في تلك البنيات لأنهما يتطلبان libpcap. راجع للحصول على المصفوفة الكاملة.

apt install build-essential libpcap-dev
yum install gcc libpcap-devel
brew install libpcap
portable
windows
sniff
split
دعم المنصات

دعم المنصات

يُبنى gopacket على Linux وmacOS وWindows. تعتمد مجموعة الأدوات العاملة ومسارات التمرير المتاحة على أعلام البناء:

BuildTools availableProxying
Linux / macOS with cgo (default)All 63proxychains (LD_PRELOAD) and/or -proxy SOCKS5
Linux with CGO_ENABLED=061 (sniff, split become stubs)-proxy only (proxychains needs the libc hook)
Windows (GOOS=windows CGO_ENABLED=0)60 (sniff, split, sniffer stubs)-proxy only (no LD_PRELOAD on Windows)

يعتمد sniff وsplit على libpcap عبر cgo؛ يعتمد sniffer على مقابس Unix الخام. عندما يتعذر بناء أداة للهدف، يستبدل gopacket واجهة وهمية تطبع رسالة واضحة وتخرج بالرمز 1، بحيث ينجح go build ./... دائمًا ويكون تخطيط التثبيت متسقًا عبر المنصات.

لإلغاء التثبيت:

root@kitploit:~
./install.sh --uninstall

دعم البروكسي

يدعم gopacket مساري تمرير مستقلين. يمكن أيضًا تسلسلهما معًا.

proxychains (LD_PRELOAD)

تعمل جميع أدوات gopacket عبر proxychains. عادةً ما تتجاوز ثنائيات Go proxychains لأن وقت تشغيل Go يتعامل مع DNS والشبكات داخليًا، متجاوزًا خطافات LD_PRELOAD التي يعتمد عليها proxychains. يتحايل gopacket على ذلك بالربط مع مكتبة C الخاصة بالنظام لعمليات الشبكة، مما يسمح لـ proxychains باعتراض الاتصالات بشكل طبيعي.

root@kitploit:~
proxychains gopacket-secretsdump 'domain/user:password@target'
proxychains gopacket-smbclient -k -no-pass 'domain/[email protected]'

بروكسي SOCKS5 الداخلي (-proxy)

تقبل كل أداة -proxy لتوجيه TCP الصادر عبر خادم SOCKS5 دون الاعتماد على LD_PRELOAD. المخططات المقبولة: socks5 وsocks5h. عندما لا يتم تعيين -proxy، يتم الرجوع إلى متغيرات البيئة ALL_PROXY / all_proxy.

root@kitploit:~
gopacket-secretsdump -proxy socks5h://127.0.0.1:1080 'domain/user:password@target'
ALL_PROXY=socks5h://127.0.0.1:1080 gopacket-smbclient 'domain/user:password@target'

الميزات المعتمدة على UDP معطّلة تحت -proxy بدلًا من تسريب الحزم بصمت (نادرًا ما تدعم البروكسيات SOCKS5 UDP ASSOCIATE، وتجاوز البروكسي لـ UDP سيكشف عنوان IP الحقيقي للمشغل). الميزات المتأثرة وحلولها البديلة موثقة في KNOWN_ISSUES.md.

التسلسل: -proxy متوافق مع proxychains. لا يزال اتصال TCP بخادم SOCKS5 نفسه يمر عبر connect() في libc، لذا يعمل proxychains → gopacket → -proxy → target لسيناريوهات التوجيه المتداخلة.

التوثيق

راجع دليل مطوري المكتبة للحصول على توثيق API الكامل، وأمثلة الكود، ونظرة عامة على البنية لبناء أدوات مخصصة فوق حزم البروتوكولات الـ 24 الخاصة بـ gopacket.

الأدوات (63)

التنفيذ عن بُعد

ToolDescription
psexecتنفيذ أوامر عن بُعد عبر إنشاء خدمة SMB
smbexecتنفيذ أوامر عن بُعد عبر SMB (أكثر تخفيًا من psexec)
wmiexecتنفيذ أوامر عن بُعد عبر WMI
dcomexecتنفيذ أوامر عن بُعد عبر DCOM
atexecتنفيذ أوامر عن بُعد عبر Task Scheduler

استخراج بيانات الاعتماد وDPAPI

ToolDescription
secretsdumpاستخراج SAM/LSA/NTDS.dit وDCSync (عن بُعد + دون اتصال)
dpapiاستخراج مفتاح النسخ الاحتياطي DPAPI
esentutlمحلل قاعدة بيانات ESE دون اتصال (NTDS.dit)
registry-readمحلل خلية سجل Windows دون اتصال

Kerberos

ToolDescription
getTGTطلب TGT بكلمة مرور أو hash أو مفتاح AES
getSTطلب تذكرة خدمة باستخدام S4U2Self/S4U2Proxy
GetUserSPNsKerberoasting - البحث عن SPNs وطلبها
GetNPUsersAS-REP roasting - البحث عن حسابات بدون pre-auth
ticketerتزوير التذاكر الذهبية/الفضية
ticketConverterالتحويل بين صيغ ccache وkirbi
describeTicketتحليل وفك تشفير تذاكر Kerberos
getPacطلب وتحليل معلومات PAC
keylistattackهجوم KERB-KEY-LIST-REQ (RODC)
raiseChildتصعيد من النطاق الفرعي إلى الأب عبر التذكرة الذهبية

تعداد Active Directory

ToolDescription
GetADUsersتعداد مستخدمي النطاق عبر LDAP
GetADComputersتعداد أجهزة النطاق عبر LDAP
GetLAPSPasswordقراءة كلمات مرور LAPS عبر LDAP
findDelegationالبحث عن تكوينات التفويض
lookupsidتخمين SID عبر LSARPC
samrdumpتعداد المستخدمين عبر SAMR
rpcdumpتفريغ نقاط نهاية RPC عبر epmapper
rpcmapفحص واجهات RPC القابلة للوصول
netتعداد net user/group/computer عبر SAMR/LSARPC
netviewتعداد الجلسات والمشاركات والمستخدمين المسجلين
CheckLDAPStatusالتحقق من متطلبات توقيع LDAP وربط القنوات
DumpNTLMInfoتفريغ معلومات مصادقة NTLM من تفاوض SMB
getArchاكتشاف بنية نظام التشغيل البعيد عبر RPC
machine_roleاكتشاف دور الجهاز (DC، خادم، محطة عمل)

هجمات Active Directory

ToolDescription
addcomputerإنشاء/تعديل/حذف حسابات الأجهزة (SAMR + LDAP)
rbcdالتلاعب بالتفويض المقيد القائم على الموارد
dacleditقراءة/كتابة DACLs على كائنات AD
ownereditقراءة/تعديل ملكية الكائنات
sameditانتحال اسم حساب SAM (CVE-2021-42278/42287)
badsuccessorBadSuccessor / تصعيد مشغل النسخ الاحتياطي
changepasswdتغيير/إعادة تعيين كلمات المرور عبر SAMR وLDAP

أدوات SMB

ToolDescription
smbclientعميل SMB تفاعلي (المشاركات، ls، get، put، إلخ)
smbserverخادم SMB لمشاركة الملفات
attribاستعلام/تعديل سمات الملفات عبر SMB
filetimeاستعلام/تعديل الطوابع الزمنية للملفات عبر SMB
servicesإدارة الخدمات عن بُعد عبر SVCCTL
regعمليات السجل عن بُعد عبر WINREG
Get-GPPPasswordاستخراج كلمات مرور Group Policy Preferences من SYSVOL
karmaSMBخادم SMB خبيث لالتقاط hash

NTLM Relay

ToolDescription
ntlmrelayxإطار عمل NTLM relay كامل مع دعم متعدد البروتوكولات

يدعم ntlmrelayx:

  • خوادم الالتقاط: SMB، HTTP/HTTPS، WCF (ADWS)، RAW، RPC، WinRM
  • عملاء التمرير: SMB، LDAP/LDAPS، HTTP/HTTPS، MSSQL، WinRM، RPC
  • الهجمات: secretsdump، smbexec، ldapdump، تفويض RBCD، إساءة استخدام ACL، بيانات اعتماد الظل، ADCS ESC8، addcomputer، التلاعب بـ DNS، والمزيد
  • البنية التحتية: بروكسي SOCKS5 مع إضافات واعية بالبروتوكول، وحدة تحكم تفاعلية، REST API، توزيع دائري متعدد الأهداف، خدمة WPAD

SQL Server

ToolDescription
mssqlclientعميل MSSQL تفاعلي مع مصادقة SQL/Windows/Kerberos
mssqlinstanceاكتشاف نسخ MSSQL عبر SQL Browser

WMI

ToolDescription
wmiqueryصدفة استعلام WMI تفاعلية
wmipersistاستمرارية اشتراك أحداث WMI

خدمات الطرفية

ToolDescription
tstoolتعداد جلسات وعمليات خدمات الطرفية

بروتوكولات أخرى

ToolDescription
rdp_checkفحص مصادقة RDP
mqtt_checkفحص مصادقة MQTT
exchangerعميل Exchange Web Services

أدوات مساعدة

ToolDescription
ntfs-readمحلل نظام ملفات NTFS دون اتصال
ping / ping6ICMP ping
sniff / snifferالتقاط حزم الشبكة
splitتقسيم الملفات الكبيرة

المصادقة

تدعم جميع أدوات الشبكة ثلاث طرق للمصادقة:

root@kitploit:~
# Password
gopacket-secretsdump 'domain/user:password@target'

# NTLM hash (pass-the-hash)
gopacket-secretsdump -hashes ':nthash' 'domain/user@target'

# Kerberos (pass-the-ticket)
KRB5CCNAME=ticket.ccache gopacket-secretsdump -k -no-pass 'domain/user@target'

الأعلام الشائعة

FlagDescription
-hashes LMHASH:NTHASHمصادقة NTLM hash (يمكن أن يكون LM hash فارغًا)
-kاستخدام مصادقة Kerberos
-no-passعدم طلب كلمة المرور (استخدم مع -k أو -hashes)
-dc-ip IPعنوان IP لوحدة تحكم النطاق
-target-ip IPعنوان IP للهدف (عند استخدام اسم المضيف لـ Kerberos)
-port PORTمنفذ الهدف (تختلف القيم الافتراضية حسب الأداة)
-proxy URLتوجيه TCP الصادر عبر بروكسي SOCKS5 (مثل socks5h://127.0.0.1:1080). ميزات UDP معطّلة.
-debugتمكين مخرجات التصحيح

أمثلة سريعة

root@kitploit:~
# Dump domain hashes via DCSync
gopacket-secretsdump 'corp.local/admin:[email protected]'

# Interactive SMB shell
gopacket-smbclient -hashes ':aabbccdd...' 'corp.local/admin@fileserver'

# Kerberoast
gopacket-getuserspns 'corp.local/user:[email protected]'

# Golden ticket
gopacket-ticketer -nthash <krbtgt_hash> -domain-sid S-1-5-21-... -domain corp.local admin

# NTLM relay with SOCKS proxy
sudo gopacket-ntlmrelayx -t smb://target -socks

# LDAP relay for RBCD
sudo gopacket-ntlmrelayx -t ldaps://dc01.corp.local --delegate-access

# Route all outbound traffic through a SOCKS5 proxy
gopacket-secretsdump -proxy socks5h://127.0.0.1:1080 'corp.local/admin:[email protected]'

المكتبة

يحتوي دليل pkg/ على 24 حزمة بروتوكول قابلة لإعادة الاستخدام يمكن استيرادها بشكل مستقل.

PackageDescription
smbعميل SMB2/3 مع مصادقة NTLM وKerberos
ldapعميل LDAP مع ربط NTLM/Kerberos
dcerpcعميل DCE/RPC + 20 تطبيق خدمة (DRSUAPI، SAMR، SVCCTL، LSARPC، WINREG، NETLOGON، DCOM، TSCH، EPMAPPER، إلخ)
kerberosعميل Kerberos، تزوير التذاكر (ذهبية/فضية)، S4U2Self/S4U2Proxy
ntlmبروتوكول مصادقة NTLM
relayإطار عمل NTLM relay (خوادم، عملاء، هجمات، SOCKS)
tdsبروتوكول TDS لـ SQL Server
eseمحلل Extensible Storage Engine
registryمحلل خلية سجل Windows
ntfsمحلل نظام ملفات NTFS
securityواصفات الأمان، ACLs، SIDs
dpapiهياكل DPAPI
mqttعميل بروتوكول MQTT
sessionتحليل الهدف/بيانات الاعتماد (domain/user:pass@host)
flagsإطار عمل موحد لأعلام CLI

الميزات المفقودة (مقارنة بـ Impacket)

يهدف gopacket إلى تكافؤ كامل مع Impacket. ما يلي لم يتم تنفيذه بعد:

عملاء بروتوكول التمرير:

  • عميل وهجوم تمرير IMAP (يتطلب خادم Exchange/IMAP)
  • عميل تمرير SMTP (يتطلب خادم SMTP)

وحدات هجوم التمرير:

  • هجمات سياسات/DP الخاصة بـ SCCM (تتطلب بنية SCCM التحتية)

أدوات مستقلة:

  • ifmap.py (تعيين واجهة DCOM)
  • mimikatz.py (Mimikatz محدود عبر RPC)
  • goldenPac.py (MS14-068 - قديم على الأنظمة المصححة)
  • smbrelayx.py (استُبدل بـ ntlmrelayx)
  • kintercept.py (اعتراض Kerberos)

هذه الفجوات ذات أولوية منخفضة - معظمها يتطلب بنية تحتية متخصصة للاختبار أو أصبح قديمًا بتقنيات أحدث.

القيود المعروفة

هذه قيود على مستوى البروتوكول مشتركة مع Impacket، وليست أخطاء في gopacket:

  • تمرير SMB إلى LDAPS يفشل على وحدات التحكم المصححة بسبب التحقق من NTLM MIC (بعد CVE-2019-1040). استخدم إجبار HTTP بدلًا من ذلك.
  • تمرير WinRM محظور بواسطة EPA (الحماية الموسعة للمصادقة) على Server 2019+ المصحح.
  • هجمات تمرير RPC (tschexec، enum-local-admins) تتطلب PKT_INTEGRITY وهو غير متاح في جلسات التمرير.
  • تمرير LDAP إلى المنفذ 389 يفشل على وحدات التحكم التي تتطلب توقيع LDAP. مرر دائمًا إلى LDAPS (المنفذ 636).

راجع KNOWN_ISSUES.md للحصول على معلومات مفصلة حول كل مشكلة وحلولها البديلة.

الإبلاغ عن المشكلات والمساهمة

هذا إصدار تجريبي. الأخطاء متوقعة، والمساهمات مرحب بها.

لماذا نطلب منك الاختبار مع Impacket أولًا

لأن gopacket ينفذ نفس بروتوكولات الشبكة مثل Impacket، فإن جزءًا كبيرًا من "الأخطاء" يتبين أنها بيئية، وليست خاصة بـ gopacket - وحدات تحكم مصححة، متطلبات توقيع LDAP، EPA، PKT_INTEGRITY، توقيع SMB، التحقق من NTLM MIC بعد CVE-2019-1040، SPNs مفقودة، انحراف الوقت، غرائب DNS، قواعد جدار الحماية، وما إلى ذلك. تشغيل نفس العملية مع Impacket جنبًا إلى جنب يزيل البيئة من المعادلة:

  • إذا فشل Impacket بنفس الطريقة، فالمشكلة دائمًا تقريبًا بيئية ومن المحتمل أنها موثقة بالفعل في KNOWN_ISSUES.md. لا حاجة لتقرير خطأ.
  • إذا نجح Impacket حيث فشل gopacket، فهذا خطأ حقيقي في gopacket وهذا بالضبط ما نريد سماعه.

خطوة الفرز الواحدة هذه توفر الكثير من الجولات، لذا يرجى عدم تخطيها.

تقديم تقرير خطأ

  1. شغّل نفس العملية مع Impacket ولاحظ ما إذا كانت تنجح أو تفشل
  2. أعد تشغيل gopacket مع -debug والتقط المخرجات الكاملة
  3. قم بإخفاء هوية أي شيء حساس قبل النشر. مشكلات GitHub عامة. احذف أو استبدل أسماء المضيفين الحقيقية، وعناوين IP، وأسماء المستخدمين، وتجزئات كلمات المرور، وتذاكر Kerberos، وأسماء النطاقات، وSIDs، وأي سطر مخرجات يمكن ربطه بعملية حقيقية. استبدال corp.internal → example.local وdc01.corp.internal → dc01.example.local أمر مقبول - احتفظ ببنية البيانات، فقط ليس القيم المعرِّفة. إذا كنت في شك، احجبها.
  4. افتح مشكلة GitHub وقم بتضمين:
    • كلا المخرجات (gopacket وImpacket)، كنص وليس لقطات شاشة، مع إخفاء الهوية
    • سطر الأوامر الدقيق الذي شغّلته (مع إخفاء الهوية)
    • نظام التشغيل الهدف، ومستوى وظائف AD، وأي تحصين ذي صلة (التوقيع، EPA، ربط القنوات، مستوى التصحيح)
    • إصدار gopacket / hash الالتزام

طلبات الميزات

افتح مشكلة GitHub تصف حالة الاستخدام ومكافئ Impacket (إن وجد). إذا كانت الميزة في قائمة "الميزات المفقودة" أعلاه، اذكر أي واحدة - يساعدنا ذلك في تحديد الأولويات.

طلبات السحب

طلبات السحب مرحب بها. قبل فتح واحد:

  • شغّل go build ./... وgo vet ./... وgofmt -l . وgo test ./... وتأكد من نجاحها جميعًا بشكل نظيف
  • طابق نمط الكود الموجود في الحزمة التي تلمسها
  • اجعل التغييرات مركزة - افصل إعادة الهيكلة عن عمل الميزات
  • للتغييرات غير البسيطة، افتح مشكلة أولًا لمناقشة النهج

لماذا يهم هذا للمدافعين

ينتقل الجهات الفاعلة للتهديد بعيدًا عن Python. الأدوات المترجمة بـ Go وRust (Sliver، BRC4، Geacon، والمحملات المخصصة) تحل بشكل متزايد محل Impacket في الاختراقات الواقعية. معظم أدوات الدفاع ومنطق الكشف بُنيت حول سلوك شبكة Impacket القائم على Python، وهذا التغطية تتآكل مع تحول نظام المهاجمين إلى اللغات المترجمة.

يوجد gopacket جزئيًا لمساعدة مجتمع الأمن على التقدم على هذا التحول. من خلال توفير تطبيق Go مفتوح المصدر وقابل للقراءة لنفس البروتوكولات والتقنيات، يمكن للمدافعين ومهندسي الكشف:

  • دراسة كيفية تصرف الأدوات القائمة على Go على الشبكة بدلًا من انتظار مواجهتها أثناء حادثة
  • فهم الاختلافات على مستوى البروتوكول بين تطبيقات Go وPython التي تجعل التوقيعات الموجودة أقل فعالية
  • تشغيل تمارين الفريق البنفسجي الواقعية باستخدام نفس الأدوات المترجمة أحادية الملف التي يتبناها الجهات الفاعلة للتهديد، بدلًا من الاختبار حصريًا ضد نصوص Python التي تتصرف بشكل مختلف على مستوى الشبكة

تكون الفجوة بين أدوات المهاجم ورؤية المدافع في أوسع حالاتها عندما تبقى الأدوات الجديدة خاصة. إتاحة gopacket كمفتوح المصدر تضيق تلك الفجوة.

ملاحظات

  • تتطلب مصادقة Kerberos ملف ccache صالحًا (TGT أو تذكرة خدمة)
  • بالنسبة لـ Kerberos، استخدم اسم المضيف FQDN - وليس عنوان IP
  • إذا لم يتم تعيين KRB5CCNAME، ستبحث الأدوات عن <username>.ccache في الدليل الحالي
  • تدعم جميع الأدوات كلاً من proxychains وعلم -proxy SOCKS5 الداخلي (راجع دعم البروكسي)
  • هذا المشروع لأغراض اختبار الأمان المصرح به والبحث فقط

الترخيص

صدر تحت Apache License 2.0.

gopacket هو إعادة تطبيق نظيفة بـ Go لـ Impacket؛ راجع NOTICE للحصول على إقرارات الطرف الثالث الكاملة.

تنزيل الأداة