Corrigindo a vulnerabilidade de til do IIS

9

Um de nossos servidores IIS (IIS 7.5, Server 2008 R2) é aparentemente "vulnerável" ao problema de divulgação do nome curto de arquivo til .

No entanto, estou tendo dificuldades para resolver o problema. Até agora, eu tenho

  • Os nomes de arquivos 8.3 desabilitados, interromperam o servidor da Web, recriaram o diretório do site e iniciaram o serviço novamente

  • Adicionada uma regra de filtro para um til no URL:

insira a descrição da imagem aqui

  • Adicionada uma regra de filtro para um til em QUALQUER LUGAR:

insira a descrição da imagem aqui

  • IISRESET algumas vezes

  • Verificado web.configse as regras de filtro relevantes foram adicionadas

.. mas ainda assim, não consigo fazer meu site passar no teste :

java -jar ~/temp/IIS-ShortName-Scanner-master/IIS_shortname_scanner.jar http://www.example.com

[...SNIP...]

Testing request method: "TRACE" with magic part: "/webresource.axd" ...
Testing request method: "DEBUG" with magic part: "" ...
Testing request method: "OPTIONS" with magic part: "" ...
Testing request method: "GET" with magic part: "" ...
Reliable request method was found = GET
Reliable magic part was found = 
144 requests have been sent to the server:

<<< The target website is vulnerable! >>>

O que mais eu preciso fazer para resolver isso?

EDIT: aqui está o DIR /xque parece não mostrar nomes de arquivos 8.3:

insira a descrição da imagem aqui

e aqui está o pool de aplicativos para o site (todos os outros sites no servidor são iguais):

insira a descrição da imagem aqui

EDIT2 : verificação, não há nomes de arquivos 8.3 restantes:

insira a descrição da imagem aqui

KenD
fonte
É uma maneira rápida de verificar se existem nomes 8.3 em um diretório dir /x. Seu site pode ter links simbólicos para diretórios que ainda contêm nomes 8.3 gerados automaticamente.
25715 Brian
Não tenho sinal de nenhum nome de arquivo 8.3. Receio :( #
252 KenD
Instalar o .NET 4.0 (que não é vulnerável a essa exploração) é a outra solução comum para esse problema. Você já tentou isso?
HopelessN00b
O .NET 4 está instalado e todos os pools de aplicativos no servidor estão configurados para uso .NET Framework v4.0.30319- veja a captura de tela na edição acima.
26415 KenD
4
Uau. Provavelmente, você está tentando entender aqui, mas você tem certeza de que o scanner de vulnerabilidades que você está usando é confiável? Tente uma ferramenta diferente ou tente executar o ataque manualmente e veja o que vê.
HopelessN00b

Respostas:

6

Tente procurar nomes de arquivos curtos existentes com fsutil:

  • fsutil 8dot3name scan /s /v E:\inetpub\wwwroot

E retire-os se forem encontrados:

  • fsutil 8dot3name strip /s /v E:\inetpub\wwwroot

Também olhando para o log com a parte mágica vazia ( magic part: ""), imagino que poderia ser um bug no POC. Essa linha no config.xml parece ter vírgula extra depois de /webresource.axd:

<entry> key="magicFinalPartList">
 <![CDATA[\a.aspx,\a.asp,/a.aspx,/a.asp,/a.shtml,/a.asmx‌​,/a.ashx,/a.config,/a.php,/a.jpg,/webresource.axd,,/a.xxx]]>
</entry>

Eu perguntei dev. via Twitter sobre isso e ele respondeu:

Para casos raros em que não são necessárias extensões. Mas, recentemente, isso causou apenas mais problemas! Vou removê-lo agora.

Eu o removi do arquivo de configuração. Esta foi a 2ª reclamação, por isso foi a hora certa para essa alteração.

Então, parece que você está seguro agora :)

beatcracker
fonte
Medo não há nenhuma mudança - ver "EDIT2" no meu post original :(
Kend
1
Olhando para o log com a parte mágica vazia ( magic part: ""), eu me pergunto, isso poderia ser um bug no POC. Esta linha em config.xml olhares como ele tem vírgula extra após /webresource.axd:<entry key="magicFinalPartList"><![CDATA[\a.aspx,\a.asp,/a.aspx,/a.asp,/a.shtml,/a.asmx,/a.ashx,/a.config,/a.php,/a.jpg,/webresource.axd,,/a.xxx]]></entry>
beatcracker
Isso é muito interessante - embora, olhando para trás nas revisões, essa "vírgula dupla" esteja no código há um tempo. Removendo isso significa que o teste agora é executado sem qualquer erro óbvio ...
Kend
Ha, você está seguro, veja a atualização!
Beatcracker 20/03/2015
Todo esse trabalho e estávamos seguros o tempo todo :) Obrigado por sua ajuda e entrar em contato com o desenvolvedor!
Kend
1

também "Observação: a alteração na entrada de registro NtfsDisable8dot3NameCreation afeta apenas arquivos, pastas e perfis criados após a alteração. Os arquivos que já existem não são afetados."

Nota: Embora a desativação da criação do nome de arquivo 8.3 aumente o desempenho do arquivo no Windows, alguns aplicativos (16 bits, 32 bits ou 64 bits) podem não conseguir encontrar arquivos e diretórios com nomes longos.

Albert Riojas
fonte
0

Infelizmente, a única maneira de realmente lidar com isso é um conjunto irritante de variações, dependendo da sua versão do Windows, desativando a capacidade de gerar nomes 8.3.

Para sua versão do Windows:

Para desabilitar a criação do nome 8.3 em todas as partições NTFS, digite comportamento fsutil.exe, defina disable8dot3 1 em um prompt de comando elevado e pressione Enter.

Fonte: http://support.microsoft.com/kb/121007

Dave Holland
fonte
O artigo que você vinculou diz como desativar a criação do nome de arquivo 8.3, não o motivo por que ele resolve o problema.
Michael Hampton
Já tenho deficientes 8.3 nomes de arquivos, e dir /xnão mostra os nomes de arquivo curtos no diretório do site
Kend
Ken, esse era o método que você costumava fazer?
Dave Holland
Sim; Eu também vi referência a uma configuração do registro, mas o fsutilcomando parece apenas definir essa chave para mim.
Kend
0

Não sei exatamente se o script funciona e como sua rede é configurada, mas que tal filtrar através de algo na frente do servidor IIS (mesmo que seja apenas um dispositivo virtual em uma máquina virtual)? Ou seja, você configura um IPS com uma regra que descarta especificamente o tráfego referente a esse problema específico?

dtbnguyen
fonte