الرئيسيةأنظمة التشغيلlinuxLISA: SANDBOX للتحليل الآلي للبرامج الضارة لنظام التشغيل LINUX
linux

LISA: SANDBOX للتحليل الآلي للبرامج الضارة لنظام التشغيل LINUX

مشروع التحليل الآلي للبرامج الضارة لنظام التشغيل Linux على مختلف بنيات وحدة المعالجة المركزية.

صفات

  • مضاهاة كيمو.
  • يدعم حاليًا x86_64 وi386 وarm وmips وaarch64.
  • الصور الصغيرة التي تم إنشاؤها باستخدام buildroot.
  • التحليل الثابت على أساس Radare2.
  • التحليل الديناميكي (السلوك) باستخدام وحدات SystemTap kernel – مكالمات النظام الملتقطة والملفات المفتوحة وأشجار المعالجة.
  • إحصائيات الشبكة وتحليل اتصالات DNS وHTTP وTelnet وIRC.
  • تحليل نقطة النهاية وتكوين القائمة السوداء.
  • التحجيم مع الكرفس وRabbitMQ.
  • ريست API | نهاية المقدمة.
  • قابلة للتوسيع من خلال وحدات التحليل الفرعي والصور المخصصة.

ابدأ مع LISA

متطلبات

احصل على المستودع.

$ git clone https://github.com/danieluhricek/lisa
$ cd lisa

تجميع.

# docker-compose build

قم بتشغيل وضع الحماية (الموقع الافتراضي: http://localhost:4242).

# docker-compose up

جلسة

ماكس مايند جيوليت2

اشتراك للحصول على مفتاح API الخاص بك. استخدم مفتاح API في قسم وسائط الإنشاء في docker-compose.yml.

.
.
  worker:
    image: lisa-worker
    build:
      context: .
      dockerfile: ./docker/worker/Dockerfile
      args:
        maxmind_key: YOUR_KEY
    volumes:
      - "./data/storage:/home/lisa/data/storage"
      .
      .
      .
.
.

إستضافة المواقع الإلكترونية

قم بتعيين عنوان IP الخاص بخادمك: المنفذ في خدمة nginx على docker-compose.yml.

قابلية التوسع

العمال قابلة للتطوير.

# docker-compose up --scale worker=10

VPN

يمكنك توجيه حركة مرور البرامج الضارة عبر OpenVPN. للقيام بذلك:

  • قم بتحميل وحدة تخزين تحتوي على تكوين OpenVPN (يسمى config.ovpn).
  • يضبط متغير البيئة VPNعلى مسار الدليل لتكوين OpenVPN.
.
.
  worker:
    image: lisa-worker
    build:
      context: .
      dockerfile: ./docker/worker/Dockerfile
    environment:
      - VPN=/vpn
    volumes:
      - "./data/storage:/home/lisa/data/storage"
      - "./vpn:/vpn"
.
.

القوائم السوداء

القوائم السوداء المستخدمة بشكل افتراضي هي ( نافورة):

  • bi_ssh_2_30d.ipset
  • firehol_level3.netset
  • firehol_webserver.netset
  • iblocklist_abuse_zeus.netset
  • norshield_all_wannacry.ipset
اقرأ أيضاً :  كيفية زيادة وتحرير ذاكرة Swap في Ubuntu Linux بسهولة؟

إذا كنت تريد استخدام قائمة سوداء أخرى، فضع ملفات .ipset أو .netset في ملف data/blacklists. يتم دمج كل هذه القوائم السوداء أثناء بناء الخدمة worker.

إضافة وحدات التحليل الفرعي الجديدة

يدعم جوهر مشروع LiSa أربع وحدات تحليل أساسية: static_analysisو dynamic_analysisو network_analysisو virustotal. وحدات التحليل الفرعي تعتمد على البرنامج المساعد. لإضافة تحليل فرعي جديد وإضافة مخرجاته إلى ملف json النهائي، اتبع الخطوات التالية:

  • قم بإنشاء فئة ترث من الفئة AbstractSubAnalyzerوتطبق الطريقة run_analysis()، على سبيل المثال:
class NewSubAnalyzer(AbstractSubAnalyzer):
    def run_analysis(self):
        pass
  • تحديث القائمة في lisa.config.py:
analyzers_config = [
    # core analyzers
    'lisa.analysis.static_analysis.StaticAnalyzer',
    'lisa.analysis.dynamic_analysis.DynamicAnalyzer',
    'lisa.analysis.network_analysis.NetworkAnalyzer',
    'lisa.analysis.virustotal.VirusTotalAnalyzer',
    # custom
    'module_of_new_analyzer.NewSubAnalyzer'
]

تنفيذ الاختبار

# docker build -f ./docker/tests/Dockerfile -t lisa-tests .
# docker run lisa-tests

الميزات القادمة

  • وحدة يارا : الوحدة النمطية يارا لمطابقة الأنماط في مخرجات JSON الخاصة بـ LiSa.
  • اختيار الصورة : المزيد من صور Linux التي تحتوي، على سبيل المثال، على البرامج الثابتة لإنترنت الأشياء.

تحميل ليزا

اترك تعليقاً

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *

error: عفوا محتوي هذا الموقع محمي بموجب قانون الألفية للملكية الرقمية !!