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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
LIEF — क्रॉस-प्लेटफ़ॉर्म लाइब्रेरी जो ELF, PE, और MachO एक्ज़ीक्यूटेबल फ़ॉर्मेट को पार्स, संशोधित और एब्सट्रैक्ट करती है। C++, Python, और Rust APIs को disassembler, assembler, और debug info सुविधाओं के साथ समर्थन करती है। | Kitploit
उपकरण/GitHubGitHub/lief-project/lief
एंड्रॉइड सुरक्षास्थैतिक विश्लेषणएन्क्रिप्शन/डिक्रिप्शन उपकरणआईओएस सुरक्षारिवर्स इंजीनियरिंगडीबगर्समालवेयर विश्लेषणबाइनरी विश्लेषणलर्निंग और शिक्षाफर्मवेयर विश्लेषण
GitHublief-project/lief

LIEF

5.5k7461 दिन पहलेKitploit द्वारा समीक्षित

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

सभी देखें →

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

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

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

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

क्रॉस-प्लेटफ़ॉर्म लाइब्रेरी जो ELF, PE, और MachO एक्ज़ीक्यूटेबल फ़ॉर्मेट को पार्स, संशोधित और एब्सट्रैक्ट करती है। C++, Python, और Rust APIs को disassembler, assembler, और debug info सुविधाओं के साथ समर्थन करती है।

रिपॉजिटरी देखेंवेबसाइट



ब्लॉग • दस्तावेज़ीकरण • परिचय


परिचय

इस परियोजना का उद्देश्य ELF, PE और MachO प्रारूपों को पार्स करने, संशोधित करने और सारांशित करने के लिए एक क्रॉस-प्लेटफ़ॉर्म लाइब्रेरी प्रदान करना है।

मुख्य विशेषताएँ:

  • पार्सिंग: LIEF ELF, PE, MachO, COFF, OAT, DEX, VDEX, ART को पार्स कर सकता है और उनके आंतरिक भागों तक पहुँचने के लिए एक उपयोगकर्ता-अनुकूल API प्रदान करता है।
  • संशोधन: LIEF का उपयोग इन प्रारूपों के कुछ भागों (एक सेक्शन जोड़ना, किसी प्रतीक का नाम बदलना, ...) को संशोधित करने के लिए किया जा सकता है।
  • सारांशीकरण: तीनों प्रारूपों में सेक्शन, प्रतीक, प्रवेश बिंदु जैसी सामान्य विशेषताएँ हैं; LIEF उन्हें एकीकृत करता है।
  • API: आप LIEF का उपयोग C++, Python, Rust, C और Node.js (अनौपचारिक, AI-निर्मित) के माध्यम से कर सकते हैं।

विस्तारित विशेषताएँ:

  • रनटाइम
  • DWARF/PDB समर्थन
  • Objective-C मेटाडेटा
  • Dylib शेयर्ड कैश - Dylib निकालने के समर्थन के साथ
  • डिस्सेम्बलर: AArch64, x86/x86-64, ARM, RISC-V, Mips, PowerPC, eBPF
  • असेंबलर: AArch64, x86/x86-64, RISC-V

प्लगइन्स:

  • Ghidra
  • BinaryNinja

प्रायोजक



सामग्री

  • परिचय
  • डाउनलोड / स्थापना
  • आरंभ करना
  • ब्लॉग
  • दस्तावेज़ीकरण
    • Rust
    • Sphinx
    • Doxygen
    • ट्यूटोरियल:
      • प्रारूपों को पार्स करें और हेरफेर करें
      • ELF प्रतीकों के साथ खेलें
      • PE संसाधन
      • ELF निष्पादन योग्य को लाइब्रेरी में बदलना
      • गैर-रूटेड डिवाइस पर Frida का उपयोग कैसे करें
      • Android प्रारूप
      • Mach-O संशोधन
      • ELF कोरडंप
      • PE Authenticode
  • संपर्क
  • परिचय
    • लेखक
    • लाइसेंस
    • Bibtex

