Skip to content
KitploitKITPLOIT
उपकरणब्लॉग
जमा करें
उपकरणब्लॉग
जमा करें

हैकिंग, पेनटेस्ट और साइबर सुरक्षा उपकरण आपके सुरक्षा शस्त्रागार के लिए!

Kitploit हैकिंग, साइबर सुरक्षा और पेंटेस्टिंग टूल्स की एक निर्देशिका है। कमजोरियों को खोजने, सिस्टम का विश्लेषण करने, परीक्षण को स्वचालित करने और अपनी सुरक्षा को मजबूत करने के लिए नवीनतम प्रोजेक्ट अपडेट खोजें।

··फ़ीड·संपर्क·गोपनीयता·© 2026 Kitploit

टूल निर्देशिका

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
uefi-firmware-parser — BIOS/Intel ME/UEFI फर्मवेयर से संबंधित संरचनाओं को पार्स करें: Volumes, FileSystems, Files, आदि | Kitploit
उपकरण/GitHubGitHub/theopolis/uefi-firmware-parser
एम्बेडेड सिस्टम सुरक्षारिवर्स इंजीनियरिंगहार्डवेयर सुरक्षाबाइनरी विश्लेषणफर्मवेयर विश्लेषण
GitHubtheopolis/uefi-firmware-parser

uefi-firmware-parser

BIOS/Intel ME/UEFI फर्मवेयर से संबंधित संरचनाओं को पार्स करें: Volumes, FileSystems, Files, आदि

रिपॉजिटरी देखें
91918743 महीने पहलेKitploit द्वारा समीक्षित

सबसे लोकप्रिय

सभी देखें →

हमारे समुदाय द्वारा सबसे अधिक उपयोग किए जाने वाले उपकरण खोजें।

सभी उपकरण खोजें

हमारे उपकरणों का संग्रह ब्राउज़ करें

सभी उपकरण देखें →
साझा करें

UEFI फर्मवेयर पार्सर

.. image:: https://travis-ci.org/theopolis/uefi-firmware-parser.svg?branch=master :target: https://travis-ci.org/theopolis/uefi-firmware-parser

UEFI फर्मवेयर पार्सर एक सरल मॉड्यूल और स्क्रिप्ट्स का सेट है जो UEFI फर्मवेयर वॉल्यूम को पार्स करने, निकालने और पुनर्निर्मित करने के लिए है। इसमें BIOS, OptionROM, Intel ME और अन्य प्रारूपों के पार्सिंग मॉड्यूल शामिल हैं। कृपया पार्सिंग ट्यूटोरियल के लिए उदाहरण स्क्रिप्ट का उपयोग करें।

स्थापना

यह मॉड्यूल PyPi पर uefi_firmware <https://pypi.python.org/pypi/uefi_firmware>_ के रूप में उपलब्ध है।

::

$ sudo pip install uefi_firmware

Github से स्थापित करने के लिए, इस रेपो को चेकआउट करें और उपयोग करें:

::

$ sudo python ./setup.py install

आवश्यकताएँ

  • Python विकास हेडर, सामान्यतः python-dev पैकेज में पाए जाते हैं।
  • संपीड़न/विसंपीड़न सुविधाएँ python हेडर और gcc का उपयोग करेंगी।

उपयोग

फर्मवेयर का पता लगाने या पार्स करने का सबसे सरल तरीका AutoParser क्लास के माध्यम से है।

::

import uefi_firmware with open('/path/to/firmware.rom', 'r') as fh: file_content = fh.read() parser = uefi_firmware.AutoParser(file_content) if parser.type() != 'unknown': firmware = parser.parse() firmware.showinfo()

uefi, pfs, me, और flash पैकेजों में कई क्लास हैं जो अपने कंस्ट्रक्टर में फ़ाइल सामग्री स्वीकार करते हैं। सभी मामलों में अमूर्त विधियाँ लागू की गई हैं:

  • process() पार्सिंग कार्य करता है और True या False लौटाता है
  • showinfo() संरचना के बारे में जानकारी का एक पदानुक्रम प्रिंट करता है
  • dump() पदानुक्रम में चलता है और प्रत्येक को एक फ़ाइल में लिखता है

स्क्रिप्ट्स

एक Python स्क्रिप्ट स्थापित की गई है uefi-firmware-parser

::

$ uefi-firmware-parser -h usage: uefi-firmware-parser [-h] [-b] [--superbrute] [-q] [-o OUTPUT] [-O] [-c] [-e] [-g GENERATE] [--test] file [file ...]

Parse, and optionally output, details and data on UEFI-related firmware.

positional arguments: file The file(s) to work on

optional arguments: -h, --help show this help message and exit -b, --brute The input is a blob and may contain FV headers. --superbrute The input is a blob and may contain any sort of firmware object -q, --quiet Do not show info. -o OUTPUT, --output OUTPUT Dump firmware objects to this folder. -O, --outputfolder Dump firmware objects to a folder based on filename ${FILENAME}_output/ -c, --echo Echo the filename before parsing or extracting. -e, --extract Extract all files/sections/volumes. -g GENERATE, --generate GENERATE Generate a FDF, implies extraction (volumes only) --test Test file parsing, output name/success.

किसी फ़ाइल या फ़ाइलों की निर्देशिका का परीक्षण करने के लिए:

::

