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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
gonc — Netcat مع اجتياز NAT تلقائي، وP2P آمن، وميزات متقدمة للوصول إلى shell، ونقل الملفات، ووكالة الشبكة. | Kitploit
أدوات/GitHubGitHub/threatexpert/gonc
أدوات عامةأدوات التشفير/فك التشفيربروكسيات الويب والاعتراضتسريب البياناتأمن الشبكاتاختبار الاختراقالقيادة والسيطرةالفريق الأحمرأداة الوصول عن بعد
GitHubthreatexpert/gonc

gonc

Netcat مع اجتياز NAT تلقائي، وP2P آمن، وميزات متقدمة للوصول إلى shell، ونقل الملفات، ووكالة الشبكة.

695602منذ شهر واحدتمت المراجعة من قبل Kitploit
عرض المستودعالموقع الإلكتروني

الأكثر شعبية

عرض الكل →

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

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

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

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

مقدمة عن gonc

README باللغة الصينية و الإنجليزية

gonc هي أداة netcat مبنية بلغة Golang، مصممة لتسهيل الاتصال من نظير إلى نظير. تشمل ميزاتها الرئيسية:

  • 🔁 اختراق NAT تلقائي: بدون أي إعدادات. يحتاج الطرفان فقط إلى الاتفاق على عبارة مرور. باستخدام المعامل -p2p، يمكن للنظيرين اكتشاف عناوين الشبكة الخاصة ببعضهما تلقائيًا وإنشاء اتصال نقطة بنقطة عبر اختراق NAT، بالاستفادة من خدمات STUN و MQTT العامة لتبادل العناوين.

  • 🔒 تشفير من طرف إلى طرف مع مصادقة متبادلة: يدعم TLS لاتصالات TCP و DTLS لاتصالات UDP المشفرة، مع مصادقة هوية متبادلة قائمة على عبارة المرور.

  • 🧩 تكوين مرن للخدمات: باستخدام المعامل -e، يمكنك بمرونة ضبط التطبيق لتقديم خدمة لكل اتصال. على سبيل المثال، -e /bin/sh يمكن أن يوفر صدفة أوامر عن بُعد. يمكنك أيضًا استخدام الأوامر الافتراضية المدمجة لتوفير خدمة SOCKS5 مريحة، وخدمة ملفات HTTP، وإعادة توجيه حركة المرور.


تحميل أحدث إصدار

التوثيق


المشاريع ذات الصلة

  • gonc-gui — تطبيق سطح مكتب (Windows) وأندرويد مبني على : اتصال مباشر P2P مريح بين الأجهزة والشبكات المختلفة ونقل ملفات آمن. ما عليك سوى مشاركة عبارة مرور (أو مسح رمز QR)؛ لا حاجة لسطر الأوامر.
gonc

أمثلة الاستخدام

الاستخدام الأساسي

  • استخدمها مثل nc:

    root@kitploit:~
    gonc www.baidu.com 80
    gonc -tls www.baidu.com 443
    

    يمكنها فقط إنشاء اتصالات نقطة بنقطة بناءً على IP والمنفذ.

  • الآن، يمكنك أيضًا إنشاء اتصالات نقطة بنقطة بناءً على عبارة مرور مشتركة، مع اختراق NAT تلقائي.

    يوضح المخطط التالي عملية إنشاء gonc لاتصال P2P بين شبكة نطاق عريض منزلي (NAT صعب) ونظير على شبكة جوال (NAT متماثل). نظرًا لأن كلا الطرفين يمتلكان IPv6، تم استخدام الخيار -4 على كلا الطرفين لإجبار IPv4 من أجل إظهار اختراق NAT.

    hole-punching

نفق P2P وخادم ملفات HTTP

  • يتفق الطرفان على نفس عبارة المرور. على جانب المرسل، ابدأ خادم ملفات HTTP لكشف الملفات أو المجلدات المراد مشاركتها. يقبل الخيار -httpserver مسارات متعددة، ويمكن أن يكون كل مسار إما ملفًا واحدًا أو مجلدًا:

    root@kitploit:~
    gonc -p2p <passphrase> -httpserver c:/RootDir1 c:/RootDir2
    
  • على جانب الاستقبال، هناك خياران:

  1. تنزيل المجلد بالكامل تلقائيًا

    بعد تشغيل الأمر التالي، سيتم تنزيل جميع الملفات بشكل تكراري إلى الجهاز المحلي. إذا انقطعت العملية، فإن إعادة تشغيل الأمر ستستأنف تلقائيًا من حيث توقفت:

    root@kitploit:~
    gonc -p2p <passphrase> -download c:/SavePath
    
  2. التصفح والتنزيل الانتقائي عبر المتصفح

    هذا الخيار لا يبدأ التنزيل تلقائيًا. بدلاً من ذلك، تحتاج إلى فتح متصفح يدويًا وزيارة http://127.0.0.1:9999 لعرض قائمة ملفات النظير وتنزيل الملفات حسب الحاجة:

    root@kitploit:~
    gonc -p2p <passphrase> -httplocal-port 9999
    

    إذا كنت بحاجة إلى تنزيل مجلد فرعي محدد، يصبح المتصفح غير مريح، لكن يمكنك القيام بذلك هكذا:

    root@kitploit:~
    gonc -http-download c:/SavePath http://127.0.0.1:9999/subdir
    

اتصال P2P مشفر وآمن

  • أنشئ اتصال P2P مشفرًا آمنًا بين شبكتين مختلفتين بالاتفاق على عبارة مرور (استخدم gonc -psk . لتوليد عبارة مرور عالية العشوائية لتحل محل passphrase). تُستخدم عبارة المرور هذه للاكتشاف المتبادل واشتقاق الشهادات، مما يضمن أمان الاتصال باستخدام TLS 1.3.

    root@kitploit:~
    gonc -p2p passphrase
    

    على الجانب الآخر، استخدم نفس المعاملات (سيحاول البرنامج تلقائيًا اتصال TCP أو UDP (يفضل TCP)، والتفاوض على الأدوار (عميل/خادم TLS)، وإكمال بروتوكول TLS):

    root@kitploit:~
    gonc -p2p passphrase
    

    لاحظ أنه إذا تأخر الطرف الآخر في وقت التشغيل، فسيخرج إذا لم يتمكن من العثور على الطرف الآخر لتبادل المعلومات خلال حوالي نصف دقيقة. لذلك، يدعم أيضًا آلية انتظار قائمة على اشتراك رسائل MQTT، باستخدام -mqtt-wait و -mqtt-hello لمزامنة توقيت بدء الطرفين لـ P2P. على سبيل المثال، يستخدم ما يلي -mqtt-wait للانتظار باستمرار،

    root@kitploit:~
    gonc -p2p passphrase -mqtt-wait
    

    على الجانب الآخر،

    root@kitploit:~
    gonc -p2p passphrase -mqtt-hello
    
  • تحقق من نوع NAT لديك

    root@kitploit:~
    gonc -nat-checker
    

    سيتحقق هذا من عناوين NAT الخاصة بـ IPv6 و IPv4 TCP و UDP ويحلل تغييرات المنافذ بعد NAT. إذا لم يتم إدراج أي عناوين TCP6 أو UDP6، فهذا يعني أنك لا تمتلك IPv6. ينتهي كل عنوان بروتوكول بـ "(easy)"، مما يشير إلى أعلى معدل نجاح لاختراق الثقوب؛ "(hard)" يشير إلى معدل نجاح أعلى؛ و"(symm)" هو الأصعب. يتطلب النوع المتماثل أن يكون الطرف الآخر إما "easy" أو "hard" لكي يعمل P2P.

الصدفة العكسية (دعم الطرفية الزائفة لأنظمة شبيهة بـ UNIX)

  • المستمع (لا يستخدم -keep-open، يقبل اتصالًا واحدًا فقط؛ بدون مصادقة باستخدام -psk):
    root@kitploit:~
    gonc -tls -exec ":sh /bin/bash" -l 1234
    
  • الاتصال للحصول على صدفة (يدعم TAB، Ctrl+C، إلخ):
    root@kitploit:~
    gonc -tls -pty x.x.x.x 1234
    
  • استخدام P2P للصدفة العكسية (passphrase تُستخدم للمصادقة، مما يضمن اتصالًا آمنًا باستخدام TLS 1.3):
    root@kitploit:~
    gonc -exec ":sh /bin/bash" -p2p passphrase
    
    على الجانب الآخر:
    root@kitploit:~
    gonc -pty -p2p passphrase
    

