Hackeo de contrasinais ocultos con Smbexec

Hackeo de contrasinais ocultos con Smbexec

Escribimos regularmente sobre como os hackers confían a miúdo na explotación métodos de pirateo sen código maliciosopara evitar a detección. Eles literalmente "sobrevivir no pasto", utilizando ferramentas estándar de Windows, evitando así antivirus e outras utilidades para detectar actividade maliciosa. Nós, como defensores, estamos agora obrigados a xestionar as desafortunadas consecuencias de tan intelixentes técnicas de hackeo: un empregado ben situado pode usar o mesmo enfoque para roubar datos encubertos (propiedade intelectual da empresa, números de tarxeta de crédito). E se non se apresura, pero traballa lenta e tranquilamente, será extremadamente difícil, pero aínda é posible se usa o enfoque correcto e o adecuado. Ferramentas, — identificar tal actividade.

Por outra banda, non me gustaría demonizar aos empregados porque ninguén quere traballar nun ambiente de negocios saído do 1984 de Orwell. Afortunadamente, hai unha serie de pasos prácticos e trucos de vida que poden facer a vida moito máis difícil para os iniciados. Consideraremos métodos de ataque encuberto, usado por hackers por empregados con algunha formación técnica. E un pouco máis discutiremos as opcións para reducir tales riscos: estudaremos as opcións técnicas e organizativas.

Que ten de malo PsExec?

Edward Snowden, con razón ou para mal, converteuse en sinónimo de roubo de datos privilexiados. Por certo, non esquezas botarlle unha ollada esta nota sobre outros iniciados que tamén merecen algún status de fama. Un punto importante que vale a pena subliñar sobre os métodos que utilizou Snowden é que, polo que sabemos, non se instalou sen software malicioso externo!

Pola contra, Snowden utilizou un pouco de enxeñería social e usou a súa posición como administrador do sistema para recoller contrasinais e crear credenciais. Nada complicado - ningún mimikatz, ataques home no medio ou metasploit.

Os empregados da organización non sempre están na posición única de Snowden, pero hai unha serie de leccións que se deben aprender do concepto de "supervivencia por pastoreo" das que debes ter en conta: non participar en ningunha actividade maliciosa que se poida detectar, e ser especialmente coidado co uso das credenciais. Lembra este pensamento.

Psexec e o seu curmán crackmapexec impresionaron a innumerables pentesters, hackers e bloggers de ciberseguridade. E cando se combina con mimikatz, psexec permite aos atacantes moverse dentro dunha rede sen necesidade de coñecer o contrasinal de texto claro.

Mimikatz intercepta o hash NTLM do proceso LSASS e despois pasa o token ou as credenciais, os chamados. ataque "pasar o hash". – en psexec, permitindo que un atacante inicie sesión noutro servidor como doutro usuario. E con cada paso posterior a un novo servidor, o atacante recolle credenciais adicionais, ampliando o rango das súas capacidades para buscar contido dispoñible.

Cando comecei a traballar con psexec pareceume máxico, grazas Mark Russinovich, o xenial desenvolvedor de psexec, pero tamén sei do seu ruidoso compoñentes. El nunca é secreto!

O primeiro feito interesante sobre psexec é que usa un uso extremadamente complexo Protocolo de ficheiros de rede SMB de Microsoft. Usando SMB, psexec transfire pequenas binario ficheiros ao sistema de destino, colocándoos no cartafol C:Windows.

A continuación, psexec crea un servizo de Windows usando o binario copiado e execútao baixo o nome extremadamente "inesperado" PSEXECSVC. Ao mesmo tempo, podes ver todo isto, como fixen eu, vendo unha máquina remota (ver máis abaixo).

Hackeo de contrasinais ocultos con Smbexec

Tarxeta telefónica de Psexec: servizo "PSEXECSVC". Executa un ficheiro binario que se colocou a través de SMB no cartafol C:Windows.

