angr.angrdb.serializers¶
- class angr.angrdb.serializers.KnowledgeBaseSerializer
Bases:
objectSerialize/unserialize a KnowledgeBase object.
- static dump(session, kb)
- Parameters:
session – The database session object.
kb (
KnowledgeBase) – The KnowledgeBase instance to serialize.
- Returns:
None
- static load(session, project, name)
- Parameters:
session
- Returns:
- class angr.angrdb.serializers.LoaderSerializer
Bases:
objectSerialize/unserialize a CLE Loader object into/from an angr DB.
Corner cases:
For certain backends (e.g., CART), we do not store the data of the main object. angr will unpack the CART file again after loading the database.
- NO_MAINBIN_BACKENDS = [<class 'cle.backends.cartfile.CARTFile'>]¶
- LOAD_ARG_BLACKLIST = {'is_main_bin', 'loader'}¶
- backend2name = {<class 'cle.backends.blob.Blob'>: 'blob', <class 'cle.backends.cartfile.CARTFile'>: 'cart', <class 'cle.backends.cgc.backedcgc.BackedCGC'>: 'backedcgc', <class 'cle.backends.cgc.cgc.CGC'>: 'cgc', <class 'cle.backends.coff.Coff'>: 'COFF', <class 'cle.backends.elf.elf.ELF'>: 'elf', <class 'cle.backends.elf.elfcore.ELFCore'>: 'elfcore', <class 'cle.backends.ihex.Hex'>: 'hex', <class 'cle.backends.java.apk.Apk'>: 'apk', <class 'cle.backends.java.jar.Jar'>: 'jar', <class 'cle.backends.macho.macho.MachO'>: 'mach-o', <class 'cle.backends.minidump.Minidump'>: 'minidump', <class 'cle.backends.named_region.NamedRegion'>: 'named_region', <class 'cle.backends.pe.pe.PE'>: 'pe', <class 'cle.backends.srec.SRec'>: 'srec', <class 'cle.backends.static_archive.StaticArchive'>: 'AR', <class 'cle.backends.te.TE'>: 'te', <class 'cle.backends.uefi_firmware.UefiFirmware'>: 'uefi', <class 'cle.backends.universal2.Universal2'>: 'Universal2', <class 'cle.backends.xbe.XBE'>: 'xbe'}¶
- static dump(session, loader)
- static load(session)
Submodules