hacktricks/linux-hardening/linux-post-exploitation/pam-pluggable-authentication-modules.md

106 lines
6.9 KiB
Markdown
Raw Normal View History

# PAM - Módulos de Autenticação Pluggable
{% hint style="success" %}
Aprenda e pratique Hacking AWS:<img src="/.gitbook/assets/arte.png" alt="" data-size="line">[**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)<img src="/.gitbook/assets/arte.png" alt="" data-size="line">\
Aprenda e pratique Hacking GCP: <img src="/.gitbook/assets/grte.png" alt="" data-size="line">[**HackTricks Training GCP Red Team Expert (GRTE)**<img src="/.gitbook/assets/grte.png" alt="" data-size="line">](https://training.hacktricks.xyz/courses/grte)
2022-04-28 16:01:33 +00:00
<details>
2022-04-28 16:01:33 +00:00
<summary>Support HackTricks</summary>
2022-04-28 16:01:33 +00:00
* Confira os [**planos de assinatura**](https://github.com/sponsors/carlospolop)!
* **Junte-se ao** 💬 [**grupo do Discord**](https://discord.gg/hRep4RUj7f) ou ao [**grupo do telegram**](https://t.me/peass) ou **siga**-nos no **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
* **Compartilhe truques de hacking enviando PRs para o** [**HackTricks**](https://github.com/carlospolop/hacktricks) e [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) repositórios do github.
2022-04-28 16:01:33 +00:00
</details>
{% endhint %}
2022-04-28 16:01:33 +00:00
#### [WhiteIntel](https://whiteintel.io)
<figure><img src="../../.gitbook/assets/image (1227).png" alt=""><figcaption></figcaption></figure>
[**WhiteIntel**](https://whiteintel.io) é um mecanismo de busca alimentado pela **dark-web** que oferece funcionalidades **gratuitas** para verificar se uma empresa ou seus clientes foram **comprometidos** por **malwares ladrões**.
O principal objetivo do WhiteIntel é combater a tomada de contas e ataques de ransomware resultantes de malware que rouba informações.
Você pode conferir o site deles e experimentar o mecanismo **gratuitamente** em:
{% embed url="https://whiteintel.io" %}
***
2022-04-28 16:01:33 +00:00
### Informações Básicas
2021-06-23 17:08:03 +00:00
**PAM (Módulos de Autenticação Pluggable)** atua como um mecanismo de segurança que **verifica a identidade dos usuários que tentam acessar serviços de computador**, controlando seu acesso com base em vários critérios. É semelhante a um porteiro digital, garantindo que apenas usuários autorizados possam interagir com serviços específicos, enquanto potencialmente limita seu uso para evitar sobrecargas no sistema.
2021-06-23 17:08:03 +00:00
#### Arquivos de Configuração
* **Sistemas Solaris e baseados em UNIX** normalmente utilizam um arquivo de configuração central localizado em `/etc/pam.conf`.
* **Sistemas Linux** preferem uma abordagem de diretório, armazenando configurações específicas de serviços dentro de `/etc/pam.d`. Por exemplo, o arquivo de configuração para o serviço de login é encontrado em `/etc/pam.d/login`.
Um exemplo de configuração PAM para o serviço de login pode parecer assim:
```
2021-06-23 17:08:03 +00:00
auth required /lib/security/pam_securetty.so
auth required /lib/security/pam_nologin.so
auth sufficient /lib/security/pam_ldap.so
auth required /lib/security/pam_unix_auth.so try_first_pass
account sufficient /lib/security/pam_ldap.so
account required /lib/security/pam_unix_acct.so
password required /lib/security/pam_cracklib.so
password required /lib/security/pam_ldap.so
password required /lib/security/pam_pwdb.so use_first_pass
session required /lib/security/pam_unix_session.so
```
#### **Reinos de Gerenciamento PAM**
2021-06-23 17:08:03 +00:00
Esses reinos, ou grupos de gerenciamento, incluem **auth**, **account**, **password** e **session**, cada um responsável por diferentes aspectos do processo de autenticação e gerenciamento de sessão:
2021-06-23 17:08:03 +00:00
* **Auth**: Valida a identidade do usuário, frequentemente solicitando uma senha.
* **Account**: Trata da verificação da conta, checando condições como pertencimento a grupos ou restrições de horário.
* **Password**: Gerencia atualizações de senha, incluindo verificações de complexidade ou prevenção contra ataques de dicionário.
* **Session**: Gerencia ações durante o início ou fim de uma sessão de serviço, como montar diretórios ou definir limites de recursos.
2021-06-23 17:08:03 +00:00
#### **Controles de Módulo PAM**
2021-06-23 17:08:03 +00:00
Os controles ditam a resposta do módulo ao sucesso ou falha, influenciando o processo de autenticação geral. Estes incluem:
2021-06-23 17:08:03 +00:00
* **Required**: A falha de um módulo obrigatório resulta em falha eventual, mas somente após todos os módulos subsequentes serem verificados.
* **Requisite**: Término imediato do processo em caso de falha.
* **Sufficient**: O sucesso ignora as verificações do restante do mesmo reino, a menos que um módulo subsequente falhe.
* **Optional**: Causa falha apenas se for o único módulo na pilha.
2021-06-23 17:08:03 +00:00
#### Cenário de Exemplo
2021-06-23 17:08:03 +00:00
Em uma configuração com múltiplos módulos de autenticação, o processo segue uma ordem estrita. Se o módulo `pam_securetty` encontrar o terminal de login não autorizado, logins de root são bloqueados, mas todos os módulos ainda são processados devido ao seu status de "required". O `pam_env` define variáveis de ambiente, potencialmente ajudando na experiência do usuário. Os módulos `pam_ldap` e `pam_unix` trabalham juntos para autenticar o usuário, com `pam_unix` tentando usar uma senha fornecida anteriormente, aumentando a eficiência e flexibilidade nos métodos de autenticação.
### Referências
* [https://hotpotato.tistory.com/434](https://hotpotato.tistory.com/434)
#### [WhiteIntel](https://whiteintel.io)
<figure><img src="../../.gitbook/assets/image (1227).png" alt=""><figcaption></figcaption></figure>
[**WhiteIntel**](https://whiteintel.io) é um mecanismo de busca alimentado pela **dark-web** que oferece funcionalidades **gratuitas** para verificar se uma empresa ou seus clientes foram **comprometidos** por **malwares ladrões**.
O principal objetivo do WhiteIntel é combater a tomada de contas e ataques de ransomware resultantes de malware que rouba informações.
Você pode verificar o site deles e experimentar o mecanismo **gratuitamente** em:
{% embed url="https://whiteintel.io" %}
{% hint style="success" %}
Aprenda e pratique Hacking AWS:<img src="/.gitbook/assets/arte.png" alt="" data-size="line">[**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)<img src="/.gitbook/assets/arte.png" alt="" data-size="line">\
Aprenda e pratique Hacking GCP: <img src="/.gitbook/assets/grte.png" alt="" data-size="line">[**HackTricks Training GCP Red Team Expert (GRTE)**<img src="/.gitbook/assets/grte.png" alt="" data-size="line">](https://training.hacktricks.xyz/courses/grte)
<details>
<summary>Support HackTricks</summary>
* Confira os [**planos de assinatura**](https://github.com/sponsors/carlospolop)!
* **Junte-se ao** 💬 [**grupo do Discord**](https://discord.gg/hRep4RUj7f) ou ao [**grupo do telegram**](https://t.me/peass) ou **siga**-nos no **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
* **Compartilhe truques de hacking enviando PRs para os repositórios do** [**HackTricks**](https://github.com/carlospolop/hacktricks) e [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud).
</details>
{% endhint %}