Como paso final, ábrese o ficheiro binario copiado Conexión RPC ao servidor de destino e despois acepta comandos de control (a través do intérprete de comandos de Windows cmd por defecto), lanzándoos e redirixindo a entrada e a saída á máquina doméstica do atacante. Neste caso, o atacante ve a liña de comandos básica, o mesmo que se estivese conectado directamente.

Moitos compoñentes e un proceso moi ruidoso!

Os complexos elementos internos de psexec explican a mensaxe que me desconcertou durante as miñas primeiras probas hai varios anos: "Iniciando PSEXECSVC..." seguido dunha pausa antes de que apareza o símbolo do sistema.

Hackeo de contrasinais ocultos con Smbexec

Psexec de Impacket realmente mostra o que está a suceder baixo o capó.

Non é sorprendente: psexec fixo unha gran cantidade de traballo baixo o capó. Se estás interesado nunha explicación máis detallada, consulta aquí isto descrición marabillosa.

Obviamente, cando se usaba como ferramenta de administración do sistema, que era propósito orixinal psexec, non hai nada de malo co "zumbido" de todos estes mecanismos de Windows. Non obstante, para un atacante, psexec xeraría complicacións, e para un experto cauteloso e astuto como Snowden, psexec ou unha utilidade similar sería demasiado risco.

E despois vén Smbexec

SMB é un xeito intelixente e secreto de transferir ficheiros entre servidores e os piratas informáticos levan séculos infiltrándose directamente en SMB. Creo que todo o mundo xa sabe que non paga a pena aberto Os portos SMB 445 e 139 a Internet, non?

En Defcon 2013, Eric Millman (brav0hax) presentado smbexec, para que os pentesters poidan probar a piratería furtiva SMB. Non sei toda a historia, pero despois Impacket refinouse aínda máis smbexec. De feito, para as miñas probas, descarguei os scripts de Impacket en Python Github.

A diferenza de psexec, smbexec evita transferir un ficheiro binario potencialmente detectado á máquina de destino. Pola contra, a utilidade vive enteiramente desde o pasto ata o lanzamento local liña de comandos de Windows.

Isto é o que fai: pasa un comando da máquina atacante a través de SMB a un ficheiro de entrada especial e, a continuación, crea e executa unha liña de comandos complexa (como un servizo de Windows) que lles parecerá familiar aos usuarios de Linux. En resumo: inicia un shell cmd nativo de Windows, redirixe a saída a outro ficheiro e despois envíao a través de SMB de volta á máquina do atacante.

A mellor forma de entender isto é mirar a liña de comandos, que puiden ter as miñas mans desde o rexistro de eventos (ver máis abaixo).

Hackeo de contrasinais ocultos con Smbexec

Non é esta a mellor forma de redirixir E/S? Por certo, a creación do servizo ten o ID de evento 7045.

Do mesmo xeito que psexec, tamén crea un servizo que fai todo o traballo, pero o servizo despois diso eliminado – úsase só unha vez para executar o comando e despois desaparece! Un oficial de seguridade da información que supervisa a máquina dunha vítima non poderá detectar obvio Indicadores de ataque: non se inicia ningún ficheiro malicioso, non se está instalando ningún servizo persistente e non hai evidencia de que se utilice RPC xa que SMB é o único medio de transferencia de datos. ¡Brillante!

Desde o lado do atacante, está dispoñible un "pseudo-shell" con atrasos entre o envío do comando e a recepción da resposta. Pero isto é suficiente para que un atacante -xa sexa un hacker interno ou externo que xa teña un punto de apoio- comece a buscar contido interesante.

Hackeo de contrasinais ocultos con Smbexec

Para enviar datos de volta desde a máquina de destino á máquina do atacante, utilízase smbcliente. Si, é o mesmo Samba utilidade, pero só convertido nun script Python por Impacket. De feito, smbclient permítelle aloxar de forma encuberta transferencias FTP a través de SMB.

