Skip to content

WIP: LLDB script to generate Frida wrappers of C++ structures

License

Notifications You must be signed in to change notification settings

maltek/dsym-to-frida

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 

Repository files navigation

A python script for LLDB that (tries to) generate Frida wrapper for C/C++ structures based on debug information - for cases where you have the source of a program/library, but don't want to manually write lots of wrappers. Note that the wrappers are platform-specific - they hard-code the exact memory layout found in the exact debug symbols loaded into LLDB.

You can run it with any C/C++ library or executable for which you have debug symbols. Use it from the LLDB prompt roughly like this:

platform select remote-ios
 
target create -a armv7 /Users/malte/Library/Developer/Xcode/DerivedData/SwiftFridaTests-fdzgqlqfpbydbcbaswxptmrprxwe/Build/Products/Debug-iphoneos/SwiftFridaTests.app/Frameworks/libswiftCore.dylib --symfile /Users/malte/Library/Developer/Toolchains/swift-LOCAL-2019-06-23-a.xctoolchain//usr/lib/swift/iphoneos/libswiftCore.dylib.dSYM
command script import dsym_to_typescript.py
dump_type "swift::TargetMetadata<swift::InProcess>"

(Make sure that /usr/bin/python is the first python in PATH, or LLDB will spit out weird Python exceptions.)

About

WIP: LLDB script to generate Frida wrappers of C++ structures

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages