SeaShell Framework is an iOS/macOS post-exploitation framework that enables you to access the device remotely, control it and extract sensitive information.
To install SeaShell Framework you just need to type this command in your terminal:
pip3 install git+https://github.com/EntySec/SeaShell
After this SeaShell can be started with seashell
command.
To update SeaShell and get new commands run this:
pip3 install --force-reinstall git+https://github.com/EntySec/SeaShell
Simply generate custom IPA file or patch existing one and install it on target's iPhone or iPad via TrollStore or other IPA installer that bypasses CoreTrust.
Then you will need to start a listener on a host and port you added to your IPA. Once the installed application opens, you will receive a connection.
Once you have received the connection, you will be able to communicate with the session through a Pwny interactive shell. Use devices -i <id>
to interact and help
to view list of all available commands. You can even extract Safari history like in the example below.
Find the map of available commands. New commands/modules being added regularly so this list might be outdated.
A wide range of iOS versions are supported, being 14.0 beta 2 - 16.6.1, 16.7 RC, and 17.0 beta 1 - 17.0, as these versions are vulnerable to the CoreTrust bug.
Pwny is a powerful implant with plenty of features including evasion, dynamic extensions and much more. It is embedded into the second phase of SeaShell Framework attack. These are all phases:
posix_spawn()
.SeaShell was just released and is in BETA stage for now. If you find a bug or some function that does not work we will be glad if you immediately submit an issue describing a problem. The more details the issue contains the faster we will be able to fix it.
Note that the code and methods provided in this repository must not be used for malicious purposes and should only be used for testing and experimenting with devices you own. Please consider out Terms of Service before using the tool.