I hereby claim:
- I am oleavr on github.
- I am oleavr (https://keybase.io/oleavr) on keybase.
- I have a public key whose fingerprint is 4C04 3651 FBE7 3BE0 A755 1F4C EE8B 45E9 7675 076F
To claim this, I am signing this object:
I hereby claim:
To claim this, I am signing this object:
| [CCode (cheader_filename = "frida-core.h", cprefix = "Frida", lower_case_cprefix = "frida_")] | |
| namespace Frida { | |
| public static void init (); | |
| public static void shutdown (); | |
| public static void deinit (); | |
| public static unowned GLib.MainContext get_main_context (); | |
| public class DeviceManager : GLib.Object { | |
| public DeviceManager (); |
| [CCode (cheader_filename = "frida-core.h", cprefix = "Frida", lower_case_cprefix = "frida_")] | |
| namespace Frida { | |
| public static void init (); | |
| public static void shutdown (); | |
| public static void deinit (); | |
| public static unowned GLib.MainContext get_main_context (); | |
| public enum DeviceType { | |
| LOCAL, | |
| TETHER, |
| var frida = require('frida'); | |
| frida.attach('cat') | |
| .then(function (session) { | |
| console.log('attached:', session); | |
| return session.createScript( | |
| 'function onMessage(message) {' + | |
| 'send({ name: "pong", payload: message });' + | |
| 'recv(onMessage);' + | |
| '}' + |
| #include <stdint.h> | |
| #include <stdio.h> | |
| #include <string.h> | |
| #include <sys/syspage.h> | |
| int | |
| main(int argc, char *argv[]) | |
| { | |
| struct asinfo_entry *entries = SYSPAGE_ENTRY(asinfo); | |
| size_t count = SYSPAGE_ENTRY_SIZE(asinfo) / sizeof(struct asinfo_entry); |
| const NSAutoreleasePool = ObjC.classes.NSAutoreleasePool; | |
| const pool = NSAutoreleasePool.alloc().init(); | |
| const MyConnectionDelegateProxy = ObjC.registerClass({ | |
| name: 'MyConnectionDelegateProxy', | |
| protocols: [ObjC.protocols.NSURLConnectionDelegate, ObjC.protocols.NSURLConnectionDataDelegate], | |
| methods: { | |
| '- connection:didReceiveResponse:': { | |
| retType: 'void', | |
| argTypes: ['object', 'object'], | |
| implementation: function (connection, response) { |
| const NSAutoreleasePool = ObjC.classes.NSAutoreleasePool; | |
| const pool = NSAutoreleasePool.alloc().init(); | |
| const NSObject = ObjC.classes.NSObject; | |
| const NSURLConnectionDataDelegate = ObjC.protocols.NSURLConnectionDataDelegate; | |
| const MyConnectionDelegateProxy = ObjC.registerClass({ | |
| name: 'MyConnectionDelegateProxy', | |
| parent: NSObject, | |
| protocols: [NSURLConnectionDataDelegate], | |
| overrides: { |
| const NSObject = ObjC.classes.NSObject; | |
| const NSURLConnectionDataDelegate = ObjC.protocols.NSURLConnectionDataDelegate; | |
| const MyConnectionDelegateProxy = ObjC.registerClass({ | |
| name: 'MyConnectionDelegateProxy', | |
| super: NSObject, | |
| protocols: [NSURLConnectionDataDelegate], | |
| methods: { | |
| '- init': function () { | |
| console.log('- init'); | |
| const self = this.super.init(); |
| diff --git a/glib/Makefile.am b/glib/Makefile.am | |
| index e022c30..8a1f942 100644 | |
| --- a/glib/Makefile.am | |
| +++ b/glib/Makefile.am | |
| @@ -209,6 +209,8 @@ libglib_2_0_la_SOURCES = \ | |
| gwakeup.c \ | |
| gprintf.c \ | |
| gprintfint.h \ | |
| + frida-log.c \ | |
| + frida-log.h \ |
| 'use strict'; | |
| Module.enumerateExports('libssl.so', { | |
| onMatch(e) { | |
| if (e.type === 'function') | |
| Interceptor.attach(e.address, createHook(e.name, e.address)); | |
| }, | |
| onComplete() { | |
| } | |
| }); |