
फ़ाइल कार्विंग उपयोगिता जो कॉन्फ़िगर करने योग्य नियमों के माध्यम से हेडर, फुटर और आंतरिक संरचनाओं का मिलान करके डिस्क इमेज और रॉ ड्राइव से हटाई गई फ़ाइलों को पुनर्प्राप्त करती है।
Foremost एक Linux प्रोग्राम है जो फाइलों को उनके हेडर और फुटर के आधार पर पुनर्प्राप्त करता है। Foremost इमेज फाइलों पर काम कर सकता है, जैसे कि dd, Safeback, Encase आदि द्वारा उत्पन्न, या सीधे ड्राइव पर। हेडर और फुटर एक कॉन्फ़िगरेशन फ़ाइल द्वारा निर्दिष्ट किए जाते हैं, इसलिए आप चुन सकते हैं कि आप कौन से हेडर खोजना चाहते हैं।
Foremost चलाने के लिए, आपको यह करना होगा:
यहाँ बताया गया है कि यह कैसे करें:
LINUX: $ tar zxvf foremost-xx.tar.gz $ cd foremost-xx $ make $ make install
BSD: $ tar zxvf foremost-xx.tar.gz $ cd foremost-xx $ make unix $ make install
SOLARIS: $ tar zxvf foremost-xx.tar.gz $ cd foremost-xx $ make solaris $ make install
OSX: $ tar zxvf foremost-xx.tar.gz $ cd foremost-xx $ make mac $ make macinstall
ग्लिबक (glibc) के पुराने संस्करणों (2.2.0 से पहले) वाले सिस्टम पर, आपको ftello और fseeko के परिभाषित न होने के बारे में कुछ हानिरहित चेतावनियाँ मिलेंगी। आप इन्हें अनदेखा कर सकते हैं।
यदि आपको कभी भी अपने सिस्टम से foremost को हटाने की आवश्यकता हो, तो आप ऐसा कर सकते हैं:
$ make uninstall
कमांड लाइन तर्कों का विवरण man पेज में पाया जा सकता है। इसे देखने के लिए:
$ man foremost
कॉन्फ़िगरेशन फ़ाइल का उपयोग यह नियंत्रित करने के लिए किया जाता है कि foremost किस प्रकार की फाइलों की खोज करता है। इस वितरण के साथ एक नमूना कॉन्फ़िगरेशन फ़ाइल, foremost.conf, शामिल है। प्रत्येक फ़ाइल प्रकार के लिए, कॉन्फ़िगरेशन फ़ाइल फ़ाइल का एक्सटेंशन, हेडर और फुटर केस-सेंसिटिव हैं या नहीं, अधिकतम फ़ाइल आकार, और फ़ाइल का हेडर और फुटर का वर्णन करती है। फुटर फ़ील्ड वैकल्पिक है, लेकिन हेडर, आकार, केस सेंसिटिविटी और एक्सटेंशन वैकल्पिक नहीं हैं!
कोई भी पंक्ति जो '#' से शुरू होती है उसे टिप्पणी माना जाता है और अनदेखा किया जाता है। इस प्रकार, किसी फ़ाइल प्रकार को छोड़ने के लिए उस पंक्ति की शुरुआत में '#' लगा दें।
हेडर और फुटर उपयोग से पहले डिकोड किए जाते हैं। हेक्साडेसिमल में मान निर्दिष्ट करने के लिए \x[0-f][0-f] का उपयोग करें, और ऑक्टल के लिए [0-7][0-7][0-7] का उपयोग करें। स्पेस को \s द्वारा दर्शाया जा सकता है। उदाहरण: "\x4F\123\I\sCCI" डिकोड होकर "OSI CCI" बनता है।
किसी भी एकल वर्ण (जिसे wildcard भी कहा जाता है) से मेल खाने के लिए '?' का उपयोग करें। यदि आपको '?' वर्ण की खोज करने की आवश्यकता है, तो आपको 'wildcard' पंक्ति और कॉन्फ़िगरेशन फ़ाइल में पुराने wildcard वर्ण की हर घटना को बदलना होगा। उन हेक्स और ऑक्टल मानों को मत भूलें! '?' 0x3f और \063 के बराबर है।
यहाँ हेडर और फुटर का एक नमूना सेट है:
gif y 155000 \x47\x49\x46\x38\x37\x61 \x00\x3b
gif y 155000 \x47\x49\x46\x38\x39\x61 \x00\x00\x3b
jpg y 200000 \xff\xd8\xff \xff\xd9
नोट: विकल्प अतिरिक्त विकल्पों को निर्दिष्ट करने की एक विधि है। वर्तमान में निम्नलिखित विकल्प मौजूद हैं:
FORWARD: हेडर से फुटर तक (वैकल्पिक) अधिकतम-आकार तक खोजने के लिए निर्दिष्ट करें। REVERSE: फुटर से हेडर तक अधिकतम-आकार तक खोजने के लिए निर्दिष्ट करें। NEXT: हेडर से फुटर के ठीक आगे के डेटा तक खोजने के लिए निर्दिष्ट करें। यह आपको उस डेटा को निर्दिष्ट करने की अनुमति देता है जिसे आप जानते हैं कि 'NOT' आपके खोजे जा रहे डेटा में नहीं है और जिसे खोज को समाप्त कर देना चाहिए, अधिकतम-आकार तक।
कृपया सभी बग की रिपोर्ट nick dot mikus AT gmail d0t com पर करें। कृपया बग का विवरण, आपने इसे कैसे पाया, और अपनी संपर्क जानकारी शामिल करें।
Foremost को स्पेशल एजेंट Kris Kendall और स्पेशल एजेंट Jesse Kornblum ने मार्च 2001 से संयुक्त राज्य वायु सेना के विशेष जांच कार्यालय में लिखा था। यह प्रोग्राम आज जैसा है उसके लिए (किसी विशेष क्रम में नहीं): Rob Meekins, Dan Kalil, और Chet Maciag के बिना संभव नहीं होता। यह परियोजना CarvThis से प्रेरित थी, जिसे 1999 में डिफेंस कंप्यूटर फोरेंसिक लैब द्वारा लिखा गया था।
dd, Safeback, और Encase कॉपीराइट किए गए कार्य हैं और इन उपकरणों के संबंध में किसी भी प्रश्न को कॉपीराइट धारकों को निर्देशित किया जाना चाहिए। संयुक्त राज्य सरकार इन या किसी अन्य इमेजिंग टूल के उपयोग का समर्थन नहीं करती है।