Skip to content

PRX-SD

PRX-SD არის ღია კოდის ანტივირუსის ძრავა, აგებული როგორც 11-crate Rust სამუშაო სივრცე. ის აერთიანებს ტრადიციულ ხელმოწერებზე დაფუძნებულ გამოვლენას ევრისტიკულ ანალიზსა და მანქანურ სწავლებასთან მავნე პროგრამების გამოსავლენად ბოლო წერტილებზე Linux, macOS და Windows-ზე.

Crateროლი
prx-sd-coreსაზიარო ტიპები, კონფიგურაცია, ქულის მინიჭება, შეცდომების დამუშავება
prx-sd-scanner5-ეტაპიანი გამოვლენის პაიპლაინის ორკესტრაცია
prx-sd-signaturesჰეშების მონაცემთა ბაზა (LMDB) და ხელმოწერების მართვა
prx-sd-yaraYARA წესების კომპილაცია და შედარება
prx-sd-heuristicsენტროპიის ანალიზი, პაკერის გამოვლენა, საეჭვო API/ქცევის შაბლონები
prx-sd-mlML ინფერენსი ONNX Runtime / tract-ით
prx-sd-quarantineAES-256-GCM დაშიფრული საცავი იზოლირებული საფრთხეებისთვის
prx-sd-sandboxპროცესის სენდბოქსი (ptrace, seccomp, სახელსივრცეები, Landlock)
prx-sd-monitorრეალურ დროში ფაილური სისტემის მონიტორინგი
prx-sd-cliბრძანების ხაზის ინტერფეისი (sd)
prx-sd-guiდესკტოპის GUI (Tauri + Vue 3)

5-ეტაპიანი გამოვლენის პაიპლაინი

Section titled “5-ეტაპიანი გამოვლენის პაიპლაინი”

ყოველი სკანირებული ფაილი გადის ამ ეტაპებს. ნებისმიერ ეტაპზე გამოვლენას შეუძლია საბოლოო ვერდიქტით შეწყვეტა.

ფაილის შეყვანა
1. ჰეშის შედარება ──თანხვედრა──▶ MALICIOUS (მყისიერი)
│ თანხვედრა არ არის
2. ფაილის ტიპის გამოვლენა (მაგიური ბაიტები)
3. ფორმატის ანალიზი (PE / ELF / MachO / PDF / Office)
4. პარალელური ანალიზი
├── YARA წესების სკანირება ──თანხვედრა──▶ MALICIOUS
├── ევრისტიკული ძრავა ──ქულა──▶ შეფასებული
└── ML ინფერენსი (ONNX/tract) ──ქულა──▶ შეფასებული
5. VirusTotal ღრუბლოვანი ძებნა (არჩევითი)
აგრეგირება → საბოლოო ვერდიქტი

ეტაპი 1: ჰეშის შედარება

Section titled “ეტაპი 1: ჰეშის შედარება”

ყველაზე სწრაფი გამოვლენის მეთოდი. ფაილის SHA-256 (და არჩევითად MD5) იძებნება LMDB მონაცემთა ბაზაში O(1) წვდომის დროით.

ხელმოწერების წყაროები:

წყაროტიპიშინაარსი
abuse.ch MalwareBazaarSHA-256ბოლო 48 საათის მავნე ნიმუშები
abuse.ch URLhausSHA-256მავნე URL-ებიდან ფაილების ჰეშები
abuse.ch Feodo TrackerSHA-256საბანკო ტროიანები (Emotet, Dridex, TrickBot)
VirusShareMD520M+ მავნე პროგრამების ჰეშები (სრული რეჟიმი)
ClamAVმრავლობითი.cvd/.ndb ხელმოწერები (პარსერი ჩართულია)
ჩაშენებული ბლოკირების სიაSHA-256EICAR, WannaCry, NotPetya, Emotet და სხვები

ეტაპი 2: ფაილის ტიპის გამოვლენა

Section titled “ეტაპი 2: ფაილის ტიპის გამოვლენა”

მაგიური ბაიტების იდენტიფიკაცია განსაზღვრავს ფაილის ნამდვილ ტიპს გაფართოების მიუხედავად: PE, ELF, MachO, PDF, ZIP, Office (OLE/OOXML).

ეტაპი 3: ფორმატის ანალიზი

Section titled “ეტაპი 3: ფორმატის ანალიზი”

ამოცნობილი ფორმატების სიღრმისეული ანალიზი ამოიღებს სტრუქტურულ მეტამონაცემებს ევრისტიკული ძრავის გამოსაყენებლად:

