Powershell Empire的使用

2023-11-03 14:59
文章标签 使用 powershell empire

本文主要是介绍Powershell Empire的使用,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Empire

  • Empire
    • 简介
    • 使用方法
      • 设置监听
  • 生成木马
    • DLL木马
    • launcher
    • launcher_vbs木马
    • launcher_bat 木马
    • Macro木马
    • Ducky
  • 连接主机
  • 信息收集
    • 屏幕截图
    • 键盘记录
    • 剪贴板记录
    • 查找共享
    • 收集目标主机信息
    • ARP扫描
    • DNS信息获取
    • 查找域管登陆服务器IP
    • 本地管理组访问模块
  • 提权
    • Bypass UAC
    • bypassuac_wscript
    • PowerUp
      • AllChecks模块
    • GPP
  • 横向渗透
    • 会话注入
    • Invoke-PsExec
    • Invoke-WMI
    • PowerShell Remoting
  • 后门
    • 权限持久性劫持shift后门
    • 注册表诸如后门
    • 计划任务获取系统权限
    • Empire反弹回Metasploit

Empire

简介

Empire是针对Windows平台的,使用PowerShell脚本作为攻击载荷的渗透测试攻击框架,具有stager生成提权、权限维持的功能。Empire无需powershell.exe就能运行power shell代理的功能,有许多后期漏洞利用模块。类似于msf,基于power shell的远程控制木马。
可以在GitHub上下载
安装过程不过多赘述。
打开Empire,有285个模块,0个监听,0个代理。
在这里插入图片描述

使用方法

设置监听

Empire的使用方法与msf的方法相同,先设置监听,生成木马,然后监听反弹代理。
输入Listeners进入监听页面,uselistener设置监听模式,共有7种模式

  • dbx
  • http
  • http_foreign
  • http_hop
  • http_mapi
  • http_com
  • meterpreter
    我们使用http方式 uselistener http,然后设置响应参数。Name与Host。execute执行开始监听。
    在这里插入图片描述
    回到listeners界面,使用list命令可以看到当前的会话
    在这里插入图片描述使用kill Name 可以删除监听。

生成木马

这一阶段类似于msf中生成payload一样。usetager Tab建查看模块
在这里插入图片描述multi通用模块,osx是mac的模块。

DLL木马

命令usestager windows/dll,info查看详细参数
在这里插入图片描述设置Listener execute执行,tmp下生成了launcher.dll文件,并在目标机中运行就会反弹代理。
在这里插入图片描述

launcher

这个模块用于生成shellcode,使用方法launcher.生成base64编码的代码。在目标机power shell中执行就会获得权限。并且杀毒软件并没有提示。
在这里插入图片描述使用agents可以看到我们的主机已经上线了。可以使用rename进行改名。
在这里插入图片描述

launcher_vbs木马

使用usetager windows/launcher_vbs,输入info查看我们需要设置的参数。
在这里插入图片描述我们需要设置Listener set Listener clay execute执行。tmp目录下生成了launcher.vbs文件。
在这里插入图片描述目标机中成功执行后,我们看到反弹回一个会话,成功上线。
在这里插入图片描述

launcher_bat 木马

与上面方法相同,同样使用usestager模块。usestager windows/launcher_bat,info查看需要设置的参数。设置 Listener,execute执行。同样在tmp目录下生成bat文件。
在这里插入图片描述在目标机中执行,成功反弹会话。
我们可以将批处理文件插入到文档中,这样不会引起注意。这里使用的wps,插入-对象 将我们的批处理文件加入进去,建议更改图标增加迷惑性。
在这里插入图片描述修改文件名,一旦文档在目标机中执行,我们就会得到主机的权限(360会提示发现宏病毒)。
在这里插入图片描述

Macro木马

设置Macro木马 usestager windwos/macro,info查看详细参数。set Listener clay execute执行。tmp目录下生成宏文件。
在这里插入图片描述
将生成的宏文件加入到文档中,wps中打开开发工具,选择宏,创建宏点击创建。
在这里插入图片描述在VB编辑中,将原来的代码删除,将生成的宏中的代码复制进去,并另存为doc文件。
在这里插入图片描述在目标机中执行了这个文档,就会获得主机的权限。文档打开后,有安全警告,应与社工结合使用,诱导点击启用。(360提示发现宏病毒)
在这里插入图片描述

Ducky

Empire中也支持小黄鸭反弹代理。usestager windows/ducky info查看详细参数。
在这里插入图片描述set Listener clay execute,将生成代码烧录小黄鸭中。
在这里插入图片描述

连接主机

agents查看已连接的主机,带*指已提权的主机。
在这里插入图片描述连接主机命令intercat Name。help可以查看帮助。
在这里插入图片描述命令非常强大,兼容Windows Linux msf 很多常用的命令。
使用Linux命令
在这里插入图片描述help agentcmds查看可以使用的命令。
在这里插入图片描述
使用一些cmd命令时加上shell。
在这里插入图片描述empire内置猕猴桃可以,输入mimikatz命令可以使用。
在这里插入图片描述creds可以过滤获取的用户密码。
在这里插入图片描述抓取的密码比较多时,可以使用hash/plaintext进行排列。creds export 目录可以保存抓取的信息。

