forked from c3r34lk1ll3r/BinRida
-
Notifications
You must be signed in to change notification settings - Fork 3
/
plugin.json
30 lines (30 loc) · 3.34 KB
/
plugin.json
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
{
"pluginmetadataversion": 2,
"name": "Frinja",
"author": "Dimitris Zervas",
"type": [
"helper"
],
"api": [
"python3"
],
"description": "Frida plugin for Binary Ninja - continuation of BinRida by @c3r34lk1ll3r",
"longdescription": "# Frinja\n\nAuthor: **Dimitris Zervas**\n\nFrida plugin for binary ninja.\n\nA set of jinja-enabled frida scripts using the context of binary ninja's static analysis.\n\nThis is a continuation of the [BinRida](https://github.com/c3r34lk1ll3r/BinRida) plugin by @[c3r34lk1ll3r](https://github.com/c3r34lk1ll3r).\n\n## Usage\n\nFirst of all you'll need to go to `Plugins > Frinja > Settings` to set up the frida\nconnection and the application to be instrumented.\n\nAfterwards you can use any available commands - the `Hook Function` and `Run Hooker`\ncommands are explained [below](#hooker)\n\n### Dump Function Context\n\nIt hooks and gathers all calls and returns of the focused function and generates\na markdown report with the following information:\n\n- Callee address\n- Thread ID\n- Arguments (tries to dereference pointers, read strings and numbers)\n- Return value\n- Register values\n\n### Inspect Function Paths\n\nA code coverage tracer for the focused function that highlights the executed basic blocks\n\n## Hooker\n\nThe main show of this plugin is the `Run Hooker` command. It allows you to trace\nand tamper with the execution of the application.\n\nAfter a function is marked with the `Hook Function` command (or any function with\nthe `Frinja Hooked` tag) all its calls and returns will get logged in the log pane.\n\nThere's also the ability to add pre and post hooks to the function as well as altering\nthe return value.\n\nTo do so a function comment should be added in the following format:\n\n```text\n@prehook: <prehook js code>\n@posthook: <posthook js code>\n@ret: <return value>\n@replace: <replace whole function with js code>\n```\n\nThe return value can be any kind of valid javascript expression\n\n## License\n\nThis plugin is released under a MIT license.",
"license": {
"name": "MIT",
"text": "Copyright 2019 Andrea Ferraris\nCopyright 2024 <[email protected]> Dimitris Zervas\n\nPermission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE."
},
"platforms": [
"Darwin",
"Windows",
"Linux"
],
"dependencies": {
"pip": [
"frida",
"Jinja2"
]
},
"version": "1.2.3",
"minimumbinaryninjaversion": 3164
}