اختبار سرعة النقل

  • إرسال البيانات وقياس سرعة النقل (/dev/zero و /dev/urandom مدمجان):
    root@kitploit:~
    gonc.exe -send /dev/zero -P x.x.x.x 1234
    
    مثال على المخرجات:
    root@kitploit:~
    IN: 76.8 MiB (80543744 bytes), 3.3 MiB/s | OUT: 0.0 B (0 bytes), 0.0 B/s | 00:00:23
    
    على جانب الاستقبال:
    root@kitploit:~
    gonc -P -l 1234 > NUL
    

نفق P2P و SOCKS5 / وكيل HTTP

  • انتظر حتى يتم إنشاء النفق:

    root@kitploit:~
    gonc -p2p passphrase -linkagent
    
  • على الجانب الآخر، ابدأ خدمة وكيل SOCKS5 / HTTP محلية على المنفذ 3080 للوصول إلى الشبكة البعيدة:

    root@kitploit:~
    # The link option controls how the local and remote proxy endpoints are created.
    # Use none to indicate that no listening port is opened on that side:
    gonc -p2p passphrase -link "3080;none"
    

    بعد ذلك، على سبيل المثال، إذا كنت تريد الاتصال بـ 10.0.0.1:3389 في الشبكة البعيدة، يمكنك ببساطة إدخال العنوان التالي في عميل سطح المكتب البعيد المحلي:

    root@kitploit:~
    10.0.0.1-3389.gonc.cc:3080
    

    سيتم تحويل هذا النطاق إلى IP بالشكل 127.b.c.d. ونتيجة لذلك، سيتصل عميل سطح المكتب البعيد بوكيل SOCKS5 المحلي على المنفذ 3080، ثم سيقوم gonc بإجراء تحليل عكسي لعنوان 127.b.c.d لاستخراج المعلومات 10.0.0.1-3389 من اسم النطاق.

  • تنسيق تكوين link

    root@kitploit:~
    # Based on the established tunnel, both local and remote sides listen on port 1080.
    # The proxy supports both HTTP and SOCKS5 protocols, with transparent proxy capability enabled.
    gonc -p2p <passphrase> -link "1080;1080"
    
    # Below is the configuration method for the URL format. The parameter value of -link must be enclosed in quotes; otherwise, parsing problems may occur.
    # The left side x://0.0.0.0:1080?tproxy=1 is equivalent to simply writing 1080.
    # The right side enables port 1080 on the remote host, without transparent proxy support.
    gonc -p2p <passphrase> -link "x://0.0.0.0:1080?tproxy=1;x://127.0.0.1:1080"
    
    # The left side f://127.0.0.1:1080?to=1.2.3.4:80
    # means listening locally on port 1080 and forwarding traffic to 1.2.3.4:80 on the remote side.
    # The right side 'none' indicates that no port is opened remotely.
    gonc -p2p <passphrase> -link "f://127.0.0.1:1080?to=1.2.3.4:80;none"
    
    # The right side f://0.0.0.0:80?to=127.0.0.1:80
    # means listening on port 80 on the remote side and forwarding traffic back to 127.0.0.1:80 locally.
    gonc -p2p <passphrase> -link "none;f://0.0.0.0:80?to=127.0.0.1:80"
    
    # The left side x+tls means the proxy protocol with TLS encryption and allows for certificate configuration. The right side specifies the outbound IP address via `outbound_bind` (suitable for multi-IP environments).
    gonc -p2p <口令> -link "x+tls://user:[email protected]:1080?cert=ca.pem&key=key.pem;none?outbound_bind=10.0.0.5"
    