信息收集

屏幕截图

使用模块usemodule collection/screenshot
在这里插入图片描述图片保存在empire目录下的downloads中。
在这里插入图片描述

键盘记录

使用模块 usemodule collection/keylogger
在这里插入图片描述downloads下生成agent.log文件
在这里插入图片描述jobs查看记录,如果要停止键盘记录使用 jobs kill job_name。
在这里插入图片描述

剪贴板记录

使用模块 usemodule/clipboard_monitor info查看详细参数。
在这里插入图片描述目标机中随意复制一段,我们就可以看到结果了
在这里插入图片描述停止剪贴板记录和上面的方法相同。
在这里插入图片描述

查找共享

使用模块 usemodule situational_awareness/network/powerview/share_finder 将列出域内所有的共享。
在这里插入图片描述

收集目标主机信息

模块 usemodule situational_awareness/host/winenum 查看本机用户,域成员、最后密码设置时间、剪贴板内容、系统基本信息、网络适配器信息、共享信息。
在这里插入图片描述situational_awareness/host/computerdetails 模块几乎列举系统中所有有用的信息,主机事件日志、应用程序控制策略日志、rdp登录信息。
在这里插入图片描述

ARP扫描

模块 usemodule situational_awareness/network/arpscan 设置range扫描的网段。
在这里插入图片描述

DNS信息获取

内网渗透中分析内网结构非常重要。使用模块 situational_awareness/network/reverse_dns。设置range参数。
在这里插入图片描述situational_awareness/host/dnsserver显示当前DNS服务器的IP地址。
在这里插入图片描述

查找域管登陆服务器IP

模块 situational_awareness/network/powerview/user_hunter.这个模块用来查找域管登陆的机器。
在这里插入图片描述

本地管理组访问模块

模块 situation_awareness/network/powerview/find_localadmin_access,不需要过多的设置。
在这里插入图片描述

提权

Bypass UAC

usemodule privesc/bypassuac 设置Listener 运行看到一个心得反弹。
在这里插入图片描述输入agents 可以看到多了一个带*的,是我们刚才提权成功反弹的。
在这里插入图片描述

bypassuac_wscript

模块 privesc/pypassuac_wscript
原理使用c:\windows\wscript.exe执行payload 绕过UAC实现管理员权限执行payload。
在这里插入图片描述

PowerUp

Empire内置powerup部分功能,用于提权。主要有windows错误系统配置漏洞、windows services漏洞、alwaysinstallelevated漏洞。usemodule privesc/powerup 查看powerup列表。
在这里插入图片描述

AllChecks模块

查找系统漏洞,与powerup中Invoke-AllChecks一样。
模块 privesc/powerup/allchecks
在这里插入图片描述
还有可以尝试Bypass UAC来提权。
在这里插入图片描述

GPP

在域里通常启用组策略首选项来更改本地密码。GPP采用AES 256加密。
模块 privesc/gpp
在这里插入图片描述

横向渗透

获取服务器权限后,使用内置的Mimikatz获取系统密码。想要横向移动,要先窃取身份,使用pth ID
窃取身份。
在这里插入图片描述使用steal_token pid 窃取身份令牌
在这里插入图片描述输入ps查看是否有域用户的进程
在这里插入图片描述这里存在name 为cmd pid 为 1132的进程。
在这里插入图片描述访问Hacker-PC,成功访问
在这里插入图片描述revtoself命令可以恢复令牌权限
在这里插入图片描述

会话注入

模块 mangement/psinject进行线程注入,获取权限。设置Listener和proc ID两个参数。
在这里插入图片描述

Invoke-PsExec

使用该模块的前提时已经获得本地管理员权限,甚至域管理员用户,然后进一步持续渗透整个内网。
模块 lateral_movement/invoke_psexec info查看设置参数。
在这里插入图片描述

Invoke-WMI

比PsExec安全,所有的windows都启用了该服务。wmiexec攻击时,系统默认不会在日志中记录这些操作,具有极高的隐蔽性。
模块 lateral_movement/invoke_wmi info查看设置参数。
在这里插入图片描述设置计算机名,监听。执行,可以看到反弹成功。
在这里插入图片描述

PowerShell Remoting

PowerShell Remoting是power shell的远程管理功能,开启windwos远程服务winRM会监听5985端口,目标主机启动了PowerShell Remoting可以使用 lateral_movement/invoke_psremoting模块进行横向渗透。
在这里插入图片描述

后门

权限持久性劫持shift后门

模块 lateral_movement/invoke_wmi_debuggerinfo 需要设置 Listener computername.
在这里插入图片描述运行后目标主机远程登录窗口按五次SHIFT键即可触发后门。
sethc.exe可以替换以下

  • Uitlman.exe (win+u)
  • osk.exe (屏幕上的键盘 win+u)
  • Narrator.exe (启动讲述人 win+u)
  • Magnify (放大镜 win+u)

