这个Aggressor脚本旨在帮助内部红队识别在其环境中运行的异常或外来进程("共居")。
红队可以整理一份"已知"进程列表(可以独立完成,也可与蓝队合作),并将其提供给该Aggressor脚本。这份进程列表可能包括那些在"我们的网络中被观察到至少x次"的进程,以便建立基线。一旦脚本加载到CobaltStrike中,beacon输出将会针对以下命令进行修改/颜色编码:
上述命令返回的输出中,任何未在"已知"进程列表中找到的进程都将被红色高亮显示,以便进一步调查/审查。
shell tasklist:

ps:

TrustedSec tasklist BOF:

已知进程列表必须放在一个文本文件中,每行一个进程。
编辑Cohab_Processes.cna文件中的第3行,并指定你的"已知"进程列表。
将.cna脚本加载到CobaltStrike中,然后享受吧。
我包含了一个示例文件'knownprocesses.txt',以便用户可以在花精力组装自己环境中的"已知"进程列表之前观察此脚本的行为。
需要对TrustedSec的tasklist BOF进行一个小修改,以使其与此脚本兼容。我必须在输出中添加一个"BOF结束"标记,以便Aggressor脚本识别到BOF已完成发送输出,并停止尝试读取/着色处理内容。

我建议从他们的仓库获取完整包,然后修改tasklist BOF(位于CS-Situational-Awareness-BOF/src/SA/tasklist/entry.c),使之与我在此包含的版本匹配。这是必要的,因为完整仓库包含一些辅助/头文件,你需要用它们重新编译entry.c。
这种识别潜在共居的方法具有严重的局限性。例如,它不会识别或捕捉以下情况:
此脚本旨在帮助捕捉"低垂的果实"(容易发现的问题)。
感谢TrustedSec提供的优秀BOF仓库。
灵感和部分代码片段来自harleyQu1nn的ProcessColor.cna