ფორმატიამოღებული მონაცემები
PE (Windows)სექციები, იმპორტები, ექსპორტები, რესურსები, დროის ნიშნები, ციფრული ხელმოწერები
ELF (Linux)სექციები, სიმბოლოები, დინამიური ლინკი, ინტერპრეტატორის გზა
MachO (macOS)ჩატვირთვის ბრძანებები, dylib დამოკიდებულებები, უფლებამოსილებები, კოდის ხელმოწერები
PDFJavaScript, ჩაშენებული ფაილები, გაშვების ქმედებები, URI ქმედებები
Officeმაკროები (VBA), OLE სტრიმები, DDE ბმულები, ჩაშენებული ობიექტები

ეტაპი 4: პარალელური ანალიზი

Section titled “ეტაპი 4: პარალელური ანალიზი”

სამი ანალიზის ძრავა მუშაობს ერთდროულად გაანალიზებულ ფაილზე:

YARA წესები — შაბლონების შედარება 38,800+ წესთან მრავალი წყაროდან (ჩაშენებული, Yara-Rules, Neo23x0/signature-base, ReversingLabs, ESET, InQuest).

ევრისტიკული ძრავა — ფაილების შეფასება სტრუქტურული ანომალიების საფუძველზე:

შემოწმებაეხებარას აღმოაჩენს
სექციის ენტროპიაPE, ELF, MachOშეფუთული ან დაშიფრული სექციები (მაღალი ენტროპია)
პაკერის გამოვლენაPEცნობილი პაკერები (UPX, Themida, VMProtect)
საეჭვო API იმპორტებიPEპროცესის ინექცია, კლავიატურის ჩაწერა, კრიპტო, ანტი-დებაგი
LD_PRELOAD ჰუკებიELFსაზიარო ბიბლიოთეკის ინექცია
cron/systemd მდგრადობაELFმდგრადობის მექანიზმები
SSH ბექდორის ინდიკატორებიELFარაავტორიზებული SSH გასაღების ინექცია
dylib ინექციაMachOდინამიური ბიბლიოთეკის გატაცება
LaunchAgent/DaemonMachOmacOS მდგრადობის მექანიზმები
Keychain წვდომაMachOსერთიფიკატების მოპარვის ინდიკატორები
დროის ნიშნის ანომალიებიPEგაყალბებული კომპილაციის დროის ნიშნები

ML ინფერენსი — მანქანური სწავლების კლასიფიკაცია ONNX Runtime ან tract-ით. მოდელები აფასებენ ფაილებს ანალიზის დროს ამოღებული მახასიათებლების საფუძველზე.

ეტაპი 5: VirusTotal ღრუბლოვანი ძებნა (არჩევითი)

Section titled “ეტაპი 5: VirusTotal ღრუბლოვანი ძებნა (არჩევითი)”

ჩართვისას, ფაილის ჰეში მოწმდება VirusTotal-ის მონაცემთა ბაზაში დამატებითი ვენდორის ვერდიქტებისთვის.

ყველა ანალიზის შედეგი აგრეგირებულია ერთ რიცხვით ქულაში:

ქულის დიაპაზონივერდიქტიმნიშვნელობა
0—29სუფთასაფრთხეები არ არის აღმოჩენილი
30—69საეჭვოზოგიერთი ინდიკატორი არსებობს, რეკომენდებულია ხელით განხილვა
70—100მავნემაღალი საიმედოობის საფრთხე, რეკომენდებულია ავტომატური ქმედება

საბოლოო ვერდიქტი იყენებს ნებისმიერი გამოვლენის ეტაპიდან ყველაზე მაღალ სიმძიმეს.

რეალურ დროში მონიტორინგი

Section titled “რეალურ დროში მონიტორინგი”

PRX-SD აკონტროლებს ფაილური სისტემის ცვლილებებს რეალურ დროში პლატფორმის ნეიტივ API-ებით:

პლატფორმაAPI
Linuxfanotify
macOSFSEvents
WindowsReadDirectoryChangesW

ახალი ან შეცვლილი ფაილის აღმოჩენისას, ის ავტომატურად სკანირდება სრული პაიპლაინით.

გამოსყიდვის პროგრამების გამოვლენა

Section titled “გამოსყიდვის პროგრამების გამოვლენა”

მონიტორი მოიცავს სპეციალიზებულ გამოსყიდვის პროგრამების გამოვლენას: ფაილების სწრაფი გადარქმევა/დაშიფვრის შაბლონები, ცნობილი გამოსყიდვის პროგრამების გაფართოებები და მაღალი ენტროპიის მასობრივი ჩაწერა იწვევს მყისიერ შეტყობინებებს.

აღმოჩენილი საფრთხეები გადაიტანება AES-256-GCM დაშიფრულ საცავში:

  • ფაილები დაშიფრულია შენახვამდე შემთხვევითი შესრულების თავიდან ასაცილებლად
  • ორიგინალი გზა და მეტამონაცემები შენარჩუნებულია აღდგენისთვის
  • კარანტინში მოთავსებული ფაილები შეიძლება ჩამოითვალოს, შემოწმდეს ან აღდგეს CLI-ით
