Skip to content


Folders and files

Last commit message
Last commit date

Latest commit



35 Commits

Repository files navigation

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 Go 1.13+
  • Clone this repository with git clone
  • Run make key to generate a unique encryption key to use for communication
  • Build the project with one of the following options:
    • go build which will drop you a new godoh binary for the current architecture
    • make which will drop binaries in the build/ directory for various platforms


A DNS (over-HTTPS) C2
  By @leonjza from @sensepost

  godoh [flags]
  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: googlefront, google, cloudflare, quad9, raw] (default "google")
  -K, --validate-certificate   Validate DoH provider SSL certificates

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