burpdrop


Nameburpdrop JSON
Version 1.1.0 PyPI version JSON
download
home_pagehttps://github.com/Gashaw512/android-traffic-interception-guide
SummaryA cross-platform Burp Suite CA Certificate installer for Android devices
upload_time2025-08-04 07:39:10
maintainerNone
docs_urlNone
authorGashaw Kidanu
requires_python>=3.7
licenseNone
keywords android burpsuite certificate installer root magisk interception security
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # πŸ” burpDrop – Cross-Platform Burp Suite CA Certificate Installer for Android

[![Platform](https://img.shields.io/badge/Platform-Windows%20%7C%20macOS%20%7C%20Linux-blue)](#)
[![Python](https://img.shields.io/badge/Python-3.7%2B-blue)](https://www.python.org/)
[![License](https://img.shields.io/badge/License-MIT-yellow.svg)](LICENSE)
[![Author](https://img.shields.io/badge/Author-Gashaw%20Kidanu-orange)](#)

**burpDrop** is a professional-grade automation tool that simplifies installing [Burp Suite](https://portswigger.net/burp) CA certificates into **rooted Android devices or emulators**.
Built for **security professionals**, **pen testers**, and **mobile developers**, it automates certificate conversion, deployment, permission setting, and rebooting β€” all with robust logging and cross-platform support.

![burpDrop Workflow](https://via.placeholder.com/800x400?text=BurpDrop+Workflow+Diagram)

---

## ✨ Features

- βœ… One-command certificate installation
- πŸ” Converts Burp CA cert (DER β†’ PEM β†’ `.0`) with subject hash
- πŸ“² Pushes cert to `/system/etc/security/cacerts/` on Android device
- πŸ”’ Verifies ADB and OpenSSL availability
- πŸ“¦ Automatically cleans up temporary certificate files on exit
- 🧰 Interactive CLI with prompts and auto-validation
- πŸ“œ Timestamped logging to `logs/` directory
- πŸ–₯️ Cross-platform support: Windows, macOS, and Linux
- πŸ€– **Magisk support**: Installs certificates to the systemless Magisk path.
- πŸ§ͺ **Dry-run mode**: Simulates the installation without making any changes.

---

## πŸ“¦ Requirements

- Python **3.7+**
- [ADB (Android Debug Bridge)](https://developer.android.com/studio/releases/platform-tools)
- [OpenSSL](https://www.openssl.org/) available in `PATH`
- Rooted Android device or emulator (e.g., [Genymotion](https://www.genymotion.com/))
- Burp Suite CA certificate exported as `.der` format

---

## πŸš€ Installation

### Option 1: From PyPI (recommended)

```bash
pip install burpdrop
```

### Option 2: From source
```bash
git clone [https://github.com/Gashaw512/android-traffic-interception-guide](https://github.com/Gashaw512/android-traffic-interception-guide)
cd android-traffic-interception-guide/burpdrop
pip install .

```
> βœ… Tip: Use a Python virtual environment to avoid system conflicts.

## βš™οΈ Quick Start

### 1. Export your Burp certificate

In **Burp Suite**:  
`Proxy β†’ Proxy Settings/ Options β†’ Import / Export CA Certificate`

- Choose **DER format**
- Save it as `burp.der`

---

### 2. Connect your Android device

- Enable **USB debugging** on your phone or emulator  
- Ensure `adb` is accessible from your terminal (i.e., added to your system `PATH`)

---
### 3. Install the certificate

Run:

```bash
burpdrop install

```

> You’ll be prompted to select the certificate file path

> The device will automatically reboot once the installation is successful
---
## πŸ§ͺ Example Usage

```bash

# Standard interactive install (prompt-based)
burpdrop install

# Install for Magisk systemless root
burpdrop install --magisk

# Simulate installation without making changes
burpdrop install --dry-run

# View recent logs
burpdrop logs

# Interactive configuration wizard (to set adb/openssl paths)
burpdrop config

# Set ADB and OpenSSL paths directly
burpdrop config --adb "/path/to/adb" --openssl "/path/to/openssl"

# Help
burpdrop help

```

---
## ⚠️ Troubleshooting

| Issue                          | Solution                                                                 |
|-------------------------------|--------------------------------------------------------------------------|
| ❌ `adb` not found             | Run `burpdrop config` to set the correct path                           |
| ❌ Certificate conversion fails| Make sure **OpenSSL** is installed and the cert is in **DER** format     |
| ❌ Device not detected         | Run `adb devices` to confirm connection; ensure **USB debugging** is enabled |
| ⚠️ `adb remount` fails        | Ensure your device/emulator is **rooted**. Use `adb root` if needed      |





| Issue | Solution | |-------------------------------|--------------------------------------------------------------------------| | ❌ adb not found | Run burpdrop config to set the correct path | | ❌ Certificate conversion fails| Make sure OpenSSL is installed and the cert is in DER format | | ❌ Device not detected | Run adb devices to confirm connection; ensure USB debugging is enabled | | ⚠️ adb remount fails | Ensure your device/emulator is rooted. Use adb root if needed | | ❌ ImportError on local run | Ensure you are running with pip install . or using the wrapper scripts (burpDrop.sh/.bat) |

> This will render as a neat table on GitHub. Let me know if you'd prefer a bullet list format or collapsible FAQs instead.
---
## πŸ”§ Configuration

o set up or override tool paths, use the config command:

```bash

burpdrop config

```
You can also manually edit the config.json file located inside the installed package (e.g., site-packages/burpdrop/scripts/config.json).

```json

{
  "adb_path": "/custom/path/to/adb",
  "openssl_path": "/custom/path/to/openssl"
}
```
---
## πŸ“š FAQ

### ❓ How do I export the certificate from Burp?

Go to:  
**Proxy β†’ Options β†’ Import/Export CA Certificate**  
- Choose **DER format**  
- Save the file (e.g., `burp.der`)

---

### ❓ My emulator isn’t rooted. What now?

`burpDrop` requires root access to push the certificate to `/system/`.  
Use one of the following:

- βœ… Genymotion (emulators are rooted by default)  
- βœ… Magisk-patched AVDs  
- βœ… Custom rooted emulator images

---

### ❓ `adb remount` fails?

This is usually due to **verity** being enabled on the system partition.  
Try running:

```bash
adb disable-verity
adb reboot
adb root
adb remount

```
---

## 🀝 Contributing

Contributions, bug reports, and feature requests are welcome!  
If you’d like to help improve **burpDrop**, follow these steps:

1. Fork the repository
2. Create a feature branch
3. Submit a pull request

πŸ“„ **CONTRIBUTING.md** – _coming soon_

For suggestions, feedback, or collaboration inquiries:  
πŸ“§ [kidanugashaw@gmail.com](mailto:kidanugashaw@gmail.com)

---

## πŸ“ License

Distributed under the **MIT License**.  
Β© 2025 [Gashaw Kidanu](https://github.com/yourusername).  
See the [LICENSE](LICENSE) file for full details.

---

## πŸ‘‹ Final Notes

**burpDrop** is actively maintained and designed for extensibility.  
Whether you’re a red teamer, security engineer, or mobile developer β€”  
this tool streamlines the HTTPS interception process on Android.

> **Intercept with confidence. Secure with precision.**  
> β€” _burpDrop_

---




            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/Gashaw512/android-traffic-interception-guide",
    "name": "burpdrop",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.7",
    "maintainer_email": null,
    "keywords": "android, burpsuite, certificate, installer, root, magisk, interception, security",
    "author": "Gashaw Kidanu",
    "author_email": "Gashaw Kidanu <kidanugashaw@gmail.com>",
    "download_url": "https://files.pythonhosted.org/packages/6e/38/8f1488def07aa59da811b1f414c2db5aa363deb570202d306f7bcb30fe2c/burpdrop-1.1.0.tar.gz",
    "platform": null,
    "description": "# \ud83d\udd10 burpDrop \u2013 Cross-Platform Burp Suite CA Certificate Installer for Android\r\n\r\n[![Platform](https://img.shields.io/badge/Platform-Windows%20%7C%20macOS%20%7C%20Linux-blue)](#)\r\n[![Python](https://img.shields.io/badge/Python-3.7%2B-blue)](https://www.python.org/)\r\n[![License](https://img.shields.io/badge/License-MIT-yellow.svg)](LICENSE)\r\n[![Author](https://img.shields.io/badge/Author-Gashaw%20Kidanu-orange)](#)\r\n\r\n**burpDrop** is a professional-grade automation tool that simplifies installing [Burp Suite](https://portswigger.net/burp) CA certificates into **rooted Android devices or emulators**.\r\nBuilt for **security professionals**, **pen testers**, and **mobile developers**, it automates certificate conversion, deployment, permission setting, and rebooting \u2014 all with robust logging and cross-platform support.\r\n\r\n![burpDrop Workflow](https://via.placeholder.com/800x400?text=BurpDrop+Workflow+Diagram)\r\n\r\n---\r\n\r\n## \u2728 Features\r\n\r\n- \u2705 One-command certificate installation\r\n- \ud83d\udd01 Converts Burp CA cert (DER \u2192 PEM \u2192 `.0`) with subject hash\r\n- \ud83d\udcf2 Pushes cert to `/system/etc/security/cacerts/` on Android device\r\n- \ud83d\udd12 Verifies ADB and OpenSSL availability\r\n- \ud83d\udce6 Automatically cleans up temporary certificate files on exit\r\n- \ud83e\uddf0 Interactive CLI with prompts and auto-validation\r\n- \ud83d\udcdc Timestamped logging to `logs/` directory\r\n- \ud83d\udda5\ufe0f Cross-platform support: Windows, macOS, and Linux\r\n- \ud83e\udd16 **Magisk support**: Installs certificates to the systemless Magisk path.\r\n- \ud83e\uddea **Dry-run mode**: Simulates the installation without making any changes.\r\n\r\n---\r\n\r\n## \ud83d\udce6 Requirements\r\n\r\n- Python **3.7+**\r\n- [ADB (Android Debug Bridge)](https://developer.android.com/studio/releases/platform-tools)\r\n- [OpenSSL](https://www.openssl.org/) available in `PATH`\r\n- Rooted Android device or emulator (e.g., [Genymotion](https://www.genymotion.com/))\r\n- Burp Suite CA certificate exported as `.der` format\r\n\r\n---\r\n\r\n## \ud83d\ude80 Installation\r\n\r\n### Option 1: From PyPI (recommended)\r\n\r\n```bash\r\npip install burpdrop\r\n```\r\n\r\n### Option 2: From source\r\n```bash\r\ngit clone [https://github.com/Gashaw512/android-traffic-interception-guide](https://github.com/Gashaw512/android-traffic-interception-guide)\r\ncd android-traffic-interception-guide/burpdrop\r\npip install .\r\n\r\n```\r\n> \u2705 Tip: Use a Python virtual environment to avoid system conflicts.\r\n\r\n## \u2699\ufe0f Quick Start\r\n\r\n### 1. Export your Burp certificate\r\n\r\nIn **Burp Suite**:  \r\n`Proxy \u2192 Proxy Settings/ Options \u2192 Import / Export CA Certificate`\r\n\r\n- Choose **DER format**\r\n- Save it as `burp.der`\r\n\r\n---\r\n\r\n### 2. Connect your Android device\r\n\r\n- Enable **USB debugging** on your phone or emulator  \r\n- Ensure `adb` is accessible from your terminal (i.e., added to your system `PATH`)\r\n\r\n---\r\n### 3. Install the certificate\r\n\r\nRun:\r\n\r\n```bash\r\nburpdrop install\r\n\r\n```\r\n\r\n> You\u2019ll be prompted to select the certificate file path\r\n\r\n> The device will automatically reboot once the installation is successful\r\n---\r\n## \ud83e\uddea Example Usage\r\n\r\n```bash\r\n\r\n# Standard interactive install (prompt-based)\r\nburpdrop install\r\n\r\n# Install for Magisk systemless root\r\nburpdrop install --magisk\r\n\r\n# Simulate installation without making changes\r\nburpdrop install --dry-run\r\n\r\n# View recent logs\r\nburpdrop logs\r\n\r\n# Interactive configuration wizard (to set adb/openssl paths)\r\nburpdrop config\r\n\r\n# Set ADB and OpenSSL paths directly\r\nburpdrop config --adb \"/path/to/adb\" --openssl \"/path/to/openssl\"\r\n\r\n# Help\r\nburpdrop help\r\n\r\n```\r\n\r\n---\r\n## \u26a0\ufe0f Troubleshooting\r\n\r\n| Issue                          | Solution                                                                 |\r\n|-------------------------------|--------------------------------------------------------------------------|\r\n| \u274c `adb` not found             | Run `burpdrop config` to set the correct path                           |\r\n| \u274c Certificate conversion fails| Make sure **OpenSSL** is installed and the cert is in **DER** format     |\r\n| \u274c Device not detected         | Run `adb devices` to confirm connection; ensure **USB debugging** is enabled |\r\n| \u26a0\ufe0f `adb remount` fails        | Ensure your device/emulator is **rooted**. Use `adb root` if needed      |\r\n\r\n\r\n\r\n\r\n\r\n| Issue | Solution | |-------------------------------|--------------------------------------------------------------------------| | \u274c adb not found | Run burpdrop config to set the correct path | | \u274c Certificate conversion fails| Make sure OpenSSL is installed and the cert is in DER format | | \u274c Device not detected | Run adb devices to confirm connection; ensure USB debugging is enabled | | \u26a0\ufe0f adb remount fails | Ensure your device/emulator is rooted. Use adb root if needed | | \u274c ImportError on local run | Ensure you are running with pip install . or using the wrapper scripts (burpDrop.sh/.bat) |\r\n\r\n> This will render as a neat table on GitHub. Let me know if you'd prefer a bullet list format or collapsible FAQs instead.\r\n---\r\n## \ud83d\udd27 Configuration\r\n\r\no set up or override tool paths, use the config command:\r\n\r\n```bash\r\n\r\nburpdrop config\r\n\r\n```\r\nYou can also manually edit the config.json file located inside the installed package (e.g., site-packages/burpdrop/scripts/config.json).\r\n\r\n```json\r\n\r\n{\r\n  \"adb_path\": \"/custom/path/to/adb\",\r\n  \"openssl_path\": \"/custom/path/to/openssl\"\r\n}\r\n```\r\n---\r\n## \ud83d\udcda FAQ\r\n\r\n### \u2753 How do I export the certificate from Burp?\r\n\r\nGo to:  \r\n**Proxy \u2192 Options \u2192 Import/Export CA Certificate**  \r\n- Choose **DER format**  \r\n- Save the file (e.g., `burp.der`)\r\n\r\n---\r\n\r\n### \u2753 My emulator isn\u2019t rooted. What now?\r\n\r\n`burpDrop` requires root access to push the certificate to `/system/`.  \r\nUse one of the following:\r\n\r\n- \u2705 Genymotion (emulators are rooted by default)  \r\n- \u2705 Magisk-patched AVDs  \r\n- \u2705 Custom rooted emulator images\r\n\r\n---\r\n\r\n### \u2753 `adb remount` fails?\r\n\r\nThis is usually due to **verity** being enabled on the system partition.  \r\nTry running:\r\n\r\n```bash\r\nadb disable-verity\r\nadb reboot\r\nadb root\r\nadb remount\r\n\r\n```\r\n---\r\n\r\n## \ud83e\udd1d Contributing\r\n\r\nContributions, bug reports, and feature requests are welcome!  \r\nIf you\u2019d like to help improve **burpDrop**, follow these steps:\r\n\r\n1. Fork the repository\r\n2. Create a feature branch\r\n3. Submit a pull request\r\n\r\n\ud83d\udcc4 **CONTRIBUTING.md** \u2013 _coming soon_\r\n\r\nFor suggestions, feedback, or collaboration inquiries:  \r\n\ud83d\udce7 [kidanugashaw@gmail.com](mailto:kidanugashaw@gmail.com)\r\n\r\n---\r\n\r\n## \ud83d\udcdd License\r\n\r\nDistributed under the **MIT License**.  \r\n\u00a9 2025 [Gashaw Kidanu](https://github.com/yourusername).  \r\nSee the [LICENSE](LICENSE) file for full details.\r\n\r\n---\r\n\r\n## \ud83d\udc4b Final Notes\r\n\r\n**burpDrop** is actively maintained and designed for extensibility.  \r\nWhether you\u2019re a red teamer, security engineer, or mobile developer \u2014  \r\nthis tool streamlines the HTTPS interception process on Android.\r\n\r\n> **Intercept with confidence. Secure with precision.**  \r\n> \u2014 _burpDrop_\r\n\r\n---\r\n\r\n\r\n\r\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "A cross-platform Burp Suite CA Certificate installer for Android devices",
    "version": "1.1.0",
    "project_urls": {
        "Bug Tracker": "https://github.com/Gashaw512/android-traffic-interception-guide/issues",
        "Homepage": "https://github.com/Gashaw512/android-traffic-interception-guide"
    },
    "split_keywords": [
        "android",
        " burpsuite",
        " certificate",
        " installer",
        " root",
        " magisk",
        " interception",
        " security"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "c7cb5e5c6d1ba44015dd6597769881e4459c643e900ef12672a8822fed9f59a8",
                "md5": "7cb95a487c75ac416dc889c010a1db31",
                "sha256": "01ea6a807fd1ed2d40a59d0d93a761ce627aee18c3850d1f1c4d1fac39328d00"
            },
            "downloads": -1,
            "filename": "burpdrop-1.1.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "7cb95a487c75ac416dc889c010a1db31",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.7",
            "size": 12566,
            "upload_time": "2025-08-04T07:39:09",
            "upload_time_iso_8601": "2025-08-04T07:39:09.207976Z",
            "url": "https://files.pythonhosted.org/packages/c7/cb/5e5c6d1ba44015dd6597769881e4459c643e900ef12672a8822fed9f59a8/burpdrop-1.1.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "6e388f1488def07aa59da811b1f414c2db5aa363deb570202d306f7bcb30fe2c",
                "md5": "4d25e3dac41184b64dd05a575f8705ef",
                "sha256": "5019f056b5af9feec48939d0a0e1a6da128d2f03bc8ddbc45b4ac7cb0e3a9e42"
            },
            "downloads": -1,
            "filename": "burpdrop-1.1.0.tar.gz",
            "has_sig": false,
            "md5_digest": "4d25e3dac41184b64dd05a575f8705ef",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.7",
            "size": 11122,
            "upload_time": "2025-08-04T07:39:10",
            "upload_time_iso_8601": "2025-08-04T07:39:10.256789Z",
            "url": "https://files.pythonhosted.org/packages/6e/38/8f1488def07aa59da811b1f414c2db5aa363deb570202d306f7bcb30fe2c/burpdrop-1.1.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-08-04 07:39:10",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "Gashaw512",
    "github_project": "android-traffic-interception-guide",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "lcname": "burpdrop"
}
        
Elapsed time: 1.28656s