
Linux/Android iOS/macOS के लिए फ़ाइलसिस्टम मॉनिटर टूल
लिनक्स, एंड्रॉइड, iOS और macOS के लिए निम्न-स्तरीय फ़ाइलसिस्टम मॉनिटरिंग उपयोगिता।
इसके लिए डिज़ाइन किया गया:
macOS पर अब आप इसे brew के माध्यम से इन कमांड के साथ स्थापित कर सकते हैं:
brew tap nowsecure/fsmon https://github.com/nowsecure/fsmon
brew install nowsecure/fsmon/fsmon
वैकल्पिक रूप से बस make चलाएँ या रिलीज़ पृष्ठ से बिल्ड चुनें।
make
make install PREFIX=/usr
यह उपकरण किसी विशिष्ट निर्देशिका से फ़ाइल सिस्टम ईवेंट प्राप्त करता है और उन्हें रंगीन प्रारूप या JSON में दिखाता है।
किसी विशिष्ट प्रोग्राम नाम या प्रक्रिया आईडी (PID) से होने वाले ईवेंट को फ़िल्टर करना संभव है।
$ ./fsmon -h
Usage: ./fsmon-macos [-Jjc] [-a sec] [-b dir] [-B name] [-p pid] [-P proc] [path]
-a [sec] N सेकंड के बाद निगरानी बंद करें (अलार्म)
-b [dir] फ़ाइलों का DIR फ़ोल्डर में बैकअप लें (प्रायोगिक)
-B [name] एक वैकल्पिक बैकएंड निर्दिष्ट करें
-c -p PID के चाइल्ड प्रक्रियाओं का अनुसरण करें
-f केवल फ़ाइलनाम दिखाएँ (कोई पथ नहीं)
-h यह सहायता दिखाएँ
-j JSON प्रारूप में आउटपुट
-J JSON स्ट्रीम प्रारूप में आउटपुट
-n रंगों का उपयोग न करें
-L सभी फ़ाइलमॉनिटर बैकएंड सूचीबद्ध करें
-p [pid] केवल इस pid से ईवेंट दिखाएँ
-P [proc] केवल प्रक्रिया नाम से ईवेंट
-v संस्करण दिखाएँ
[path] केवल इस पथ से ईवेंट लें
उदाहरण:
fsmon /data
fsmon -J / | jq -r .filename
fsmon -B fanotify /home
$
fsmon एक निम्न-स्तरीय, क्रॉस-प्लेटफ़ॉर्म फ़ाइलसिस्टम मॉनिटर है जो डेवलपर्स, फोरेंसिक विश्लेषकों और रिवर्स इंजीनियरों के लिए डिज़ाइन किया गया है। यह OS कर्नेल की ट्रेसिंग सुविधाओं या फ़ाइल अधिसूचना API में हुक करके काम करता है।
inotify के माध्यम से; fanotify हमेशा समर्थित नहीं हैinotify और fanotify के माध्यम सेkdebug, FSEvents, kqueue, और /dev/fsevents का उपयोग करकेरीयल-टाइम फ़ाइल निगरानी फ़ाइल निर्माण, विलोपन, संशोधन, विशेषता परिवर्तन और नामकरण जैसी फ़ाइल संचालन का वास्तविक समय में पता लगाती है और रिपोर्ट करती है।
मल्टी-बैकएंड समर्थन
स्वचालित रूप से सर्वोत्तम उपलब्ध निगरानी बैकएंड का चयन करता है या उपयोगकर्ताओं को चुनने की अनुमति देता है:
inotify, fanotify (Linux)fsevapi, kdebug, devfsev, kqueue (iOS / macOS)बैकएंड की सूची fsmon -L से देखी जा सकती है।
प्रक्रिया-स्तरीय अंतर्दृष्टि जहाँ संभव हो, फ़ाइल ईवेंट को प्रक्रिया नाम, PID और UID से जोड़ता है।
पुनरावर्ती निगरानी संपूर्ण निर्देशिका वृक्षों की पुनरावर्ती निगरानी करता है, गतिशील रूप से नई निर्देशिकाएँ जोड़ता है।
JSON आउटपुट प्रारूप
अन्य उपकरणों (जैसे jq, ELK, आदि) के साथ आसान एकीकरण के लिए JSON या JSON स्ट्रीम मोड में संरचित लॉगिंग का समर्थन करता है।
फ़ाइलनाम फ़िल्टरिंग और स्वरूपण वैकल्पिक रूप से पूर्ण पथ हटाता है, केवल फ़ाइलनाम दिखाता है, और ईवेंट प्रकार के आधार पर आउटपुट को रंगीन करता है।
ईवेंट को फ़िल्टर करें:
fsmon द्वारा पता लगाए जा सकने वाले ईवेंट के उदाहरण:
CREATE_FILE, DELETE, RENAMEOPEN, CLOSE, STAT_CHANGEDCHOWN, CHMOD, XATTR_MODIFIEDCONTENT_MODIFIED, EXCHANGE, FINDER_INFO_CHANGEDfsmon एक पोर्टेबल उपकरण है। यह iOS, OSX, Linux और Android (x86, arm, arm64, mips) पर काम करता है।
$ make
iOS/Android के लिए क्रॉसकंपाइलेशन बस make ios या make android चलाकर आसानी से किया जा सकता है:
$ make android NDK_ARCH=<ARCH> ANDROID_API=<API>
यह उपकरण NowSecure द्वारा विकसित मुफ्त सॉफ्टवेयर है और MIT लाइसेंस के तहत वितरित किया गया है।
आप Sergi Alvarez से ईमेल [email protected] के माध्यम से संपर्क कर सकते हैं।
-P)-p)-c)ईवेंट पर बैकअप
परिवर्तन पाए जाने पर प्रभावित फ़ाइलों को स्वचालित रूप से बैकअप निर्देशिका में कॉपी करता है (-b).
समय-चिह्नीकरण फोरेंसिक विश्लेषण की सुविधा के लिए प्रत्येक ईवेंट में समय-चिह्न जोड़ता है।
न्यूनतम निर्भरताएँ मानक लाइब्रेरीज़ के अलावा कोई रनटाइम निर्भरता के बिना पोर्टेबल C में लिखा गया।
सुचारू शटडाउन और सिग्नल हैंडलिंग
SIGINT, SIGTERM, और SIGALRM को संभालता है ताकि साफ निकास और समयबद्ध निगरानी सत्रों की अनुमति मिल सके।