注册表诸如后门

模块 persistence/userland/registry,运行后会在目标主机启动项中添加命令。设置参数 Listener regpath。
当目标机登陆系统时就会运行。服务端反弹成功。
在这里插入图片描述

计划任务获取系统权限

模块 persistence/elevated/schtasks。设置DailyTime Listener两个参数。设置具体的时间将会返回一个高权限的shell。

在这里插入图片描述查看agents看到多了一个system权限的客户端,说明提权成功。
在这里插入图片描述

Empire反弹回Metasploit

实际渗透中webshell上传的msf无法绕过主机的杀毒软件时,可以使用powershell来绕过,也可以执行Empire的payload来绕过,成功之后再使用Empire模块反弹回Metasploit。
模块 code_execution/invoke_shellcode.修改lhost 和 lport。
在这里插入图片描述在msf中设置监听,就可以收到Empire反弹回的shell了。
在这里插入图片描述

人生漫漫其修远兮,网安无止境。
一同前行,加油!

这篇关于Powershell Empire的使用的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/338973

相关文章

golang1.23版本之前 Timer Reset方法无法正确使用

《golang1.23版本之前TimerReset方法无法正确使用》在Go1.23之前,使用`time.Reset`函数时需要先调用`Stop`并明确从timer的channel中抽取出东西,以避... 目录golang1.23 之前 Reset ​到底有什么问题golang1.23 之前到底应该如何正确的

详解Vue如何使用xlsx库导出Excel文件

《详解Vue如何使用xlsx库导出Excel文件》第三方库xlsx提供了强大的功能来处理Excel文件,它可以简化导出Excel文件这个过程,本文将为大家详细介绍一下它的具体使用,需要的小伙伴可以了解... 目录1. 安装依赖2. 创建vue组件3. 解释代码在Vue.js项目中导出Excel文件,使用第三

Linux alias的三种使用场景方式

《Linuxalias的三种使用场景方式》文章介绍了Linux中`alias`命令的三种使用场景:临时别名、用户级别别名和系统级别别名,临时别名仅在当前终端有效,用户级别别名在当前用户下所有终端有效... 目录linux alias三种使用场景一次性适用于当前用户全局生效,所有用户都可调用删除总结Linux

java图像识别工具类(ImageRecognitionUtils)使用实例详解

《java图像识别工具类(ImageRecognitionUtils)使用实例详解》:本文主要介绍如何在Java中使用OpenCV进行图像识别,包括图像加载、预处理、分类、人脸检测和特征提取等步骤... 目录前言1. 图像识别的背景与作用2. 设计目标3. 项目依赖4. 设计与实现 ImageRecogni

python管理工具之conda安装部署及使用详解

《python管理工具之conda安装部署及使用详解》这篇文章详细介绍了如何安装和使用conda来管理Python环境,它涵盖了从安装部署、镜像源配置到具体的conda使用方法,包括创建、激活、安装包... 目录pytpshheraerUhon管理工具:conda部署+使用一、安装部署1、 下载2、 安装3

Mysql虚拟列的使用场景

《Mysql虚拟列的使用场景》MySQL虚拟列是一种在查询时动态生成的特殊列,它不占用存储空间,可以提高查询效率和数据处理便利性,本文给大家介绍Mysql虚拟列的相关知识,感兴趣的朋友一起看看吧... 目录1. 介绍mysql虚拟列1.1 定义和作用1.2 虚拟列与普通列的区别2. MySQL虚拟列的类型2

使用MongoDB进行数据存储的操作流程

《使用MongoDB进行数据存储的操作流程》在现代应用开发中,数据存储是一个至关重要的部分,随着数据量的增大和复杂性的增加,传统的关系型数据库有时难以应对高并发和大数据量的处理需求,MongoDB作为... 目录什么是MongoDB?MongoDB的优势使用MongoDB进行数据存储1. 安装MongoDB

关于@MapperScan和@ComponentScan的使用问题

《关于@MapperScan和@ComponentScan的使用问题》文章介绍了在使用`@MapperScan`和`@ComponentScan`时可能会遇到的包扫描冲突问题,并提供了解决方法,同时,... 目录@MapperScan和@ComponentScan的使用问题报错如下原因解决办法课外拓展总结@

mysql数据库分区的使用

《mysql数据库分区的使用》MySQL分区技术通过将大表分割成多个较小片段,提高查询性能、管理效率和数据存储效率,本文就来介绍一下mysql数据库分区的使用,感兴趣的可以了解一下... 目录【一】分区的基本概念【1】物理存储与逻辑分割【2】查询性能提升【3】数据管理与维护【4】扩展性与并行处理【二】分区的

使用Python实现在Word中添加或删除超链接

《使用Python实现在Word中添加或删除超链接》在Word文档中,超链接是一种将文本或图像连接到其他文档、网页或同一文档中不同部分的功能,本文将为大家介绍一下Python如何实现在Word中添加或... 在Word文档中,超链接是一种将文本或图像连接到其他文档、网页或同一文档中不同部分的功能。通过添加超