Skip to content

framework to rapidly implement custom droppers for all three major operating systems

License

Notifications You must be signed in to change notification settings

Pascal-0x90/gscript

 
 

Repository files navigation

Gscript Logo

Genesis Scripting Engine (gscript)

Security framework to rapidly implement custom droppers for all three major operating systems

CircleCI

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

  • 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 Pascal-0x90/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 Pascal-0x90/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. Make sure $GOPATH/bin is in your $PATH.

After that, all you need to do is run:

$ go get github.com/Pascal-0x90/gscript/cmd/gscript

Quick Start

Check out the tutorial docs here:

https://github.com/Pascal-0x90/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:

(more to come soon)

Shoutouts

mentors, contributors, and great friends of gscript

  • @cmc
  • @hecfblog
  • @ccdcredteam
  • @1njecti0n
  • @ahhh
  • @emperorcow
  • @vyrus001
  • @kos
  • @davehughes
  • @maus
  • @javuto

About

framework to rapidly implement custom droppers for all three major operating systems

Resources

License

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Go 94.5%
  • JavaScript 3.8%
  • Other 1.7%