✨Spark is a web-based, cross-platform and full-featured Remote Administration Tool (RAT) written in Go that allows you control all your devices anywhere. Spark是
✨Spark is a web-based, cross-platform and full-featured Remote Administration Tool (RAT) written in Go that allows you control all your devices anywhere. Spark是
Spark
Spark is a free, safe, open-source, web-based, cross-platform, and full-featured RAT (Remote Administration Tool) that allows you to control all your devices via browser anywhere.
✅ No data collection: Spark does not collect any user information.
✅ No auto-updates: The server will not update itself.
✅ Direct communication: Clients communicate exclusively with your server.
THIS PROJECT, ITS SOURCE CODE, AND RELEASES SHOULD ONLY BE USED FOR EDUCATIONAL PURPOSES.
❌ Illegal usage is strictly prohibited.
❌ Authors and developers are not responsible for any misuse.
✅ Use it at your own risk.
If you find security vulnerabilities, do not open an issue. Contact me immediately via email.
http://IP:Port.The configuration file config.json should be in the same directory as the executable.
Example:
{
"listen": ":8000",
"salt": "123456abcdef123456",
"auth": {
"username": "password"
},
"log": {
"level": "info",
"path": "./logs",
"days": 7
}
}listen (required): Format IP:Port.salt (required): Max length 24 characters. After modification, all clients need to be regenerated.auth (optional): Authentication credentials (username:password).$algorithm$hashed-password).sha256, sha512, bcrypt.log (optional): Logging configuration.level: disable, fatal, error, warn, info, debug.path: Log directory (default: ./logs).days: Log retention days (default: 7).| Feature/OS | Windows | Linux | MacOS |
|---|---|---|---|
| Process Manager | ✔ | ✔ | ✔ |
| Kill Process | ✔ | ✔ | ✔ |
| Network Traffic | ✔ | ✔ | ✔ |
| File Explorer | ✔ | ✔ | ✔ |
| File Transfer | ✔ | ✔ | ✔ |
| File Editor | ✔ | ✔ | ✔ |
| Delete File | ✔ | ✔ | ✔ |
| Code Highlighting | ✔ | ✔ | ✔ |
| Desktop Monitor | ✔ | ✔ | ✔ |
| Screenshot | ✔ | ✔ | ✔ |
| OS Info | ✔ | ✔ | ✔ |
| Remote Terminal | ✔ | ✔ | ✔ |
| * Shutdown | ✔ | ✔ | ✔ |
| * Reboot | ✔ | ✔ | ✔ |
| * Log Off | ✔ | ❌ | ✔ |
| * Sleep | ✔ | ❌ | ✔ |
| * Hibernate | ✔ | ❌ | ❌ |
| * Lock Screen | ✔ | ❌ | ❌ |
Functions marked with * may require administrator/root privileges.
This project consists of three main components:
For OS support beyond Linux and Windows, additional C compilers may be required. For example, to support Android, install Android NDK.
# Clone the repository
git clone https://github.com/XZB-1248/Spark
cd ./Spark
# Build the front-end
cd ./web
npm install
npm run build-prod
# Embed static resources
cd ..
go install github.com/rakyll/statik
statik -m -src="./web/dist" -f -dest="./server/embed" -p web -ns web
# Build the client
mkdir ./built
go mod tidy
go mod download
./scripts/build.client.sh
# Build the server
mkdir ./releases
./scripts/build.server.shIf you need to customize some features, please contact me via [email protected].
Spark contains many third-party open-source projects.
Lists of dependencies can be found at go.mod and package.json.
Some major dependencies are listed below.
gin-gonic/gin (MIT License)
imroc/req (MIT License)
kbinani/screenshot (MIT License)
gorilla/websocket (BSD-2-Clause License)
orcaman/concurrent-map (MIT License)
React (MIT License)
Ant-Design (MIT License)
axios (MIT License)
xterm.js (MIT License)
crypto-js (MIT License)
Distributed under the BSD-2 License.
No open issues yet, or sync has not completed.