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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
أدوات/GitHubGitHub/leaningtech/webvm
المحاكاة الافتراضية للأمانأمن الشبكاتCTFأمن السحابةDevSecOpsالتعلم والتعليم
GitHubleaningtech/webvm

webvm

جهاز افتراضي يعمل بنظام لينكس على جانب العميل يعمل في المتصفح عبر WebAssembly، مع شبكات Tailscale، وصور مخصصة قائمة على Dockerfile، ودعم تحديات CTF للتعليم والتطوير في مجال الأمن.

عرض المستودعالموقع الإلكتروني
17.2k3.3k10منذ 12 أيامتمت المراجعة من قبل Kitploit

الأكثر شعبية

عرض الكل →

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

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

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

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

WebVM

Discord server Issues

يستضيف هذا المستودع الكود المصدري لـ https://webvm.io، وهي آلة افتراضية تعمل بنظام لينكس في المتصفح.

جرب بيئة Alpine / Xorg / i3 الرسومية الجديدة: https://webvm.io/alpine.html

ما هو WebVM؟

WebVM هي بيئة افتراضية بدون خادم تعمل بالكامل من جانب العميل في HTML5/WebAssembly. وهي مصممة لتكون متوافقة مع ABI لينكس وتشغيل توزيعة دبيان غير معدلة بما في ذلك العديد من أدوات التطوير الأصلية.

يعمل WebVM بواسطة محرك المحاكاة الافتراضية CheerpX، الذي يوفر:

  • مترجم JIT من x86 إلى WebAssembly
  • نظام ملفات افتراضي قائم على الكتل
  • محاكي استدعاءات نظام لينكس
  • تنفيذ آمن ومعزول من جانب العميل

جدول المحتويات

  • الشبكات
  • التطوير والتخصيص
    • النشر إلى GitHub Pages
    • الاستضافة المحلية وتكوين الصورة
  • دمج Claude AI
  • المجتمع والدعم
  • معرفة المزيد
  • الترخيص

[!NOTE] قم بزيارة https://webvm.io لتبدأ فورًا في متصفحك. لا حاجة لأي إعداد.

للإعداد المحلي وبناء الصور المخصصة وإرشادات النسخ/النشر، راجع التطوير والتخصيص.

الشبكات

يدعم WebVM دمج Tailscale. وبذلك يمكن لجهاز VM في متصفحك الوصول إلى شبكتك الخاصة، ومع عقدة الخروج، إلى الإنترنت العام أيضًا.

[!NOTE] بعض عمليات الشبكات منخفضة المستوى (خاصة ICMP المستخدمة بواسطة ping) غير متوفرة حاليًا في هذه البيئة. لفحص الاتصال، استخدم curl أو wget.

الشبكة المحلية

  1. افتح لوحة "الشبكات" من الشريط الجانبي
  2. انقر على "الاتصال بـ Tailscale"
  3. سجل الدخول (أنشئ حسابًا مجانيًا في tailscale.com إذا لزم الأمر)
  4. انقر على "اتصال" عندما يُطلب منك ذلك

أصبح لدى WebVM الآن إمكانية الوصول إلى جميع الأجهزة في شبكة Tailscale الخاصة بك!

نصائح لاستخدام الإنترنت

[!TIP] على الاتصالات البطيئة قد يكون هناك تأخير قصير قبل التهيئة. يتم عرض حالة الاتصال كنقطة ملونة على الزر: برتقالي = الشبكة المحلية، أخضر = عالمي/إنترنت. يعرض نص الزر عنوان IP الخاص بك في Tailscale بمجرد الاتصال.

للوصول إلى الإنترنت العام من WebVM، قم بإعداد عقدة خروج على جهاز آخر في شبكة Tailscale الخاصة بك:

  1. اتبع دليل عقدة خروج Tailscale السريع (الأقسام: "الإعلان عن جهاز كعقدة خروج")
  2. يستخدم WebVM تلقائيًا عقدة الخروج بمجرد الإعلان عنها

استخدام مفتاح المصادقة

كبديل لتسجيل الدخول التفاعلي، أضف مفتاح مصادقة Tailscale الخاص بك إلى جزء URL:

root@kitploit:~
https://webvm.io/#authKey=<your-ephemeral-key>

