https://github.com/gen0cide/gscript
framework to rapidly implement custom droppers for all three major operating systems
https://github.com/gen0cide/gscript
cli compiler golang javascript malware security
Last synced: 9 days ago
JSON representation
framework to rapidly implement custom droppers for all three major operating systems
- Host: GitHub
- URL: https://github.com/gen0cide/gscript
- Owner: gen0cide
- License: agpl-3.0
- Created: 2017-11-14T05:37:26.000Z (about 8 years ago)
- Default Branch: master
- Last Pushed: 2024-02-24T18:56:35.000Z (almost 2 years ago)
- Last Synced: 2025-10-16T17:08:37.069Z (3 months ago)
- Topics: cli, compiler, golang, javascript, malware, security
- Language: Go
- Homepage: https://github.com/gen0cide/gscript
- Size: 44.6 MB
- Stars: 701
- Watchers: 34
- Forks: 104
- Open Issues: 6
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
- cybersecurity-golang-security - gscript - Framework to rapidly implement custom droppers for all three major operating systems (Packers / Obfuscators)
- awesome-go-security - gscript - Framework to rapidly implement custom droppers for all three major operating systems. (Packers / Obfuscators)
README

# Genesis Scripting Engine (gscript)
> Security framework to rapidly implement custom droppers for all three major operating systems
[](https://circleci.com/gh/gen0cide/gscript/tree/master)
## About
Gscript is a framework for building multi-tenant executors for several implants in a stager. The engine works by embedding runtime logic (powered by the Otto Javascript Virtual Machine) for each persistence technique. This logic gets run at deploy time on the victim machine, in parallel for every implant contained with the stager. The Gscript engine leverages the multi-platform support of Golang to produce final stage one binaries for Windows, Mac, and Linux.
**We encourage you to read through the slides from DEFCON26:**
https://docs.google.com/presentation/d/1kHdz8DY0Zn44yn_XrZ2RVqDY1lpADThLPNPwHP-njbc/edit?usp=sharing
## Table of Contents
- [Features](#features)
- [Installation](#installation)
- [Quick Start](#quick-start)
- [Docs](#docs)
- [Shoutouts](#shoutouts)
## Features
- Easy to learn and write - uses javascript.
- Portable - Compile droppers for OSX, Windows, or Linux from any OS.
- Robust - Script's are isolated from each other in a safe execution way.
- Fast.
- Extensible - Can link native Golang packages directly into your Javascript.
## Installation
### Docker (Easiest)
If you have docker installed, you can run:
```
$ docker pull gen0cide/gscript:v1
```
Make a local directory where you can share files between your local machine and the docker container. Replace `$LOCAL_DIR` in the following command with the path to that:
```
$ docker run -it -v $LOCAL_DIR:/root/share gen0cide/gscript:v1
```
Thats it! You're good to go.
### Local (Good for advanced)
**Local installation requires you to have a Golang compiler setup and working on your machine. If you need to do this, you can grab an installer [here](https://golang.org/dl/). Make sure `$GOPATH/bin` is in your `$PATH`.**
After that, all you need to do is run:
```
$ go get github.com/gen0cide/gscript/cmd/gscript
```
## Quick Start
Check out the tutorial docs here:
https://github.com/gen0cide/gscript/tree/master/docs/tutorials
If you want to see example scripts, we have a separate repo you can clone:
https://github.com/ahhh/gscripts
## Docs
Here's a list of docs and tutorials that might be helpful for you:
- [Godoc for Engine and Compiler](https://godoc.org/github.com/gen0cide/gscript)
- [Tutorials in docs/tutorials](https://github.com/gen0cide/gscript/tree/master/docs/tutorials)
(more to come soon)
## Shoutouts
mentors, contributors, and great friends of gscript
- @cmc
- @hecfblog
- @ccdcredteam
- @1njecti0n
- @ahhh
- @emperorcow
- @vyrus001
- @kos
- @davehughes
- @maus
- @javuto