mirror of
https://github.com/carlospolop/hacktricks
synced 2024-12-24 20:13:37 +00:00
39 lines
3.1 KiB
Markdown
39 lines
3.1 KiB
Markdown
# Proteções Comuns em Binários
|
|
|
|
<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ê 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>
|
|
|
|
## Habilitar Arquivos Core
|
|
|
|
**Arquivos Core** são um tipo de arquivo gerado por um sistema operacional quando um processo falha. Esses arquivos capturam a imagem da memória do processo falhado no momento de sua terminação, incluindo a memória do processo, registradores e estado do contador de programa, entre outros detalhes. Este snapshot pode ser extremamente valioso para depuração e compreensão do motivo da falha.
|
|
|
|
### **Habilitar a Geração de Despejos de Core**
|
|
|
|
Por padrão, muitos sistemas limitam o tamanho dos arquivos core para 0 (ou seja, não geram arquivos core) para economizar espaço em disco. Para habilitar a geração de arquivos core, você pode usar o comando `ulimit` (em bash ou shells similares) ou configurar as configurações em todo o sistema.
|
|
|
|
* **Usando ulimit**: O comando `ulimit -c unlimited` permite que a sessão de shell atual crie arquivos core de tamanho ilimitado. Isso é útil para sessões de depuração, mas não é persistente entre reinicializações ou novas sessões.
|
|
```bash
|
|
ulimit -c unlimited
|
|
```
|
|
* **Configuração Persistente**: Para uma solução mais permanente, você pode editar o arquivo `/etc/security/limits.conf` para incluir uma linha como `* soft core unlimited`, que permite a todos os usuários gerar arquivos core de tamanho ilimitado sem precisar definir ulimit manualmente em suas sessões.
|
|
```markdown
|
|
* soft core unlimited
|
|
```
|
|
### **Analisando Arquivos Core com GDB**
|
|
|
|
Para analisar um arquivo core, você pode usar ferramentas de debug como o GDB (GNU Debugger). Supondo que você tenha um executável que gerou um despejo core e o arquivo core se chama `core_file`, você pode iniciar a análise com:
|
|
```bash
|
|
gdb /path/to/executable /path/to/core_file
|
|
```
|
|
Este comando carrega o executável e o arquivo core no GDB, permitindo que você inspecione o estado do programa no momento do crash. Você pode usar comandos do GDB para explorar a pilha, examinar variáveis e entender a causa do crash.
|