Skip to content

๐Ÿ” Security research tool for Bubble.io encryption vulnerability | Complete encryption/decryption suite | Educational purposes only

License

Notifications You must be signed in to change notification settings

code-root/bubble-payload-encrypter

Repository files navigation

๐Ÿ” Bubble.io Payload Encryption/Decryption Suite

Python License Security

Complete toolkit for encrypting and decrypting Bubble.io payloads. This tool demonstrates a critical security vulnerability in Bubble.io's encryption implementation.

๐Ÿ‡ธ๐Ÿ‡ฆ ุงู„ู†ุณุฎุฉ ุงู„ุนุฑุจูŠุฉ | ๐Ÿ“š Encryption Guide | ๐Ÿ“‹ Summary


๐Ÿšจ Security Vulnerability

This tool exposes a critical vulnerability in Bubble.io's encryption mechanism:

  • โœ… Fixed IVs: Uses hardcoded IVs ('po9' and 'fl1') for all applications
  • โœ… Weak Key Derivation: Only requires AppName to decrypt payloads
  • โœ… No Authentication: No HMAC or signature verification
  • โœ… Shared Secrets: Same encryption keys across all users

CVE: Pending
Impact: High - Data exposure, payload manipulation
Disclosure: Responsible disclosure to Bubble.io (see Pop_n_bubble.pdf)


๐Ÿ“‹ Overview

This suite provides:

  • ๐Ÿ”“ Decryption Tool: Extract data from encrypted Bubble.io payloads
  • ๐Ÿ” Encryption Tool: Create encrypted payloads using Bubble.io's method
  • โœ… Testing Suite: Verify encryption/decryption operations
  • ๐Ÿ“Š JSON Support: Direct encryption/decryption of JSON data

๐Ÿ” How It Works

Bubble.io uses AES-CBC encryption with PBKDF2-MD5 key derivation:

Encryption Process (3 Values):

  1. x (IV): Encrypted Initialization Vector

    • Input: Random 16-byte IV
    • Fixed IV for encryption: 'fl1'
    • Key: Derived from AppName
  2. y (Timestamp): Encrypted timestamp

    • Input: Timestamp + "_1" suffix
    • Fixed IV for encryption: 'po9'
    • Key: Derived from AppName
  3. z (Payload): Encrypted data

    • Input: Your data (JSON or text)
    • Key: Derived from AppName + Timestamp
    • IV: The decrypted IV from (x)

Decryption Process:

1. Decrypt y โ†’ Extract timestamp
2. Decrypt x โ†’ Extract IV  
3. Decrypt z โ†’ Get original payload

๐Ÿš€ Quick Start

Installation

# Clone the repository
git clone https://github.com/code-root/bubble-payload-encrypter.git
cd bubble-payload-encrypter

# Install dependencies
pip3 install cryptography

Decryption

# Interactive mode
python3 decrypt_optimized.py

# Or use the main decrypter
python3 payload_decrypter.py

Encryption

# Interactive mode
python3 payload_encrypter.py

# Quick example
python3 quick_encrypt.py

Testing

# Run comprehensive tests
python3 test_encrypt_decrypt.py

๐Ÿ’ป Usage Examples

Decrypt Payload

from payload_decrypter import decrypt_bubble_payload

timestamp, iv, payload = decrypt_bubble_payload(
    appname="your_app_name",
    x_encrypted="encrypted_iv_base64==",
    y_encrypted="encrypted_timestamp_base64==",
    z_encrypted="encrypted_payload_base64=="
)

print(payload.decode('utf-8'))

Encrypt Payload

from payload_encrypter import encrypt_bubble_payload

result = encrypt_bubble_payload(
    appname="your_app_name",
    payload_data={
        "app_version": "live",
        "data": "sensitive information"
    }
)

print(f"x: {result['x']}")
print(f"y: {result['y']}")
print(f"z: {result['z']}")

๐Ÿ“ Project Structure

Core Scripts

  • payload_decrypter.py - Main decryption tool
  • payload_encrypter.py - Main encryption tool
  • decrypt_optimized.py - Enhanced decryption with better UX
  • quick_encrypt.py - Quick encryption examples
  • test_encrypt_decrypt.py - Comprehensive test suite

Documentation

  • README.md - This file (English)
  • README_AR.md - Arabic documentation
  • ENCRYPTION_GUIDE_AR.md - Detailed encryption guide (Arabic)
  • SUMMARY_AR.md - Project summary (Arabic)
  • Pop_n_bubble.pdf - Security vulnerability analysis

Examples

  • example_decryption_result.json - Example decrypted data
  • example_encrypted.json - Example encrypted data

๐Ÿ”‘ Key Features

Performance Optimizations

  • โœ… 60% code reduction through shared functions
  • โœ… Optimized memory usage
  • โœ… Efficient PBKDF2 key derivation
  • โœ… Clean, well-documented code

Functionality

  • โœ… Full encryption/decryption support
  • โœ… JSON and text support
  • โœ… Auto-generate timestamp and IV
  • โœ… Custom timestamp/IV support
  • โœ… Save results to files

Security Analysis

  • โœ… Demonstrates Bubble.io vulnerability
  • โœ… Educational tool for security research
  • โœ… Proof-of-concept implementation
  • โœ… Responsible disclosure documentation

โš ๏ธ Disclaimer

FOR EDUCATIONAL AND SECURITY RESEARCH PURPOSES ONLY

This tool is provided for:

  • โœ… Security research and education
  • โœ… Authorized penetration testing
  • โœ… Understanding encryption vulnerabilities
  • โœ… Responsible disclosure demonstrations

DO NOT USE FOR:

  • โŒ Unauthorized access to systems
  • โŒ Data theft or manipulation
  • โŒ Any illegal activities
  • โŒ Attacking applications without permission

The authors are not responsible for misuse of this tool.


๐Ÿ“š References


๐Ÿค Contributing

Contributions are welcome! Please:

  1. Fork the repository
  2. Create a feature branch
  3. Commit your changes
  4. Push to the branch
  5. Open a Pull Request

๐Ÿ“„ License

This project is released for educational purposes only. Use responsibly and ethically.


๐Ÿ‘ฅ Authors

Security Research Team


๐Ÿ“ž Contact

For security issues or responsible disclosure:

  • ๐Ÿ“ฑ WhatsApp: +201001995914
  • ๐Ÿ› GitHub Issues: Report here
  • ๐Ÿ“ง Security Research: Contact via WhatsApp for responsible disclosure

โญ Star this repo if you find it useful for security research!

About

๐Ÿ” Security research tool for Bubble.io encryption vulnerability | Complete encryption/decryption suite | Educational purposes only

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages