📦 Binwalk - Firmware Analysis & File Carving Tool

🔍 Firmware Analysis 💾 File Carving 🕵️ Embedded Device Forensics

Category: 8️⃣ Forensics Tools


📝 Description

Binwalk एक शक्तिशाली फर्मवेयर एनालिसिस, फाइल कार्विंग, और एंबेडेड डिवाइस फोरेंसिक टूल है। यह बाइनरी फाइल्स (जैसे फर्मवेयर इमेज, राउटर डंप, IoT डिवाइस फर्मवेयर) के अंदर छिपी हुई फाइल्स और डेटा को निकाल सकता है। Binwalk फाइल सिग्नेचर (मैजिक बाइट्स) के आधार पर ZIP, TAR, GZIP, JPEG, PNG, ELF, और कई अन्य फाइल टाइप्स को पहचानता है और उन्हें एक्सट्रैक्ट करता है। यह IoT सिक्योरिटी, फर्मवेयर रिवर्स इंजीनियरिंग, और डाटा रिकवरी के लिए बहुत उपयोगी है।

विशेषता: Binwalk की सबसे बड़ी खासियत है इसकी फाइल सिग्नेचर डेटाबेस और ऑटोमेटेड कार्विंग। यह कुछ ही सेकंड में पूरी फाइल को स्कैन करके सभी एम्बेडेड फाइल्स को निकाल सकता है।

📦 Installation

Kali Linux (पहले से इंस्टॉल):

binwalk -h

Ubuntu/Debian:

sudo apt update
sudo apt install binwalk -y

GitHub से इंस्टॉल:

git clone https://github.com/ReFirmLabs/binwalk.git
cd binwalk
sudo python3 setup.py install

Python pip से:

pip3 install binwalk

💻 Common Commands (उदाहरण सहित)

📌 Binwalk का सबसे आम उपयोग फर्मवेयर इमेज स्कैन करना है:

🔹 1. फाइल स्कैन करना - एम्बेडेड फाइल्स की पहचान:

binwalk firmware.bin
👉 उदाहरण: binwalk router_firmware.bin से फाइल के अंदर छिपी ZIP, TAR, JPEG, ELF फाइल्स की पहचान करता है।

🔹 2. डिटेल्ड स्कैन (वर्बोस मोड):

binwalk -v firmware.bin
👉 उदाहरण: हर फाइल सिग्नेचर की डिटेल्ड जानकारी दिखाता है।

🔹 3. एम्बेडेड फाइल्स एक्सट्रैक्ट करना:

binwalk -e firmware.bin
👉 उदाहरण: सभी पहचानी गई फाइल्स को _firmware.bin.extracted फोल्डर में निकालता है।

🔹 4. मैट्रियोश्का (Recursive) एक्सट्रैक्शन:

binwalk -Me firmware.bin
👉 उदाहरण: निकाली गई फाइल्स को फिर से स्कैन करता है (जब तक कोई और फाइल न बचे)।

🔹 5. डेटा कार्विंग - सिर्फ डेटा निकालना:

binwalk -D 'png:png' firmware.bin
👉 उदाहरण: सिर्फ PNG फाइल्स निकालता है।

🔹 6. ऑफसेट स्पेसिफाई करके एक्सट्रैक्ट करना:

binwalk -e --dd='.*' firmware.bin --offset=0x1000
👉 उदाहरण: 0x1000 ऑफसेट से शुरू करके सभी फाइल्स निकालता है।

🔹 7. सिग्नेचर डेटाबेस देखना:

binwalk --signature
👉 उदाहरण: सभी सपोर्टेड फाइल सिग्नेचर की लिस्ट दिखाता है।

🔹 8. एंट्रॉपी (Entropy) एनालिसिस:

binwalk -E firmware.bin
👉 उदाहरण: फाइल की एंट्रॉपी ग्राफ दिखाता है (एन्क्रिप्टेड या कंप्रेस्ड डेटा की पहचान के लिए)।

🔹 9. आउटपुट को फाइल में सेव करना:

binwalk firmware.bin > scan_result.txt
👉 उदाहरण: स्कैन रिजल्ट को टेक्स्ट फाइल में सेव करता है।

🔹 10. सिर्फ स्पेसिफिक फाइल टाइप निकालना:

binwalk -D 'zip:zip:unzip' firmware.bin
👉 उदाहरण: सिर्फ ZIP फाइल्स निकालता है और उन्हें अनजिप करता है।

🎯 Binwalk के मुख्य फीचर्स:

🎯 Use Cases (उपयोग के तरीके)

⚙️ Key Features (मुख्य विशेषताएँ)

📌 Binwalk से फर्मवेयर एनालिसिस की पूरी प्रक्रिया:

# 1. फर्मवेयर स्कैन करें
binwalk firmware.bin

# 2. एंट्रॉपी चेक करें (एन्क्रिप्शन/कंप्रेशन)
binwalk -E firmware.bin

# 3. सभी फाइल्स एक्सट्रैक्ट करें
binwalk -Me firmware.bin

# 4. एक्सट्रैक्टेड फाइल्स एनालिसिस करें
cd _firmware.bin.extracted
ls -la
file *
strings squashfs-root/etc/passwd

📌 Binwalk के सिग्नेचर उदाहरण:

  • ZIP: PK (0x504B)
  • GZIP: 1F 8B
  • JPEG: FF D8 FF
  • PNG: 89 50 4E 47
  • ELF: 7F 45 4C 46
  • SquashFS: hsqs, sqsh
  • UBI: UBI#

📌 Binwalk vs Foremost:

  • Binwalk: फर्मवेयर और एम्बेडेड डिवाइस पर फोकस, एंट्रॉपी एनालिसिस, रिकर्सिव एक्सट्रैक्शन
  • Foremost: जनरल फाइल कार्विंग, सिंपल, फोरेंसिक डेटा रिकवरी
  • अनुशंसा: IoT/फर्मवेयर एनालिसिस के लिए Binwalk, डिस्क फोरेंसिक के लिए Foremost।

🔗 Official Resources

🔧 Related Tools (समान उपकरण)

📌 Binwalk के लिए सुझाव:

  • हमेशा -Me का उपयोग करें (Recursive Extraction)
  • एंट्रॉपी ग्राफ (-E) से एन्क्रिप्टेड या कंप्रेस्ड डेटा पहचानें
  • फर्मवेयर एनालिसिस से पहले binwalk -v से डिटेल्ड स्कैन करें
  • निकाली गई फाइल्स में strings और file कमांड का उपयोग करें
  • SquashFS, JFFS2 फाइल सिस्टम के लिए विशेष टूल्स की जरूरत हो सकती है

⚠️ Important Note (सावधानी)

Binwalk एक शक्तिशाली फर्मवेयर एनालिसिस टूल है। इसका उपयोग केवल उन्हीं फाइल्स पर करें जिनकी आपको अनुमति हो। बिना अनुमति के फर्मवेयर रिवर्स इंजीनियरिंग करना कॉपीराइट और कानूनी उल्लंघन हो सकता है। हमेशा अपने खुद के डिवाइस, ओपन-सोर्स फर्मवेयर, या कानूनी रूप से अधिकृत प्रोजेक्ट पर ही प्रैक्टिस करें। Binwalk का उपयोग सीखने और सुरक्षा ऑडिट के लिए करें, न कि अनधिकृत रिवर्स इंजीनियरिंग के लिए।