Windows AD日誌分析平臺WatchAD安裝教程

[TOC]html

WatchAD介紹

WatchAD收集全部域控上的事件日誌和kerberos流量,經過特徵匹配、Kerberos協議分析、歷史行爲、敏感操做和蜜罐帳戶等方式來檢測各類已知與未知威脅,功能覆蓋了大部分目前的常見內網域滲透手法。該項目在360內部上線運行半年有餘,發現多起威脅活動,取得了較好的效果。現決定開源系統中基於事件日誌的檢測部分。前端

項目地址:WatchADpython

安裝環境

  • CentOS 7

WatchAD安裝(日誌分析端服務)

基礎環境配置

  1. 安裝python 3.6

查看文檔:CentOS7.2安裝Python3.6.3git

  1. 安裝docker

查看文檔:CentOS Docker 安裝github

  1. 安裝docker-compose

查看文檔:pip安裝docker-composeweb

安裝WatchAD

  1. 下載WatchAD源碼

git clone https://github.com/0Kee-Team/WatchAD.git 若是提示沒有git命令, 請安裝git:yum install gitdocker

  1. 安裝python 依賴包

進到下載的WatchAD的目錄下,執行pip3 install -r requirements.txt數據庫

  1. 安裝數據庫依賴

在WatchAD的目錄下,執行docker-compose up,前提是前邊的docker和docker-compos都正確安裝了。centos

注意:
執行這步時,須要先到 https://hub.docker.com/ 平臺註冊帳號,而後在服務器上執行 docker login,而後輸入你註冊激活過的帳號密碼
不然直接操做,會報錯: ERROR: unauthorized: authentication required,並且登陸事後的下載速度,也明顯加快了,不知道爲何
  1. 安裝winlogbeat

4.1 修改winlogbeat.yml 文件
打開咱們提供的配置文件 {project_home}/settings/winlogbeat/winlogbeat.yml ,修改output.logstash 的 hosts字段值爲你安裝Logstash的IP和端口(默認5044),假設你安裝Logstash的IP爲10.10.10.10,此時配置文件爲:bash

winlogbeat.event_logs:
  - name: Security
  ignore_older: 1h

output.logstash:
  hosts: ["10.10.10.10:5044"]

若是你跟個人教程安裝的,這裏的ip就是你如今這個服務器的IP
4.2 下載winlogbeat到Windows 服務器上
WatchAD要求下載6.2版本,這裏是下載連接:winlogbeat 6.2 版本
4.3 安裝winlogbeat

- 把下載的winlogbeat 6.2壓縮包,解壓到中C:\Program Files。
- 將winlogbeat-<version>目錄重命名爲Winlogbeat。
- 打開Winlogbeat目錄下的winlogbeat.yml文件,把內容都刪除了,而後複製4.1步驟中修改的內容到文件中,保存
- 以管理員身份打開PowerShell提示符(右鍵單擊PowerShell圖標,而後選擇「以管理員身份運行」)。
- 在PowerShell提示符下,運行如下命令以安裝服務:
```bash
cd 'C:\Program Files\Winlogbeat'
.\install-service-winlogbeat.ps1
```

注意:

5. 初始化WatchAD配置
> 注意:執行如下操做時,須要先開一窗口,運行`docker-compose up`,把基礎數據庫環境運行起來,好觀察輸入日誌。若是後期服務穩定了,能夠執行`docker-compose up -d`後臺運行。

    WatchAD使用python將一些配置信息自動化完成:
Usage:  WatchAD.py <options> [settings]

Options:
  -h, --help            show this help message and exit
  --install             執行WatchAD初始化安裝,在次以前請確保已完整環境安裝和配置。
  -d DOMAIN, --domain=DOMAIN  AD服務器的域名
                        A FQDN domain name of detection.
  -s SERVER, --ldap-server=SERVER   服務器地址,若是域名解析了,能夠域名
                        Server address for LDAP search. e.g: dc01.corp.com
  -u USERNAME, --domain-user=USERNAME   鏈接AD的帳戶,格式:域名\\帳戶
                        Username for LDAP search. e.g: CORP\peter
  -p PASSWORD, --domain-passwd=PASSWORD   管理員密碼
                        Password for LDAP search.
  --check               檢查各個數據庫鏈接狀態、消息隊列狀態
  --start               啓動檢測引擎
  --restart             重啓檢測引擎
  --stop                中止引擎 (刪除現有消息隊列,防止數據量過大形成積壓)
  --status              查看當前引擎狀態
```
直接執行安裝命令,如:
`python3 WatchAD.py --install -d adtest.intra -s 192.168.1.1 -u adtest\\administrator -p password`

運行WatchAD

執行命令:python3 WatchAD.py --start

WatchAD-web安裝(Web監控端服務)

下載WatchAD-Web源碼

git clone https://github.com/0Kee-Team/WatchAD-Web.git

修改配置

修改鏈接數據庫的配置:

{WatchAD-Web}/server/config/database_config.py 此文件中的127.0.0.1全改成WatchAD所在的服務器IP。

修改前端頁面配置:

WatchAD-Web/frontend/.env.productionWatchAD-Web/frontend/.env.development此文件中的127.0.0.1改成WatchAD-Web所在服務器的IP。個人WatchAD和WatchAD-Web搭建在一個服務器了,因此IP同樣。

進行編譯

進到下載WatchAD-Web目錄,執行:docker-compose build,若是上一步的配置有修改或者代碼有變更,須要從新執行此命令,下一步的docker-compose up纔會對修改生效

注意:
編譯時,報錯:
ERROR: Service 'server' failed to build: The command '/bin/sh -c pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple' returned a non-zero code: 2
緣由:由於環境中,pip默認指向的是python2.7版的。
解決辦法:修改{WatchAD-Server}/server/Dockerfile文件中的 pippip3 就能夠了

安裝

執行命令: docker-compose up -d
啓動後,就能夠訪問WatchAD-Web前端頁面了,地址:http://服務器ip/activity_time...

參考連接:

  1. 安裝Winlogbeat
  2. WatchAD 項目
  3. WatchAD 安裝教程)
  4. WatchAD-Web 項目及教程
本文原創於 BigYoung小站,歡迎你們訪問。
相關文章
相關標籤/搜索