There are no reviews yet. Be the first to send feedback to the community and the maintainers!
______________________.___ \_ _____/\_ _____/| | | __)_ | __) | | | \ | \ | | /_______ / \___ / |___| \/ \/ _________ .__ ____ __. .__ _____ / _____/_ _ _|__| ______ ______ | |/ _| ____ |__|/ ____\____ \_____ \\ \/ \/ / |/ ___// ___/ | < / \| \ __\/ __ \ / \\ /| |\___ \ \___ \ | | \| | \ || | \ ___/ /_______ / \/\_/ |__/____ >____ > |____|__ \___| /__||__| \___ > \/ \/ \/ \/ \/ \/ EFI Swiss Knife An IDA plugin to improve (U)EFI reversing Copyright (C) 2016, 2017 Pedro Vilaรงa (fG!) - [email protected] - https://reverse.put.as This is an IDA plugin to assist in (U)EFI binaries reversing. It is based on original work by Snare - https://github.com/snare/ida-efiutils Since I hate Python I did something new in C adding some extra features that I wanted. Tested with IDA 6.9/6.95 Mac OS X version. To compile for OS X use the Makefile or the XCode Project. You will need to edit the XCode project and set the paths to the SDK. (default is to /Applications/IDA Pro 6.95/idasdk695) You should edit config.h and modify the log and database paths. Copy EFISwissKnife.pmc64 to /Applications/IDA Pro 6.95/idaq.app/Contents/MacOS/plugins/ By default it only compiles the plugin to the 64 bit version of IDA. If you want the plugin to 32 bit version you need to edit the Xcode Project and change __EA64__=1 to 0. To call it from IDA use Shift+F2 and then 1) To display a menu with run options: RunPlugin("EFISwissKnife", 1); 2) To run with default options: RunPlugin("EFISwissKnife", 0); 3) To run in batch mode: RunPlugin("EFISwissKnife", 2); The plugin supports batch mode in case you want to mass analyse EFI binaries and gather some statistics about services usage. You probably want to update the GUIDs available at efi_guids.h. This code is targetting Mac OS X EFI binaries. It should work with other platforms UEFI binaries without problems or with minor modifications and updates. Only PE binaries supported, no TE binaries supported yet. That's it! Enjoy :-) fG! v1.0 - Initial version IDA BUGS: Another bug is related to the PLUGIN_UNL flag. It is used to "Unload the plugin immediately after calling 'run'.". If this option is set, it crashes the Windows version. Mac version seems do to fine with it.
MachOView
MachOView forkGdbinit
Gdbinit for OS X, iOS and others - x86, x86_64 and ARMlldbinit
A gdbinit clone for LLDBfirmware_vault
A repo for all Apple EFI firmware filesreadmem
A small OS X/iOS userland util to dump processes memoryonyx-the-black-cat
Kernel extension to disable anti-debug tricks and other useful XNU "features"rootfool
A small tool to dynamically disable and enable SIP in El CapitanHexRaysDeob
Hex-Rays OLLVM Deobfuscator and MicroCode Explorerhydra
A kernel extension and userland daemon to patch applicationsotool-ng
Some improvements to Apple's otool.gopher
A OS X crypto ransomware PoCmach_race
Exploit code for CVE-2016-1757efi_dxe_emulator
EFI DXE Emulator and Interactive Debuggerpydbg64
PyDBG64 - OS X PyDbg with 64 bits supportosx_boubou
A PoC Mach-O infector via library injectionmpress_dumper
MPRESS dumper for OS Xgimmedebugah
A small utility to inject a Info.plist into binaries.gdb-ng
Apple's gdb fork with some fixes and enhancementsExtractMachO
IDA plugin to extract Mach-O binaries located in the disassembly or dataGatekeerper
A kernel extension to mitigate Gatekeeper bypasseskextstat_aslr
Implementation of kexstat via /dev/kmem with kernel ASLR supportcan_I_suid
A TrustedBSD module to control execution of binaries with suid bit setcrackme_nr1
fG!'s crackme #1 source codebruteforcesysent
Small util to discover OS X sysent via bruteforcetcplognke
Apple's tcplognke code sampleTELoader
A TE executable format loader for IDAunicorn_string_deobfuscator
A Unicorn based emulator to deobfuscate Equation Group string XOR obfuscationmario
The kernel component of rootpipe fix for Mavericksadium-ng-preview
Repo to dump some preview info and builds for adium-ngMicrocodeExplorer
Hex-Rays MicrocodeExplorerreadkmem
small utility to dump kernel memoryrex_versus_the_romans
Anti Hacking Team TrustedBSD modulereadphysmem
A small utility to read and write to Macs physical memory using default AppleHWAccess.kext.llvmpatches
Misc llvm patcheshello_santa_bye_santa
Bypass Google's Santafixobjc
IDA IDC script to improve Objective-C disassembly outputcheckidt
Small util to dump the IDT table of a running OS X system with kmem enabledarmorysandbox
A USB armory based USB sandboxMachOPlugin
IDA plugin to Display Mach-O headersicetheguardianv2
A TrustedBSD module PoC to monitor writes to Daemons and Agents foldersdiagnostic_service
OS X rootkit loader version #1kgmacros
Fixed kgmacros to work with VMware kernel gdb stubExtractMacho2
IDA plugin to extract Mach-O binaries located in the disassembly or datasyscall-benchmark
macOS syscall performance benchmarkav-monster
PoC kext to disable OS X anti-virus softwareluigi
The userland component of rootpipe fix for Maverickscarbon_copy_cloner_keychaingen
A keygen for Carbon Copy Cloner private keychainCrisis-Analysis-Tools
Scripts and other material related to OS.X/Crisis malware analysisdiagnostic_service2
OS X rootkit loader version #2calcspace
Small util to calculate available free space in mach-o binaries for code injectionidc-scripts
Random collection of IDA's IDC scriptsDisable-m3u
iTunes plugin to disable creation of m3u playlistsrexthewonderdog
A lazy PoC for implementing backdoors in OS X TrustedBSD Mac framework.fuckyouilfak
A IDA Pro 9.0 Beta 2 macOS x86 Fix Loaderdelambert
GreenLambert macOS IDA plugin to deobfuscate stringsGiveMeHex
A quick IDA hack to get addresses with 0x prefixtwitterwipe
A Go utillty to delete your Twitter historyhow_crap_is_ida
An IDA plugin to compare IDA detected functions output versus LC_FUNCTION_STARTS informationevilquest_stats
Small utility to hash EvilQuest code and cstrings sectionskeygen_CrackMe_nr1_qwertyoruiop
Keygen for qwertyoruiop's CrackMe nr1spiflash
Very fast reader for SPI flashes for Teensy 2.x.bpf_dbg_output
Small tool to convert bpf binary bytecode to bpf_dbg formatevilquest_deobfuscator
EvilQuest/ThiefQuest malware strings decrypter/deobfuscatoricetheguardian
A PoC to protect critical OS X files using TrustedBSD Mac framework.SMBIOSKeygen
macserial and GenSMBIOS merged and ported to Goyage
An age fork with internal Yubikeys supportsnake_queue_parser
A decryptor for Snake/Turla configuration filesMach-O-Lib
Library to access and manipulate Mach-O headersmacserial
macserial Go moduleLove Open Source and this site? Check out how you can help us