[TOC]html
WatchAD收集全部域控上的事件日誌和kerberos流量,經過特徵匹配、Kerberos協議分析、歷史行爲、敏感操做和蜜罐帳戶等方式來檢測各類已知與未知威脅,功能覆蓋了大部分目前的常見內網域滲透手法。該項目在360內部上線運行半年有餘,發現多起威脅活動,取得了較好的效果。現決定開源系統中基於事件日誌的檢測部分。前端
項目地址:WatchADpython
查看文檔:CentOS7.2安裝Python3.6.3git
查看文檔:CentOS Docker 安裝github
查看文檔:pip安裝docker-composeweb
git clone https://github.com/0Kee-Team/WatchAD.git
若是提示沒有git命令, 請安裝git:yum install git
docker
進到下載的WatchAD的目錄下,執行pip3 install -r requirements.txt
數據庫
在WatchAD的目錄下,執行docker-compose up
,前提是前邊的docker和docker-compos都正確安裝了。centos
注意:
執行這步時,須要先到 https://hub.docker.com/ 平臺註冊帳號,而後在服務器上執行docker login
,而後輸入你註冊激活過的帳號密碼
不然直接操做,會報錯:ERROR: unauthorized: authentication required
,並且登陸事後的下載速度,也明顯加快了,不知道爲何
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`
執行命令:python3 WatchAD.py --start
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.production
和WatchAD-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文件中的pip
爲pip3
就能夠了
執行命令: docker-compose up -d
啓動後,就能夠訪問WatchAD-Web前端頁面了,地址:http://服務器ip/activity_time...
參考連接:
本文原創於 BigYoung小站,歡迎你們訪問。