All Projects → a-rey → Google_rat

a-rey / Google_rat

Licence: mit
A Remote Access Tool using Google Apps Script as the proxy for command and control.

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Google rat

maalik
Feature-rich Post Exploitation Framework with Network Pivoting capabilities.
Stars: ✭ 75 (+17.19%)
Mutual labels:  malware, rat
Python Rootkit
Python Remote Administration Tool (RAT) to gain meterpreter session
Stars: ✭ 358 (+459.38%)
Mutual labels:  malware, rat
RoboThief-Telegram-Session-Stealer
Robo Thief is a software for steal telegram session .
Stars: ✭ 18 (-71.87%)
Mutual labels:  malware, rat
ConTroll Remote Access Trojan
Created a VERY SIMPLE remote access Trojan that will establish administrative control over any windows machine it compromises.
Stars: ✭ 69 (+7.81%)
Mutual labels:  malware, rat
Telerat
Telegram RAT written in Python
Stars: ✭ 56 (-12.5%)
Mutual labels:  malware, rat
Quiescis
Quescis is a powerful Remote Access Trojan for windows 💻 on C++
Stars: ✭ 56 (-12.5%)
Mutual labels:  malware, rat
Ghost
👻 RAT (Remote Access Trojan) - Silent Botnet - Full Remote Command-Line Access - Download & Execute Programs - Spread Virus' & Malware
Stars: ✭ 312 (+387.5%)
Mutual labels:  malware, rat
Serpentine
C++/Win32/Boost Windows RAT (Remote Administration Tool) with a multiplatform Java/Spring RESTful C2 server and Go, C++/Qt5 frontends
Stars: ✭ 216 (+237.5%)
Mutual labels:  malware, rat
Thefatrat
Thefatrat a massive exploiting tool : Easy tool to generate backdoor and easy tool to post exploitation attack like browser attack and etc . This tool compiles a malware with popular payload and then the compiled malware can be execute on windows, android, mac . The malware that created with this tool also have an ability to bypass most AV softw…
Stars: ✭ 5,944 (+9187.5%)
Mutual labels:  malware, rat
Emp3r0r
linux post-exploitation framework made by linux user
Stars: ✭ 419 (+554.69%)
Mutual labels:  malware, rat
trolo
trolo - an easy to use script for generating Payloads that bypasses antivirus
Stars: ✭ 45 (-29.69%)
Mutual labels:  malware, rat
Unencrypted Backdoor With Process Cloaking
Unencrypted backdoor
Stars: ✭ 16 (-75%)
Mutual labels:  malware, rat
ToxicEye
👽 Program for remote control of windows computers via telegram bot. Written in C#
Stars: ✭ 305 (+376.56%)
Mutual labels:  malware, rat
The-MALWARE-Repo
A repository full of malware samples.
Stars: ✭ 380 (+493.75%)
Mutual labels:  malware, rat
qt-rat
Remote administration tool with Qt5
Stars: ✭ 37 (-42.19%)
Mutual labels:  malware, rat
TeleShadow2
TeleShadow - Telegram Desktop Session Stealer (Windows)
Stars: ✭ 88 (+37.5%)
Mutual labels:  malware, rat
Networm
Python network worm that spreads on the local network and gives the attacker control of these machines.
Stars: ✭ 135 (+110.94%)
Mutual labels:  malware, rat
Telegram Rat
Windows Remote Administration Tool via Telegram. Written in Python
Stars: ✭ 201 (+214.06%)
Mutual labels:  malware, rat
Xeexe Topantivirusevasion
Undetectable & Xor encrypting with custom KEY (FUD Metasploit Rat) bypass Top Antivirus like BitDefender,Malwarebytes,Avast,ESET-NOD32,AVG,... & Automatically Add ICON and MANIFEST to excitable
Stars: ✭ 387 (+504.69%)
Mutual labels:  malware, rat
Lime Rat
LimeRAT | Simple, yet powerful remote administration tool for Windows (RAT)
Stars: ✭ 663 (+935.94%)
Mutual labels:  malware, rat

google_RAT

Version Status

A Remote Access Tool using Google Apps Script as the proxy for command and control.

TODO

  • [ ] Support multiple masters. Any given HTTP POST/GET request from a master can fail due to another master or server having modified the Google Sheets database first for a specific client.
  • [ ] Support built-in key logging for each client type. Depending on the client type and OS platform, the ability to log user keystrokes changes.
  • [ ] Support built-in screenshot capture for each client type. Depending on the client type and OS platform, the ability to capture a screenshot image changes.
  • [ ] Support built-in "dissolve" functionality for each client type.
  • [ ] Update C2 diagram to remove number of chunks from payload format.

Dependencies

NOTE: These only apply to running master.py and test.py on your local machine. Client dependencies (if any) are listed in each client's README.

Setup

1️⃣ Deploy Google Apps Script C2 Server

  • Create a fake Google account (https://accounts.google.com/signup)
  • Create a new empty spreadsheet in the fake account's Google Drive (https://drive.google.com)
  • Make this new spreadsheet public and openly editable by link:
    • File > Share > Get Link > Change > Anyone with the link > Viewer > Editor
  • Paste the new spreadsheet's link into the SPREADSHEET_URL variable in server.js and define a secret value for MASTER_KEY.
    • NOTE: Remove ?usp=sharing at the end of the SPREADSHEET_URL. The URL should end in /edit only.
  • Visit Google App Scripts (https://www.google.com/script/start/) and make a new project under your new Google account:
    • Start Scripting > New Project
  • Paste your formatted code from server.js and save the project
  • Publish the server:
    • Publish > Deploy as web app
      • Fill in the blank with something
      • Make sure the app is executed as Me
      • Make sure Anyone, even anonymous can access the app
    • Click Deploy
    • Review Permissions > Select your fake account > Advanced > Go to Untitled project (unsafe) > Allow
    • Save the application URL (it should end in /exec). This is what the clients and master will connect to.

2️⃣ Test Server Connection

  • Run ./client/test.py in order to test your server URL connection and MASTER_KEY:
    • NOTE: Running this test will leave an empty inactive client in the Google Sheets database. Simply delete that row to remove this inactive client.

test

3️⃣ Select Clients

  • Select your client and add the Google Apps Server URL from step 1 into the correct payload variable for your client's type as defined in the client's README

4️⃣ Run Master

  • Run the master to interact with clients:

master

Command and Control Protocol Notes

NOTE: diagrams made with https://draw.io

  • Transaction Flow:

architecture

  • Client State Transition Diagram:

state

  • Example server transaction between a master and client in Google Sheets:

server

  • General Notes:
    • This design allows for multiple servers to be ran simultaneously against the same backend Google Sheets "database" for client redundancy and availability.

    • All master requests to the server must present a unique key in order for their request to be processed. This key is hardcoded into each server's JavaScript with the MASTER_KEY variable.

    • Each payload is base64 encoded except for the the command type. This is seperated by the | character as the delimiter in the payload.

Limitations

  • All data sent to/from the server is chunked into 50000 (50 KB) chunks. This is because Google Sheets currently has a single cell size limitation of 50000 characters:

  • Google applies daily quotas and limitations for execution of its services. Getting around these limitations is as simple as creating other duplicate copies of the same server.js code for more servers in your design. Each client is able to cycle through multiple servers for loadballancing.
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].