diff options
author | dusoleil <howcansocksbereal@gmail.com> | 2023-02-12 03:17:32 -0500 |
---|---|---|
committer | dusoleil <howcansocksbereal@gmail.com> | 2023-02-12 03:17:32 -0500 |
commit | 151a454802590ab32018392bf221e33855e9b05a (patch) | |
tree | 66fc0aaa05fb6b492555c2f588ecbb9f41f460fa | |
parent | 4fb3e9ac04cb7772bca3988c5983019a7a34bf20 (diff) | |
download | sploit-151a454802590ab32018392bf221e33855e9b05a.tar.gz sploit-151a454802590ab32018392bf221e33855e9b05a.zip |
Add .gitignore, README, and UNLICENSE
Signed-off-by: dusoleil <howcansocksbereal@gmail.com>
-rw-r--r-- | .gitignore | 10 | ||||
-rw-r--r-- | README.txt | 57 | ||||
-rw-r--r-- | UNLICENSE | 24 |
3 files changed, 91 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..4d962a1 --- /dev/null +++ b/.gitignore @@ -0,0 +1,10 @@ +__pycache__/ +build/ +*.egg-info/ +a.out +*.o +*.elf +*.exe +*.dll +*.a +*.so diff --git a/README.txt b/README.txt new file mode 100644 index 0000000..1199c36 --- /dev/null +++ b/README.txt @@ -0,0 +1,57 @@ +sploit is a process interaction automation tool with software exploitation +focused utilities. It is designed to abstract and simplify process invocation +to enable exploit code reuse across target sources. It includes a limited, but +powerful and intuitive set of utilities and syntactic sugar which make writing +exploits quick and straightforward. This enables rapid prototyping workflows. + +Installation +-------------- +sploit can be installed to the system with +``` +$ pip install . +``` + +Once installed, sploit can be invoked from the PATH like normal +``` +$ sploit exploit.py ./target target_args +``` + +Usage +------------ +sploit has two main modes of operation: Process and Pipes. + +A sploit script can be run against a specific command in Process mode. This +will automatically connect the target's stdio into a handy io object that can +be referenced in the sploit script. +``` +$ sploit exploit.py ./target target_args +``` + +If sploit is run omitting the target, it will launch in Pipes mode. Here, it +will create temporary FIFOs for stdio which will be tied to the same io object +in the sploit script. In this way, the same script can be used in both modes +and against any target source regardless of how it exposes its stdio. +``` +$ sploit exploit.py +``` + +When running in Pipes mode, sploit will wait for something to connect on the +FIFOs before actually executing the exploit script. Once it has finished, it +will go back to waiting and run the script again the next time it connects. +This will loop indefinitely until you give a keyboard interrupt (Ctrl+C). The +exploit script can be modified between each run without any problems. + +The main use case of Pipes mode is when you want to launch the target program +under another program (such as gdb). This enables a powerful workflow where you +can keep sploit and gdb running, make small alterations to the exploit script, +and re-run the target directly in gdb to see what happens. This allows for +rapid prototyping. + +``` +gdb> r </tmp/tmpksakkt8o/in >/tmp/tmpksakkt8o/out +``` + +You can also directly run sploit scripts with the following shebang +``` +#!/usr/bin/env sploit +``` diff --git a/UNLICENSE b/UNLICENSE new file mode 100644 index 0000000..68a49da --- /dev/null +++ b/UNLICENSE @@ -0,0 +1,24 @@ +This is free and unencumbered software released into the public domain. + +Anyone is free to copy, modify, publish, use, compile, sell, or +distribute this software, either in source code form or as a compiled +binary, for any purpose, commercial or non-commercial, and by any +means. + +In jurisdictions that recognize copyright laws, the author or authors +of this software dedicate any and all copyright interest in the +software to the public domain. We make this dedication for the benefit +of the public at large and to the detriment of our heirs and +successors. We intend this dedication to be an overt act of +relinquishment in perpetuity of all present and future rights to this +software under copyright law. + +THE 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 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. + +For more information, please refer to <http://unlicense.org/> |