关于OffensiveNotion
OffensiveNotion是一款基于Notion笔记应用程序实现的安全测试操作平台,在该工具的帮助下,广大研究人员可以轻松记录自己的红队操作。在此之前,笔记应用程序是无法帮助我们执行后渗透任务的,但在OffensiveNotion的帮助下,笔记应用不仅能成为C2,而且还能够帮助你执行渗透测试任务。
OffensiveNotion能够将后渗透代理功能与笔记应用程序的功能以及适用性结合起来,其中的代理将负责发送数据并从Notion页面接收命令,但代理通过Notion开发者API接收指令并发送结果是,C2流量会将所有内容混合到一起以增加蓝队研究人员的取证难度。
功能介绍
1、功能完整的C2平台,基于Notion笔记应用程序构建;
2、安装简单,配置好Notion开发者API账号后,将代理发送给目标设备,然后运行即可;
3、基于Rust实现的跨平台代理,使用相同代码库为Windows和Linux构建代理客户端,并提供了Python安装/控制器脚本;
4、提供了大量功能,其中包括端口扫描、权限提升、异步命令执行、文件下载、Shellcode注入等,全部都可以在一个Notion页面上实现控制和操作;
5、完整的日志记录,能够识别出运行命令的特殊语法;
6、协同工作,允许多人同时进行安全操作;
7、移动端C2,支持使用移动设备上的应用程序向世界各地的代理发送命令;
8、隐蔽性强,C2流量进行了模糊处理,并且看起来和正常的Notion流量类似;
工具下载
广大研究人员可以使用下列命令将该项目源码克隆至本地:
git clone https://github.com/mttaggart/OffensiveNotion.git
工具使用
首先,我们需要创建一个Notion账号【传送门】。
接下来,访问【NotionAPI开发者页面】并登陆。创建一个新的“整合用户”(New integration),然后复制用户的API密钥。
在Notion中创建一个新的页面,该页面将作为你的“监听器”,复制URL的最后一部分,即父页面ID:
在Notion页面的右上角,点击“分享”和“邀请”,将Notion开发者API账号添加至该页面。
访问该项目的【Releases页面】下载Linux调试版代理。
使用“-d”以调试模式运行发布版代理,输入对应的参数值:
husky@ubuntu:~/Desktop/OffensiveNotion/bin/linux_debug/debug$ ./offensive_notion -d [*] Starting! Getting config options! [*] Enter agent sleep interval > 5 [*] Enter agent jitter time > 0 [*] Enter parent page id > [...your parent page ID..] [*] Enter API Key > [...your API key...] [*] Enter Config File Path > [leave blank] [*] Enter Log Level (1-4) > 2
此时,我们的监听器将会检测监听页面:
最后,运行命令即可:
工具使用样例
接收客户端信息并在Notion页面中:
运行Shell命令:
配置大量命令并进行初始的安全检测:
执行命令:
将所有的发现记录到日志中:
对其他主机或子网进行端口扫描:
提升至管理员权限:
继续使用其他方法执行渗透测试任务:
与团队成员协同合作:
使用移动设备与代理进行交互:
工具使用演示
许可证协议
本项目的开发与发布遵循MIT开源许可证协议。
项目地址
OffensiveNotion:【GitHub传送门】
参考资料
https://medium.com/@huskyhacks.mk/we-put-a-c2-in-your-notetaking-app-offensivenotion-3e933bace332