* Você trabalha em uma **empresa de segurança cibernética**? Você quer ver sua **empresa anunciada no HackTricks**? ou você quer ter acesso à **última versão do PEASS ou baixar o HackTricks em PDF**? Verifique os [**PLANOS DE ASSINATURA**](https://github.com/sponsors/carlospolop)!
* Descubra [**A Família PEASS**](https://opensea.io/collection/the-peass-family), nossa coleção exclusiva de [**NFTs**](https://opensea.io/collection/the-peass-family)
* Adquira o [**swag oficial do PEASS & HackTricks**](https://peass.creator-spring.com)
* **Junte-se ao** [**💬**](https://emojipedia.org/speech-balloon/) [**grupo Discord**](https://discord.gg/hRep4RUj7f) ou ao [**grupo telegram**](https://t.me/peass) ou **siga-me** no **Twitter** [**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**
* **Compartilhe seus truques de hacking enviando PRs para o** [**repositório hacktricks**](https://github.com/carlospolop/hacktricks) **e** [**repositório hacktricks-cloud**](https://github.com/carlospolop/hacktricks-cloud).
Em qualquer servidor IIS onde você obtenha um código 302, você pode tentar remover o cabeçalho Host e usar HTTP/1.0 e dentro da resposta, o cabeçalho Location pode apontar para o endereço IP interno:
When conducting a penetration test on a web application hosted on IIS (Internet Information Services), it is important to identify any potential vulnerabilities that could lead to the disclosure of internal IP addresses. This information can be valuable to an attacker as it provides insight into the network infrastructure.
One common method to obtain the internal IP address is through a misconfigured DNS server. By performing a DNS zone transfer, an attacker can retrieve the internal IP addresses associated with the domain. This can be done using tools like `nslookup` or `dig`.
Another technique involves exploiting a server-side request forgery (SSRF) vulnerability. By tricking the application into making a request to a specific URL, an attacker can force the server to reveal its internal IP address in the response headers or error messages.
Additionally, if the web application is vulnerable to server-side code injection, an attacker can execute commands that reveal the internal IP address. This can be done by injecting code that retrieves the server's network configuration or by executing commands that display the IP address.
It is important to note that disclosing internal IP addresses can provide valuable information to an attacker and should be considered a serious security issue. Therefore, it is crucial to regularly assess and secure the configuration of your IIS server to prevent such leaks.
```
Resposta revelando o IP interno:
```
Ao realizar um teste de penetração em um aplicativo da web hospedado no IIS (Internet Information Services), é importante identificar quaisquer vulnerabilidades potenciais que possam levar à divulgação de endereços IP internos. Essas informações podem ser valiosas para um invasor, pois fornecem insights sobre a infraestrutura de rede.
Um método comum para obter o endereço IP interno é através de um servidor DNS mal configurado. Ao realizar uma transferência de zona DNS, um invasor pode recuperar os endereços IP internos associados ao domínio. Isso pode ser feito usando ferramentas como `nslookup` ou `dig`.
Outra técnica envolve a exploração de uma vulnerabilidade de falsificação de solicitação do lado do servidor (SSRF). Ao enganar o aplicativo para fazer uma solicitação a uma URL específica, um invasor pode forçar o servidor a revelar seu endereço IP interno nos cabeçalhos de resposta ou mensagens de erro.
Além disso, se o aplicativo da web for vulnerável à injeção de código do lado do servidor, um invasor pode executar comandos que revelem o endereço IP interno. Isso pode ser feito injetando código que recupera a configuração de rede do servidor ou executando comandos que exibem o endereço IP.
É importante observar que a divulgação de endereços IP internos pode fornecer informações valiosas a um invasor e deve ser considerada um problema de segurança grave. Portanto, é crucial avaliar regularmente e proteger a configuração do seu servidor IIS para evitar tais vazamentos.
Você pode fazer upload de arquivos .config e usá-los para executar código. Uma maneira de fazer isso é adicionar o código no final do arquivo dentro de um comentário HTML: [Baixe o exemplo aqui](https://github.com/swisskyrepo/PayloadsAllTheThings/blob/master/Upload%20Insecure%20Files/Configuration%20IIS%20web.config/web.config)
Mais informações e técnicas para explorar essa vulnerabilidade [aqui](https://soroush.secproject.com/blog/2014/07/upload-a-web-config-file-for-fun-profit/)
Resumidamente, existem vários arquivos web.config dentro das pastas do aplicativo com referências a arquivos "**assemblyIdentity**" e "**namespaces**". Com essas informações, é possível saber **onde estão localizados os executáveis** e baixá-los.\
A partir dos **Dlls baixados**, também é possível encontrar **novos namespaces** nos quais você deve tentar acessar e obter o arquivo web.config para encontrar novos namespaces e assemblyIdentity.\
Como qualquer aplicativo .Net, os aplicativos MVC têm um arquivo **web.config**, onde as tags XML "**assemblyIdentity**" identificam todos os arquivos binários usados pelo aplicativo.
No resultado anterior, você pode encontrar referências a várias "**assemblyIdentity**". Esses são arquivos que podem estar localizados dentro da pasta /bin. Por exemplo: **/bin/WebGrease.dll**.
Além disso, as aplicações .Net MVC são estruturadas para definir **outros arquivos web.config**, com o objetivo de incluir qualquer declaração para namespaces específicos para cada conjunto de páginas de visualização, aliviando os desenvolvedores de declarar namespaces " @using " em cada arquivo.
A partir de uma resposta anterior, a declaração de um **namespace personalizado** (já que outros namespaces são padrões) sugere que uma DLL chamada "**WebApplication1**" está presente no diretório /bin.
Vamos supor que a DLL anterior esteja importando um namespace chamado **WebApplication1.Areas.Minded**. Um atacante pode inferir que outros arquivos web.config estão presentes na aplicação, em caminhos previsíveis/padrão como **/nome-da-área/Views/**, contendo configurações específicas que podem se referir a outros arquivos DLL presentes na pasta /bin.
Observe como na saída anterior você pode ver um novo namespace chamado: **WebApplication1.AdditionalFeatures**, o que indica que há outro Dll na pasta /bin chamado **WebApplication1.AdditionalFeatures.dll**
* Você trabalha em uma **empresa de cibersegurança**? Você quer ver sua **empresa anunciada no HackTricks**? ou você quer ter acesso à **última versão do PEASS ou baixar o HackTricks em PDF**? Verifique os [**PLANOS DE ASSINATURA**](https://github.com/sponsors/carlospolop)!
* Descubra [**A Família PEASS**](https://opensea.io/collection/the-peass-family), nossa coleção exclusiva de [**NFTs**](https://opensea.io/collection/the-peass-family)
* Adquira o [**swag oficial do PEASS & HackTricks**](https://peass.creator-spring.com)
* **Junte-se ao** [**💬**](https://emojipedia.org/speech-balloon/) [**grupo Discord**](https://discord.gg/hRep4RUj7f) ou ao [**grupo telegram**](https://t.me/peass) ou **siga-me** no **Twitter** [**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**
* **Compartilhe seus truques de hacking enviando PRs para o** [**repositório hacktricks**](https://github.com/carlospolop/hacktricks) **e** [**repositório hacktricks-cloud**](https://github.com/carlospolop/hacktricks-cloud).