STATEMENT
声明
由于传播、利用此文所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,雷神众测及文章作者不为此承担任何责任。
雷神众测拥有对此文章的修改和解释权。如欲转载或传播此文章,必须保证此文章的完整性,包括版权声明等全部内容。未经雷神众测允许,不得任意修改或者增减此文章内容,不得以任何方式将其用于商业目的。
前言
DetectionLab项目是一个安装了一些安全工具及其日志检测工具的集合,可以轻松捕获到大部分的威胁,能够为用户快速搭建一个windows域。
安装及部署环境
根据自己的环境进行选择
https://detectionlab.network/deployment/
我的环境信息如下
Win10VMware Workstation 16 Pro其中需要配置如下:硬盘需55G+可用运行内存 16GB 以上VMware Workstation 15+
在搭建之前需要安装如下工具
vagrant - https://www.vagrantup.com/downloadsVagrant VMware Utility - https://www.vagrantup.com/vmware/downloadsvagrant plugin install vagrant-vmware-desktop
安装完成所需工具之后,将DetectionLab下载回来
git clone https://github.com/clong/DetectionLab.git
检查是否符合安装条件
.\prepare.ps1
符合安装条件后,有以下两种方法进行安装
1.
vagrant up --provider=vmware_desktop
2.命令窗口1和窗口2分别运行
vagrant up loggervagrant up dc
当logger和dc安装完成之后就可以继续安装剩下的机器
vagrant up wefvagrant up win10
下载和安装完成之后,运行脚本测试环境是否搭建完成
post_build_checks.ps1
如图上所示,则说明环境部署成功
使用介绍
通过架构展示可以看到,win10为模拟用户,dc和win10将收集到的数据发送到wef,wef则将接收到的数据上传ATA进行检测,同时将数据导入到Splunk中,Splunk并会对所有收集到的日志进行解析。
所有主机的PowerShell日志会被保存在WEF服务器中,位置在\\wef\pslogs并在Splunk中可以查询到。Zeek和Suricata预先配置为监控网络流量并发出告警,Guacamole方便我们从浏览器访问实验机器。
实验环境相关密码及平台
Domain Name: windomain.localAdmininstrator login: vagrant:vagrantFleet login: https://192.168.56.105:8412 - admin@detectionlab.network:admin123#Splunk login: https://192.168.56.105:8000 - admin:changemeMS ATA login: https://192.168.56.103 - wef\vagrant:vagrantGuacamole login: http://192.168.56.105:8080/guacamole - vagrant:vagrantVelociraptor login: https://192.168.56.105:9999 - admin:changeme
威胁检测分析
MS ATA
使用mimikatz进行dcsync
在ATA上查看检测结果
检测PsExec
不过不知道为什么显示的攻击结果是失败的
Splunk
检测dcsync
从源机器数据进行检测
index="sysmon" CommandLine="mimikatz.exe \"lsadump::dcsync /user:krbtgt /domain:windomain.local\""
从DC数据进行检测
(index="wineventlog" source="WinEventLog:Security" (EventCode="4662" Object_Type="%{19195a5b-6da0-11d0-afd3-00c04fd930c9}" Access_Mask="0x100") NOT ((SubjectDomainName="Window Manager") OR ((Account_Name="NT AUTHORITY*" OR Account_Name="MSOL_*")) OR (Account_Name="*$")))
检测PsExec
从目标机器数据进行检测
index="wineventlog" EventCode="4674" Object_Server="SC Manager" Object_Name="PSEXESVC"
index="wineventlog" EventCode="7045" Service_Name="PSEXESVC" Service_File_Name="%SystemRoot%\\PSEXESVC.exe"
从源机器数据进行查询
index="wineventlog" EventCode="4688" Process_Command_Line="*.exe -u * -p * \\\*"
除了上述的方法,还可以从sysmon的数据进行检测,这里就不一一列举了。
检测nopac
noPac.exe -domain windomain.local -user vagrant -pass vagrant /dc dc.windomain.local /mAccount test -mPassword 12qwAS.. /service cifs /ptt
index="wineventlog" EventCode="4781" host="dc.*.*" New_Account_Name="dc" Old_Account_Name="*$"
我们可以新建告警,假如有检测出来的我们就可以第一时间了解到
选择实时,根据个人需求选择触发操作
可在设置-->知识-->搜索、报表和告警处进行修改所添加的告警
可以在活动-->触发的告警中进行查看
Velociraptor
Velociraptor是开源端点监控、数字取证和网络响应平台
点击Show All 则可以看到所在线的机器
点击Client ID进入如下界面
点击VFS则可以查看机器中文件,可以进行下载方便取证等
通过Quarantine host可以对该机器进行隔离,隔离之后该机器只能与Velociraptor服务器进行通信
下面通过USN日志查询noPac.exe的创建及使用等信息
新建狩猎,添加描述
通过搜索快速查找到进行USN查询的Artifact
选择完成之后,进行配置PathRegex参数填入noPac.exe,输入完成点击Launch
点击开始狩猎即可
当狩猎完成之后,可在Notebook查看结果,也可下载回来在本地查看,通过结果可以看到noPac.exe创建时间及使用等情况
Fleet
基于osquery的开源设备管理平台,可以在平台设置策略及定时查询等
该平台可以对机器所安装的软件进行收集,当开启漏洞自动化时,所安装软件发现CVE漏洞时,则会向指定的网址发送webhook请求
踩坑总结
0.网卡设置问题
将Vmnet2子网地址设置为192.168.56.0,或者设置vmnet0(虚拟机默认网卡是vmnet0)
设置完成之后需要更改
假如后面你要进行vagrant provision当机器重启时也要重新进行设置,不然加入域和安装agent连接105的时候会出现问题
1.wef无法加入域
在DC中以管理员模式运行configure-ou.ps1脚本即可
2.虚拟机工具不齐全
运行
vagrant provision 主机名
想要不报错可以设置系统代理,需要下载的时候vagrant会自动使用代理
linux设置全局代理
sudo vim ~/.bashrc输入以下内容export http_proxy='http://192.168.31.123:7890'export https_proxy='http://192.168.31.123:7890'export no_proxy='localhost,127.0.0.1'执行source ~/.bashrc
windows设置系统代理即可
3.一直卡着在服务启动
查看是否能正常访问
将红框内容删除并保存,运行工具补全命令即可
vagrant provision logger
vagrant plugin install vagrant-reload
4.The Hyper-V cmdlets for PowerShell are not available
管理员运行cmd,输入以下命令重启即可
bcdedit /set hypervisorlaunchtype auto
转载请注明来自网盾网络安全培训,本文标题:《Detectionlab安装及使用》
- 关于我们