PowerShx 项目使用教程
1. 项目目录结构及介绍
PowerShx 项目的目录结构如下:
PowerShx/
├── Common/
│ ├── Dll/
│ ├── Exe/
│ └── packages/
├── .gitignore
├── LICENSE
├── PowerShx.sln
├── README.md
目录结构介绍
- Common/: 包含项目的核心代码和资源文件。
- Dll/: 存放与 DLL 相关的文件。
- Exe/: 存放与可执行文件相关的文件。
- packages/: 存放项目的依赖包。
- .gitignore: Git 忽略文件,指定哪些文件或目录不需要被 Git 管理。
- LICENSE: 项目的开源许可证文件,本项目使用 MIT 许可证。
- PowerShx.sln: 项目的解决方案文件,用于 Visual Studio 等 IDE 中打开项目。
- README.md: 项目的说明文档,包含项目的介绍、使用方法等信息。
2. 项目启动文件介绍
PowerShx 项目的启动文件主要有两个版本:DLL 版本和 EXE 版本。
DLL 版本
DLL 版本的启动文件是 PowerShx.dll
,可以通过 rundll32.exe
等工具来调用。以下是一些常用的启动命令:
# 运行 PowerShell 脚本
rundll32 PowerShx.dll,main -e <PS script to run>
# 运行指定路径的 PowerShell 脚本
rundll32 PowerShx.dll,main -f <path>
# 启动交互式控制台
rundll32 PowerShx.dll,main -i
EXE 版本
EXE 版本的启动文件是 PowerShx.exe
,可以直接运行。以下是一些常用的启动命令:
# 启动交互式控制台
PowerShx.exe -i
# 运行 PowerShell 脚本
PowerShx.exe -e <PS script to run>
# 运行指定路径的 PowerShell 脚本
PowerShx.exe -f <path>
3. 项目的配置文件介绍
PowerShx 项目没有明确的配置文件,但可以通过修改代码中的 Common.Payloads.PayloadDict
字典来嵌入自定义的 PowerShell 脚本。
嵌入自定义脚本
在 Common
项目中,找到 PsSession.cs
文件,并在 Handle()
方法中添加自定义脚本:
private void Handle(Options options)
{
// 预执行用户脚本之前
_ps.Exe(Payloads.PayloadDict["amsi"]);
}
通过这种方式,可以在执行用户脚本之前嵌入自定义的 PowerShell 脚本。
以上是 PowerShx 项目的使用教程,涵盖了项目的目录结构、启动文件和配置文件的介绍。希望这些信息能帮助你更好地理解和使用 PowerShx 项目。