Skip to content

Sl-Sanda-Ru/Temp-SMS-Receive

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

📱 Temp-SMS-Receive

A Python script to fetch temporary SMS numbers and display received messages.

wakatime CodeFactor GitHub License

✨ Features

  • 🌍 Fetches temporary SMS numbers from various countries.
  • 📩 Displays SMS messages received by the fetched numbers.
  • 📋 Copies selected number to the clipboard.
  • 🔄 Handles dependencies automatically.
  • 🎨 Includes a colorful and interactive CLI.
  • 🔄 Automatic Update (via GIT)

🛠️ Prerequisites

  • 🐍 Python 3.x
  • 📦 PIP (Python package installer)

📥 Installation

  1. Clone the repository:

    git clone https://github.com/Sl-Sanda-Ru/Temp-SMS-Receive.git
    cd Temp-SMS-Receive
  2. Install dependencies:

    pip install -r requirements.txt

🚀 Usage

  1. Run the script:

    python tempsms.py
  2. Follow the on-screen instructions to select a country and fetch temporary SMS numbers.

  3. Choose a number to see the received SMS messages.

🔗 API Source

The API is extracted from the Temp Number APP.

🛠️ Tools Used

  • jadx-gui: Assisted in decompiling the Java source code to find the decrypt key.
  • Magisk: Used for SSL bypass.
  • HttpCanary: Used for intercepting network traffic and analyzing HTTP requests.

🔍 Decompiled Java Source Code

This Java source code, decompiled using jadx-gui, helped to find the Authorization key:

public void displayKeyData(EncryptedKeyResponse encryptedKeyResponse, String str) {
    String str2;
    if (encryptedKeyResponse == null || (str2 = encryptedKeyResponse.api_key) == null || str2.isEmpty()) {
        return;
    }
    char[] charArray = new Decryption().decryption(encryptedKeyResponse.api_key, this.sharedpreferences.getString("keyId", "")).toCharArray();
    StringBuilder sb = new StringBuilder();
    for (int i = 0; 32; i++) {
        sb.append(charArray[i]);
    }
    this.freeNumbersPresenter.getFreeNumber(new NumbersRequest(this.CountryName, this.page, 10), "Bearer " + ((Object) sb));
}

public String decryption(String str, String str2) {
    byte[] decode;
    try {
        if (Build.VERSION.SDK_INT >= 26) {
            decode = Base64.getDecoder().decode(str);
        } else {
            decode = android.util.Base64.decode(str, 0);
        }
        byte[] bArr = new byte[16];
        int length = decode.length - 16;
        byte[] bArr2 = new byte[length];
        System.arraycopy(decode, 0, bArr, 0, 16);
        System.arraycopy(decode, 16, bArr2, 0, length);
        SecretKeySpec secretKeySpec = new SecretKeySpec(str2.getBytes(), "AES");
        IvParameterSpec ivParameterSpec = new IvParameterSpec(bArr);
        Cipher cipher = Cipher.getInstance("AES/CBC/NoPadding");
        cipher.init(2, secretKeySpec, ivParameterSpec);
        return new String(cipher.doFinal(bArr2));
    } catch (Exception e) {
        e.printStackTrace();
        return null;
    }
}

🌟 Stargazers

Stargazers repo roster for @Sl-Sanda-Ru/Temp-SMS-Receive Forkers repo roster for @Sl-Sanda-Ru/Temp-SMS-Receive

👤 Author

Sandaru Ashen

📜 License

This project is licensed under the GPT-3.0

About

No description or website provided.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages