ScioShield/Tartarus
GitHub: ScioShield/Tartarus
Tartarus 是一个检测工程实验平台,通过 Vagrant 自动化部署包含 Elastic SIEM、端点监控和攻击模拟工具的完整安全测试环境。
Stars: 1 | Forks: 0
# Tartarus
Tartarus(由 AtomicFireFly 重命名),旨在自动化部署和测试安全产品的过程。该解决方案由运行在 Rocky8 Linux 客户机上的单节点 ElasticSearch 集群组成(为了与 CentOS/RHEL 交叉兼容)。Windows 节点包含 Sysmon、Elastic Agent 和 Atomic Red Team。此外,预装了 Caldera 的 Kali Linux 实例确保了全面的测试和监控。
## 要求(宿主机)
### 硬件
**注意** 现代 CPU 具有虚拟核心,因此如果您的 CPU 有 4 个核心,它将拥有 8 个 vCPU 核心。下表均表示虚拟机所需的 vCPU 核心。
#### 仅 SIEM
部署(默认):
- Windows
```
$env:HOSTS = "elastic"; vagrant up opnsense
```
然后运行:
```
vagrant up opnsense elastic`
```
- Linux
```
vagrant up opnsense
```
然后运行:
```
HOSTS=elastic vagrant up opnsense elastic
```
部署:
- Windows
```
$env:VAGRANT_VAGRANTFILE = "Vagrantfile.bluemin"; $env:HOSTS = "elastic"; vagrant up opnsense
```
然后运行:
```
vagrant up opnsense elastic
```
- Linux
```
VAGRANT_VAGRANTFILE=Vagrantfile.bluemin vagrant up opnsense
```
然后运行:
```
HOSTS=elastic vagrant up opnsense elastic
```
##### Vagrantfile
| 虚拟机名称 | CPU 核心 | 内存 (MB) | 私有 IP |
|-----------------------|-----------|-------------|----------------|
| tartarus-opnsense | 2 | 1024 | 192.168.56.2 |
| tartarus-elastic | 4 | 8192 | 192.168.56.10 |
**总计**
内存: 9 GB
CPU: 6 vCores
##### Vagrantfile.bluemin
| 虚拟机名称 | CPU 核心 | 内存 (MB) | 私有 IP |
|-----------------------|-----------|-------------|----------------|
| tartarus-opnsense | 1 | 1024 | 192.168.56.2 |
| tartarus-elastic | 2 | 6144 | 192.168.56.10 |
**Bluemin 总计**
内存: 7 GB
CPU: 3 vCores
##### Vagrantfile.red
无
##### Vagrantfile.redmin
无
##### 访问 SIEM
要访问您新创建的 SIEM 和防火墙,首先将它们的 DNS 记录添加到您的 hosts,即 `hosts` 文件中
###### Windows
打开 `powershell` 并以管理员模式运行(在开始菜单栏中输入 `powershell`,右键点击图标并选择以管理员身份运行)
现在运行此命令 `Add-Content 'C:\Windows\System32\Drivers\etc\hosts' "127.0.0.1 tartarus-elastic.home.arpa"`,您可以使用 `Invoke-WebRequest -Uri "https://tartarus-elastic.home.arpa:5443" -SkipCertificateCheck` 验证访问,或者直接在 Web 浏览器中打开 `https://tartarus-elastic.home.arpa:5443`。
如果您想访问 Elastic 客户机,请使用 `vagrant ssh elastic`。
###### Linux
打开 `terminal` 并输入以下命令 `sudo bash -c "echo '127.0.0.1 tartarus-elastic.home.arpa' >> /etc/hosts"`,将 DNS 条目添加到您的系统 hosts 文件中。
使用简单的 `curl -L -k https://tartarus-elastic.home.arpa:5443` 验证访问,或者在 Web 浏览器中访问 `https://tartarus-elastic.home.arpa:5443`。
###### 预期结果
**Web**

**注意** 如果您看到关于自签名证书的警告,您有两个选项:
- 忽略警告
- (首选)将 `root_ca.crt` 证书添加到您的浏览器信任存储区。如果您不知道如何操作,请搜索“如何将根证书添加到 Chrome、Firefox、Brave、Edge...”,并将文件 `certs/root_ca.crt` 添加到信任存储区。
**SSH**

##### 访问防火墙
要访问新创建的 Opnsense 防火墙,首先将 DNS 记录添加到您的 hosts,即 `hosts` 文件中
###### Windows
打开 `powershell` 并以管理员模式运行(在开始菜单栏中输入 `powershell`,右键点击图标并选择以管理员身份运行)
现在运行此命令 `Add-Content 'C:\Windows\System32\Drivers\etc\hosts' "127.0.0.1 tartarus-opnsense.home.arpa"`,您可以使用 `Invoke-WebRequest -Uri "https://tartarus-opnsense.home.arpa:8443" -SkipCertificateCheck` 验证访问,或者直接在 Web 浏览器中打开 `https://tartarus-opnsense.home.arpa:8443`。注意,您将收到一个自签名证书警告,该警告将保留给防火墙,因为所有证书创建都在 SIEM 上进行(在防火墙启动之后启动)。
###### Linux
打开 `terminal` 并输入以下命令 `sudo bash -c "echo '127.0.0.1 tartarus-opnsense.home.arpa' >> /etc/hosts"`,将 DNS 条目添加到您的系统 hosts 文件中。
使用简单的 `curl -L -k https://tartarus-opnsense.home.arpa:8443` 验证访问,或者在 Web 浏览器中访问 `https://tartarus-opnsense.home.arpa:8443`。
###### 预期结果
**Web**

**注意** 如果您在这种情况下看到关于自签名证书的警告,您将不得不接受警告,因为防火墙证书独立于 Elastic 证书。
**SSH**

**注意** 您需要使用 `sudo su -` 才能进入选项菜单。
##### 图表

#### SIEM + Linux
部署(默认):
- Windows
```
$env:HOSTS = "linux"; vagrant up opnsense
```
然后运行:
```
vagrant up opnsense elastic linux
```
- Linux
```
vagrant up opnsense
```
然后运行:
```
HOSTS=linux vagrant up opnsense elastic linux
```
部署:
- Windows
```
$env:VAGRANT_VAGRANTFILE = "Vagrantfile.bluemin"; $env:HOSTS = "linux"; vagrant up opnsense
```
然后运行:
```
vagrant up opnsense elastic linux
```
- Linux
```
export VAGRANT_VAGRANTFILE=Vagrantfile.bluemin; vagrant up opnsense
```
然后运行:
```
HOSTS=linux vagrant up opnsense elastic linux
```
##### Vagrantfile
| 虚拟机名称 | CPU 核心 | 内存 (MB) | 私有 IP |
|-----------------------|-----------|-------------|----------------|
| tartarus-opnsense | 2 | 1024 | 192.168.56.2 |
| tartarus-elastic | 4 | 8192 | 192.168.56.10 |
| tartarus-linux | 1 | 2048 | 192.168.56.70 |
**总计**
内存: 11 GB
CPU: 7 vCores
##### Vagrantfile.bluemin
| 虚拟机名称 | CPU 核心 | 内存 (MB) | 私有 IP |
|-----------------------|-----------|-------------|----------------|
| tartarus-opnsense | 1 | 1024 | 192.168.56.2 |
| tartarus-elastic | 2 | 6144 | 192.168.56.10 |
| tartarus-linux | 1 | 1024 | 192.168.56.70 |
**Bluemin 总计**
内存: 8 GB
CPU: 4 vCores
##### Vagrantfile.red
无
##### Vagrantfile.redmin
无
##### 访问 Linux
完成上述示例中的 DNS 设置。
**SSH**

##### 图表

#### SIEM + Windows
部署(默认):
- Windows
```
$env:HOSTS = "windows"; vagrant up opnsense
```
然后运行:
```
vagrant up opnsense elastic windows
```
- Linux
```
vagrant up opnsense
```
然后运行:
```
HOSTS=windows vagrant up opnsense elastic windows
```
部署:
- Windows
```
$env:VAGRANT_VAGRANTFILE = "Vagrantfile.bluemin"; $env:HOSTS = "windows"; vagrant up opnsense
```
然后运行:
```
vagrant up opnsense elastic windows
```
- Linux
```
export VAGRANT_VAGRANTFILE=Vagrantfile.bluemin; vagrant up opnsense
```
然后运行:
```
HOSTS=windows vagrant up opnsense elastic windows
```
##### Vagrantfile
| 虚拟机名称 | CPU 核心 | 内存 (MB) | 私有 IP |
|-----------------------|-----------|-------------|----------------|
| tartarus-opnsense | 2 | 1024 | 192.168.56.2 |
| tartarus-elastic | 4 | 8192 | 192.168.56.10 |
| tartarus-windows | 2 | 4096 | 192.168.56.80 |
**总计**
内存: 13 GB
CPU: 8 vCores
##### Vagrantfile.bluemin
| 虚拟机名称 | CPU 核心 | 内存 (MB) | 私有 IP |
|-----------------------|-----------|-------------|----------------|
| tartarus-opnsense | 1 | 1024 | 192.168.56.2 |
| tartarus-elastic | 2 | 6144 | 192.168.56.10 |
| tartarus-windows | 2 | 2048 | 192.168.56.80 |
**Bluemin 总计**
内存: 9 GB
CPU: 5 vCores
##### Vagrantfile.red
无
##### Vagrantfile.redmin
无
##### 访问 Windows
完成顶部示例中的 DNS 设置。
**SSH**

