Я пытаюсь создать программу на python, которая будет деобфусцировать вредоносное ПО PowerShell, использующее IEX.Моя программа на Python на самом деле перехватывает функцию IEX и вместо запуска нужной строки она печатает строку.Теперь моя проблема в том, что у меня есть несколько скриптов .ps1 (для примеров 1.ps1, 2.ps1 и т. Д.), И я хочу запустить их все в одном сеансе, чтобы все локальные переменные, созданные 1Скрипт .ps1, скрипт 2.ps1 сможет использовать ...
Теперь я попробовал так много способов. Сначала я пытался использовать подпроцесс, но он всегда создает новый сеанс при каждом вводе команды (это путь к файлу .ps1).Затем я нашел этот проект на GitHub: https://gist.github.com/MarkBaggett/a7c10195b2626c78009bf73bcdb6db20, который действительно потрясающий и сработал, но, тем не менее, кажется, что когда я запускаю команду ./1.ps1, он все равно не сохраняет локальные переменные в сеансе (может быть,открывает новый при запуске скрипта).Я попытался сделать также «Get-Content 1.ps1 | iex», но затем он вылетает, поскольку у меня есть функции, например:
function Invoke-Expression()
{
param(
[Parameter( `
Mandatory=$True, `
Valuefrompipeline = $True)]
[String]$Command
)
Write-Host $Command
}
, взятые из проекта PSDecode: https://github.com/R3MRUM/PSDecode/blob/master/PSDecode.psm1#L28
В любом случае, есть идеи о том, как я могу это сделать?У меня есть эти сценарии на рабочем столе, но я не знаю, как их запускать в одном сеансе, чтобы они использовали одни и те же локальные переменные ...
Две вещи, которые я сделал, но они действительно отстойные: 1. Конвертировать всесценариев до 1 сценария и запустите его, но при следующем запуске я буду использовать эту программу, у меня может быть 100 или более сценариев, и я действительно не хочу этого делать.2. Я могу сохранить локальные переменные из каждого сценария и загрузить его в другой, но я хочу использовать его в худшем случае и до сих пор не получил.
Большое спасибо за помощь и извинитедля моей грамматики мой английский не мой родной язык, как вы можете видеть:)