مالتريل - نظام كشف حركة المرور الضارة
Maltrail هو نظام للكشف عن حركة المرور الخبيثة ، وذلك باستخدام القوائم (السوداء) المتاحة للجمهور والتي تحتوي على مسارات خبيثة و / أو مريبة بشكل عام ، بالإضافة إلى مسارات ثابتة مجمعة من تقارير AV متنوعة وقوائم مخصصة من قبل المستخدم ، حيث يمكن أن يكون التتبع أي شيء من اسم النطاق (على سبيل المثال zvpprsensinaix.com للبرمجيات الخبيثة Banjori) ، URL (على سبيل المثال http://109.162.38.120/harsh02.exe للتنفيذ الخبيث المعروف) ، عنوان IP (على سبيل المثال 185.130.5.231 للمهاجم المعروف) أو قيمة رأس مستخدم وكيل HTTP (مثل sqlmap لـ الحقن التلقائي SQL وأداة استيلاء قاعدة البيانات). كما أنه يستخدم آليات اختيارية متقدمة (اختيارية) يمكن أن تساعد في اكتشاف تهديدات مجهولة (مثل البرامج الضارة الجديدة).
المتطلبات:
لتشغيل Maltrail بشكل صحيح ، مطلوب Python 2.6.x أو 2.7.x ، جنبا إلى جنب مع pcapy (على سبيل المثال sudo apt-get install python-pcapy). لا توجد متطلبات أخرى ، بخلاف تشغيل مكون Sensor بامتيازات المسؤول / الجذر.
يتم استخدام القوائم التالية (السوداء) (أي الخلاصات):
alienvault, autoshun, badips, bambenekconsultingc2dns,
bambenekconsultingc2ip, bambenekconsultingdga, bitcoinnodes,
blocklist, botscout, bruteforceblocker, ciarmy, cruzit,
cybercrimetracker, deepviz, dataplanesipinvitation,
dataplanesipquery, dataplane, dshielddns, dshieldip,
emergingthreatsbot, emergingthreatscip, emergingthreatsdns,
feodotrackerdns, malwaredomainlist, malwaredomains, malwarepatrol,
maxmind, myip, nothink, openbl, openphish, packetmailcarisirt,
packetmailramnode, palevotracker, policeman, proxylists, proxyrss,
proxy, ransomwaretrackerdns, ransomwaretrackerip,
ransomwaretrackerurl, riproxies, rutgers, sblam, securityresearch,
snort, socksproxy, sslipbl, sslproxies, torproject, torstatus,
turris, urlvir, voipbl, vxvault, zeustrackerdns, zeustrackerip,
zeustrackermonitor, zeustrackerurl, etc.
اعتبارًا من الإدخالات الثابتة ، تم تضمين المسارات الخاصة بالكيانات الضارة التالية (مثل C & Cs أو sinkholes من البرامج الضارة) يدويًا (من تقارير AV المختلفة والبحث الشخصي):
aboc, adwind, alienspy, almalocker, alureon, android_acecard,
android_adrd, android_alienspy, android_arspam,
android_backflash, android_basebridge, android_boxer,
android_chuli, android_claco, android_coolreaper,
android_counterclank, android_cyberwurx, android_dendoroid,
android_dougalek, android_droidjack, android_droidkungfu,
android_enesoluty, android_ewalls, android_exprespam,
android_fakebanco, android_fakedown, android_fakeinst,
android_fakelog, android_fakemart, android_fakemrat,
android_fakeneflic, android_fakesecsuit, android_feabme,
android_flexispy, android_frogonal, android_geinimi,
android_ghostpush, android_ginmaster, android_gmaster,
android_godwon, android_golddream, android_gonesixty,
android_ibanking, android_kemoge, android_lockdroid,
android_lovetrap, android_maistealer, android_maxit,
android_oneclickfraud, android_opfake, android_ozotshielder,
android_pikspam, android_pjapps, android_qdplugin,
android_repane, android_roidsec, android_samsapo,
android_sandorat, android_selfmite, android_simplocker,
android_skullkey, android_sndapps, android_spytekcell,
android_stealer, android_stels, android_teelog, android_tetus,
android_tonclank, android_torec, android_uracto,
android_usbcleaver, android_walkinwat, android_windseeker,
android_zertsecurity, androm, andromem, angler, anuna, arec,
aridviper, artro, autoit, avalanche, avrecon, axpergle, babar,
bachosens, badblock, balamid, bamital, bankapol, bankpatch,
banloa, banprox, bayrob, bedep, blackenergy, blackvine,
blockbuster, bredolab, bubnix, bucriv, buterat, camerashy,
carbanak, carberp, careto, casper, cerber, changeup, chanitor,
chekua, cheshire, chewbacca, chisbur, cleaver, cloud_atlas,
conficker, contopee, copykittens, corebot, cosmicduke,
couponarific, criakl, cridex, crilock, cryakl, cryptinfinite,
cryptodefense, cryptolocker, cryptowall, ctblocker, cutwail,
darkhotel, defru, desertfalcon, destory, dnschanger,
dnsmessenger, dnstrojan, dorifel, dorkbot, drapion, dridex,
dukes, dursg, dyreza, elf_aidra, elf_billgates, elf_darlloz,
elf_ekoms, elf_fysbis, elf_groundhog, elf_hacked_mint,
elf_mayhem, elf_mokes, elf_pinscan, elf_rekoobe, elf_shelldos,
elf_sshscan, elf_themoon, elf_turla, elf_xnote, elf_xorddos,
elpman, emogen, emotet, equation, evilbunny, ewind, expiro,
fakeav, fakeran, fantom, fareit, fbi_ransomware, fiexp,
fignotok, fin4, finfisher, fraudload, fynloski, fysna, gamarue,
gauss, gbot, generic, golroted, gozi, groundbait, harnig,
hawkeye, helompy, hiloti, hinired, htran, immortal, injecto,
ios_keyraider, ios_muda, ios_oneclickfraud, ios_specter,
ismdoor, jenxcus, kegotip, keydnap, kingslayer, kolab,
koobface, korgo, korplug, kovter, kradellsh, kulekmoko,
lazarus, locky, lollipop, lotus_blossom, luckycat, majikpos,
malwaremustdie, marsjoke, mdrop, mebroot, mestep, mhretriev,
miniduke, misogow, modpos, morto, nanocor, nbot, necurs,
nemeot, neshuta, nettraveler, netwire, neurevt, nexlogger,
nivdort, nonbolqu, nuqel, nwt, nymaim, odcodc, oficla, onkods,
optima, osx_keranger, osx_keydnap, osx_salgorea,
osx_wirelurker, palevo, pdfjsc, pegasus, pepperat, phytob,
picgoo, pift, plagent, plugx, ponmocup, poshcoder, potao,
powelike, proslikefan, pushdo, pykspa, qakbot, quasar, ramnit,
ransirac, reactorbot, redoctober, redsip, remcos, renocide,
reveton, revetrat, rovnix, runforestrun, russian_doll, rustock,
sakurel, sality, satana, sathurbot, scarcruft, scarletmimic,
scieron, seaduke, sednit, sefnit, selfdel, shifu, shylock,
siesta, silentbrute, silly, simda, sinkhole_abuse,
sinkhole_anubis, sinkhole_arbor, sinkhole_bitdefender,
sinkhole_blacklab, sinkhole_botnethunter, sinkhole_certgovau,
sinkhole_certpl, sinkhole_checkpoint, sinkhole_cirtdk,
sinkhole_conficker, sinkhole_cryptolocker, sinkhole_drweb,
sinkhole_dynadot, sinkhole_dyre, sinkhole_farsight,
sinkhole_fbizeus, sinkhole_fitsec, sinkhole_fnord,
sinkhole_gameoverzeus, sinkhole_georgiatech, sinkhole_gladtech,
sinkhole_honeybot, sinkhole_kaspersky, sinkhole_microsoft,
sinkhole_rsa, sinkhole_secureworks, sinkhole_shadowserver,
sinkhole_sidnlabs, sinkhole_sinkdns, sinkhole_sofacy,
sinkhole_sugarbucket, sinkhole_tech, sinkhole_unknown,
sinkhole_virustracker, sinkhole_wapacklabs, sinkhole_zinkhole,
skeeyah, skynet, skyper, smsfakesky, snake, snifula, snort,
sockrat, sofacy, sohanad, spyeye, stabuniq, stonedrill,
stuxnet, synolocker, tdss, teamspy, teerac, teslacrypt,
themida, tibet, tinba, torpig, torrentlocker, troldesh, turla,
unruy, upatre, utoti, vawtrak, vbcheman, vinderuf, virtum,
virut, vittalia, vobfus, volatilecedar, vundo, waledac,
waterbug, wecorl, wndred, xadupi, xcodeghost, xtrat, yenibot,
yimfoca, zaletelly, zcrypt, zemot, zeroaccess, zeus, zherotee,
zlader, zlob, zombrari, zxshell, etc.
هندسة معمارية
ويستند Maltrail على Traffic -> Sensor <-> Server <-> بنية العميل. المستشعر (المستشعر) هو مكون مستقل يعمل على عقدة المراقبة (على سبيل المثال ، نظام لينكس متصل بشكل سلبي بمنفذ SPAN / انعكاس أو مضمن بشكل شفاف على جسر Linux) أو على الجهاز المستقل (مثل Honeypot) حيث "يقوم بمراقبة" مرور المرور بالنسبة إلى العناصر / المسارات (على سبيل المثال ، أسماء النطاقات و / أو عناوين URL و / أو عناوين IP). في حالة وجود تطابق إيجابي ، يرسل تفاصيل الحدث إلى الخادم (المركزي) حيث يتم تخزينها داخل دليل التسجيل المناسب (على سبيل المثال LOG_DIR الموضحة في قسم التهيئة). إذا كان يتم تشغيل المستشعر على نفس الجهاز مثل الخادم (التكوين الافتراضي) ، يتم تخزين السجلات مباشرة في دليل التسجيل المحلي. خلاف ذلك ، يتم إرسالها عبر رسائل UDP إلى الخادم البعيد (أي
يتمثل الدور الرئيسي للخادم في تخزين تفاصيل الحدث وتقديم الدعم الخلفي لتطبيق الويب الخاص بالإبلاغ. في التكوين الافتراضي ، سيتم تشغيل الخادم وجهاز الاستشعار على نفس الجهاز. لذلك ، لمنع الاضطرابات المحتملة في أنشطة المستشعر ، يستند الجزء الخاص بالإبلاغ الأمامي إلى بنية "عميل الدهون" (أي أن كل معالجة البيانات يتم تنفيذها داخل مثيل متصفح الويب الخاص بالعميل). يتم نقل الأحداث (أي إدخالات السجل) للفترة المختارة (24 ساعة) إلى العميل ، حيث يكون تطبيق الويب الخاص بالإبلاغ هو المسؤول الوحيد عن جزء العرض التقديمي. يتم إرسال البيانات إلى العميل في أجزاء مضغوطة ، حيث تتم معالجتها بشكل تسلسلي. يتم إنشاء التقرير النهائي في شكل مكثف للغاية ، مما يسمح عمليا تقديم عدد غير محدود من الأحداث تقريبا.
ملاحظة: يمكن تخطي مكون الخادم تمامًا ، ومجرد استخدام المستشعر المستقل. في مثل هذه الحالة ، سيتم تخزين جميع الأحداث في دليل التسجيل المحلي ، بينما يمكن فحص إدخالات السجل يدويًا أو من خلال بعض تطبيقات قراءة CSV.
بداية سريعة
يجب أن تحصل مجموعة الأوامر التالية على مستشعر Maltrail وتشغيله (خارج الصندوق مع الإعدادات الافتراضية وواجهة المراقبة "any"):
sudo apt-get install git python-pcapy
git clone https://github.com/stamparm/maltrail.git
cd maltrail
sudo python sensor.py
لبدء تشغيل الخادم (الاختياري) على نفس الجهاز ، افتح محطة طرفية جديدة وقم بتنفيذ ما يلي:
[[ -d maltrail ]] || git clone https://github.com/stamparm/maltrail.git
cd maltrail
python server.py
لاختبار أن كل شيء قيد التشغيل وتنفيذ ما يلي:
ping -c 1 136.161.101.53
cat /var/log/maltrail/$(date +"%Y-%m-%d").log
لإيقاف مثيلات المستشعر و Server (في حالة التشغيل في الخلفية) ، قم بتنفيذ ما يلي:
sudo pkill -f sensor.py
pkill -f server.py
الوصول إلى واجهة التقارير (أي العميل) عن طريق زيارة http://127.0.0.1:8338 (بيانات الاعتماد الافتراضية: admin: changeme!) من متصفح الويب الخاص بك:
دليل المسؤول
- المستشعر
إذا تم تعيين الخيار USE_MULTIPROCESSING على true ، فسيتم استخدام جميع نواة وحدة المعالجة المركزية (CPU). سيتم استخدام أحد النواة فقط لالتقاط الحزم (مع التقارب المناسب ، أولوية IO وإعدادات المستوى اللطيف) ، بينما سيتم استخدام النوى الأخرى لمعالجة الحزم. خلاف ذلك ، سيتم تشغيل كل شيء على جوهر واحد. يمكن استخدام الخيار USE_FEED_UPDATES لإيقاف تشغيل تحديثات الممرات من الخلاصات تمامًا (واستخدام الخيارات الثابتة المتوفرة فقط). يحتوي الخيار UPDATE_PERIOD على عدد الثواني بين كل تحديث من المسارات التلقائية (ملاحظة: القيمة الافتراضية مضبوطة على 86400 (أي يوم واحد)) باستخدام تعريفات داخل دليل المسارات (ملاحظة: كل من جهاز الاستشعار والخادم يعتنيان بتحديث المسارات). يمكن استخدام الخيار CUSTOM_TRAILS_DIR من قبل المستخدم لتوفير موقع الدليل الذي يحتوي على ملفات المسارات المخصصة (* .txt). يعمل الخيار USE_HEURISTICS على آليات إرشادية (على سبيل المثال اسم المجال الطويل (المشبوهة) ، المفرط لا يوجد مثل اسم المجال (المشبوهة) ، التحميل المباشر .exe (مشبوهة) ، الخ) ، ويحتمل أن تقدم ايجابيات كاذبة. يعرض الخيار CAPTURE_BUFFER ذاكرة إجمالية (في بايت من النسبة المئوية للذاكرة الفعلية الإجمالية) لاستخدامها في حالة وضع المعالجة المتعددة لتخزين التقاط الحزمة في مخزن مؤقت لحلقي وذلك من خلال عمليات أخرى غير التقاط. يجب أن يحتوي خيار MONITOR_INTERFACE على اسم واجهة الالتقاط. استخدم القيمة أي لالتقاط من جميع الواجهات (إذا كان نظام التشغيل يدعم ذلك). يجب أن يحتوي خيار CAPTURE_FILTER على عامل تصفية التقاط الشبكة (tcpdump) لتخطي حزم uninterestest وتسهيل عملية الالتقاط. يحتوي الخيار SENSOR_NAME على الاسم الذي يجب أن يظهر داخل قيمة events_name events ، لذلك يمكن تمييز الحدث من أحد أجهزة الاستشعار عن الآخر. إذا تم تعيين الخيار LOG_SERVER ، فسيتم إرسال جميع الأحداث عن بعد إلى الخادم ، وإلا يتم تخزينها مباشرة في دليل التسجيل الذي تم ضبطه مع الخيار LOG_DIR ، والذي يمكن العثور عليه داخل قسم ملف maltrail.conf [الكل]. في حالة تعيين الخيار UPDATE_SERVER ، يتم سحب جميع المسارات من الموقع المحدد ، وإلا يتم تحديثها من تعريفات المسارات الموجودة داخل التثبيت نفسه.
عند تشغيل المستشعر (على سبيل المثال sudo python sensor.py) للمرة الأولى و / أو بعد فترة أطول من عدم التشغيل ، سيقوم تلقائيًا بتحديث المسارات من تعريفات الممرات (ملاحظة: يتم تخزينها داخل دليل المسارات). بعد التهيئة ، سيبدأ في مراقبة الواجهة المكونة (الخيار MONITOR_INTERFACE داخل maltrail.conf) وكتابة الأحداث إما إلى دليل السجل المكوّن (الخيار LOG_DIR داخل قسم ملف maltrail.conf [All]) أو إرسالها عن بعد إلى تسجيل / خادم التقارير (الخيار LOG_SERVER).
يتم تخزين الأحداث التي تم اكتشافها داخل دليل تسجيل الدخول الخاص بالخادم (أي الخيار LOG_DIR داخل قسم ملف maltrail.conf [All]) بتنسيق CSV سهل القراءة (ملاحظة: يتم استخدام المسافة البيضاء كمحدد) عند إدخالات سطر واحد تتكون من : time sensor src_ip src_port dst_ip dst_port proto trail_type trail trail_info reference (eg "2015-10-19 15: 48: 41.152513" beast 192.168.5.33 32985 8.8.8.8 53 UDP DNS 0000mps.webpreview.dsl.net malicious siteinspector.comodo.com ):
- الخادم
يمكن العثور على تكوين الخادم داخل قسم maltrail.conf [Server]:
يحتوي الخيار HTTP_ADDRESS على عنوان الاستماع لخادم الويب (ملاحظة: استخدم 0.0.0.0 للاستماع على كل الواجهات).يحتوي الخيار HTTP_PORT على منفذ الاستماع لخادم الويب. تم تعيين منفذ الاستماع الافتراضي إلى 8338. إذا تم تعيين الخيار USE_SSL على true ، فسيتم استخدام SSL / TLS للوصول إلى خادم الويب (على سبيل المثال https://192.168.6.10:8338/). في هذه الحالة ، يجب أن يشير خيار SSL_PEM إلى ملف PEM الخاص / الخادم الخاص بالخادم.
يحتوي Subsection USERS على إعدادات تكوين المستخدم. يتكون كل إدخال مستخدم من اسم المستخدم: sha256 (كلمة المرور): UID: filter_netmask (s). يمثل UID للقيمة معرّف المستخدم الفريد ، حيث يُنصح باستخدام قيم أقل من 1000 للحسابات الإدارية ، بينما القيمة الأعلى للحسابات غير الإدارية. يمثل الجزء filter_netmask (s) عامل تصفية (فلات) ثابت بفواصل يمكن استخدامه لتصفية الأحداث المعروضة بناءً على حساب (حسابات) المستخدم. الإدخال الافتراضي هو كما يلي:
يحتوي الخيار UDP_ADDRESS على عنوان الاستماع لتجميع سجلات الخادم (ملاحظة: استخدم 0.0.0.0 للاستماع على كافة الواجهات) ، بينما يحتوي الخيار UDP_PORT على قيمة منفذ الاستماع. إذا تم تشغيله ، عند استخدامه مع الخيار LOG_SERVER ، فيمكن استخدامه مع بنية الخادم <-> () متعددة الإستشعار.
كما هو الحال مع المستشعر ، عند تشغيل الخادم (على سبيل المثال ، python server.py) للمرة الأولى و / أو بعد فترة أطول من عدم التشغيل ، إذا تم تعيين الخيار USE_SERVER_UPDATE_TRAILS على true ، فسيتم تلقائيًا تحديث المسارات من تعريفات التتبع ( ملاحظة: تخزينها داخل دليل مسارات). وتتمثل وظيفتها الأساسية في تخزين إدخالات السجل داخل دليل التسجيل (أي الخيار LOG_DIR داخل قسم ملف maltrail.conf [All]) وتوفير واجهة تقارير الويب لتقديم هذه الإدخالات نفسها للمستخدم النهائي (ملاحظة: لا يوجد تحتاج إلى تثبيت حزم خادم الويب 3rd الطرف مثل Apache):
دليل المستخدم
- واجهة التقارير
عند الدخول إلى واجهة إعداد التقارير الخاصة بالخادم (أي عن طريق العنوان المحدد بواسطة الخيارات HTTP_ADDRESS و HTTP_PORT) ، سيتم عرض مربع حوار المصادقة التالي للمستخدم. يجب على المستخدم إدخال بيانات الاعتماد المناسبة التي تم تعيينها من قبل مسؤول الخادم داخل ملف التهيئة maltrail.conf (ملاحظة: بيانات الاعتماد الافتراضية هي admin: changeme!):
بمجرد الدخول ، سيُعرض للمستخدم واجهة التقارير التالية:
الجزء العلوي يحمل مخططًا زمنيًا متحركًا (ملاحظة: يتم تنشيطه بعد النقر على تصنيف التاريخ الحالي و / أو رمز التقويم رمز التقويم) حيث يمكن للمستخدم تحديد سجلات للأحداث الماضية (ملاحظة: سيؤدي تشغيل الماوس فوق الحدث إلى عرض تلميح الأدوات مع العدد التقريبي للأحداث للتاريخ الحالي). يتم تجميع التواريخ حسب الأشهر ، حيث يتم عرض فترة 4 أشهر من البيانات داخل الأداة نفسها. ومع ذلك ، باستخدام شريط التمرير المتوفر (أي شريط التمرير الزمني) يمكن للمستخدم الوصول بسهولة إلى الأحداث من الأشهر السابقة.
بمجرد النقر فوق التاريخ ، يجب تحميل كافة الأحداث الخاصة بهذا التاريخ وتمثيله بواسطة مستعرض الويب الخاص بالعميل. استنادًا إلى عدد الأحداث وسرعة اتصال الشبكة ، قد يستغرق تحميل الأحداث التي تم تسجيلها وعرضها من بضع ثوانٍ ، وحتى عدة دقائق (على سبيل المثال ، تستغرق 100000 حدث في حوالي 5 ثوانٍ). طوال فترة المعالجة ، سيتم عرض أداة تحميل الرسوم المتحركة عبر واجهة المستخدم التي تم تعطيلها:
الجزء الأوسط يحمل ملخصًا للأحداث المعروضة. يمثل مربع الأحداث العدد الإجمالي للأحداث في فترة زمنية محددة مدتها 24 ساعة ، حيث يمثل الخط الأحمر الأحداث القائمة على بروتوكول الإنترنت ، ويمثل الخط الأزرق الأحداث المستندة إلى نظام أسماء النطاقات ، ويمثل السطر الأصفر الأحداث المستندة إلى عنوان URL. يمثل مربع المصادر عدد الأحداث لكل المصادر الأعلى في شكل مخطط عمودي مرصوف ، مع إجمالي عدد المصادر في الأعلى. يمثل مربع التهديدات نسبة التهديدات الرئيسية في شكل مخطط دائري (ملاحظة: تحتوي المنطقة الرمادية على جميع التهديدات التي تحتوي على <1٪ في إجمالي الأحداث) ، مع إجمالي عدد التهديدات في الأعلى. يمثل مربع الممرات النسبة المئوية لأهم المسارات في شكل مخطط دائري (ملاحظة: تحتفظ المنطقة الرمادية بجميع المسارات التي تحتوي كل <1٪ في إجمالي الأحداث) ، مع إجمالي عدد الممرات في القمة. كل من هذه المربعات نشطة ، وبالتالي فإن النقرة على واحدة من تلك المربعات سوف ينتج عنها رسم بياني أكثر تفصيلاً.
الجزء السفلي يحمل تمثيلًا مكثفًا للأحداث المسجلة في شكل جدول مرقم. يحمل كل إدخال تفاصيل عن تهديد واحد (ملاحظة: يتم التعرف عليها بشكل فريد بواسطة زوج (src_ip أو trail) أو (dst_ip ، trail) إذا كان src_ip هو نفس المسار كما في حالة الهجمات القادمة من الخارج):
تهديد العمود يحتوي على معرف فريد للتهديد (مثل 85fdb08d) ولون (ملاحظة: مقذوف من معرف التهديد) ، يحمل المستشعر اسمًا (أسماء) أجهزة الاستشعار حيث تم تشغيل الحدث (مثل blitvenica) ، تحتوي الأحداث على إجمالي عدد الأحداث للتهديد الحالي ، شدة تحمل تقييم خطورة التهديد (ملاحظة: محسوبة على أساس القيم في المعلومات والأعمدة المرجعية ، وتحديد أولويات حركة المرور الناتجة عن البرامج الضارة) ، first_seen يحمل وقت الحدث الأول في فترة محددة (24h) (على سبيل المثال 06th 08:21:54) ، last_seen يحتفظ بوقت آخر حدث في فترة محددة (24 ساعة) (على سبيل المثال 06:15:21:23) ، يحمل خط المؤشر رسمًا بيانيًا صغيرًا يمثل خطًا يمثل نشاط التهديد في فترة محددة ، يحمل src_ip مصدر (عناوين) IP للتهديد (على سبيل المثال 99.102.41.102 ) ، src_port يحمل منفذ (منافذ) المصدر (مثل 44556 ، 44589 ، 44601) ، يحمل dst_ip عنوان IP (s) (213.202.100.28) ،يحمل dst_port منفذ (منافذ) الوجهة (على سبيل المثال 80 (HTTP)) ، يحمل proto (بروتوكول) بروتوكول (بروتوكولات) ، (على سبيل المثال TCP) ، يحتوي trail على إدخال (أو إرشادي) قائم على القائمة السوداء الذي تسبب في الحدث (الأحداث) ، المعلومات تحمل المزيد من المعلومات حول التهديد / الممر (على سبيل المثال ، المهاجم المعروف لعناوين IP المعروفة للمهاجم أو ipinfo لخدمة معلومات IP الشائعة المستخدمة عادة بواسطة البرامج الضارة أثناء بدء التشغيل) ، يحتفظ المرجع بمصدر الإدخال المدرج في القائمة السوداء (مثل (ثابت) للمسارات الثابتة أو myip.ms علف ديناميكي مسترجع من نفس المصدر) والعلامات تحمل علامات تعريف المستخدم لأثر معين (مثل APT28).عناوين IP أو ipinfo لخدمة معلومات IP المعروفة الشائعة الاستخدام من قِبل البرامج الضارة أثناء بدء التشغيل) ، يحتفظ المرجع بمصدر الإدخال في القائمة السوداء (على سبيل المثال (ثابت) للحصول على مسارات ثابتة أو myip.ms لخلاصة ديناميكية تم استردادها من نفس المصدر) علامات تحمل علامات تعريف المستخدم لأثر معين (على سبيل المثال APT28).عناوين IP أو ipinfo لخدمة معلومات IP المعروفة الشائعة الاستخدام من قِبل البرامج الضارة أثناء بدء التشغيل) ، يحتفظ المرجع بمصدر الإدخال في القائمة السوداء (على سبيل المثال (ثابت) للحصول على مسارات ثابتة أو myip.ms لخلاصة ديناميكية تم استردادها من نفس المصدر) علامات تحمل علامات تعريف المستخدم لأثر معين (على سبيل المثال APT28).
عند تحريك الماوس فوق إدخالات جدول src_ip و dst_ip ، يتم عرض تلميح معلومات مع معلومات DNS وعكس مفصلة مفصلة (ملاحظة: RIPE هو مزود المعلومات):
تفاصيل الحدث (مثل src_port ، dst_port ، proto ، إلخ) التي تختلف داخل نفس دخول التهديد يتم تكثيفها على شكل رمز الفقاعة (مثل أيبسوس). يتم إجراء هذا للحصول على واجهة تقارير قابلة للاستخدام مع أقل عدد ممكن من الصفوف. سيؤدي تحريك الماوس فوق هذا الرمز إلى عرض تلميح أداة معلومات مع جميع العناصر الموجودة (على سبيل المثال جميع أرقام المنافذ التي يتم مسحها ضوئيًا من قبل المهاجم):
سيؤدي النقر فوق أحد هذه الأيقونات إلى فتح مربع حوار جديد يحتوي على كافة العناصر المخزنة (ملاحظة: في نموذجها غير المطلوب) جاهزة لتكون نسخ - لصق (د) لإجراء مزيد من التحليل:
عند تحريك مؤشر الماوس فوق درب التهديد لبضع ثوان ، سينتج عن إطار يتكون من النتائج باستخدام الدرب كمصطلح بحث يتم تنفيذه ضد محرك البحث DuckDuckGo. في الكثير من الحالات ، يوفر هذا معلومات أساسية حول التهديد نفسه ، مما يلغي الحاجة إلى قيام المستخدم بالبحث اليدوي عنه. في الزاوية اليمنى العليا من إطار الإطار المفتوح ، يوجد زرين إضافيين. من خلال النقر على الرمز الأول (أي رمز علامة تبويب جديدة) ، سيتم فتح الإطار الناتج داخل علامة تبويب المتصفح الجديد (أو النافذة) ، بينما سيؤدي النقر على الرمز الثاني (أي إغلاق الرمز) إلى إغلاق الإطار (ملاحظة: نفس الإجراء) يتحقق بتحريك مؤشر الماوس خارج حدود الإطار):
لكل تهديد هناك علامة عمود يمكن تعبئتها بـ "علامات" عشوائية لوصف جميع التهديدات التي تتقاسم نفس المسار. أيضا ، إنها طريقة رائعة لوصف التهديدات بشكل فردي ، لذلك يمكن تجميع كل التهديدات التي تتقاسم نفس العلامة (مثل ياهو) في وقت لاحق:
حالات واقعية
في القسم التالي ، سيتم وصف بعض سيناريوهات "المشتبه بهم المعتاد" من خلال الحالات الواقعية.
- ماسح جماعي
عمليات المسح الجماعي هي ظاهرة شائعة إلى حد كبير حيث يمنح الأفراد و / أو المنظمات لنفسهم الحق في مسح نطاق IP ككل 0.0.0.0/0 (أي الإنترنت بالكامل) على أساس يومي ، مع بيان إخلاء المسؤولية حيث يقولون أنه إذا كنت لا تحب بعد ذلك يجب عليك الاتصال بهم بشكل خاص لتخطيها من عمليات الفحص المستقبلية.
لجعل الأمور أكثر سوءًا ، تمنح المنظمات مثل Shodan و ZoomEye جميع النتائج مجانًا (للمهاجمين المحتملين الآخرين) من خلال محرك البحث الخاص بهم. في لقطات الشاشة التالية ، سترى تفاصيل تفحص Shodan في يوم واحد.
في ما يلي مثال لعكس نظام أسماء النطاقات وبحث WHOIS عن عنوان "المهاجم":
عند تحريك مؤشر الماوس فوق محتوى عمود الممر (عنوان IP) ، ستظهر لك نتائج البحث من DuckDuckGo حيث ستتمكن من العثور على مزيد من المعلومات حول "المهاجم" (أي Shodan):
في العمود dst_ip ، إذا كان لديك مؤسسة كبيرة ، فستظهر لك قائمة كبيرة من عناوين IP الممسوحة ضوئيًا:
في العمود dst_port ، ستتمكن من رؤية جميع المنافذ التي تم مسحها ضوئيًا بواسطة عمليات الفحص الجماعي هذه:
في حالات أخرى مماثلة ، سترى نفس السلوك ، قادمًا من المهاجم (المهاجمين) الفرديين المدرجين في القائمة السوداء (في هذه الحالة بواسطة cinsscore.com):
هناك سلوك واحد أكثر شيوعًا وهو فحص نطاق IP ككل 0.0.0.0/0 (أي الإنترنت) في البحث عن منفذ واحد معين (على سبيل المثال ، منفذ TCP 443 عند العثور على Heartbleed). في لقطة الشاشة التالية ، ستعثر على حالة واحدة لمهاجم (مهاجم) تم وضعه في القائمة السوداء (في هذه الحالة عن طريق alienvault.com وقائمتين أخريين) يستهدفان منفذ UDP 5060 (أي SIP) بحثًا عن أجهزة VoIP التي تم تهيئتها بشكل خاطئ:
- مهاجمون مجهولون
لتحديد هوية المهاجمين المحتملين الذين تم إخفاؤهم خلف شبكة Tor المجهولة ، تستخدم Maltrail قوائم عقد Tor الخاصة بالعموم. في لقطة الشاشة التالية ، سترى حالة استخدم فيها المهاجم المحتمل شبكة Tor للوصول إلى هدف الويب (عبر HTTP) في نطاق مؤسستنا بطريقة مشبوهة (إجمالي طلبات الاتصال 171 في خلال 10 دقائق):
- مهاجمو الخدمة
حالة مشابهة إلى الحالة السابقة تمامًا ، عندما يحاول المهاجم السابق في القائمة السوداء الوصول إلى خدمة معينة (على سبيل المثال ، ليس HTTP ()) في نطاق مؤسستنا بطريقة مشبوهة (أي محاولات اتصال 1513 إجماليًا في أقل من 15 دقيقة):
إذا أدخلنا مهاجم ssh إلى حقل Filter ، فسوف نتمكن من رؤية كل الأحداث المشابهة لذلك اليوم ، ولكن في هذه الحالة بالنسبة للمنفذ 22 (أي SSH):
- البرمجيات الخبيثة
في حالة محاولات الاتصال القادمة من أجهزة الكمبيوتر المصابة داخل مؤسستنا إلى خوادم C & C المعروفة مسبقًا ، ستتمكن من العثور على تهديدات مشابهة لما يلي (في هذه الحالة Beebone):
في حالة طلبات DNS التي تحتوي على أسماء نطاقات DGA معروفة ، سيظهر التهديد كما هو (في هذه الحالة Necurs):
في حالة تنزيل ملفات الحالة التالية من القائمة السوداء (في هذه الحالة عن طريق malwarepatrol.net) ، حدثت عناوين (عناوين) URL:
إذا أدخلنا اسم البرنامج الضار المحدد (في هذه الحالة Ramnit) في حقل الفلتر ، فسيتم فقط تصفية التهديدات التي يُعرف أنها مرتبطة بهذا البرنامج الضار (تظهر لك جميع أجهزة الكمبيوتر الداخلية المتأثرة):
بشكل عام ، إذا أدخلنا البرامج الضارة في حقل الفلتر ، فستتم تصفية جميع التهديدات التي تم العثور عليها من خلال البرامج الضارة (ذات الصلة) (مثل عناوين IP) في:
- عمليات بحث النطاق المشبوهة
تستخدم Maltrail القائمة الثابتة لنطاقات TLD المعروف أنها مشتركة في الأنشطة المشبوهة. تأتي معظم نطاقات TLD هذه من مسجلي النطاق المجاني (مثل Freenom) ، وبالتالي يجب أن يكونوا تحت تدقيق أكبر. في لقطة الشاشة التالية ، يمكننا العثور على حالة تم فيها استخدام نطاق واحد من أسماء نطاق TLD هذه بواسطة برامج ضارة غير معروفة باستخدام خوارزمية DGA للاتصال بخادم (ملقمات) C & C:
هناك أيضًا حالات تستخدم فيها نطاقات TLD صالحة تمامًا (مثل .ru) للأنشطة المشبوهة ، مثل هذه في هذه الحالة (مثل اسم النطاق الطويل (المشبوهة)) حيث تكون النطاقات بشكل واضح عبارة عن DGA تم إنشاؤها بواسطة برامج ضارة مجهولة:
تستخدم Maltrail قائمة ثابتة بما يسمى "النطاقات الديناميكية" التي تُستخدم في الغالب في الأنشطة المشبوهة (مثل خوادم C & C الضارة التي غالبًا ما تُغيّر عناوين IP للوجهة):
أيضا ، يستخدم Maltrail قائمة ثابتة من المجالات المرتبطة بـ "البصل" التي تستخدم في كثير من الأحيان في الأنشطة المشبوهة (مثل الاتصال ببرامج خبيثة C & C باستخدام خدمة Tor2Web):
في حالة وجود برامج ضارة قديمة و / أو قديمة لا يتم كشفها على أجهزة الكمبيوتر الداخلية المصابة بالمؤسسة ، غالبًا ما تكون هناك "ظاهرة" حيث تحاول البرامج الضارة باستمرار الاتصال بنطاق الخادم C & C الطويل بدون أي حل لنظام أسماء النطاقات. وبالتالي ، سيتم وضع علامة على هذا النوع من التهديدات (المحتملة) على أنها مفرطة مثل هذا المجال (مشبوهة):
في حالة كون أحد المسارات مسؤولاً عن الكثير من التهديدات (على سبيل المثال في حالة عناوين IP المزيفة مثل هجمات DNS التضخيمية) ، سيتم تجميع جميع التهديدات المماثلة تحت تهديد فيضان واحد (ملاحظة: سيتم تمييز معرف التهديد باللاحقة F0) ، كما في المثال التالي:
- طلبات ipinfo المشبوهة
يستخدم الكثير من البرامج الضارة نوعًا من خدمة ipinfo (مثل ipinfo.io) لاكتشاف عنوان IP الخاص بالضحية. في حالة وجود ساعات منتظمة وخاصة في ساعات العمل ، يجب مراقبة هذا النوع من الطلبات عن كثب ، كما في المثال التالي:
باستخدام فلتر ipinfo ، يمكن إدراج جميع أجهزة الكمبيوتر التي يمكن أن تكون مصابة في نطاق مؤسستنا والتي تشارك هذا النوع من السلوك المشبوه:
- التنزيلات الملف المباشر المشبوهة
يتتبع Maltrail جميع محاولات تحميل الملفات المشبوهة المباشرة (مثل .apk و. exe وامتدادات .scr للملفات). يمكن أن يؤدي هذا إلى ظهور الكثير من الإيجابيات الخاطئة ، ولكن في النهاية قد يساعد في إعادة بناء سلسلة العدوى (ملاحظة: عادةً ما يستخدم مقدمو الخدمات الشرعيون ، مثل Google ، HTTPS المشفرة لتنفيذ هذا النوع من التنزيلات):
- طلبات HTTP المشبوهة
في حالة الطلبات المشبوهة الواردة من أجهزة فحص أمان تطبيق الويب الخارجي (مثل البحث عن نقاط ضعف SQLi أو XSS أو LFI أو غيرها) و / أو محاولات المستخدمين الداخلية الخبيثة تجاه مواقع ويب غير معروفة ، يمكن العثور على تهديدات مثل ما يلي (حالة حقيقية المهاجمين الذين يحاولون استغلال Joomla! CMS CVE-2015-7297 ، CVE-2015-7857 ، ومواطن الضعف CVE-2015-7858):
في المثال التالي ، تم وضع علامة على فحص الضعف في تطبيق الويب على أنه "مشتبه به":
إذا نقرنا على أيقونة الفقاعة التفسيرية (بمعنى "الحذف") للحصول على التفاصيل ونسخ لصق المحتوى بأكمله إلى ملف نصي ، فسوف نتمكن من رؤية جميع طلبات HTTP المشبوهة:
في لقطة الشاشة التالية ، يمكن العثور على مجموعة من SQLlmap أداة الضعف SQLi شعبية داخل سجلاتنا:
- ميناء المسح الضوئي
- استخراج موارد DNS
أحد هجمات DDoS الشائعة ضد البنية التحتية لخادم الويب هو استنزاف الموارد لخادم DNS (الرئيسي) عن طريق تقديم طلبات استدعاءات DNS صحيحة (pseudo) لأسماء النطاقات الفرعية العشوائية (مثل abpdrsguvjkyz.www.dedeni.com):
- تسرب البيانات
البرامج المتنوعة (خاصةً القائمة على الهواتف المحمولة) تقدم سلوكًا خبيثًا (شبيهًا) حيث ترسل بيانات قد تكون حساسة إلى منشورات المنارة البعيدة. سيحاول Maltrail التقاط مثل هذا السلوك كما في المثال التالي:
- ايجابيات مزيفة
وكما هو الحال في جميع الحلول الأمنية الأخرى ، فإن Maltrail عرضة "لإيجابيات خاطئة". في مثل هذا النوع من الحالات ، سوف يسجل Maltrail (خاصة في حالة التهديدات المشبوهة) سلوك مستخدم عادي ويضع علامة على أنه خبيث و / أو مشبوه. في المثال التالي ، يمكن ملاحظة أن موفر خلاصة القائمة السوداء blocklist.de وضع علامة على خادم Google العادي كمهاجم (مهاجمين) ، مما ينتج عنه التهديد التالي:
من خلال تحريك الماوس فوق الدرب ، قم بالإطار مع نتائج من بحث DuckDuckGo الذي يظهر أن هذا هو خادم Google العادي:
وكمثال آخر ، فإن الوصول إلى نطاقات .work المنتظمة (TLD المشهورة لأغراض ضارة) نتج عن التهديد التالي:
ومع ذلك ، ينبغي أن يستثمر المسؤولون (الإداريون) بعض الوقت الإضافي ويتحققون (بوسائل أخرى) مما إذا كانت "المشبوهة" تعني ضارة أم لا ، كما في المثال التالي:
Commentaires
Enregistrer un commentaire