Skip to content

Zuzzuc/App-Payload-Injector

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

91 Commits
 
 
 
 
 
 

Repository files navigation

App-Payload-Injector

A script used to inject executables into OSX .app files.

Keep in mind that some applications are write restricted and will therefore require escalated privileges for this script to work.

Note

Not fully finsihed, more functions will be added in the future

Usage

For this script to work it needs a minimum of two arguments. One specifying what app to target and one specifying what payload to use.

An exeample of this minimum viable call would be the following:./AppPayloadInjector.sh -t=/tmp/Someapp.app -p="/path with/space/payload.sh"

Arguments

Target

-t or --target

Requires a parameter

This argument is required.


This option chooses what app to target.

Example: ./AppPayloadInjector.sh -t="$HOME/Desktop/myapp.app"


Payload

-p or --payload

Requires a parameter

This argument is required.


This option chooses what payload to use.

Example: ./AppPayloadInjector.sh -t="$HOME/Desktop/myapp.app" -p="/tmp/payload.sh"


Nohide

-nohide


Disables trace hiding. This script attempts to remove any trace that some file(s) has been modified before finishing.

Example: ./AppPayloadInjector.sh -t="$HOME/Desktop/myapp.app" -p="/tmp/payload.sh" -nohide


Force

-f or --force


Attempts to bypass any obstacles if found.

Example: ./AppPayloadInjector.sh -t="$HOME/Desktop/myapp.app" -p="/tmp/payload.sh" -f


Payloadname

-pn or --payloadname

Requires a parameter


Sets the name of the dropped payload. If not set, generates a random name.

Example: ./AppPayloadInjector.sh -t="$HOME/Desktop/myapp.app" -p="/tmp/payload.sh" -pn="Payload"


Payloadpermission

-pp or --payloadpermission

Requires a parameter


Sets the permission of the payload once dropped. If not set, uses same permission as original executable.

Example: ./AppPayloadInjector.sh -t="$HOME/Desktop/myapp.app" -p="/tmp/payload.sh" -pp="u-r"


Dualexecute

-de or --dualexecute


Enables dual execution causing both the specified payload and the app to launch on application init.

Example: ./AppPayloadInjector.sh -t="$HOME/Desktop/myapp.app" -p="/tmp/payload.sh" -de


Dualexecutename

-den or --dualexecutename

Requires a parameter


Sets the name of the dropped launcher allowing for dual execution.

Example: ./AppPayloadInjector.sh -t="$HOME/Desktop/myapp.app" -p="/tmp/payload.sh" -den="launcher"


Examples

Injecting a shell script.

./AppPayloadInjector.sh -t="/Applications/App.app" -p="~/Desktop/Shell.sh"

Injecting a shell script and naming payload to "Example".

./AppPayloadInjector.sh -t="/Applications/App.app" -p"~/Desktop/Shell.sh" -pn="Example"

Force injecting a shell script, enabling dual execution and naming dual execution launcher to "launcher".

./AppPayloadInjector.sh -t="/Applications/App.app" -p"~/Desktop/Shell.sh" -f -de -den="laucnher"

About

Script used to inject executables into OSX .app files

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages