Skip to main content

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 ss7

# Download exploits if the 'ss7' directory does not exist
ss7.download_exploits()

# Execute a specific attack, for example, SendRoutingInfo:
try:
    ret = ss7.run_sri()
    print("SendRoutingInfo executed with exit code:", ret)
except Exception as e:
    print("Error during execution:", e)

API Reference

download_exploits()

  • Description: Checks if the ss7 directory exists. If not, downloads the SigPloit-ss7 repository from GitHub, extracts it, moves the ss7 folder to the current directory, and removes temporary files.
  • Usage: download_exploits()
  • Returns: None

run_sri()

  • Description: Executes the SendRoutingInfo.jar file located in ss7/attacks/tracking/sri.
  • Usage: run_sri()
  • Returns: Exit code from the executed command.

run_psi()

  • Description: Executes the ProvideSubscriberInfo.jar file located in ss7/attacks/tracking/psi.
  • Usage: run_psi()
  • Returns: Exit code from the executed command.

run_srism()

  • Description: Executes the SendRoutingInfoForSM.jar file located in ss7/attacks/tracking/srism.
  • Usage: run_srism()
  • Returns: Exit code from the executed command.

run_ati()

  • Description: Executes the AnyTimeInterrogation.jar file located in ss7/attacks/tracking/ati.
  • Usage: run_ati()
  • Returns: Exit code from the executed command.

run_srigprs()

  • Description: Executes the SendRoutingInfoForGPRS.jar file located in ss7/attacks/tracking/srigprs.
  • Usage: run_srigprs()
  • Returns: Exit code from the executed command.

run_ul()

  • Description: Executes the UpdateLocation.jar file located in ss7/attacks/interception/ul.
  • Usage: run_ul()
  • Returns: Exit code from the executed command.

run_simsi()

  • Description: Executes the SendIMSI.jar file located in ss7/attacks/fraud/simsi.
  • Usage: run_simsi()
  • Returns: Exit code from the executed command.

run_mtsms()

  • Description: Executes the MTForwardSMS.jar file located in ss7/attacks/fraud/mtsms.
  • Usage: run_mtsms()
  • Returns: Exit code from the executed command.

run_cl()

  • Description: Executes the CancelLocation.jar file located in ss7/attacks/fraud/cl.
  • Usage: run_cl()
  • Returns: Exit code from the executed command.

run_purge()

  • Description: Executes the PurgeMS.jar file located in ss7/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


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ss7-1.0.1.tar.gz (3.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ss7-1.0.1-py3-none-any.whl (4.1 kB view details)

Uploaded Python 3

File details

Details for the file ss7-1.0.1.tar.gz.

File metadata

  • Download URL: ss7-1.0.1.tar.gz
  • Upload date:
  • Size: 3.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.1

File hashes

Hashes for ss7-1.0.1.tar.gz
Algorithm Hash digest
SHA256 39277b6b768ecbb67901d3f9449870b161dd9a4087131c3394e1dfb599eb3cee
MD5 14dd2d39418911d075beb0f137ccb112
BLAKE2b-256 862ec6e48d2f391d594f89cd9b4ed112e772a422b023b1b499c6ff09755a7c92

See more details on using hashes here.

File details

Details for the file ss7-1.0.1-py3-none-any.whl.

File metadata

  • Download URL: ss7-1.0.1-py3-none-any.whl
  • Upload date:
  • Size: 4.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.1

File hashes

Hashes for ss7-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 6a2f459d8184a602d1317ee7b1a6b956c151904829d2c852620fbb433d04df5d
MD5 a55e53ae0a6c9463940b53b124a7c6f7
BLAKE2b-256 9f02fb0afa430415547ad46e0dd5ece2bc77a4b517d7ea74750d4da878eaa41c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page