Offensive Go 1707091399
Offensive Go 1707091399
Offensive Go 1707091399
• 0x00 Introduction
• 0x10 Basics
• 0x20 Network Programming
• 0x30 Web Hacking
• 0x40 Windows API and Post Exploitation
• 0x50 Wrapping up
0X00 INTRODUCTION
0X01 CODING FOR PENTESTERS
• Golang: https://www.golang.org
• Tour of Go: https://tour.golang.org/welcome/1
• Effective Go: https://golang.org/doc/effective_go.html
0X05 OFFENSIVE TOOLS IN GO
• GoBot2 (https://github.com/SaturnsVoid/GoBot2)
• GoAT (https://github.com/petercunha/GoAT)
• Gobuster (https://github.com/OJ/gobuster)
• Cracklord (https://github.com/jmmcatee/cracklord)
• GoCrack (https://github.com/fireeye/gocrack)
• Bettercap 2.0 (https://github.com/bettercap/bettercap)
• Merlin (https://github.com/Ne0nd0g/merlin)
• Vuls (https://github.com/future-architect/vuls)
• … many more (https://github.com/topics/pentesting?l=go)
0X06 WHAT’S MISSING
Variable declarations
Repeating strings
Formatted printing
Array declaration / initialization
Appending to arrays
Looping over arrays
Joining strings
0X11 HELLO WORLD
• Filename: hello.go
• go run hello.go for “interpreted mode”
• go build hello.go to compile
• go get to install dependencies
0X20 NETWORK PROGRAMMING
0X20 SIMPLE TCP SCANNER
Encrypt Write
Build shellcode with shellcode with encrypted „go build“ the
msfvenom AES256 shellcode to executable
template
0X50 WRAPPING UP
0X51 TAKE AWAYS
• Code
• https://github.com/shellhunter/offensive-go (soon™)
• https://github.com/shellhunter/meeseeks (soon™)
• https://github.com/shellhunter/gocewl (published)
0X53 FURTHER READING (BOOKS)