هذا يعادل خيار --login-server في Tailscale.

[!TIP] إذا كنت بحاجة أيضًا إلى خادم تحكم مخصص، أضف controlUrl في نفس جزء URL وافصل القيم بـ &، على سبيل المثال: #authKey=...&controlUrl=....

استضافة Tailscale الذاتية باستخدام Headscale

نحن ندعم أيضًا headscale، وهو تطبيق مفتوح المصدر مستضاف ذاتيًا لخادم التحكم Tailscale. نظرًا لأن Headscale لا يضيف رؤوس CORS افتراضيًا، ستحتاج إلى وكيل أمامه. راجع وثائق إعداد الوكيل العكسي لـ Headscale للحصول على مثال.

بمجرد أن يصبح جاهزًا، أضف السطر التالي إلى الكتلة location / في ملف nginx.conf الخاص بك.

root@kitploit:~
if ($http_origin = "https://yourdomain.com") {
    add_header 'Access-Control-Allow-Origin' "$http_origin";
    add_header 'Access-Control-Allow-Credentials' 'true' always;
}

ثم قم بالوصول إلى WebVM باستخدام:

root@kitploit:~
https://yourdomain.com/#controlUrl=<your-headscale-url>

التطوير والتخصيص

[!NOTE] المستخدمون لديهم صلاحيات الجذر افتراضيًا. sudo غير مثبت، ولكن يمكن إضافته بسهولة إلى Dockerfile إذا لزم الأمر.

النشر إلى GitHub Pages

هذه سير عمل بسيطة ومبتدئة. للاستضافة المحلية والتخصيص، انظر أدناه الاستضافة المحلية وتكوين الصورة.

قم بنسخ مستودع WebVM لنشر نسختك الخاصة إلى GitHub Pages:

deploy_instructions_gif
  1. انسخ المستودع
  2. فعّل GitHub Pages عبر المستودع المنسوخ في الإعدادات ← Pages باستخدام "إجراءات GitHub" كمصدر
  3. شغّل سير عمل Deploy من الإجراءات
  4. بعد الانتهاء، افتح عنوان URL المعروض ضمن الوظيفة deploy_to_github_pages

نفس سير عمل Deploy يقوم أيضًا ببناء صور قرص مخصصة .ext2 من Dockerfile. يمكنك توجيهه إلى dockerfiles/debian_mini أو Dockerfile آخر، ثم إما نشر النتيجة كأصل إصدار GitHub أو نشر بناء Pages من نسختك.

[!NOTE] dockerfiles/debian_large هي صورة كبيرة جدًا لـ GitHub Pages.

الاستضافة المحلية وتكوين الصورة

1. استنساخ المستودع

root@kitploit:~
git clone https://github.com/leaningtech/webvm.git
cd webvm

2. ضع صورتك في custom-disk-images/

يتضمن هذا المستودع دليلاً ثابتًا custom-disk-images/ لملفات .ext2 المحلية.

لاستخدام صورة دبيان المصغرة الرسمية، قم بتنزيلها من الإصدارات:

debian_mini_20230519_5022088024.ext2

يمكنك أيضًا نسخ صورة قمت ببنائها بنفسك.

3. وجه WebVM إلى صورتك المحلية

قم بتحرير config_public_terminal.js:

root@kitploit:~
export const diskImageUrl =
  "/custom-disk-images/debian_mini_20230519_5022088024.ext2";
export const diskImageType = "bytes";

4. تثبيت التبعيات والبناء

root@kitploit:~
npm install
npm run build

5. ابدأ Nginx وافتح WebVM

root@kitploit:~
nginx -p . -c nginx.conf

ثم افتح http://127.0.0.1:8081 واستمتع بـ WebVM المحلي!

لبيئة سطح المكتب Alpine الكاملة، راجع leaningtech/alpine-image.

لمزيد من التفاصيل، راجع وثائق الصور المخصصة لـ CheerpX.

[!TIP] بالنسبة لـ REPL Python3، يأخذ سير عمل Deploy في الاعتبار CMD المحددة في Dockerfile.

لبناء REPL يمكنك ببساطة تغيير CMD [ "/bin/bash" ] إلى CMD [ "/usr/bin/python3" ] ونشر.

