Spark Full-Featured RAT (Remote Administration Tool)
Spark Full-Featured RAT (Remote Administration Tool)

Spark: Full-Featured RAT (Remote Administration Tool)

Spark is a free, safe, open-source, web-based, cross-platform and full-featured RAT (Remote Administration Tool) that allow you to control all your devices via browser anywhere.

We won’t collect any data, thus the server will never self-upgrade. Your clients will only communicate with your server forever.

Spark control panel
Spark control panel

Disclaimer

THIS PROJECT, ITS SOURCE CODE, AND ITS RELEASES SHOULD ONLY BE USED FOR EDUCATIONAL PURPOSES.YOU SHALL USE THIS PROJECT AT YOUR OWN RISK.THE AUTHORS AND DEVELOPERS ARE NOT RESPONSIBLE FOR ANY DAMAGE CAUSED BY YOUR MISUSE OF THIS PROJECT.

Quick Start

Only local installation are available yet.

Local installation

  • Get prebuilt executable file from Releases page.
  • Create a configuration file named Config.json and set your own salt.
{
    "listen": ":8000",
    "salt": "some random string",
    "auth": {
  	  "username": "password"
    }
}
  • Run it and browse the address:port you’ve just set.
  • Generate client online and execute it on your device.
  • Now you can control your device.

Features

Feature/OSWindowsLinuxMacOS
Process manager
Kill process
Network Status
File explorer
File transfer
Delete file
OS info
Terminal
Screenshot
* Shutdown
* Reboot
* Hibernate
* Sleep
* Log off
* Lock screen
  • Blank cell means the situation is not tested yet.
  • The Star symbol means the function may need administration or root privilege.
Using Remote Terminal with Spark
Using Remote Terminal with Spark
Use of remote process manager with Spark
Use of remote process manager with Spark
Using remote file explorer with Spark
Using remote file explorer with Spark

Development

Note

There are three components in this project, so you have to build them all.

"
"

Go to Quick start if you don’t want to make yourself boring.

  • Client
  • Server
  • Front-end

If you want to make client support OS except linux and windows, you should install some additional C compiler.

For example, to support android, you have to install Android NDK.

Tutorial

# Clone this repository
$ git clone https://github.com/XZB-1248/Spark


$ cd ./Spark


# Here we're going to build front-end pages.
$ cd ./web
# Install all dependencies and build.
$ npm install
$ npm run build-prod


# Embed all static resources into one single file by using statik.
$ cd ..
$ go install github.com/rakyll/statik
$ statik -m -src="./web/dist" -f -dest="./server/embed" -p web -ns web


# Now we should build client.
# When you're using unix-like OS, you can use this.
$ go mod tidy
$ go mod download
$ ./build.client.sh
$ statik -m -src="./built" -f -dest="./server/embed" -include=* -p built -ns built


# Finally we're compiling the server side.
$ ./build.server.sh

Then you can find executable files in releases directory.

Copy configuration file mentioned above into this dir, and then you can execute server.

Dark Mode

Spark (this link opens in a new window) by XZB-1248 (this link opens in a new window)

Spark is a web-based, cross-platform and full-featured Remote Administration Tool that allows you control all your devices via browser anywhere. Spark是一个基于网页UI、跨平台以及多功能的远程控制和监控工具,可以通过浏览器,随时随地监控和控制你的所有设备。