GithubHelp home page GithubHelp logo

1034205079 / il2cpphookscripts Goto Github PK

View Code? Open in Web Editor NEW

This project forked from axhlzy/il2cpphookscripts

0.0 0.0 0.0 31 MB

frida-based libil2cpp.so runtime parsing script

License: MIT License

JavaScript 3.71% TypeScript 96.28% Batchfile 0.01%

il2cpphookscripts's Introduction

Il2cppHook

frida-based libil2cpp.so runtime parsing script

npm license Build Status Open in Dev Containers npm version npm downloads

Features

  • Parse Unity's method m / class c / field f / instance lfs
  • parse runtime method argument b
  • (Batch) Hook B/BF for commonly used functions, modify function return value setFunctionXXX
  • More convenient to find function findMethods and call function callFunction
  • Object hierarchy PrintHierarchy / type hierarchy showTypeParent
  • Disassemble showAsm with frida and method information
  • Commonly used Hook package HookOnPointerClick/HookSetActive/B_Button...
  • Parse mount script showComponents alias s HookOnPointerClick/PrintHierarchyWithComponents is also introduced <--- testing
  • JNI RegisterNatives Hook (impl in JNIHelper, default off [not stable]), using JNIHelper.cacheRegisterNativeItem to get info
  • Using QBDI to simulate the execution of the function, using t(methoinfo) or traceFunction(mPtr) to enable replacement hook
  • ๐Ÿ˜• ๐Ÿ˜• ๐Ÿ˜•

Install

$ npm install il2cpp-hooker -g

then you can use like this ๐Ÿ‘‡

  1. frida attch current app
$ fat
  1. frida spawn app of ${PackageName}
$ fat ${PackageName}
  1. Command line options
$ fat -h

        _ _  ______                        _                 _
        | | |(_____ \                      | |               | |
        | | |  ____) )____ ____  ____ _____| |__   ___   ___ | |  _ _____  ____
        | | | / ____// ___)  _ \|  _ (_____)  _ \ / _ \ / _ \| |_/ ) ___ |/ ___)
        | | || (____( (___| |_| | |_| |    | | | | |_| | |_| |  _ (| ____| |
        |_|_|\______)____)  __/|  __/     |_| |_|\___/ \___/|_| \_)_____)_|
                        |_|   |_|


Usage: fat [options] <package-name?>

Options:
  -h, --help                  Print usage information.
  -r, --runtime [engine]      Specify the JS engine (qjs, v8). Default: v8
  -t, --timeout [ms]          Specify the time in milliseconds before calling the function.
  -f, --functions [name]      Specify the functions to call on startup. example: -f getApkInfo();
  -l, --log [path]            Specify the path to save the log.
  -c, --vscode                Open project with vscode.
  -v, --version               Print version information.

Report bugs to:
   axhlzy <[email protected]> (https://github.com/axhlzy/Il2CppHookScripts/)

Compile

$ git clone https://github.com/axhlzy/Il2CppHookScripts.git
$ cd Il2cppHook/

$ npm install

$ npm run build & npm run compress
OR
$ npm run watch

$ frida -U -f com.xxx.xxx -l ../_Ufunc.js
OR
$ frida -FU -l ../_Ufunc.js

Note

The npm package may not be updated in time, so you may consider using fat -c to open the project and use the github action Artifacts to replace _Ufunc.js file. ๐Ÿ˜ฏ


API

More details

OR

open with vscode and search globalthis. to find more useage

il2cpphookscripts's People

Contributors

axhlzy avatar wankkoree avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.