.. | ||
ext.md | ||
file-data-carving-recovery-tools.md | ||
file-data-carving-tools.md | ||
ntfs.md | ||
README.md |
Partitions/File Systems/Carving
Partitions/File Systems/Carving
☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥
- क्या आप किसी साइबर सुरक्षा कंपनी में काम करते हैं? क्या आप चाहते हैं कि आपकी कंपनी HackTricks में विज्ञापित हो? या क्या आप PEASS के नवीनतम संस्करण या HackTricks को PDF में डाउनलोड करने की इच्छा रखते हैं? सदस्यता योजनाएं की जांच करें!
- खोजें The PEASS Family, हमारा विशेष संग्रह NFTs
- प्राप्त करें आधिकारिक PEASS & HackTricks swag
- शामिल हों 💬 Discord समूह या टेलीग्राम समूह में या मुझे Twitter 🐦@carlospolopm** का** अनुसरण करें।**
- अपने हैकिंग ट्रिक्स साझा करें और PRs सबमिट करें hacktricks repo और hacktricks-cloud repo को
Partitions
एक हार्ड ड्राइव या एक SSD डिस्क में अलग-अलग पार्टीशन हो सकते हैं जिनका उद्देश्य डेटा को भौतिक रूप से अलग करना होता है।
डिस्क की न्यूनतम इकाई सेक्टर होती है (सामान्यतः 512B के संयोजन से बनी होती है)। इसलिए, प्रत्येक पार्टीशन का आकार इस आकार के गुणक का होना चाहिए।
MBR (मास्टर बूट रिकॉर्ड)
यह डिस्क के पहले सेक्टर में 446B के बूट कोड के बाद आवंटित होता है। यह सेक्टर PC को बताने के लिए महत्वपूर्ण होता है कि कौन सा पार्टीशन कहां से माउंट किया जाना चाहिए।
इसमें 4 पार्टीशन तक की अनुमति होती है (अधिकांशतः केवल 1 एक्टिव/बूटेबल हो सकता है)। हालांकि, अगर आपको अधिक पार्टीशन की आवश्यकता होती है तो आप विस्तारित पार्टीशन का उपयोग कर सकते हैं। इस पहले सेक्टर का अंतिम बाइट बूट रिकॉर्ड सिग्नेचर 0x55AA होता है। केवल एक पार्टीशन को एक्टिव मार्क किया जा सकता है।
MBR में अधिकतम 2.2TB की अनुमति होती है।
MBR के बाइट 440 से 443 तक आप Windows Disk Signature पा सकते हैं (यदि Windows का उपयोग किया जाता है)। हार्ड डिस्क का लॉजिकल ड्राइव पत्र Windows Disk Signature पर निर्भर करता है। इस सिग्नेचर को बदलने से Windows के बूट होने से रोका जा सकता है (उपकरण: Active Disk Editor)।
प्रारूप
Offset | Length | आइटम |
---|---|---|
0 (0x00) | 446(0x1BE) | बूट कोड |
446 (0x1BE) | 16 (0x10) | पहला पार्टीशन |
462 (0x1CE) | 16 (0x10) | दूसरा पार्टीशन |
478 (0x1DE) | 16 (0x10) | तीसरा पार्टीशन |
494 (0x1EE) | 16 (0x10) | चौथा पार्टीशन |
510 (0x1FE) | 2 (0x2) | सिग्नेचर 0x55 0xAA |
पार्टीशन रिकॉर्ड प्रारूप
Offset | Length | आइटम |
---|---|---|
0 (0x00) | 1 (0x01) | एक्टिव फ्लैग (0x80 = बूटेबल) |
1 (0x01) | 1 (0x01) | प्रारंभ हेड |
2 (0x02) | 1 (0x01) | प्रारंभ सेक्टर (बिट्स 0-5); सिलेंडर के ऊपरी बिट्स (6- 7) |
3 (0x03) | 1 (0x01) | प्रारंभ सिलेंडर के निचले 8 बिट्स |
4 (0x04) | 1 (0x01) | पार्टीशन प्रकार कोड (0x83 = लिनक्स) |
5 (0x05) | 1 (0x01) | अंतिम हेड |
6 (0x06) | 1 (0x01) | अंतिम सेक्टर (बिट्स 0 |
#Mount MBR in Linux
mount -o ro,loop,offset=<Bytes>
#63x512 = 32256Bytes
mount -o ro,loop,offset=32256,noatime /path/to/image.dd /media/part/
LBA (लॉजिकल ब्लॉक पता)
लॉजिकल ब्लॉक पता (LBA) कंप्यूटर स्टोरेज उपकरणों पर संग्रहित डेटा के ब्लॉक के स्थान को निर्दिष्ट करने के लिए एक सामान्य योजना है, आमतौर पर हार्ड डिस्क ड्राइव की तरह के सेकेंडरी स्टोरेज सिस्टमों के लिए उपयोग की जाती है। LBA एक विशेष रूप से सरल रैखिक पता योजना है; ब्लॉकों को एक पूर्णांक सूचकांक द्वारा स्थानित किया जाता है, पहला ब्लॉक LBA 0 होता है, दूसरा LBA 1 होता है, और इसी प्रकार।
GPT (GUID पार्टीशन टेबल)
इसे ग्लोबली यूनिक आईडेंटिफायर के कारण GUID पार्टीशन टेबल कहा जाता है।
MBR की तरह यह सेक्टर 0 में शुरू होता है। MBR में 32 बिट होते हैं जबकि GPT में 64 बिट का उपयोग होता है।
GPT Windows में 128 पार्टीशन तक और 9.4ZB तक की अनुमति देता है।
इसके अलावा, पार्टीशनों के पास 36 अक्षरों का यूनिकोड नाम हो सकता है।
MBR डिस्क पर, पार्टीशनिंग और बूट डेटा एक ही स्थान पर संग्रहीत होते हैं। यदि यह डेटा अधिलेखित या क्षतिग्रस्त हो जाता है, तो आप मुसीबत में हो जाते हैं। इसके विपरीत, GPT डिस्क पर इस डेटा के कई प्रतिलिपियाँ संग्रहीत होती हैं, इसलिए यह बहुत अधिक मजबूत होता है और यदि डेटा क्षतिग्रस्त हो जाता है तो इसे पुनर्प्राप्त कर सकता है।
GPT भी साइक्लिक रेडंडेंसी चेक (CRC) मानों को संग्रहीत करता है ताकि यह जांच सके कि उसका डेटा संपूर्ण है। यदि डेटा क्षतिग्रस्त हो जाता है, तो GPT समस्या को नोटिस कर सकता है और डिस्क पर दूसरे स्थान से क्षतिग्रस्त डेटा को पुनर्प्राप्त करने का प्रयास कर सकता है।
प्रोटेक्टिव MBR (LBA0)
पीछे की ओर संगतता के लिए, पुराने MBR पर अभी भी जगह GPT विनिर्देश में संरक्षित है, लेकिन अब इसे एक ऐसे तरीके से उपयोग किया जाता है जिससे MBR आधारित डिस्क उपयोगियों को GPT डिस्क को गलत रूप से पहचानने और शायद अधिलेखित करने से रोका जा सकता है। इसे प्रोटेक्टिव MBR के रूप में जाना जाता है।
हाइब्रिड MBR (LBA 0 + GPT)
जो ऑपरेटिंग सिस्टम GPT आधारित बूट को BIOS के माध्यम से समर्थन करते हैं, उनमें पहला सेक्टर बूटलोडर कोड को संग्रहीत करने के लिए उपयोग किया जा सकता है, लेकिन संशोधित करके GPT पार्टीशन को पहचानने के लिए। MBR में बूटलोडर 512 बाइट का सेक्टर आकार का नहीं मानना चाहिए।
पार्टीशन टेबल हैडर (LBA 1)
पार्टीशन टेबल हैडर डिस्क पर उपयोगी ब्लॉकों को परिभाषित करता है। यह यहां बने पार्टीशन प्रविष्टियों की संख्या और आकार को भी परिभाषित करता है (टेबल में 80 और 84 के ऑफसेट)।
ऑफसेट | लंबाई | सामग्री |
---|---|---|
0 (0x00) | 8 बाइट | हस्ताक्षर ("EFI PART", 45h 46h 49h 20h 50h 41h 52h 54h या 0x5452415020494645ULL लिटिल-एंडियन मशीनों पर) |
8 (0x08) | 4 बाइट | UEFI 2.8 के लिए संशोधन 1.0 (00h 00h 01h 00h) |
12 (0x0C) | 4 बाइट | लिटिल-एंडियन में हेडर का आकार (बाइट में, आमतौर पर 5Ch 00h 00h 00h या 92 बाइट) |
16 (0x10) | 4 बाइट | हेडर का CRC32 (ऑफसेट +0 से हेडर के आकार तक) लिटिल-एंडियन में, इस फ |
फ़ाइल सिस्टम
Windows फ़ाइल सिस्टम सूची
- FAT12/16: MSDOS, WIN95/98/NT/200
- FAT32: 95/2000/XP/2003/VISTA/7/8/10
- ExFAT: 2008/2012/2016/VISTA/7/8/10
- NTFS: XP/2003/2008/2012/VISTA/7/8/10
- ReFS: 2012/2016
FAT
FAT (File Allocation Table) फ़ाइल सिस्टम का नाम इसके संगठन के तरीके, फ़ाइल आवंटन टेबल के लिए है, जो वॉल्यूम की शुरुआत में स्थित होता है। वॉल्यूम की सुरक्षा के लिए, टेबल के दो कॉपियां रखी जाती हैं, यदि एक कॉपी क्षतिग्रस्त हो जाती है। साथ ही, फ़ाइल आवंटन टेबल और रूट फ़ोल्डर को एक निश्चित स्थान में संग्रहीत किया जाना चाहिए, ताकि सिस्टम को शुरू करने के लिए आवश्यक फ़ाइलें सही ढंग से ढूंढ़ी जा सकें।
इस फ़ाइल सिस्टम द्वारा उपयोग किए जाने वाले न्यूनतम स्थान इकाई को क्लस्टर कहा जाता है, जो आमतौर पर 512B (जिसमें कई सेक्टर होते हैं) से मिलकर बनता है।
पहले FAT12 में 12-बिट मानों के क्लस्टर पते होते थे जिनमें तकरीबन 4078 क्लस्टर थे; यह UNIX के साथ 4084 क्लस्टर तक की अनुमति देता था। अधिक दक्ष FAT16 में 16-बिट क्लस्टर पता होता है, जिससे प्रति वॉल्यूम तक कुल 65,517 क्लस्टर की अनुमति होती है। FAT32 32-बिट क्लस्टर पता का उपयोग करता है, जिससे प्रति वॉल्यूम तक कुल 268,435,456 क्लस्टर की अनुमति होती है।
FAT द्वारा अनुमति दी जाने वाली अधिकतम फ़ाइल आकार 4GB (एक बाइट कम) है क्योंकि फ़ाइल सिस्टम बाइट में फ़ाइल आकार संग्रहीत करने के लिए एक 32-बिट फ़ील्ड का उपयोग करता है, और 2^32 बाइट = 4 GiB होते हैं। यह FAT12, FAT16 और FAT32 के लिए होता है।
रूट निर्देशिका FAT12 और FAT16 के लिए एक निश्चित स्थान का दावा करती है (FAT32 में यह किसी अन्य फ़ोल्डर की तरह एक स्थान का दावा करती है)। प्रत्येक फ़ाइल/फ़ोल्डर प्रविष्टि में यह जानकारी होती है:
- फ़ाइल/फ़ोल्डर का नाम (8 अधिकतम वर्ण)
- गुण
- निर्माण की तारीख
- संशोधन की तारीख
- अंतिम पहुँच की तारीख
- फ़ाइल की प्रारंभिक क्लस्टर की FAT टेबल का पता
- आकार
जब एक फ़ाइल को FAT फ़ाइल सिस्टम का उपयोग करके "हटाया" जाता है, तो निर्देशिका प्रविष्टि लगभग अपरिवर्तित रहती है, केवल फ़ाइल के नाम के पहले वर्ण को (0xE5 में संशोधित) बदल दिया जाता है, "हटाई गई" फ़ाइल के नाम का अधिकांश हिस्सा, उसके समय छाप, फ़ाइल की लंबाई और — सबसे महत्वपूर्ण रूप से — डिस्क पर इसकी भौतिक स्थान। तथापि, फ़ाइल आवंटन टेबल से डिस्क क्लस्टर की सूची मिटा दी जाएगी, जिससे वे सेक्टर अन्य फ़ाइलें बनाई या संशोधित करने के लिए उपयोग के लिए उपलब्ध हो जाएंगे। FAT32 के मामले में, फ़ाइल प्रारंभ क्लस्टर मान के ऊपरी 16 बिट के लिए जिम्मेदार एक मिटा फ़ील्ड भी होता है।
NTFS
{% content-ref url="ntfs.md" %} ntfs.md {% endcontent-ref %}
EXT
Ext2 नोट जर्नलिंग वाले विभाजनों (विभाजन जो बहुत बदलते नहीं हैं) के लिए सबसे आम फ़ाइल सिस्टम है। Ext3/4 जर्नलिंग होते हैं और आमतौर पर बाकी विभाजनों के लिए उपयोग होते हैं।
{% content-ref url="ext.md" %} ext.md {% endcontent-ref %}
मेटाडेटा
कुछ फ़ाइलों में मेटाडेटा होता है। यह जानकारी फ़ाइल की सामग्री के बारे में होती है जो कभी-कभी एक विश्लेषक के लिए दिलचस्प हो सकती है क्योंकि फ़ाइल प्रकार के आधार प
संदर्भ
- https://en.wikipedia.org/wiki/GUID_Partition_Table
- http://ntfs.com/ntfs-permissions.htm
- https://www.osforensics.com/faqs-and-tutorials/how-to-scan-ntfs-i30-entries-deleted-files.html
- https://docs.microsoft.com/en-us/windows-server/storage/file-server/volume-shadow-copy-service
- iHackLabs Certified Digital Forensics Windows
☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥
- क्या आप साइबर सुरक्षा कंपनी में काम करते हैं? क्या आप अपनी कंपनी को HackTricks में विज्ञापित देखना चाहते हैं? या क्या आपको PEASS के नवीनतम संस्करण या HackTricks को PDF में डाउनलोड करने की आवश्यकता है? सदस्यता योजनाएं की जांच करें!
- खोजें The PEASS Family, हमारा विशेष NFT संग्रह
- प्राप्त करें आधिकारिक PEASS & HackTricks swag
- शामिल हों 💬 Discord समूह या टेलीग्राम समूह में या मुझे Twitter 🐦@carlospolopm** का** अनुसरण करें।**
- अपने हैकिंग ट्रिक्स को hacktricks रेपो और hacktricks-cloud रेपो में पीआर जमा करके अपना योगदान दें।