引言
AoiAWD 是一个由Aodzip(安恒信息 海特实验室研究员、HAC战队成员)维护的一个针对于CTF AWD模式的开源项目。专为比赛设计,便携性好,低权限运行的EDR系统。任何人都可以在 GNU AGPL-3.0 许可下使用该项目和分享该项目的源码。
AoiAWD地址:https://github.com/DasSecurity-HatLab/AoiAWD
0x00 安装环境
ubuntu-22.04.4mongodb-server&php-dev&php-pearnpm&nodeinotify-tools0x01更新系统
更换到国内源可以显著提高软件包的下载速度,特别是对于某些国际镜像源访问速度较慢的情况。以下是一些常见 Linux 发行版更换到国内源的基本步骤:
对于基于 Debian/Ubuntu 的系统
备份源列表文件:
sudo cp /etc/apt/sources.list /etc/apt/sources.list.backup
打开源列表文件:
sudo vim /etc/apt/sources.list
编辑源列表:
按i
进入插入模式。将文件中的所有 deb
和 deb-src
行替换为国内镜像源。 例如,使用清华大学的镜像源: # 默认注释了源码镜像以提高 apt update 速度,如有需要可自行取消注释deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy main restricted universe multiverse# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy main restricted universe multiversedeb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-updates main restricted universe multiverse# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-updates main restricted universe multiversedeb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-backports main restricted universe multiverse# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-backports main restricted universe multiversedeb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-security main restricted universe multiverse# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-security main restricted universe multiverse# 预发布软件源,不建议启用# deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-proposed main restricted universe multiverse# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-proposed main restricted universe multiverse
阿里源:
deb http://mirrors.aliyun.com/ubuntu/ jammy main restricted universe multiversedeb-src http://mirrors.aliyun.com/ubuntu/ jammy main restricted universe multiversedeb http://mirrors.aliyun.com/ubuntu/ jammy-security main restricted universe multiversedeb-src http://mirrors.aliyun.com/ubuntu/ jammy-security main restricted universe multiversedeb http://mirrors.aliyun.com/ubuntu/ jammy-updates main restricted universe multiversedeb-src http://mirrors.aliyun.com/ubuntu/ jammy-updates main restricted universe multiversedeb http://mirrors.aliyun.com/ubuntu/ jammy-proposed main restricted universe multiversedeb-src http://mirrors.aliyun.com/ubuntu/ jammy-proposed main restricted universe multiversedeb http://mirrors.aliyun.com/ubuntu/ jammy-backports main restricted universe multiversedeb-src http://mirrors.aliyun.com/ubuntu/ jammy-backports main restricted universe multiverse
中科大源
deb https://mirrors.ustc.edu.cn/ubuntu/ jammy main restricted universe multiversedeb-src https://mirrors.ustc.edu.cn/ubuntu/ jammy main restricted universe multiversedeb https://mirrors.ustc.edu.cn/ubuntu/ jammy-updates main restricted universe multiversedeb-src https://mirrors.ustc.edu.cn/ubuntu/ jammy-updates main restricted universe multiversedeb https://mirrors.ustc.edu.cn/ubuntu/ jammy-backports main restricted universe multiversedeb-src https://mirrors.ustc.edu.cn/ubuntu/ jammy-backports main restricted universe multiversedeb https://mirrors.ustc.edu.cn/ubuntu/ jammy-security main restricted universe multiversedeb-src https://mirrors.ustc.edu.cn/ubuntu/ jammy-security main restricted universe multiversedeb https://mirrors.ustc.edu.cn/ubuntu/ jammy-proposed main restricted universe multiversedeb-src https://mirrors.ustc.edu.cn/ubuntu/ jammy-proposed main restricted universe multiverse
网易163源:
deb http://mirrors.163.com/ubuntu/ jammy main restricted universe multiversedeb http://mirrors.163.com/ubuntu/ jammy-security main restricted universe multiversedeb http://mirrors.163.com/ubuntu/ jammy-updates main restricted universe multiversedeb http://mirrors.163.com/ubuntu/ jammy-proposed main restricted universe multiversedeb http://mirrors.163.com/ubuntu/ jammy-backports main restricted universe multiversedeb-src http://mirrors.163.com/ubuntu/ jammy main restricted universe multiversedeb-src http://mirrors.163.com/ubuntu/ jammy-security main restricted universe multiversedeb-src http://mirrors.163.com/ubuntu/ jammy-updates main restricted universe multiversedeb-src http://mirrors.163.com/ubuntu/ jammy-proposed main restricted universe multiversedeb-src http://mirrors.163.com/ubuntu/ jammy-backports main restricted universe multiverse
保存并退出:
按Esc
退出插入模式。输入 :wq
并按回车键保存文件并退出 vim
。 更新软件包列表: sudo apt update
sudo apt upgrade
0x02下载项目
git clone https://github.com/DasSecurity-HatLab/AoiAWD.git
PS: 如果没有 git,请先安装 git
sudo apt install git
0x03安装 mongdb 等 AoiAWD 所需依赖
安装mongodb
sudo apt install mongodb-server
PS:本人遇到的坑Ubuntu 22.04
系统中使用sudo apt install mogodb-server
进行安装mongdb时会报错
ubuntu-22.04.4Reading package lists... DoneBuilding dependency tree... DoneReading state information... DonePackage mongodb-server is not available, but is referred to by another package.This may mean that the package is missing, has been obsoleted, oris only available from another sourceE: Package 'mongodb-server' has no installation candidate
解决方法
参考链接
:官方文档
sudo apt-get install gnupg curl
导入MongoDB的公共GPG密钥,以便系统能够验证软件包的真实性: curl -fsSL https://www.mongodb.org/static/pgp/server-7.0.asc | \ sudo gpg -o /usr/share/keyrings/mongodb-server-7.0.gpg \ --dearmor
为您的 Ubuntu 版本创建一个用于MongoDB的APT源列表文件: echo "deb [ arch=amd64,arm64 signed-by=/usr/share/keyrings/mongodb-server-7.0.gpg ] https://repo.mongodb.org/apt/ubuntu jammy/mongodb-org/7.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-7.0.list
更新包列表以包括MongoDB软件包: sudo apt-get update
安装MongoDB: sudo apt-get install -y mongodb-org
启动MongoDB服务: sudo systemctl start mongod
设置MongoDB服务在启动时自动启动: sudo systemctl enable mongod
检查MongoDB服务状态: sudo systemctl status mongod
安装php-mongodb
sudo apt-get install php-dev php-pear
Ubuntu下的php-mongodb存在一些bug,请通过pecl安装并添加扩展
sudo pecl install mongodb
Build process completed successfullyInstalling '/usr/lib/php/20210902/mongodb.so'install ok: channel://pecl.php.net/mongodb-1.19.3configuration option "php_ini" is not set to php.ini locationYou should add "extension=mongodb.so" to php.ini
出现这个代表MongoDB 的 PHP 扩展已经成功安装,但需要将扩展添加到 PHP 的配置文件中才能使用。以下是完成此操作的步骤:
找到 PHP 的配置文件:
首先,你需要找到 php.ini
文件的位置。你可以使用以下命令来查找:
php --ini
编辑 PHP 配置文件:
使用文本编辑器编辑 php.ini
文件:
【未安装vim?使用sudo apt install vim】
sudo vim /path/to/your/php.ini
将 /path/to/your/php.ini
替换为实际的 php.ini
文件路径。
添加扩展配置:
在 php.ini
文件中,找到 [extensions]
部分,并添加以下行:
extension=mongodb.so
确保这一行位于 [extensions]
部分,或者你可以将其添加到文件的末尾。
按下:键,进入命令模式输入/;extension定位到待修改的位置- 按下Enter键再按下i键,进入插入模式- 将光标通过方向键移动到需要添加的位置,新增一行extension=mongodb.so!!!注意,前面不能有;否则修改无效,正确修改如下图
设置这两个为Offphar.readonly = Off
和`phar.require_hash = Off``别忘了去掉前面的分号
保存并退出编辑器
验证扩展安装:
使用 php -m
命令来检查 MongoDB 扩展是否已经正确安装:
php -m | grep mongodb
如果看到 mongodb
在输出中,说明扩展已经成功安装并启用。
inotify-tools库安装
sudo apt install inotify-toolssudo apt install libinotifytools-dev
安装完成后,你可以通过运行以下命令来验证 inotify-tools 是否已正确安装:
inotifywait -h
如果安装成功,该命令将输出 inotify-tools 的帮助信息。
安装npm
sudo apt install npm
为了防止出现问题可以将源改为国内
npm config set registry https://registry.npm.taobao.org
这里踩大坑了,因为项目比较老旧所以得安装老版本的npm
我采用NVM安装老版本node实现安装老版本npm的方案
安装NVM
这里用官方的一键脚本进行安装
sudo curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash
或者
wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash
PS:如果出现curl: (7) Failed to connect to raw.githubusercontent.com port 443 after 2024 ms: Connection refused
可以尝试修改host
sudo vim /etc/hosts
在最后一行添加185.199.108.133 raw.githubusercontent.com
安装node
nvm install 14.17.0
将npm版本切换到6.14.13(node14.17.0对应的npm正好为6.14.13)
npm install -g npm@6.14.13
换国内源
npm config set registry https://registry.npmmirror.com/
0x04 构建Fronted项目
cd AoiAWDcd Frontendnpm installnpm run build
命令执行爆红就安装node-sass
模块,使用 npm install node-sass
或 cnpm install node-sass@latest
进行安装。
执行成功会在dist/目录下得到index.html和static目录
0x05构建AoiAWD Core
cd ../AoiAWDrm -rf src/public/*cp -r ../Frontend/dist/* src/public/php compile.php
这样可以得到aoiawd.phar
0x06构建TapeWorm
cd ../TapeWormphp compile.php
这样可以得到tapeworm.phar
0x07 构建Guardian
cd ../Guardianphp compile.php
这样可以得到guardian.phar
0x08构建RoundWorm
cd ../RoundWormmake
这样可以得到roundworm
0x09启动
cd ../AoiAWD./aoiawd.phar
启动成功则如下图:
会提供一个随机token(web控制台登录用)和开放两个端口,1337是控制台web访问端口,8023是探针的接收端口,然后我们通过ip:1337去访问开启的AoiAWD界面
访问AoiAWD界面输入随机生成的token进入,至此AoiAWD搭建完成
关注我们
剑芸信息安全团队:
剑芸安全团队于2022年9月正式成立,以互联网攻防技术研究为目标的安全团队,目前聚集了十多位专业的安全攻防技术研究人员,重点关注网络攻防、Web安全、移动终端、安全开发、IoT/物联网/工控安全等方向。
想了解更多剑芸安全团队。