SS7 Exploitation Library.
Project description
# SS7 Exploitation Library
The SS7 Exploitation Library provides a collection of non-interactive functions to execute various SS7 attacks.
**Creator:** Mohammad Taha Gorji
## Features
- **Non-interactive functions for executing SS7 attacks:**
- **Location Tracking:**
- `run_sri()` – Executes the SendRoutingInfo attack.
- `run_psi()` – Executes the ProvideSubscriberInfo attack.
- `run_srism()` – Executes the SendRoutingInfoForSM attack.
- `run_ati()` – Executes the AnyTimeInterrogation attack.
- `run_srigprs()` – Executes the SendRoutingInfoForGPRS attack.
- **Interception:**
- `run_ul()` – Executes the UpdateLocation attack.
- **Fraud:**
- `run_simsi()` – Executes the SendIMSI attack.
- `run_mtsms()` – Executes the MTForwardSMS attack.
- `run_cl()` – Executes the CancelLocation attack.
- **Denial of Service (DoS):**
- `run_purge()` – Executes the PurgeMS attack.
- **Exploits Downloader:**
- `download_exploits()` – Downloads and extracts the SigPloit-ss7 exploits from GitHub if the `ss7` directory is not present.
- **Command-Line Interface (CLI):**
- When executed as a standalone script, the library provides a simple CLI interface for testing and usage.
## Installation
Users can install the library using pip:
```bash
pip install ss7
Requirements
- Python 3.x
- Java (required to execute the JAR files)
- Internet connection (for downloading exploits when necessary)
Usage
Importing the Library
Below is an example of how to import and use the library in your Python project:
import ss7lib
# Download exploits if the 'ss7' directory does not exist
ss7lib.download_exploits()
# Execute a specific attack, for example, SendRoutingInfo:
try:
ret = ss7lib.run_sri()
print("SendRoutingInfo executed with exit code:", ret)
except Exception as e:
print("Error during execution:", e)
Using the CLI
If you prefer using the CLI interface, run the module directly:
python -m ss7lib
If installed via pip, you can simply run:
ss7
and follow the on-screen prompts.
API Reference
download_exploits()
- Description: Checks if the
ss7directory exists. If not, downloads the SigPloit-ss7 repository from GitHub, extracts it, moves thess7folder to the current directory, and removes temporary files. - Usage:
download_exploits() - Returns: None
run_sri()
- Description: Executes the
SendRoutingInfo.jarfile located inss7/attacks/tracking/sri. - Usage:
run_sri() - Returns: Exit code from the executed command.
run_psi()
- Description: Executes the
ProvideSubscriberInfo.jarfile located inss7/attacks/tracking/psi. - Usage:
run_psi() - Returns: Exit code from the executed command.
run_srism()
- Description: Executes the
SendRoutingInfoForSM.jarfile located inss7/attacks/tracking/srism. - Usage:
run_srism() - Returns: Exit code from the executed command.
run_ati()
- Description: Executes the
AnyTimeInterrogation.jarfile located inss7/attacks/tracking/ati. - Usage:
run_ati() - Returns: Exit code from the executed command.
run_srigprs()
- Description: Executes the
SendRoutingInfoForGPRS.jarfile located inss7/attacks/tracking/srigprs. - Usage:
run_srigprs() - Returns: Exit code from the executed command.
run_ul()
- Description: Executes the
UpdateLocation.jarfile located inss7/attacks/interception/ul. - Usage:
run_ul() - Returns: Exit code from the executed command.
run_simsi()
- Description: Executes the
SendIMSI.jarfile located inss7/attacks/fraud/simsi. - Usage:
run_simsi() - Returns: Exit code from the executed command.
run_mtsms()
- Description: Executes the
MTForwardSMS.jarfile located inss7/attacks/fraud/mtsms. - Usage:
run_mtsms() - Returns: Exit code from the executed command.
run_cl()
- Description: Executes the
CancelLocation.jarfile located inss7/attacks/fraud/cl. - Usage:
run_cl() - Returns: Exit code from the executed command.
run_purge()
- Description: Executes the
PurgeMS.jarfile located inss7/attacks/dos/prgms. - Usage:
run_purge() - Returns: Exit code from the executed command.
License
This project is licensed under the MIT License.
Contributing
Contributions are welcome. Please submit pull requests or open issues for any improvements or bug fixes.
Contact
For any questions or support, please contact the repository maintainer.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file ss7-1.0.0.tar.gz.
File metadata
- Download URL: ss7-1.0.0.tar.gz
- Upload date:
- Size: 4.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
48653bcc5a23dba0d1f302cd707116778f6906fba9c06fab5ee573947dd52a9d
|
|
| MD5 |
f1663932844301b1fd7081030890dee2
|
|
| BLAKE2b-256 |
026a33e152ed099df986b1ad4045f4aea00df26f31653de972dc0421de00f1c0
|
File details
Details for the file ss7-1.0.0-py3-none-any.whl.
File metadata
- Download URL: ss7-1.0.0-py3-none-any.whl
- Upload date:
- Size: 4.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5609b8b74a8fe9f5f4055fd1825e94fd0187f91adac454911154c7bb3bcbf2b5
|
|
| MD5 |
e410bf324a4db0bf1d1bfbb9df01dfab
|
|
| BLAKE2b-256 |
06a3d21528432655edc6a97e4439858faf7123088833bbcd98415ee0469eea69
|