mirror of
https://github.com/carlospolop/hacktricks
synced 2024-12-25 12:33:39 +00:00
61 lines
4.5 KiB
Markdown
61 lines
4.5 KiB
Markdown
<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 maneiras de apoiar o HackTricks:
|
|
|
|
* 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)
|
|
* 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>
|
|
|
|
|
|
## Informações Básicas
|
|
|
|
**PAM (Módulos de Autenticação Plugáveis)** atua como um mecanismo de segurança que **verifica a identidade dos usuários que tentam acessar os 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, potencialmente limitando seu uso para evitar sobrecargas no sistema.
|
|
|
|
### Arquivos de Configuração
|
|
|
|
- **Sistemas Solaris e baseados em UNIX** geralmente 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 do serviço 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 uma configuração PAM para o serviço de login pode ser assim:
|
|
```text
|
|
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 do PAM**
|
|
|
|
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:
|
|
|
|
- **Auth**: Valida a identidade do usuário, frequentemente solicitando uma senha.
|
|
- **Account**: Lida com a verificação da conta, verificando 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 de ataques de dicionário.
|
|
- **Session**: Gerencia ações durante o início ou fim de uma sessão de serviço, como montagem de diretórios ou definição de limites de recursos.
|
|
|
|
### **Controles do Módulo PAM**
|
|
|
|
Os controles ditam a resposta do módulo ao sucesso ou falha, influenciando o processo de autenticação como um todo. Estes incluem:
|
|
|
|
- **Required**: A falha de um módulo obrigatório resulta em falha eventual, mas somente após a verificação de todos os módulos subsequentes.
|
|
- **Requisite**: Término imediato do processo em caso de falha.
|
|
- **Sufficient**: O sucesso ignora o restante das verificações do mesmo reino, a menos que um módulo subsequente falhe.
|
|
- **Optional**: Causa falha somente se for o único módulo na pilha.
|
|
|
|
### Cenário de Exemplo
|
|
|
|
Em uma configuração com vários 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, os logins de root são bloqueados, porém todos os módulos ainda são processados devido ao seu status "required". O `pam_env` define variáveis de ambiente, potencialmente auxiliando na experiência do usuário. Os módulos `pam_ldap` e `pam_unix` trabalham juntos para autenticar o usuário, com o `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)
|