Skip to content
تم إنشاء هذه الصفحة وترجمتها بمساعدة الذكاء الاصطناعي. إذا لاحظت أي أخطاء، لا تتردد في المساهمة في تحسينها. تعديل على GitHub

فحص أجهزة USB

يكشف أمر sd scan-usb عن أجهزة تخزين USB القابلة للإزالة المتصلة ويفحص محتوياتها بحثاً عن البرامج الضارة. هذا أمر بالغ الأهمية للبيئات التي تُعد فيها محركات USB ناقلاً شائعاً لتسليم البرامج الضارة، مثل الشبكات المعزولة عن الهواء ومحطات العمل المشتركة وأنظمة التحكم الصناعي.

كيف يعمل

عند استدعائه، يُجري sd scan-usb الخطوات التالية:

  1. اكتشاف الجهاز -- يُعدِّد الأجهزة الكتلية عبر /sys/block/ ويحدد الأجهزة القابلة للإزالة (USB mass storage).
  2. كشف التثبيت -- يتحقق مما إذا كان الجهاز مثبتاً بالفعل. إذا لم يكن، يمكنه تثبيته اختيارياً في وضع القراءة فقط في دليل مؤقت.
  3. الفحص الكامل -- يُشغِّل خط أنابيب الكشف الكامل (مطابقة الهاش وقواعد YARA والتحليل الاكتشافي) على جميع الملفات على الجهاز.
  4. التقرير -- يُنتج تقرير فحص مع أحكام لكل ملف.

التثبيت التلقائي

بشكل افتراضي، يفحص sd scan-usb الأجهزة المثبتة بالفعل. استخدم --auto-mount لتثبيت أجهزة USB غير المثبتة تلقائياً في وضع القراءة فقط للفحص.

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

فحص جميع أجهزة تخزين USB المتصلة:

bash
sd scan-usb

مثال على المخرجات:

PRX-SD USB Scan
===============
Detected USB devices:
  /dev/sdb1 → /media/user/USB_DRIVE (vfat, 16 GB)

Scanning /media/user/USB_DRIVE...
Scanned: 847 files (2.1 GB)
Threats: 1

  [MALICIOUS] /media/user/USB_DRIVE/autorun.exe
    Layer:   YARA rule
    Rule:    win_worm_usb_spreader
    Details: USB worm with autorun.inf exploitation

Duration: 4.2s

خيارات الأمر

الخيارالمختصرالافتراضيالوصف
--auto-quarantine-qإيقافعزل التهديدات المكتشفة تلقائياً
--auto-mountإيقافتثبيت أجهزة USB غير المثبتة في وضع القراءة فقط
--device-dالكلفحص جهاز محدد فقط (مثل /dev/sdb1)
--json-jإيقافمخرجات النتائج بتنسيق JSON
--eject-afterإيقافإخراج الجهاز بأمان بعد الفحص
--max-size-mb100تخطي الملفات الأكبر من هذا الحجم

العزل التلقائي

عزل التهديدات الموجودة على أجهزة USB تلقائياً:

bash
sd scan-usb --auto-quarantine
Scanning /media/user/USB_DRIVE...
  [MALICIOUS] /media/user/USB_DRIVE/autorun.exe → Quarantined (QR-20260321-012)
  [MALICIOUS] /media/user/USB_DRIVE/.hidden/payload.bin → Quarantined (QR-20260321-013)

Threats quarantined: 2
Safe to use: Review remaining files before opening.

مهم

عند استخدام --auto-quarantine مع فحص USB، تُنقل الملفات الضارة إلى قبو العزل المحلي على الجهاز المضيف، وليس حذفها من جهاز USB. تبقى الملفات الأصلية على USB ما لم تستخدم أيضاً --remediate.

فحص أجهزة محددة

إذا كانت أجهزة USB متعددة متصلة، افحص جهازاً محدداً:

bash
sd scan-usb --device /dev/sdb1

سرد أجهزة USB المكتشفة بدون فحص:

bash
sd scan-usb --list
Detected USB storage devices:
  1. /dev/sdb1  Kingston DataTraveler  16 GB  vfat  Mounted: /media/user/USB_DRIVE
  2. /dev/sdc1  SanDisk Ultra          64 GB  exfat Not mounted

مخرجات JSON

bash
sd scan-usb --json
json
{
  "scan_type": "usb",
  "timestamp": "2026-03-21T17:00:00Z",
  "devices": [
    {
      "device": "/dev/sdb1",
      "label": "USB_DRIVE",
      "filesystem": "vfat",
      "size_gb": 16,
      "mount_point": "/media/user/USB_DRIVE",
      "files_scanned": 847,
      "threats": [
        {
          "path": "/media/user/USB_DRIVE/autorun.exe",
          "verdict": "malicious",
          "layer": "yara",
          "rule": "win_worm_usb_spreader"
        }
      ]
    }
  ]
}

تهديدات USB الشائعة

تُستخدم أجهزة USB بشكل متكرر لتسليم الأنواع التالية من البرامج الضارة:

نوع التهديدالوصفطبقة الكشف
دودة autorunاستغلال autorun.inf للتنفيذ على ويندوزقواعد YARA
محمّلات USBملفات قابلة للتنفيذ مُتنكِّرة (مثل document.pdf.exe)الاستدلاليات + YARA
حمولات BadUSBنصوص برمجية تستهدف هجمات محاكاة HIDتحليل الملفات
ناقلات برامج الفديةحمولات مشفرة تُنشَّط عند النسخالهاش + YARA
أدوات استخراج البياناتأدوات مصممة لجمع البيانات واستخراجهاالتحليل الاكتشافي

التكامل مع المراقبة في الوقت الفعلي

يمكنك دمج فحص USB مع وحيد خدمة sd monitor لفحص أجهزة USB تلقائياً عند توصيلها:

bash
sd monitor --watch-usb /home /tmp

يبدأ هذا شاشة الملفات في الوقت الفعلي ويضيف قدرة الفحص التلقائي لـ USB. عند اكتشاف جهاز USB جديد عبر udev، يُفحص تلقائياً.

وضع الكشك

للمحطات العامة أو محطات العمل المشتركة، ادمج --watch-usb مع --auto-quarantine لتحييد التهديدات من أجهزة USB تلقائياً بدون تدخل المستخدم.

الخطوات التالية

Released under the Apache-2.0 License.