hacktricks/generic-methodologies-and-resources/pentesting-network/network-protocols-explained-esp.md

138 lines
10 KiB
Markdown
Raw Normal View History

<details>
<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>
Outras formas de apoiar o HackTricks:
* Se você deseja ver sua **empresa anunciada no HackTricks** ou **baixar o HackTricks em PDF** Confira os [**PLANOS DE ASSINATURA**](https://github.com/sponsors/carlospolop)!
* Adquira o [**swag oficial PEASS & HackTricks**](https://peass.creator-spring.com)
* 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)
* **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)**.**
* **Compartilhe seus truques de hacking enviando PRs para os** [**HackTricks**](https://github.com/carlospolop/hacktricks) e [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) repositórios do github.
</details>
2022-05-01 12:49:36 +00:00
# Multicast DNS \(mDNS\)
O protocolo **multicast DNS** \(**mDNS**\) resolve nomes de host para endereços IP em redes pequenas que não incluem um servidor de nomes local.
Quando um cliente mDNS precisa resolver um nome de host, ele envia uma mensagem de consulta de multicast IP que pede ao host com esse nome para se identificar. A máquina alvo então envia em multicast uma mensagem que inclui seu endereço IP. Todas as máquinas nessa sub-rede podem então usar essa informação para atualizar seus caches mDNS.
Qualquer host pode renunciar a seu direito a um nome de domínio enviando um pacote de resposta com um Tempo de Vida \(TTL\) igual a zero.
Por padrão, o mDNS resolve exclusivamente nomes de host que terminam com o domínio de nível superior **.local**. Isso pode causar problemas se esse domínio incluir hosts que não implementam mDNS, mas que podem ser encontrados por meio de um servidor DNS unicast convencional. Resolver tais conflitos requer mudanças na configuração de rede.
* Ao usar quadros Ethernet, o endereço MAC de multicast padrão é _01:00:5E:00:00:FB_ \(para IPv4\) ou _33:33:00:00:00:FB_ \(para IPv6\).
2023-06-06 18:56:34 +00:00
* Endereço IPv4 _224.0.0.251_ ou endereço IPv6 _ff02::fb_.
* Porta UDP 5353.
As consultas mDNS não passarão por roteadores \(transmissão em Ethernet apenas\).
# DNS-SD \(Descoberta de Serviço\)
2023-06-06 18:56:34 +00:00
Este protocolo pode ser usado para descobrir hosts na rede. Para fazer isso, você pode solicitar nomes de domínio especiais \(por exemplo, _\_printers\_tcp.local_\) e todos os domínios relacionados a esse nome responderão \(neste caso, impressoras\). Uma lista completa com esses nomes especiais pode ser encontrada [aqui](http://www.dns-sd.org/ServiceTypes.html).
2022-05-01 12:49:36 +00:00
# SSDP
2023-06-06 18:56:34 +00:00
O Protocolo de Descoberta de Serviço Simples é usado para descobrir serviços em uma rede, principalmente para usar o protocolo UPnP.
SSDP é um protocolo baseado em texto baseado em [HTTPU](https://en.wikipedia.org/wiki/HTTPU). Ele usa UDP como protocolo de transporte subjacente. Os serviços são anunciados pelo sistema hospedeiro com endereçamento de multicast para um endereço IP multicast especificamente designado na porta UDP número 1900. No IPv4, o endereço de multicast é 239.255.255.250
2022-05-01 12:49:36 +00:00
# WSD
**Serviço da Web para Dispositivos**.
2023-06-06 18:56:34 +00:00
Este serviço permite que um dispositivo conectado em uma rede descubra quais serviços \(como impressoras\) estão disponíveis na rede.
O cliente pode enviar um pacote UDP de transmissão solicitando algum tipo de serviço ou o provedor de serviço pode enviar um pacote de transmissão dizendo que está oferecendo um serviço.
2022-05-01 12:49:36 +00:00
# OAuth2.0
Protocolo que permite compartilhar suas informações, por exemplo, do Google com outros serviços.
Basicamente **permite que você compartilhe** as informações justas e necessárias que estão armazenadas em um serviço, com outro. Dessa forma, você pode fazer login mais rapidamente e seus **dados são armazenados em apenas um local** e você não precisa inserir nomes de usuário/senhas em todos os lugares.
Funciona assim:
Primeiro você precisa estar logado no Google ou uma janela será aberta para você fazer login. Imediatamente depois, o serviço solicitará ao servidor do Google um token para acessar suas informações. O Google mostrará uma daquelas telas "_O aplicativo XXXXX deseja acessar estas informações suas: ..._" quando você clicar em aceitar, o Google responderá ao aplicativo com um código que o aplicativo usará para solicitar um token com o qual o Google responderá. Uma vez que o aplicativo tenha um token, ele pode ser usado com a API do Google para obter as informações solicitadas.
2022-05-01 12:49:36 +00:00
# RADIUS
Protocolo de autenticação e autorização para acessar uma rede. \(Usa a porta UDP 1813\)
2022-04-28 16:01:33 +00:00
É principalmente usado por provedores de serviços de Internet para gerenciar o acesso à rede para seus clientes.
2022-04-28 16:01:33 +00:00
Permite Autenticação, Autorização e Anotação.
2022-04-28 16:01:33 +00:00
2023-06-06 18:56:34 +00:00
Como funciona:
2022-04-28 16:01:33 +00:00
O usuário primeiro fala com o NAS \(gateway para o servidor\), ele verifica se o nome e a senha enviados a ele são válidos perguntando ao servidor RADIUS.
Opcionalmente, para maior segurança, você pode verificar o endereço de rede ou número de telefone do servidor para ver se corresponde.
Tanto o servidor RADIUS quanto o usuário que tenta se conectar têm um "segredo compartilhado", dessa forma o servidor RADIUS envia um desafio para o NAS que encaminha para o usuário que está fazendo login, este o criptografa com o referido segredo e encaminha para o NAS e se corresponder com a criptografia que o RADIUS fez, o usuário provou sua identidade.
Uma vez que a identidade é comprovada, o usuário do RADIUS instrui o NAS a atribuir ao usuário um endereço IP. Além disso, quando isso é feito, o NAS envia uma mensagem de início para o RADIUS para registrar. Quando o usuário faz logout, o NAS envia uma mensagem de término. Dessa forma, o RADIUS registra o consumo da sessão para poder cobrar adequadamente \(esses dados também são usados por razões estatísticas\)
# SMB e NetBIOS
## **SMB**
É um protocolo de compartilhamento de arquivos/impressoras/portas...
Isso pode ser executado diretamente sobre TCP na porta 445 \(que se você fizer uma varredura no Windows verá que é chamado de microsoft-ds\)
Ou sobre UDP 137, 138 ou TCP 137, 138 que usa NetBIOS sobre TCP \(chamado netbios -ssn\)
O objetivo de implementar o SMB apenas sobre TCP ou sobre NetBIOS + TCP é aumentar a capacidade de comunicação com mais equipamentos que suportam apenas um ou outro.
## **NetBIOS**
Sua função é estabelecer sessões e manter conexões para compartilhar recursos de rede, mas para enviar pacotes de um local para outro, ele requer IPC/IPX ou NetBEUI ou TCP/IP.
Cada máquina que usa o NetBIOS deve ter um **nome** único que a distingue das demais. Portanto, quando uma nova máquina entra, primeiro é verificado se ninguém está usando o nome que ela está solicitando para usar. Existem também **nomes de grupo** que podem ser usados por quantas estações quiserem, mas não pode haver dois grupos com o mesmo nome. É uma maneira de poder enviar mensagens para várias máquinas. Assim, você pode enviar mensagens para um usuário, um grupo ou broadcast.
A conexão pode ser sem conexão ou orientada à conexão:
**sem conexão:** Um datagrama é enviado para o destino, mas não há forma de saudação ou mensagem recebida. A máquina de destino deve estar configurada para poder receber datagramas.
**orientada à conexão:** Uma sessão é criada entre dois nomes \(pode até ser entre dois nomes da mesma máquina\) se uma mensagem recebida ou de erro for enviada.
**NetBEUI** realmente consiste em NetBIOS sobre NetBEUI que é um protocolo de rede e transporte que leva ao NetBIOS, era rápido mas muito barulhento porque transmitia muito, você também pode ter SMB sobre NetBEUI mas é mais comum do que NetBIOS rodar sobre TCP.
# LDAP
Protocolo que permite gerenciar diretórios e acessar bases de informações de usuários por meio do TCP/IP.
Permite tanto extrair informações quanto introduzi-las por meio de diferentes comandos.
Portanto, é um protocolo usado para acessar várias bases de dados que estão preparadas para falar esse protocolo.
# Active Directory
Basicamente é um banco de dados de objetos com informações como usuários, grupos, privilégios e recursos que é acessível a partir da rede \(por meio de um domínio\) para que essas informações possam ser acessadas e gerenciadas centralmente.
Servidor que salva objetos. Esses objetos são visíveis na rede por meio de um domínio. Um domínio pode ter dentro dele seu servidor onde está implementado, grupos, usuários...
Também é possível ter subdomínios que têm seu próprio servidor associado aos seus grupos, usuários...
Dessa forma, a gestão de usuários de uma rede é centralizada, uma vez que os usuários que podem fazer login podem ser gerados neste servidor, com as permissões que têm para saber se podem acessar determinados recursos de rede e assim tudo isso pode ser controlado de maneira simples.
Dessa forma, você pode consultar o diretório com um nome de usuário e obter informações como e-mail ou número de telefone. Você também pode fazer consultas gerais como: onde estão as impressoras? Quais são os nomes de domínio?
2022-04-28 16:01:33 +00:00
<details>
<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>
Outras formas de apoiar o HackTricks:
* Se você deseja ver sua **empresa anunciada no HackTricks** ou **baixar o HackTricks em PDF** Confira os [**PLANOS DE ASSINATURA**](https://github.com/sponsors/carlospolop)!
* Adquira o [**swag oficial PEASS & HackTricks**](https://peass.creator-spring.com)
* 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)
* **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)**.**
* **Compartilhe seus truques de hacking enviando PRs para os** [**HackTricks**](https://github.com/carlospolop/hacktricks) e [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) repositórios do github.
</details>