تكوين مرن للخدمات

  • استخدم -exec لتكوين التطبيق بمرونة لتقديم الخدمات لكل اتصال. على سبيل المثال، بدلاً من تحديد /bin/bash لأوامر الصدفة، يمكن استخدامه أيضًا لإعادة توجيه المنافذ. ومع ذلك، فإن المثال التالي يبدأ عملية gonc جديدة لكل اتصال:
    root@kitploit:~
    gonc -keep-open -exec "gonc -tls www.baidu.com 443" -l 8000
    
  • لتجنب إنشاء عمليات فرعية متعددة، استخدم وحدة nc المدمجة:
    root@kitploit:~
    gonc -keep-open -exec ":nc -tls www.baidu.com 443" -l 8000
    

خدمة وكيل Socks5

  • تكوين وضع العميل:

    root@kitploit:~
    gonc -x s.s.s.s:port x.x.x.x 1234
    
  • خادم Socks5 المدمج: استخدم -e :s5s لتقديم خدمة Socks5 قياسية. يدعم -auth لتعيين اسم مستخدم وكلمة مرور لـ Socks5. استخدم -keep-open لقبول اتصالات العملاء بشكل مستمر لخادم Socks5. بفضل goroutines في Golang، يحقق أداءً جيدًا في التزامن متعدد العملاء:

    root@kitploit:~
    gonc -e ":s5s -auth user:passwd" -keep-open -l 1080
    
  • Socks5 آمن عبر TLS: نظرًا لأن Socks5 القياسي غير مشفر، استخدم -e :s5s مع -tls و -psk لتخصيص اتصال Socks5 آمن عبر TLS. استخدم -P لمراقبة معلومات نقل الاتصال، و -acl لتنفيذ التحكم في الوصول للاتصالات الواردة وأهداف الوكيل. لتنسيق ملف acl.txt، راجع acl-example.txt.

    gonc.exe -tls -psk passphrase -e :s5s -keep-open -acl acl.txt -P -l 1080

    على الجانب الآخر، استخدم :s5c (أمر s5c المدمج) لتحويل Socks5 عبر TLS إلى Socks5 قياسي، مما يوفر وصول العميل المحلي على 127.0.0.1:3080:

    gonc.exe -e ":s5c -tls -psk passphrase x.x.x.x 1080" -keep-open -l -local 127.0.0.1:3080

إنشاء نفق لتطبيقات أخرى

  • مساعدة WireGuard في اختراق NAT لتشكيل VPN

    على الجانب السلبي (المستمع)، PC-S، شغّل الأمر التالي (باستخدام المفتاح العام لنظير WireGuard كعبارة مرور، وبافتراض أن WireGuard يستمع على المنفذ 51820):

    gonc -p2p <PublicKey-of-PS-S> -mqtt-wait -u -k -e ":nc -u 127.0.0.1 51820"

    على الجانب النشط (المبادر)، PC-C، اضبط Endpoint لنظير WireGuard (PS-S) على 127.0.0.1:51821، مع واجهة WireGuard الخاصة به تستمع على 51820. ثم شغّل الأمر التالي. تسمح العلامة -k لـ gonc بإعادة الاتصال تلقائيًا إذا انقطعت الشبكة:

    gonc -p2p <PublicKey-of-PS-S> -mqtt-hello -u -k -e ":nc -u -local 127.0.0.1:51821 127.0.0.1 51820"

قدرات اختراق NAT في P2P

كيف ينشئ gonc اتصال P2P؟

  • يستخدم بشكل متزامن خوادم STUN عامة متعددة لاكتشاف تعيينات NAT المحلية لـ TCP/UDP وتحديد نوع NAT بذكاء
  • يتبادل معلومات العناوين بشكل آمن عبر خوادم MQTT العامة، باستخدام تجزئة مشتقة من SessionKey كموضوع مشترك
  • يحاول الاتصال المباشر بترتيب الأولوية التالي: IPv6 TCP > IPv4 TCP > IPv4 UDP، بهدف تحقيق اتصال حقيقي من نظير إلى نظير
  • لا يتم استخدام خوادم إعادة توجيه، ولا يتم توفير آليات احتياطية — إما أن يفشل الاتصال، أو يكون نجاح P2P حقيقيًا

