ფაილ-მონიტორინგი
sd monitor ბრძანება დირექტორიებს ფაილ-სისტემის აქტივობაზე ადევნებს და ახლებ ან შეცვლილ ფაილებს რეალურ დროში სკანირებს. ეს მავნე პროგრამის disk-ზე დაჯდომისთანავე, შესრულებამდე, დაჭერის მთავარი გზაა.
გამოყენება
sd monitor [OPTIONS] [PATHS...]გზების მითითების გარეშე sd monitor მიმდინარე სამუშაო დირექტორიას ადევნებს.
პარამეტრები
| ნიშანი | მოკლე | ნაგულისხმევი | აღწერა |
|---|---|---|---|
--recursive | -r | true | დირექტორიების რეკურსიული ადევნება |
--block | -b | false | ფაილის შესრულების ბლოკვა სკანის დასრულებამდე (მხოლოდ Linux) |
--daemon | -d | false | ფონური დემონ-პროცესად გაშვება |
--pid-file | PID-ის მითითებულ ფაილში ჩაწერა (გულისხმობს --daemon-ს) | ||
--exclude | -e | გამოსართავი glob შაბლონები (განმეორებადი) | |
--log-file | ჟურნალის stderr-ის ნაცვლად ფაილში ჩაწერა | ||
--auto-quarantine | -q | false | გამოვლენილი საფრთხეების ავტომატური კარანტინიზება |
--events | ყველა | ასადევნებელი მოვლენების მძიმე-გამყოფი სია | |
--json | false | მოვლენების JSON ხაზებად გამოტანა |
პლატფორმის მექანიზმები
PRX-SD ყოველ პლატფორმაზე ხელმისაწვდომ ყველაზე ეფექტიანი ფაილ-სისტემის API-ს იყენებს:
| პლატფორმა | API | შესაძლებლობები |
|---|---|---|
| Linux | fanotify (ბირთვი 5.1+) | სისტემ-მასშტაბიანი მონიტორინგი, შესრულების პერმისიის კონტროლი, file descriptor passthrough |
| Linux (fallback) | inotify | დირექტორიაზე watches, blocking მხარდაჭერის გარეშე |
| macOS | FSEvents | დაბალ-latency რეკურსიული მონიტორინგი, ისტორიული მოვლენის ხელახლა-გაშვება |
| Windows | ReadDirectoryChangesW | დირექტორიაზე ასინქრონული მონიტორინგი completion ports-ით |
TIP
Linux-ზე sd monitor-ს fanotify-ის გამოყენებისთვის CAP_SYS_ADMIN (ან root) სჭირდება. მიუწვდომლობისას ის ავტომატურად გაფრთხილებით inotify-ზე გადადის.
მონიტორინგის მოვლენები
შემდეგი ფაილ-სისტემის მოვლენები სკანს ააქტიურებს:
| მოვლენა | აღწერა | პლატფორმები |
|---|---|---|
Create | ახალი ფაილი იქმნება | ყველა |
Modify | ფაილის შინაარსი იწერება | ყველა |
CloseWrite | ფაილი ჩაწერის შემდეგ იხურება (ნაწილობრივ სკანს ხელს უშლის) | Linux |
Delete | ფაილი იშლება | ყველა |
Rename | ფაილი გადარქმეული ან გადატანილია | ყველა |
Open | ფაილი წასაკითხად იხსნება | Linux (fanotify) |
Execute | ფაილი შესასრულებლად გამზადებულია | Linux (fanotify) |
სკანების გამომწვევი მოვლენების --events-ით ფილტრაცია:
# მხოლოდ ახალი ფაილებისა და ცვლილებების სკანირება
sd monitor --events Create,CloseWrite /homeBlocking რეჟიმი
Linux-ზე fanotify-ით --block FAN_OPEN_EXEC_PERM რეჟიმს ჩართავს. ამ რეჟიმში ბირთვი PRX-SD-ის განაჩენის დაბრუნებამდე პროცესის შესრულებას ჩერდება:
sudo sd monitor --block /usr/local/bin /tmpWARNING
Blocking რეჟიმი მონიტორინგის გზებში ყოველ პროგრამის გაშვებას latency-ს ამატებს. გამოიყენეთ მხოლოდ მაღალი-რისკის დირექტორიებზე, /tmp ან ჩამოტვირთვის საქაღალდეებზე, სისტემ-მასშტაბიანი გზების /usr ან /lib-ის ნაცვლად.
Blocking რეჟიმში საფრთხის გამოვლენისას:
- ბირთვის მიერ ფაილის გახსნა/შესრულება უარყოფილია
- მოვლენა
BLOCKEDგანაჩენით ჟურნალდება --auto-quarantine-ის დაყენებისას ფაილი კარანტინის ვოლტში გადადის
Daemon რეჟიმი
ტერმინალიდან მონიტორის გამოყოფისთვის --daemon-ის გამოყენება:
sd monitor --daemon --pid-file /var/run/sd-monitor.pid /home /tmp /var/wwwSIGTERM-ის გაგზავნით დემონის გაჩერება:
kill $(cat /var/run/sd-monitor.pid)ან daemon manager-ით გაშვებისას sd daemon stop-ის გამოყენება. დეტალებისთვის იხილეთ დემონი.
მაგალითები
# სახლის და tmp დირექტორიების ადევნება
sd monitor /home /tmp
# ავტომატური კარანტინიზებით ადევნება
sd monitor --auto-quarantine /home/downloads
# Linux-ზე blocking-რეჟიმი მგრძნობიარე დირექტორიაზე
sudo sd monitor --block --auto-quarantine /tmp
# Build არტეფაქტებისა და node_modules-ის გამორიცხვა
sd monitor -e "*.o" -e "node_modules/**" /home/dev/projects
# JSON ჟურნალებით დემონად გაშვება
sd monitor --daemon --json --log-file /var/log/sd-monitor.json /home
# კონკრეტული მოვლენებით მონიტორინგი
sd monitor --events Create,Modify,Rename /var/wwwJSON გამოტანა
--json-ის ჩართვისას ყოველი მოვლენა ერთ JSON ხაზს წარმოქმნის:
{
"timestamp": "2026-03-21T10:15:32.456Z",
"event": "CloseWrite",
"path": "/tmp/payload.exe",
"verdict": "malicious",
"threat": "Win.Trojan.Agent-123456",
"action": "quarantined",
"scan_ms": 12
}შემდეგი ნაბიჯები
- დემონი -- მონიტორინგის მართული ფონური სერვისად გაშვება
- გამოსასყიდი პროგრამის დაცვა -- სპეციალიზებული გამოსასყიდ-ქცევის გამოვლენა
- კარანტინის მართვა -- კარანტინიზებული ფაილების მართვა
- საფრთხეზე რეაგირება -- ავტომატური პასუხის პოლიტიკის კონფიგურაცია