$ uefi-firmware-parser --test ~/firmware/* ~/firmware/970E32_1.40: UEFIFirmwareVolume ~/firmware/CO5975P.BIO: EFICapsule ~/firmware/me-03.obj: IntelME ~/firmware/O990-A03.exe: None ~/firmware/O990-A03.exe.hdr: DellPFS

यदि आपको बड़ी संख्या में फर्मवेयर फ़ाइलों को पार्स और निकालने की आवश्यकता है, तो प्रति फ़ाइल स्वचालित रूप से आउटपुट फ़ोल्डर उत्पन्न करने के लिए -O विकल्प देखें। यदि शेल में आंतरिक भागों को पार्स और खोजना है, तो --echo विकल्प पार्सिंग से पहले इनपुट फ़ाइल नाम प्रिंट करेगा।

फर्मवेयर-प्रकार जाँचकर्ता यह तय करेगा कि फ़ाइल को सर्वोत्तम तरीके से कैसे पार्स किया जाए। यदि --test विकल्प प्रकार की पहचान करने में विफल रहता है, या इसे unknown कहता है, तो -b या --superbrute विकल्प का उपयोग करने का प्रयास करें। बाद वाला बाइट-दर-बाइट प्रकार जाँचकर्ता करता है। ::

$ uefi-firmware-parser --test ~/firmware/970E32_1.40 ~/firmware/970E32_1.40: unknown $ uefi-firmware-parser --superbrute ~/firmware/970E32_1.40 [...]

विशेषताएँ

  • UEFI फर्मवेयर वॉल्यूम, कैप्सूल, फाइलसिस्टम, फ़ाइलें, अनुभाग पार्सिंग

  • Intel PCH फ्लैश डिस्क्रिप्टर

  • Intel ME मॉड्यूल पार्सिंग (ME, TXE, आदि)

  • Dell PFS (HDR) अपडेट पार्सिंग

  • Tiano/EFI, और नेटिव LZMA (7z) [डी]संपीड़न

  • पूर्ण UEFI फर्मवेयर वॉल्यूम ऑब्जेक्ट पदानुक्रम प्रदर्शन

  • पार्स किए गए इनपुट वॉल्यूम का उपयोग करके फर्मवेयर डिस्क्रिप्टर [पुनः]उत्पादन

  • फर्मवेयर फ़ाइल अनुभाग इंजेक्शन

GUID इंजेक्शन

इंजेक्शन या GUID प्रतिस्थापन (अभी तक कोई जोड़/घटाव नहीं) UEFI फर्मवेयर फ़ाइल के भीतर अनुभागों पर, या फर्मवेयर फाइलसिस्टम के भीतर UEFI फर्मवेयर फ़ाइलों पर किया जा सकता है।

::

$ python ./scripts/fv_injector.py -h usage: fv_injector.py [-h] [-c] [-p] [-f] [--guid GUID] --injection INJECTION [-o OUTPUT] file

Search a file for UEFI firmware volumes, parse and output.

positional arguments: file The file to work on

optional arguments: -h, --help show this help message and exit -c, --capsule The input file is a firmware capsule. -p, --pfs The input file is a Dell PFS. -f, --ff Inject payload into firmware file. --guid GUID GUID to replace (inject). --injection INJECTION Pre-generated EFI file to inject. -o OUTPUT, --output OUTPUT Name of the output file.

नोट: किसी फर्मवेयर फ़ाइल में इंजेक्ट करते समय उपयोगकर्ता से पूछा जाएगा कि किस अनुभाग को बदलना है। फिलहाल यह अभी तक स्क्रिप्ट करने योग्य नहीं है।

IDA Python समर्थन

Snare के प्लगइन्स का उपयोग करके IDA Python में आयात करने के लिए अतिरिक्त GUID लेबल उत्पन्न करने की एक शामिल स्क्रिप्ट है। -g LABEL का उपयोग करके स्क्रिप्ट Python डिक्शनरी-स्वरूपित आउटपुट उत्पन्न करेगी। यह परियोजना स्वचालित रूप से लोकप्रिय विक्रेता GUIDs के साथ अद्यतित रहने का प्रयास करेगी।

::

$ python ./scripts/uefi_guids.py -h usage: uefi_guids.py [-h] [-c] [-b] [-d] [-g GENERATE] [-u] file

Output GUIDs for files, optionally write GUID structure file.

positional arguments: file The file to work on

optional arguments: -h, --help show this help message and exit -c, --capsule The input file is a firmware capsule, do not search. -b, --brute The input file is a blob, search for firmware volume headers. -d, --flash The input file is a flash descriptor. -g GENERATE, --generate GENERATE Generate a behemoth-style GUID output. -u, --unknowns When generating also print unknowns.

समर्थित विक्रेता

इस मॉड्यूल का निम्नलिखित विक्रेताओं के BIOS/UEFI/फर्मवेयर अपडेट पर परीक्षण किया गया है। प्रत्येक उत्पाद के लिए प्रत्येक अपडेट पार्स नहीं होगा, कुछ को वितरण अपडेट तंत्र (आमतौर पर एक PE) से पूर्व-डीकंप्रेसन या निष्कर्षण की आवश्यकता हो सकती है।

  • ASRock
  • Dell
  • Gigabyte
  • Intel
  • Lenovo
  • HP
  • MSI
  • VMware
  • Apple
  • Qualcomm
टूल डाउनलोड करें