Covenant:针对红队设计的.NET命令行控制框架
source link: https://www.tuicool.com/articles/ZvYvQ3R
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
Covenant
Covenant是一个.NET命令和控制框架,旨在突出.NET的攻击面,在Covenant的帮助下,研究人员可以更加轻松地去利用.NET的攻击面,而且它还可以作为红队研究人员的协作命令和控制平台。
Covenant是一个ASP.NET核心,并且是一款跨平台的应用程序,其中包含了一个基于Web的用户界面,并支持多用户协同工作。
功能介绍
跟其他的命令控制框架相比,Covenant有以下几个非常实用的功能特点:
1、直观的界面; 2、多平台支持(Windows、macOS和Linux,支持Docker环境); 3、多用户支持; 4、API驱动; 5、监听器配置; 6、加密密钥交换; 7、动态编译 8、内联C#执行; 9、追踪标识符; 10、C#开发;
工具安装
首先,将Covenant的项目代码从GitHub库克隆至本地,并初始化git子模块:
git clone --recurse-submodules https://github.com/cobbr/Covenant
选项1-Dotnet核心
使用Covenant最简单的方法就是通过安装Dotnet核心,我们可以点击【 这里 】为我们的平台下载对应的Dotnet核心。
安装完成之后,我们就可以使用Dotnet命令行接口来构建并运行Covenant了:
$ ~> git clone --recurse-submodules https://github.com/cobbr/Covenant
$ ~> cd Covenant/Covenant
$~/Covenant/Covenant > dotnet build
$~/Covenant/Covenant > dotnet run
选项2-Docker
Covenant还可以在Docker环境下运行,我们只建议对Docker熟悉的用户在Docker环境中使用Covenant。
首先,构建Docker镜像:
$ ~> git clone --recurse-submodules https://github.com/cobbr/Covenant
$ ~> cd Covenant/Covenant
$~/Covenant/Covenant > docker build -t covenant .
接下来,在Docker容器中运行Covenant,确保已经将”</absolute/path/to/Covenant/Covenant/Data>”替换成了我们的绝对路径:
$~/Covenant/Covenant > docker run -it -p 7443:7443 -p 80:80 -p 443:443 --namecovenant -v </absolute/path/to/Covenant/Covenant/Data>:/app/Data covenant
运行下列命令即可终止容器运行:
$~/Covenant/Covenant > docker stop covenant
运行下列命令即可重启容器:
$~/Covenant/Covenant > docker start covenant –ai
如果你需要移除所有Covenant数据并进行初始化恢复,可以运行下列命令:
$~/Covenant/Covenant > docker rm covenant $~/Covenant/Covenant > docker run -it -p 7443:7443 -p 80:80 -p 443:443 --namecovenant -v </absolute/path/to/Covenant/Covenant/Data>:/app/Data covenant--username AdminUser --computername 0.0.0.0
用户注册
启动Covenant之后,我们需要通过Web接口完成初始用户注册:
Recommend
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK