Empire Powershell e as muitas coisas que podemos fazer com os ouvintes, stagers e agentes que oferecem a ferramenta. Se jogarmos um pouco mais podemos começar a fazer coisas realmente úteis em uma auditoria de sistemas da Microsoft. Os agentes tenham implantado uma ou mais máquinas podem fornecer o local perfeito para tentar obter privilégios, swing, a recolha de informações sensíveis a partir das máquinas, executar código que oferece novas possibilidades e formas, em outras palavras, explorar múltiplos caminhos palco.
No estudo de caso que vemos hoje características Powershell Império que permitem o seguinte:
Se as condições permitirem usuário pode executar uma UAC manual.
Powershell Empire pode injetar agente em qualquer processo, sem correr powershell.exe. Isto é muito poderoso e interessante para passar despercebida.
a execução de código. Nós podemos correr, por exemplo, um Meterpreter e assumir o controle da máquina com Metasploit em um determinado momento.
UAC remotamente Bypasseando
Quando temos o controle de um agente remoto, temos uma variedade de opções e módulos executáveis. Um dos módulos poderosos é privsec / bypassuac_wscript, que permite elevar privilégios na máquina remota. É verdade que para o bypassuac suceder o contexto em que é executado o agente deve ter:
UAC deve ser configurado por padrão.
A identidade do usuário que o agente foi executado deve fazer parte do grupo de administradores.
O módulo tem que configurar o ouvinte ao qual o agente vai retornar a saída do trabalho executado. Se a ação for bem sucedida obter a execução de um novo agente que será executado como SYSTEM, de modo que teremos a capacidade de executar qualquer ação no sistema, por exemplo, para despejar hashes com módulo powerdump.
Listener deve ser definida na direção onde estaremos ouvindo, como mencionado acima. Se você olhar para a imagem seguinte você pode ver como o novo agente obtido tem a * onde a coluna Nome de usuário. Isto significa que está sendo executado com privilégios elevados, ou seja, ignorar nosso trabalho. O nome do agente que temos é aleatório, e é recomendado para mudar o nome interagem mais facilmente. Para isso, você pode executar o seguinte conjunto de instruções:
- agentes
- interagir <nome do agente>
- renomear <novo nome>
Injecção de drogas em outros ambientes
Uma das coisas mais interessantes para mim é a capacidade de ser injetado em quase todo o processo, desde que seja o privilégio de ter. Por exemplo, para injectar um agente em um processo como Lsass.exe. Isto faria com que a gente vá muito despercebido.
A primeira coisa que você poderia fazer com o agente anterior iria lançar uma lista de tarefas que nos permite, através do PowerShell, obter uma lista de processos em execução na máquina, e como privilégio. Neste momento sabemos que o PID do processo, o que vamos precisar para o módulo PSInject.
Para carregar o módulo PSInject pode ser usado de duas maneiras: usemodule gestão / psinject ou comando psinject [nome ouvinte].Uma vez que o módulo é carregado tem um número de opções que nos permitem configurar o processo onde queremos injetar, através do PID dela. Se tudo correr bem, vamos obter um novo agente em execução no computador remoto, mas neste caso não será liberado para o processo powershell.exe, portanto, passado um pouco mais despercebido.
Como você pode ver na foto acima obter um novo agente com privilégios de sistema e injetado no processo de LSASS. A partir daqui pode-se jogar mais relaxado, porque o usuário não fechar o processo.
execução de código: shellcode
O último passo é a execução de código, tal como um Meterpreter a partir de um agente de Powershell. Para isso, o módulo code_execution / invoke_shellcode é usado. Este módulo permite que você selecione o endereço IP ou porta para conectar o Meterpreter.
Por outro lado deve ser definido no Metasploit Exploit / módulo multi / manipulador para shellcode conexão vai lançar o agente. A configuração deve corresponder tanto LHOST e lport. Peculiaridade dizer que quando executado em um processo que obteve o privilégio antes, pode ser o sistema de Metasploit, como você pode ver na imagem abaixo.
Em conclusão, temos várias maneiras de melhorar a nossa acção sobre a auditoria ou a pentest e PowerShell oferece grande potência e versatilidade.