The Plugin API is a set of functions & data that are available to plugins. It is used to interact with RocketCore and its features. This API is provided as the first argument to the initialize function.
WARNING some documentation is incomplete or may be wrong as draco has not shown how to all the functions in the plugin api. However if you want to see and reverse engineer a part of the plugin api, the structure is provided here
The Node Modules path is the path to the folder where the node_modules folder is located (RocketCore\resources\app.asar\node_modules). Inside there are very useful modules that you can require in your plugin.
ws - WebSocket
tcp-port-used - Check if a port is in use (asynchronous)
The name of the exploit, will be used for the custom executor option in the settings tab. (unfortunately executing still shows “SynapseZ” as not being injected while having another exploit selected)
The function that runs when the user presses the inject button. RocketCore should show a notification that the exploit is injected after the exploit has executed the Execution Server script.
The name of the exploit, will be used for the custom executor option in the settings tab. (unfortunately executing still shows “SynapseZ” as not being injected while having another exploit selected)
The function that runs when the user presses the inject button. RocketCore should show a notification that the exploit is injected after the exploit has executed the Execution Server script.
Registering a custom exploit is done via the registerExploit function in the Exploit API.
Keep in mind that execute, inject & getDllNamecan be asynchronous & synchronous. (grh is scared of async real)
The name of the exploit, will be used for the custom executor option in the settings tab. (unfortunately executing still shows “SynapseZ” as not being injected while having another exploit selected)
The function that runs when the user presses the inject button. RocketCore should show a notification that the exploit is injected after the exploit has executed the Execution Server script.
Example:
PluginAPI.ExploitApi.registerExploit({name:"ExampleExploit",inject:function(){// do something with injection}});
The duration of the notification (in milliseconds), defaults to infinity. (infinity will remove the tweening animation when the notification get created, this is probably a bug in RocketCore)
Example:
PluginAPI.NotificationApi.send("Awesome Plugin","RocketCore is awesome!",0,400,5000);PluginAPI.NotificationApi.send("Awesome Plugin","Oops, something went wrong!",1,400,5000);