دمج Claude AI

للوصول إلى Claude AI، تحتاج إلى مفتاح API. اتبع هذه الخطوات للبدء:

1. إنشاء حساب

  • قم بزيارة Anthropic Console وسجل باستخدام بريدك الإلكتروني. ستتلقى رابط تسجيل الدخول إلى وحدة تحكم Anthropic.

2. الحصول على مفتاح API الخاص بك

  • بمجرد تسجيل الدخول، انتقل إلى Get API keys.
  • اشترِ كمية الرصيد التي تحتاجها. بعد إتمام الشراء، ستتمكن من إنشاء المفتاح من خلال وحدة تحكم API.

3. تسجيل الدخول باستخدام مفتاح API الخاص بك

  • انتقل إلى WebVM الخاص بك وحرك الماوس فوق أيقونة الروبوت. سيظهر هذا علامة تبويب Claude AI Integration. لتوفير الراحة، يمكنك النقر على زر التثبيت في الزاوية العلوية اليمنى لإبقاء علامة التبويب في مكانها.
  • سترى مربعًا يمكنك من خلاله إدراج مفتاح Claude API الخاص بك.

4. ابدأ في استخدام Claude AI

  • بمجرد إدخال مفتاح API الخاص بك، يمكنك البدء في التفاعل مع Claude AI عن طريق طرح أسئلة مثل:

"حل تحدي CTF في /home/user/chall1.bin. لاحظ أن الملف الثنائي يقرأ من stdin."

deploy_instructions_gif

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

المجتمع والدعم

الإبلاغ عن المشكلات: استخدم GitHub Issues للإبلاغ عن الأخطاء أو طلب ميزات.

التحدث معنا: انضم إلى مجتمع Discord الخاص بنا لمناقشة WebVM ومشاركة الأفكار والحصول على المساعدة.

معرفة المزيد

المقالات والموارد:

  • WebVM: آلات افتراضية x86 بدون خادم في المتصفح
  • WebVM: المحاكاة الافتراضية للينكس في WebAssembly مع اتصال كامل بالشبكة عبر Tailscale
  • Mini.WebVM: صندوق لينكس الخاص بك من Dockerfile، تمت المحاكاة الافتراضية في المتصفح عبر WebAssembly
  • صنع المستحيل: المحاكاة الافتراضية لـ X86 في المتصفح باستخدام WebAssembly — محاضرة في JsNation 2022

مثال على النشر:

  • مرجع Mini.WebVM — مثال قيد التشغيل منشور على GitHub Pages

التقنية وراء WebVM:

هذا المشروع مدعوم من:

  • CheerpX — مترجم JIT من x86 إلى WebAssembly | بواسطة Leaning Technologies
  • xterm.js — محاكي طرفية ويب
  • Tailscale — طبقة شبكة VPN
  • lwIP — حزمة TCP/IP، مترجمة للويب عبر Cheerp

الإصدارات:

يستخدم WebVM حزمة NPM CheerpX، التي يتم تحديثها في كل إصدار.

كل بناء غير قابل للتغيير. إذا كان إصدار معين يعمل بشكل جيد معك اليوم، فسيستمر في العمل إلى الأبد.

الترخيص

تم إصدار WebVM بموجب ترخيص Apache، الإصدار 2.0.

نرحب بك لاستخدام وتعديل وإعادة توزيع محتويات هذا المستودع.

يتم توفير نشر CheerpX العام كما هو ومجاني للاستخدام للاستكشاف التكنولوجي والاختبار والاستخدام من قبل الأفراد. أي استخدام آخر من قبل المؤسسات، بما في ذلك المؤسسات غير الربحية والأكاديمية والقطاع العام، يتطلب ترخيصًا. لا يُسمح بتنزيل بناء CheerpX بغرض استضافته في مكان آخر دون ترخيص تجاري.

اقرأ المزيد هنا حول ممارسات الترخيص لدينا.

إذا كنت ترغب في بناء منتج يعتمد على CheerpX/WebVM، يرجى الاطلاع على خيارات الترخيص الأخرى الخاصة بنا: ترخيص CheerpX أو اتصل بنا: [email protected]

تنزيل الأداة