Imos dar un paso atrás e pensar no que isto pode facer para o empregado. No meu escenario ficticio, digamos que un blogueiro, un analista financeiro ou un consultor de seguridade moi remunerado ten permiso para usar un portátil persoal para traballar. Como resultado dalgún proceso máxico, ela oféndese coa empresa e "vai todo mal". Dependendo do sistema operativo do portátil, utiliza a versión de Python de Impact ou a versión de Windows de smbexec ou smbclient como ficheiro .exe.

Do mesmo xeito que Snowden, descobre o contrasinal doutro usuario mirando por riba do seu ombreiro ou ten sorte e descobre un ficheiro de texto co contrasinal. E coa axuda destas credenciais, ela comeza a explorar o sistema cun novo nivel de privilexios.

Hacking DCC: Non necesitamos ningún Mimikatz "estúpido".

Nas miñas publicacións anteriores sobre pentesting, usei mimikatz con moita frecuencia. Esta é unha excelente ferramenta para interceptar credenciais: hash NTLM e mesmo contrasinais de texto claro agochados dentro dos portátiles, só á espera de ser usados.
Os tempos cambiaron. As ferramentas de seguimento melloraron para detectar e bloquear mimikatz. Os administradores de seguridade da información tamén teñen agora máis opcións para reducir os riscos asociados aos ataques de hash (PtH).
Entón, que debería facer un empregado intelixente para recoller credenciais adicionais sen usar mimikatz?

O kit de Impacket inclúe unha utilidade chamada vertedoiro de segredos, que recupera as credenciais da caché de credenciais de dominio ou DCC para abreviar. O meu entendemento é que se un usuario de dominio inicia sesión no servidor pero o controlador de dominio non está dispoñible, DCC permite que o servidor autentique o usuario. De todos os xeitos, secretsdump permítelle botar todos estes hash se están dispoñibles.

Os hash DCC son non hash NTML e non se pode usar para o ataque de PtH.

Ben, podes tentar cortalos para obter o contrasinal orixinal. Non obstante, Microsoft fíxose máis intelixente con DCC e os hash DCC volvéronse extremadamente difíciles de descifrar. Si teño hashcat, "o adiviño de contrasinais máis rápido do mundo", pero require unha GPU para funcionar de forma eficaz.

En vez diso, intentemos pensar como Snowden. Un empregado pode realizar enxeñería social cara a cara e posiblemente atopar información sobre a persoa cuxo contrasinal quere descifrar. Por exemplo, averigua se a conta en liña da persoa foi pirateada algunha vez e examina o seu contrasinal de texto claro para buscar pistas.

E este é o escenario co que decidín ir. Supoñamos que unha persoa privilegiada soubo que o seu xefe, Cruella, fora pirateado varias veces en diferentes recursos web. Despois de analizar varios destes contrasinais, dáse conta de que Cruella prefire usar o formato do nome do equipo de béisbol "Yankees" seguido do ano en curso - "Yankees2015".

Se agora estás tentando reproducir isto na casa, podes descargar unha pequena "C" código, que implementa o algoritmo de hash DCC e compílao. John the Ripper, por certo, engadiu soporte para DCC, polo que tamén se pode usar. Supoñamos que un iniciado non quere molestarse en aprender a Xoán o Destripador e que lle gusta executar "gcc" no código C heredado.

Finxindo o papel dunha persoa privilegiada, probei varias combinacións diferentes e finalmente puiden descubrir que o contrasinal de Cruella era "Yankees2019" (ver máis abaixo). Misión completa!

Hackeo de contrasinais ocultos con Smbexec

Un pouco de enxeñería social, un chisco de adiviñación e un chisco de Maltego e estás ben camiño de romper o hash de DCC.

Suxiro que rematemos aquí. Volveremos sobre este tema noutras publicacións e analizaremos métodos de ataque aínda máis lentos e furtivos, continuando construíndo o excelente conxunto de utilidades de Impacket.

Fonte: www.habr.com

Engadir un comentario