डाउनलोड / स्थापना

C++

root@kitploit:~
find_package(LIEF REQUIRED)
target_link_libraries(my-project LIEF::LIEF)

Rust

root@kitploit:~
[package]
name    = "my-awesome-project"
version = "0.0.1"
edition = "2024"

[dependencies]
lief = "1.0.0"

Homebrew

root@kitploit:~
brew install lief

Python

नवीनतम संस्करण (रिलीज़) स्थापित करने के लिए:

root@kitploit:~
pip install lief

नाइटली बिल्ड स्थापित करने के लिए:

root@kitploit:~
pip install [--user] --force-reinstall --index-url https://lief.s3-website.fr-par.scw.cloud/latest lief==2.0.0.dev0

पैकेज

  • LIEF विस्तारित: https://extended.lief.re (GitHub OAuth)
  • नाइटली:
    • SDK: https://lief.s3-website.fr-par.scw.cloud/latest/sdk
    • Python व्हील्स: https://lief.s3-website.fr-par.scw.cloud/latest/lief
  • v1.0.0: https://github.com/lief-project/LIEF/releases/tag/1.0.0

यहाँ LIEF स्थापित या एकीकृत करने के लिए मार्गदर्शिकाएँ दी गई हैं:

  • पायथन
  • विज़ुअल स्टूडियो
  • XCode
  • CMake

आरंभ करना

Python

root@kitploit:~
import lief

# ELF
binary = lief.parse("/usr/bin/ls")
for section in binary.sections:
    print(section.name, section.virtual_address)

# PE
binary = lief.parse(r"C:\Windows\explorer.exe")
if (rheader := binary.rich_header) is not None:
    print(rheader.key)

# Mach-O
binary = lief.parse("/usr/bin/ls")
if (fixups := binary.dyld_chained_fixups) is not None:
    print(fixups)

Rust

root@kitploit:~
use lief::Binary;
use lief::pe::debug::Entries::CodeViewPDB;

if let Some(Binary::PE(pe)) = Binary::parse(path.as_str()) {
    for entry in pe.debug() {
        if let CodeViewPDB(pdb_view) = entry {
            println!("{}", pdb_view.filename());
        }
    }
}

C++

root@kitploit:~
#include <iostream>
#include <LIEF/LIEF.hpp>

int main(int argc, char** argv) {
  // ELF
  if (std::unique_ptr<const LIEF::ELF::Binary> elf = LIEF::ELF::Parser::parse("/bin/ls")) {
    for (const LIEF::ELF::Section& section : elf->sections()) {
      std::cout << section.name() << ' ' << section.virtual_address() << '\n';
    }
  }

  // PE
  if (std::unique_ptr<const LIEF::PE::Binary> pe = LIEF::PE::Parser::parse("C:\\Windows\\explorer.exe")) {
    if (const LIEF::PE::RichHeader* rheader = pe->rich_header()) {
      std::cout << rheader->key() << '\n';
    }
  }

  // Mach-O
  if (std::unique_ptr<LIEF::MachO::FatBinary> macho = LIEF::MachO::Parser::parse("/bin/ls")) {
    for (const LIEF::MachO::Binary& bin : *macho) {
      if (const LIEF::MachO::DyldChainedFixups* fixups = bin.dyld_chained_fixups()) {
        std::cout << *fixups << '\n';
      }
    }
  }

  return 0;
}

दस्तावेज़ीकरण

  • मुख्य दस्तावेज़ीकरण
  • Doxygen
  • Rust

संपर्क

  • मेल: contact at lief re
  • Discord: LIEF

परिचय

लेखक

Romain Thomas (@rh0main) - पूर्व में Quarkslab में

लाइसेंस

Apache 2.0.

Bibtex

root@kitploit:~
@MISC {LIEF,
  author       = "Romain Thomas",
  title        = "LIEF - Library to Instrument Executable Formats",
  howpublished = "https://lief.quarkslab.com/",
  month        = "apr",
  year         = "2017"
}
टूल डाउनलोड करें