C# C2 框架,专注于第一阶段操作
Atlas 旨在在环境中建立据点,并进一步利用它,通过基于 HTTP 的植入程序将 C#(目前严格限于 C#)武器偷运进来。目前,它的 OPSEC 安全性并不高……完全不。当前仅针对 Windows 环境。
注意:植入程序的默认连接设置是连接到 localhost 的 8080 端口,可以在 此处 更改。
生成客户端、团队服务器和植入程序的 exe 后,只需执行 Teamserver.exe 即可启动团队服务器。
要启动新的监听器,请使用 StartListener 命令。该命令需要两个参数:监听器名称和要运行的端口。
Listeners 命令列出所有监听器,ViewListener 返回指定监听器的数据,RemoveListener 可用于从列表中删除监听器。
使用 Implants 命令可以列出已连接的植入程序。
连接到植入程序只需 Connect <ImplantId>。看到我做了什么吗?……好吧,我自己走。Connect 命令用于选择植入程序。ViewImplant 可用于查看所选植入程序的更多信息。Disconnect 命令将取消选择当前选中的植入程序,如下所示。
要使用任务,必须首先使用 SetTask 选择任务。可以使用 TaskOpts 查看选项,并使用 SetTaskOpt 设置选项。任务通过 SendTask 执行。
可以使用 TaskOut 查看先前运行任务的输出。TasksOut 可用于查看与所选植入程序相关的所有先前运行的任务。
Atlas 允许操作员分别使用 PSShell 和 CMDShell 任务执行 PowerShell 和 Cmd 命令。PSShell 会打开一个新的运行空间并执行命令,因此即使 powershell.exe 被列入黑名单,PowerShell 命令仍然可以执行。此方法还可以绕过约束语言模式。CMDShell 会打开一个 cmd.exe 进程并将命令传递到该进程中。上面已经展示了执行 PowerShell 命令,这里不再重复。关于 CMDShell 的旁注:许多常用命令(包括但不限于 whoami、ipconfig、pwd 和 cd)已集成到植入程序的功能中,以避免通过 cmd.exe 进程执行这些命令。
加载程序集需要几个步骤,不像 CobaltStrike 那样通过 execute-assembly 一步完成。首先,操作员必须使用 ByteConvert 实用程序(必须告知 ByteConvert 文件是本地还是远程)将本地存储或远程文件转换为字节数组,并将其存储在 assemBytes 变量中。完成后,使用 Load 任务将程序集加载到植入程序进程中。
要查看已加载到植入程序进程中的程序集,操作员可以使用 AssemQuery 和 AssemMethodQuery 任务。前者返回所有已加载的程序集,而后者返回与已加载程序集相关的所有公共方法。
截图确认了 TestAssem 程序集确实已加载到植入程序的进程中。
然后可以使用 AssemMethodQuery 返回关于 TestAssem 的信息,操作员可利用这些信息来执行公共方法。
Atlas 提供了从入口点或指定的公开方法执行程序集的选项。ExecuteAssem 可用于从入口点执行。此任务仅接受程序集的名称。ExecuteAssemMethod 允许使用从 AssemMethodQuery 获取的信息执行其他方法。
有关完整功能列表,请访问 Wiki。
打开 .sln 并以 Release 模式构建所有三个组件,退出控制台窗口和 exe 文件应生成在每个组件的 \bin\debug 中。我需要研究一个更好的方法。
cpupload/downloadAtlas 仅用于教育/道德目的。我不认可使用者的行为,也不对使用者的行为负责。