**RDP**

**注意** 如果您运行的是 Linux,您需要安装 `xfreerdp`,运行 `xfreerdp /u:"vagrant" /p:"vagrant" /v:127.0.0.1:53389 /size:1300x700 /cert:ignore`
在 Windows 上,您可以使用内置的 RDP 客户端。
##### 图表

#### SIEM + Linux + Windows
部署(默认):
- Windows
```
$env:HOSTS = "linwin"; vagrant up opnsense
```
然后运行:
```
vagrant up opnsense elastic linux windows
```
- Linux
```
vagrant up opnsense
```
然后运行:
```
HOSTS=linwin vagrant up opnsense elastic linux windows
```
部署:
- Windows
```
$env:VAGRANT_VAGRANTFILE = "Vagrantfile.bluemin"; $env:HOSTS = "linwin"; vagrant up opnsense
```
然后运行:
```
vagrant up opnsense elastic linux windows
```
- Linux
```
export VAGRANT_VAGRANTFILE=Vagrantfile.bluemin; vagrant up opnsense
```
然后运行:
```
HOSTS=linwin vagrant up opnsense elastic linux windows
```
##### Vagrantfile
| 虚拟机名称 | CPU 核心 | 内存 (MB) | 私有 IP |
|-----------------------|-----------|-------------|----------------|
| tartarus-opnsense | 2 | 1024 | 192.168.56.2 |
| tartarus-elastic | 4 | 8192 | 192.168.56.10 |
| tartarus-windows | 1 | 2048 | 192.168.56.70 |
| tartarus-linux | 2 | 2048 | 192.168.56.80 |
**总计**
内存: 13 GB
CPU: 9 vCores
##### Vagrantfile.bluemin
| 虚拟机名称 | CPU 核心 | 内存 (MB) | 私有 IP |
|-----------------------|-----------|-------------|----------------|
| tartarus-opnsense | 1 | 1024 | 192.168.56.2 |
| tartarus-elastic | 2 | 6144 | 192.168.56.10 |
| tartarus-windows | 2 | 2048 | 192.168.56.70 |
| tartarus-linux | 1 | 1024 | 192.168.56.80 |
**Bluemin 总计**
内存: 10 GB
CPU: 6 vCores
##### Vagrantfile.red
无
##### Vagrantfile.redmin
无
##### 访问
按照上述指南访问任何客户机。
##### 图表