كيفية نشر خادم إعادة توجيه للحالات التي يكون فيها P2P غير ممكن

  • خادم SOCKS5 يدعم UDP ASSOCIATE يعمل على IP عام كافٍ كخادم إعادة توجيه. يمكنك أيضًا تشغيل وكيل SOCKS5 المدمج في gonc على VPS الخاص بك ليعمل كخادم إعادة توجيه.

    يبدأ الأمر التالي وكيل SOCKS5 يدعم فقط إعادة توجيه UDP. خيارا -psk و -tls يمكّنان التشفير والمصادقة القائمة على PSK. ملاحظة: لا تفتح المنفذ 1080 فقط في جدار الحماية الخاص بك — إعادة توجيه UDP يستخدم منافذ عشوائية لكل جلسة.

    gonc -e ":s5s -u -c=0" -psk <password> -tls -k -l 1080

  • عندما يفشل P2P، تحتاج فقط إلى جانب واحد من gonc لإعادة محاولة عملية P2P باستخدام الخيار -x للتوجيه عبر مرحّل SOCKS5:

    gonc -p2p <passphrase> -x "-psk <password> -tls <socks5server-ip>:1080"

    بدلاً من ذلك، يمكنك استخدام خادم وكيل SOCKS5 قياسي يدعم إعادة توجيه UDP:

    gonc -p2p <passphrase> -x "<socks5server-ip>:1080" -auth "user:password"

على سبيل المثال، إذا كان كلا النظيرين خلف NAT متماثل وفشل P2P، فإن استخدام جانب واحد فقط لمرحّل SOCKS5 UDP يغيّر فعليًا سلوك NAT الخاص به إلى "easy"، مما يسهل كثيرًا إنشاء اتصال. تبقى البيانات مشفرة من طرف إلى طرف.

الخوادم العامة المستخدمة(STUN & MQTT):

root@kitploit:~
"tcp://turn.cloudflare.com:80",
"udp://turn.cloudflare.com:53",
"udp://stun.l.google.com:19302",
"stun.gonc.cc:3478",
"global.turn.twilio.com:3478",
"stun.nextcloud.com:443",

"tcp://broker.hivemq.com:1883",
"tcp://broker.emqx.io:1883",
"tcp://test.mosquitto.org:1883",
"tcp://mqtt.gonc.cc:1883"

ما مدى فعالية gonc في اختراق NAT؟

باستثناء حالات NAT المتماثل على كلا الطرفين، يحقق gonc معدل نجاح عالٍ جدًا

يصنف gonc أنواع NAT إلى ثلاث فئات:

  1. Easy: منفذ داخلي واحد يُعيَّن إلى نفس المنفذ الخارجي عبر خوادم STUN متعددة

  2. Hard: منفذ داخلي واحد يُعيَّن إلى منفذ خارجي ثابت لكن مختلف عبر خوادم STUN — أصعب من النوع 1

  3. Symmetric: منفذ داخلي واحد يُعيَّن إلى منافذ خارجية مختلفة حسب الوجهة — النوع الأصعب

للتعامل مع أنواع NAT هذه، يستخدم gonc عدة استراتيجيات للاختراق:

  • يستخدم خوادم STUN متعددة لاكتشاف سلوك NAT وتحديد سيناريوهات IP متعددة المخارج

  • يفضل اتصالات IPv6 عندما يدعمها كلا الطرفين (مثل الاتصال المباشر TCP6-to-TCP6)

  • يستمع كلا النظيرين على TCP بينما يتصلان ببعضهما في نفس الوقت لزيادة نجاح اختراق TCP

  • النظير ذو NAT الأسهل يؤخر حزمة UDP الأولية لتجنب إحداث تغييرات في المنفذ على الجانب الأصعب

  • النظير ذو NAT الأصعب يرسل حزم UDP بـ TTL منخفض لتقليل التداخل من جدار الحماية البعيد

  • كملاذ أخير، يستخدم استراتيجية "مفارقة عيد الميلاد": يستخدم الجانب الأصعب 600 منفذ مصدر عشوائي، ويجرب الجانب الآخر 600 منفذ وجهة عشوائي، مما يزيد فرصة تصادم منفذ UDP بنجاح

تنزيل الأداة