Инструмент для обфускации PoSh скриптов, написан на
Установка:
go install github.com/TaurusOmar/psobf/v2/cmd/psobf@v2.0.1
Запуск:
psobf -i .\revsh.ps1 -o revsh_obf.ps1 -level 1
На вход подаем оригинальный скрипт, на выход получаем обфусцированный и указываем уровень от 1 до 6
На последнем уровне используется AES шифрование
Примеры:
# Original
Write-Host "Hello, World!"
# Obfuscated level 1
$rukp = $([char[]](87,114,105,116,101,45,72,111,115,116,32,34,72,101,108,108,111,44,32,87,111,114,108,100,33,34) -join ''); . ([ScriptBlock]::Create($rukp))
# Original
Write-Host "Hello, World!"
# Obfuscated level 2
$rukp = 'V3JpdGUtSG9zdCAiSGVsbG8sIFdvcmxkISI='; $rukp = [Text.Encoding]::UTF8.GetString([Convert]::FromBase64String($rukp)); . ([ScriptBlock]::Create($rukp))
# Original
Write-Host "Hello, World!"
# Obfuscated level 3
$rukp = 'V3JpdGUtSG9zdCAiSGVsbG8sIFdvcmxkISI='; $tuez = [Convert]::FromBase64String($rukp); $tuez = [Text.Encoding]::UTF8.GetString($tuez); . ([ScriptBlock]::Create($tuez))
# Original
Write-Host "Hello, World!"
# Obfuscated level 4
$c='H4sIAAAAAAAA/wovyixJ1fXILy5RUPJIzcnJ11EIzy/KSVFUAgQAAP//PM5PshoAAAA=';$b=[Convert]::FromBase64String($c);$m=New-Object IO.MemoryStream(,$b);$g=New-Object IO.Compression.GzipStream($m,[IO.Compression.CompressionMode]::Decompress);$r=New-Object IO.StreamReader($g);$rukp=$r.ReadToEnd();. ([ScriptBlock]::Create($rukp))
# Original
Write-Host "Hello, World!"
# Obfuscated level 5
$rukp = @('Write-Host "He','llo, World!','"'); $rukp = $rukp -join ''; . ([ScriptBlock]::Create($rukp))
#soft #powershell #obfuscator #psobf
Please open Telegram to view this post
VIEW IN TELEGRAM
❤7👍6🔥5