#### SIEM + Damn Vulnerable Web Application + Kali
部署(默认):
- Windows
```
$env:HOSTS = "dvwa"; vagrant up opnsense
```
然后运行:
```
vagrant up opnsense elastic dvwa kali
```
- Linux
```
vagrant up opnsense
```
然后运行:
部署:
- Windows
```
$env:VAGRANT_VAGRANTFILE = "Vagrantfile.bluemin"; $env:HOSTS = "dvwa"; vagrant up opnsense
```
然后运行:
```
vagrant up opnsense elastic dvwa kali
```
- Linux
```
export VAGRANT_VAGRANTFILE=Vagrantfile.bluemin; vagrant up opnsense
```
然后运行:
```
HOSTS=dvwa vagrant up opnsense elastic dvwa kali
```
部署:
- Windows
```
$env:VAGRANT_VAGRANTFILE = "Vagrantfile.red"; vagrant up opnsense
```
然后运行:
```
vagrant up opnsense dvwa kali
```
- Linux
```
export VAGRANT_VAGRANTFILE=Vagrantfile.red; vagrant up opnsense
```
然后运行:
```
vagrant up opnsense dvwa kali
```
部署:
- Windows
```
$env:VAGRANT_VAGRANTFILE = "Vagrantfile.redmin"; vagrant up opnsense
```
然后运行:
```
vagrant up opnsense dvwa kali
```
- Linux
```
export VAGRANT_VAGRANTFILE=Vagrantfile.redmin; vagrant up opnsense
```
然后运行:
```
vagrant up opnsense dvwa kali
```
虽然我们将 DVWA 提供服务的默认端口 `80` 暴露给宿主机的 `http://127.0.0.1:8180`,但建议部署 Kali 主机来攻击 DVWA,因为它会预装更多您需要的工具。
##### Vagrantfile
| 虚拟机名称 | CPU 核心 | 内存 (MB) | 私有 IP |
|-----------------------|-----------|-------------|----------------|
| tartarus-opnsense | 2 | 1024 | 192.168.56.2 |
| tartarus-elastic | 4 | 8192 | 192.168.56.10 |
| tartarus-dvwa | 1 | 2048 | 192.168.56.71 |
| tartarus-kali | 4 | 8192 | 192.168.56.200 |
**总计**
内存: 19 GB
CPU: 11 vCores
##### Vagrantfile.bluemin
| 虚拟机名称 | CPU 核心 | 内存 (MB) | 私有 IP |
|-----------------------|-----------|-------------|----------------|
| tartarus-opnsense | 1 | 1024 | 192.168.56.2 |
| tartarus-elastic | 2 | 6144 | 192.168.56.10 |
| tartarus-dvwa | 1 | 1024 | 192.168.56.71 |
| tartarus-kali | 2 | 4096 | 192.168.56.200 |
**Bluemin 总计**
内存: 13 GB
CPU: 6 vCores
##### Vagrantfile.red
| 虚拟机名称 | CPU 核心 | 内存 (MB) | 私有 IP |
|-----------------------|-----------|-------------|----------------|
| tartarus-opnsense | 2 | 1024 | 192.168.56.2 |
| tartarus-dvwa | 1 | 2048 | 192.168.56.71 |
| tartarus-kali | 4 | 8192 | 192.168.56.200 |
**Red 总计**
内存: 11 GB
CPU: 7 vCores
##### Vagrantfile.redmin
| 虚拟机名称 | CPU 核心 | 内存 (MB) | 私有 IP |
|-----------------------|-----------|-------------|----------------|
| tartarus-opnsense | 1 | 1024 | 192.168.56.2 |
| tartarus-dvwa | 1 | 1024 | 192.168.56.71 |
| tartarus-kali | 2 | 4096 | 192.168.56.200 |
**Redmin 总计**
内存: 6 GB
CPU: 4 vCores
##### 访问 Kali
**GUI**
**注意** Kali 主机已启用 GUI,因此只要您启动机器,它就会弹出 GUI。

**注意** 登录信息:
`用户名: vagrant`
`密码: vagrant`
您可能需要登录两次。
**SSH**

##### 访问 Damn Vulnerable Web Application
**Web**
**注意** 建议从 Kali 虚拟机内部访问 DVWA!
首先使用 `sudo bash -c "echo '192.168.56.71 tartarus-dvwa.home.arpa' >> /etc/hosts"` 将 DNS 条目添加到 Kali 虚拟机的 hosts 文件中,sudo 密码是 `vagrant`
打开 Firefox 并浏览到 `http://tartarus-dvwa.home.arpa/DVWA`

##### 图表

