Skip to content
🕳godoh - A DNS-over-HTTPS C2
Go Makefile
Branch: master
Clone or download
Type Name Latest commit message Commit time
Failed to load latest commit information.
cmd Use agent mode by default. Feb 6, 2019
dnsclient Add googlefront provider. Nov 6, 2018
dnsserver Add missing newline Nov 6, 2018
protocol Initial commit. 💥 Oct 23, 2018
utils Simplify ByteSplit and update header. Oct 25, 2018
.gitignore Initial commit. 💥 Oct 23, 2018
Gopkg.lock Initial commit. 💥 Oct 23, 2018
LICENSE Initial commit. 💥 Oct 23, 2018
Makefile Update README. Oct 25, 2018
main.go Initial commit. 💥 Oct 23, 2018

🕳 godoh

A DNS-over-HTTPS Command & Control Proof of Concept

@leonjza Go Report Card


godoh is a proof of concept Command and Control framework, written in Golang, that uses DNS-over-HTTPS as a transport medium. Currently supported providers include Google, Cloudflare but also contains the ability to use traditional DNS.


All you would need are the godoh binaries themselves. Binaries are available for download from the releases page as part of tagged releases.

To build godoh from source, follow the following steps:

  • Ensure you have dep installed (go get -v -u
  • Clone this repository to your $GOPATH's src/ directory so that it is in sensepost/godoh
  • Run dep ensure to resolve dependencies
  • Run make key to generate a unique encryption key to use for communication
  • Use the go build tools, or run make to build the binaries in the build/ directory


$ godoh -h
A DNS (over-HTTPS) C2
    Version: dev
    By @leonjza from @sensepost

  godoh [command]

  godoh [command]

Available Commands:
  agent       Connect as an Agent to the DoH C2
  c2          Starts the godoh C2 server
  help        Help about any command
  receive     Receive a file via DoH
  send        Send a file via DoH
  test        Test DNS communications

  -d, --domain string     DNS Domain to use. (ie:
  -h, --help              help for godoh
  -p, --provider string   Preferred DNS provider to use. [possible: google, cloudflare, raw] (default "google")

Use "godoh [command] --help" for more information about a command.


godoh is licensed under a GNU General Public v3 License. Permissions beyond the scope of this license may be available at

You can’t perform that action at this time.