Ingyenes Python könyvtár nagy ZIP-archívumok létrehozásához és kezeléséhez
Egy erőteljes, nyílt forráskódú, nagyon gyors Python könyvtár, amely lehetővé teszi a Python fejlesztők számára, hogy betöltsenek, kinyerjenek és elemezzenek adatokat több mint 30 különböző archívum-, tömörítési és fájlrendszer-formátumból
Mi az Unblob könyvtár?
Az Unblob egy alapvető Python könyvtár és parancssori eszköz, amelyet a bináris blobok – fájlok, amelyek ismeretlen vagy saját tulajdonú formátumokban tartalmaznak adatot, és gyakran megtalálhatók firmware képekben, memória dumpokban, hálózati csomagokban vagy titkosított archívumokban – kinyerésének egyszerűsítésére és felgyorsítására terveztek. Eredetileg a ONEKEY fejlesztette és tartja karban, hogy saját termelés-elemző platformjukban használják, az Unblob szakértő módon kezeli ezen összetett fájlok feldolgozásának kihívását, több mint 30 különböző archívum-, tömörítési és fájlrendszer-formátum támogatásával. Hatékonyan kezeli a ZIP, TAR, GZIP, BZIP2, XZ, LZMA, SquashFS, CramFS, JFFS2, UBI/UBIFS és YAFFS2 formátumokat, rekurzívan kinyerve a tartalmat és kiemelve a nem azonosítható, még nyilvántartásba nem vett darabokat.
Az MIT licenc alatt ingyenesen használható Unblob egyaránt rendkívül hatékony és hihetetlenül sokoldalú. Villámgyors teljesítményt nyújt a többprocesszoros feldolgozás, a hatékony kód, a memória-mapped fájlok és a Hyperscan nagy teljesítményű egyezéskönyvtár kihasználásával. Az eszköz minimalizálja a hamis pozitív eredményeket és az átfedő darabokat azáltal, hogy a kipróbált szabályok és formátumszabványok alapján azonosítja a kezdő és befejező eltolásokat. Emellett az Unblob könnyen kezelhető API-val rendelkezik, amely lehetővé teszi a felhasználók számára, hogy gyorsan egyedi formátumkezelőket és kinyerőket írjanak, és támogatja a dinamikusan betöltött plugineket a magfunkciók kibővítéséhez. Ez az Unblob-ot elengedhetetlen eszközzé teszi mindazok számára, akiknek komplex, többrétegű bináris adatokat kell elemezniük, amelyek tömörítést, titkosítást vagy beágyazott fájlrendszereket tartalmaznak.
Az Unblob használatának megkezdése
Az Unblob telepítésének ajánlott módja a pypi.org használata. Kérjük, használja a következő parancsot a zökkenőmentes telepítéshez.
Az Unblob könyvtár telepítése a pypi-n keresztül
pip3 install unblob
Klónozza az unblob tárolót a GitHubról
git clone https://github.com/onekey-sec/unblob.git
Az is lehetséges, hogy manuálisan telepítsük; a legújabb kiadási fájlokat közvetlenül a GitHub tárolóból töltsük le.Felismert formátumok kinyerése Python könyvtárral
Az nyílt forráskódú Unblob könyvtár támogatást nyújt a különböző fájlformátumokból történő tartalom kinyeréséhez Python alkalmazásokon belül. A könyvtár több mint 30 archívum, tömörítési formátum és fájlrendszer támogatását tartalmazza. Kérjük, ne feledje, hogy a könyvtár minden támogatott formátummal való használatához minden kinyerőnek telepítve kell lennie. A felhasználók különféle beállításokkal testreszabhatják a könyvtár viselkedését, például megadhatják a kimeneti könyvtárat, a rekurzió mélységét, a részletességi szintet vagy a jelentés formátumát. A extract_chunk metódus fejlesztők által használható az egyes darabok tartalmának egy megadott kimeneti könyvtárba történő kinyerésére. Az alábbiakban egy mintakód részlet látható, amely bemutatja, hogyan használható a könyvtár a tartalom kinyerésére egy kimeneti könyvtárba Python alkalmazásokon belül.
Hogyan lehet tartalmat kinyerni egy kimeneti könyvtárba Python könyvtár segítségével?
import unblob
# Scan a file for known formats
file_path = "some_file.bin"
chunks = unblob.scan_file(file_path)
# Extract each chunk to an output directory
output_dir = "some_dir"
for chunk in chunks:
unblob.extract_chunk(chunk, output_dir)
ELF fájl elemzés végrehajtása Python API-n keresztül
A nyílt forráskódú Unblob könyvtár megkönnyíti a szoftverfejlesztők számára az ELF fájlok felismerését és kinyerését ismeretlen bináris blobokból, valamint azok képességeinek és jellemzőinek azonosítását. A könyvtár támogatja a 32 bites és 64 bites ELF fájlokat, valamint különböző architektúrákat, mint például x86, x86_64, ARM, MIPS és PowerPC. Emellett képes kezelni az ELF fájlok különféle típusait, mint a végrehajthatók, megosztott könyvtárak, objektumfájlok, core dumpok és kernel modulok.
Metaadatok kinyerése Python API-val
A nyílt forráskódú Unblob könyvtár támogatja a metaadatfájl generálását Python alkalmazásaikban. A felhasználók a `--report` kapcsolót használhatják, amikor parancssori eszközként futtatják az Unblobot. Ez a kapcsoló egy JSON fájlt hoz létre, amely információkat tartalmaz a kinyert fájlokról, például azok útvonaláról, méretéről, típusáról, mágikus számáról, entrópiájáról és a darabok részleteiről. A felhasználók megadhatják a JSON fájl nevét és helyét a `--report` kapcsoló argumentumaként. Ezután a felhasználók bármely JSON megjelenítő vagy elemző segítségével megtekinthetik vagy elemezhetik a `metadata.json` fájlt.