Terminal window
# კარანტინში მოთავსებული ფაილების ჩამოთვლა
sd quarantine list
# კარანტინში მოთავსებული ფაილის აღდგენა
sd quarantine restore <ID>
# კარანტინში მოთავსებული ფაილის სამუდამოდ წაშლა
sd quarantine delete <ID>

კარანტინის მიღმა, PRX-SD-ს შეუძლია აქტიური გამოსწორების ნაბიჯების გადადგმა:

ქმედებააღწერა
პროცესის შეწყვეტამავნე ფაილის შემქმნელი ან მომხმარებელი პროცესის შეწყვეტა
მდგრადობის გასუფთავებასაფრთხესთან დაკავშირებული cron ამოცანების, systemd ერთეულების, LaunchAgent-ების ან რეესტრის ჩანაწერების ამოშლა
ქსელის იზოლაციაკომპრომეტირებული პროცესის ან ჰოსტის გამავალი კავშირების დაბლოკვა

PRX-SD-ს შეუძლია საეჭვო ფაილების შესრულება შეზღუდულ სენდბოქსში ქცევის ანალიზისთვის:

მექანიზმიპლატფორმადანიშნულება
ptraceLinuxსისტემური გამოძახებების თვალყურის დევნება
seccompLinuxსისტემური გამოძახებების ფილტრაცია
სახელსივრცეებიLinuxფაილური სისტემისა და ქსელის იზოლაცია
LandlockLinux 5.13+ფაილური სისტემის წვდომის შეზღუდვები

სენდბოქსი აკონტროლებს 10 კატეგორიის საეჭვო ქცევას:

  1. ფაილის დაშიფვრა (მასობრივი ჩაწერა მაღალი ენტროპიით)
  2. პროცესის ინექცია (ptrace მიმაგრება, /proc/*/mem ჩაწერა)
  3. სერთიფიკატებზე წვდომა (/etc/shadow-ის, keychain-ის, ბრაუზერის საცავის წაკითხვა)
  4. ქსელური ბიკონინგი (პერიოდული გამავალი კავშირები უცნობ ჰოსტებთან)
  5. მდგრადობის ინსტალაცია (cron, systemd, LaunchAgent, რეესტრი)
  6. პრივილეგიების ესკალაცია (setuid, sudo, შესაძლებლობების მანიპულაცია)
  7. ანტი-ანალიზი (დებაგერის გამოვლენა, VM გამოვლენა, ძილის გაქცევა)
  8. მონაცემთა ექსფილტრაცია (დიდი გამავალი გადარიცხვები, DNS ტუნელირება)
  9. გვერდითი მოძრაობა (SSH, SMB, WMI აქტივობა)
  10. დაცვის გვერდის ავლა (ჟურნალის წაშლა, დროის ნიშნის გაყალბება, ბინარის შეფუთვა)
Terminal window
# ერთი ფაილის სკანირება
sd scan /path/to/file
# დირექტორიის რეკურსიული სკანირება
sd scan /home --recursive
# სკანირება ავტო-კარანტინით
sd scan /tmp --auto-quarantine
# JSON გამოსავალი პროგრამული გამოყენებისთვის
sd scan /path --json
# რეალურ დროში დირექტორიის მონიტორინგი
sd monitor /home /tmp
# ხელმოწერების მონაცემთა ბაზების განახლება
sd update
# მორგებული ჰეშების იმპორტი
sd import my_hashes.txt
# მონაცემთა ბაზისა და ძრავის ინფორმაციის ჩვენება
sd info

ვებჰუკის შეტყობინებები

Section titled “ვებჰუკის შეტყობინებები”

PRX-SD აგზავნის გამოვლენის შეტყობინებებს ვებჰუკით გარე სერვისებზე:

ფორმატიბოლო წერტილი
Slackშემავალი ვებჰუკის URL
Discordვებჰუკის URL
ზოგადი JSONნებისმიერი HTTP ბოლო წერტილი

შეტყობინებების პეილოადი მოიცავს: ფაილის გზას, SHA-256 ჰეშს, თანხვედრილ წესებს/ხელმოწერებს, ქულას, ვერდიქტს და მიღებულ გამოსწორების ქმედებას.

ხელმოწერების განახლებები

Section titled “ხელმოწერების განახლებები”
Terminal window
# სტანდარტული განახლება (ჰეშები + YARA წესები)
./tools/update-signatures.sh
# სრული განახლება VirusShare 20M+ MD5 ჰეშების ჩათვლით
./tools/update-signatures.sh --full
# მხოლოდ ჰეშების მონაცემთა ბაზების განახლება
./tools/update-signatures.sh --source hashes
# მხოლოდ YARA წესების განახლება
./tools/update-signatures.sh --source yara