### 软件
[VirtualBox](https://www.virtualbox.org/wiki/Downloads)
[Vagrant](https://developer.hashicorp.com/vagrant/downloads)
## 节点(客户机)
| 虚拟机名称 | 操作系统 | CPU 核心 | 内存 (MB) | 私有 IP | 组件 |
|-----------------------|--------------------------------------|-----------|-------------|----------------|-------------------------------------------------------------------|
| tartarus-opnsense | bento/freebsd-13.2 | 2 | 1024 | 192.168.56.2 | Opnsense, Suricata |
| tartarus-elastic | bento/rockylinux-8.7 | 4 | 8192 | 192.168.56.10 | ElasticSearch, Kibana, Fleet, Smallstep CA, Caddy |
| tartarus-linux | bento/rockylinux-8.7 | 1 | 2048 | 192.168.56.70 | Elastic Agent |
| tartarus-dvwa | bento/ubuntu | 1 | 2048 | 192.168.56.71 | Elastic Agent, DVWA |
| tartarus-windows | gusztavvargadr/windows-10-21h2-enterprise | 2 | 4096 | 192.168.56.80 | Elastic Agent, Sysmon, Atomic Red Team |
| tartarus-kali | kalilinux/rolling | 4 | 8192 | 192.168.56.200 | |
### IP 地址
| 保留用于 | IP 地址范围 |
|----------------------|------------------|
| 网络 | 1-9 |
| 安全设备 | 10-19 |
| Linux 主机 | 70-79 |
| Windows 主机 | 80-89 |
| 对手 | 200+ |
### 完整网络布局
| 网络地址 | 可用范围 | 广播地址 | 用途 |
| --------------- | ------------------------------- | ----------------- | ------- |
| 192.168.56.0 | 192.168.56.1 - 192.168.56.62 | 192.168.56.63 | SIEM |
| 192.168.56.64 | 192.168.56.65 - 192.168.56.126 | 192.168.56.127 | 资产 |
| 192.168.56.128 | 192.168.56.129 - 192.168.56.190 | 192.168.56.191 | 目标 |
| 192.168.56.192 | 192.168.56.193 - 192.168.56.254 | 192.168.56.255 | 黑客 |
防火墙规则(未来会更改,因此仅用作指南)
#### 图表

#### 防火墙别名
| 名称 | 类型 | 内容 | 描述 |
|------------|---------|----------------------------------------------|----------------------------|
| RFC1918 | Network | 192.168.0.0/16, 172.16.0.0/12, 10.0.0.0/8 | RFC1918 私有网络 |
| WebPorts | Port | 80, 443 | Web 端口 |
| Services | Port | 53, 123 | DNS 和 NTP |
| Monitoring | Port | 8220, 9200 | 监控 |
| DHCP_Ports | Port | 67, 68 | DHCP 端口 |
#### 防火墙规则
| 动作 | 快速 | 描述 | 接口 | 协议 | 源 | 目的地 | 目标端口 |
|--------|-------|-------------------------------|-----------------|----------|---------|-------------|-----------------------------|
| Pass | 是 | 允许 DNS 和 NTP 流量 | 资产, 黑客 | UDP | 任意 | (自身) | Services (53, 123) |
| Pass | 是 | 允许 Elasticsearch 流量 | 资产, 目标 | TCP | 任意 | LAN | Monitoring (, 8220, 9200) |
| Block | 否 | 阻止所有发往 RFC1918 的流量 | 资产, 目标 | 任意 | 任意 | RFC1918 | 任意 |
| Pass | 是 | 允许 DHCP 流量 | 目标 | UDP | 任意 | (自身) | DHCP_Ports (67, 68) |
| Pass | 否 | 允许 Web 流量 | 资产, 黑客 | TCP | 任意 | 任意 | WebPorts (80, 443) |
| Pass | 是 | 允许 SSH 流量 | 黑客 | TCP | 任意 | LAN | 22 |
| Pass | 是 | 允许 HTTPS 和 SSH | WAN | TCP | 任意 | (自身) | 22, 443 |
| Pass | 是 | 允许所有来自 LAN 的流量 | LAN | ANY | 任意 | ANY | ANY |
所有主机都在 Vagrantfile 中分配了静态 IP 地址。所有主机也都有 2 个接口,第一个是 Vagrant 通过 SSH / winrm 管理虚拟机所需的默认 NAT 类型,第二个接口是静态分配的接口。我们通过一些指标上的技巧将第一个接口“消耗掉”,这并不会完全禁用该接口,因此即使您强制执行防火墙规则,它仍然可以连接外部,但在大多数情况下,防火墙规则是受到尊重的。
## 注意
**这不能用于生产环境!**
请仅作为指南/实验室使用,我会做一些诸如将 elastic 用户密码放在文件中的事情
这绝不应该在生产环境中进行!
如果对手获得了您的 Elastic 超级用户密码或某个节点的 root 访问权限,那就是**游戏结束!**
为确保一切按预期工作,请先启动 Opnsense 节点,然后再启动 elastic 节点。
### DNS 设置
我们使用 `.home.arpa.` 以符合 [RFC8375](https://www.rfc-editor.org/rfc/rfc8375.html)
#### 本地
将 (Vagrant 宿主机 ip) 替换为您将运行 Vagrant 的宿主机的 IP
Windows Powershell
`Add-Content 'C:\Windows\System32\Drivers\etc\hosts' "127.0.0.1 tartarus-elastic.home.arpa"`
Linux Bash
`echo "127.0.0.1 tartarus-elastic.home.arpa" >> /etc/hosts`
#### 远程
用于远程部署
将 (Vagrant 宿主机 ip) 替换为您将运行 Vagrant 的宿主机的 IP
Windows Powershell
`Add-Content 'C:\Windows\System32\Drivers\etc\hosts' "(Vagrant host ip) tartarus-elastic.home.arpa"`
Linux Bash
`echo "(Vagrant host ip) tartarus-elastic.home.arpa" >> /etc/hosts`
## Opnsense
一旦 Opnsense 完成安装,您可以通过访问 `https://127.0.0.1:8443` 或(如果您已经更新了您的 hosts,即 `hosts` 文件)`https://tartarus-opnsense.home.arpa:8443` 来登录。所有的配置都已经为您完成了。
## Kibana
忽略 HTTPS 证书警告是安全的,因为在此实例中我们生成了自己的自签名证书。
您现在可以将保存在 ./certs/ 中的生成的 CA 证书 `root_ca.crt` 添加到您的浏览器信任存储区,得益于 Smallstep CA + Caddy ACME 证书设置,您将不会再为此项目看到“此网站不安全”的提示*。
*证书有效期为 24 小时,有时(如果您将宿主机置于休状态一段时间)证书会在 Caddy 重新执行 ACME 过程之前过期。只需在 `tartarus-elastic` 节点上执行简单的 `sudo systemctl restart caddy`,您就万事大吉了。
**登录 Kibana(本地)**
从您的宿主机
`https://tartarus-elastic.home.arpa:5443`
由于 Caddy 反向代理,现在必须通过域名访问,只需在 `/etc/hosts` 或 `C:\Windows\System32\drivers\etc\hosts` 中添加一个覆盖,将 `tartarus-elastic.home.arpa` 指向 `127.0.0.1`
**登录 Kibana(远程)**
`https://tartarus-elastic.home.arpa:5443`
用户名:`elastic`
您可以将密码保存在运行 Vagrant 的目录中名为“Password.txt”的文件中,这是超级用户帐户的密码,因此请小心!
该文件位于 `.gitignore` 中,但是将密码保存到磁盘并不是一个好习惯!
密码也会打印在您运行 `vagrant up` 的终端 / shell 中。
如果您需要重置密码,您可以在 `elastic` 节点上通过简单的操作完成:
```
vagrant ssh elastic
sudo /usr/share/elasticsearch/bin/elasticsearch-reset-password -u elastic
exit
```
## 查看 Kibana 告警
一旦您在 `https://tartarus-elastic.home.arpa:5443` 上登录到 Kibana 实例,现在就是查看告警的时候了。
Windows 和 Linux 告警已为您自动启用。
在通用搜索选项卡中搜索告警,或打开汉堡菜单并向下滚动到安全选项卡。

现在搜索“alerts”。

您应该会看到告警页面(请注意,您可能还没有任何告警,例如,您需要启动 Windows 主机并运行 EDR-Telemetry-Generator)

## 加载 Sigma 规则
我们使用了一些位于 `./rules` 中的现有 Sigma 规则,同时我也编写了自己的自定义规则来检测 Atomic Red Team 活动。所有规则均在 DRL 下。`dvwa` 规则已为您导入,只需在规则搜索栏中搜索“SIGMA”。
要加载自定义规则,请将 `.env.example` 复制为 `.env` 文件,并删除值之后的所有内容(即删除 `#` 右侧及其包含的所有内容,使其每行只有键=值)。
安装 Python 3。
使用简单的 `python3 -m pip install -r requirements.txt` 安装依赖项,这将安装加载规则所需的 pySigma。
运行 `sigmaApiLoad.py` 文件,使用简单的 `python3 sigmaApiLoad.py`。
Elastic 中的规则将以 `SIGMA -` 开头,因此很容易找到。
## Atomic Red Team 测试
使用来自 [EDR-Telemetry](https://github.com/tsale/EDR-Telemetry) 的 EDR-Telemetry-Generator
打开 PowerShell 并 Git 克隆 EDR-Telemetry 项目并运行它,为了方便使用,已预装了 Git。
`git clone https://github.com/tsale/EDR-Telemetry.git`
不言而喻,但这应该只在虚拟机上运行,不要在您的宿主机操作系统上运行!
`& .\EDR-Telemetry\Tools\Telemetry-Generator\telemetry-generator.ps1`

现在查看 Kibana 告警仪表板。

## 灵感
这项工作的主要灵感来自令人难以置信的项目 [EDR-Telemetry](https://github.com/tsale/EDR-Telemetry)
使用 Vagrant 作为 provisioner 的灵感来自 [Jeff Geerling's](https://github.com/geerlingguy) 的优秀著作 Ansible for DevOps。
## 资源
### TryHackMe
- [Atomic Red Team](https://tryhackme.com/room/atomicredteam)
- [Elastic](https://tryhackme.com/room/investigatingwithelk101)
### GitHub
- [EDR-Telemetry](https://github.com/tsale/EDR-Telemetry)
- [Caldera](https://github.com/mitre/caldera)
- [Elastic](https://github.com/elastic)
- [Atomic Red Team](https://github.com/redcanaryco/atomic-red-team)
- [Sigma](https://github.com/SigmaHQ/sigma)
- [Caddy](https://github.com/caddyserver/caddy)
- [Smallstep](https://github.com/smallstep/certificates)
## TODO
研究 ART 在 Linux 上的工作原理
添加提升为域控制器的 Windows 2022 Server
添加 Shuffle SOAR 节点
## 未来改进
## 许可证
**您有责任确保遵守所有适用的许可证、当地和/或国际法律!**
所有许可证在提交时均有效!
- 本项目中的所有原创工作(Sigma 规则除外)均基于 [The Unlicense](https://github.com/ScioShield/Tartarus/blob/master/LICENSE.md) 授权
- Vagrant 基于 [Business Source License 1.1](https://github.com/hashicorp/vagrant/blob/main/LICENSE) 授权
- VirtualBox 基于 [The GNU General Public License (GPL) Version 3](https://www.virtualbox.org/wiki/GPLv3) 授权
- Rocky Linux 基于 [BSD 3-Clause](https://rockylinux.org/legal/licensing) 授权
- Kali Linux 基于 [EULA](https://www.kali.org/docs/policy/eula/EULA.txt) 授权
- Windows 基于 [Windows 10 Enterprise Evaluation](https://www.microsoft.com/en-us/evalcenter/evaluate-windows-10-enterprise) 授权
- Elastic 基于 [GNU Affero General Public License v3.0](https://github.com/elastic/elasticsearch/blob/main/LICENSE.txt) 授权
- EDR-Telemetry 基于 [Creative Commons Attribution-NonCommercial 4.0 International License](https://github.com/tsale/EDR-Telemetry/blob/main/LICENSE) 授权
- Atomic Red Team 基于 [MIT License](https://github.com/redcanaryco/atomic-red-team/blob/master/LICENSE.txt) 授权
- pySigma 基于 [GNU Lesser General Public License v2.1](https://github.com/SigmaHQ/pySigma/blob/main/LICENSE) 授权
- Sigma 规则基于 [DRL 1.1](https://github.com/SigmaHQ/Detection-Rule-License/blob/main/LICENSE.Detection.Rules.md) 授权
- Caddy 基于 [Apache License 2.0](https://github.com/caddyserver/caddy/blob/master/LICENSE) 授权
- Smallstep 基于 [Apache License 2.0](https://github.com/smallstep/certificates/blob/master/LICENSE) 授权
- Opnsense 基于 [BSD 2-Clause “Simplified” license](https://docs.opnsense.org/legal.html#opnsense-license-copyright) 授权
- Opnsense Vagrant 配置文件基于 [BSD-2-Clause license](https://github.com/punktDe/vagrant-opnsense/blob/main/COPYRIGHT.md) 授权
- FreeBSD 基于 [FreeBSD License](https://www.freebsd.org/copyright/freebsd-license/) 授权
- Damn Vulnerable Web Application (DVWA) 基于 [GPL-3.0 license](https://github.com/digininja/DVWA?tab=GPL-3.0-1-ov-file) 授权
支持软件(如 bash、wget、jq 等)也基于它们各自的许可证授权。
上文未直接提及的任何内容当然都保留其许可证!
标签:ElasticSearch, TGT, Vagrant, 安全检测工程, 安全靶场, 攻防演练, 自动化环境部署, 配置修复