Files
106_105_181_40/xensor_cydroned_edr.md

134 lines
5.4 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Xensor (CyCraft) EDR Agent 安裝筆記
## 概述
`106.105.181.40` 上部署了 **CyCraft奧義智慧Xensor** 端點偵測與回應EDR代理程式
agent 名稱為 `cydroned`,由資安團隊提供的安裝腳本部署。
- 安裝包:`XENSOR_Linux-臺北市立聯合醫院.zip`,解開後為單一 shell script
(檔名 = `<APIKey>_Linux-臺北市立聯合醫院.sh`
- 部署群組:`Linux-臺北市立聯合醫院`appid `A00003`
- 回報伺服器:`https://node7.xensor.ai:443`
## 安裝包資訊
| 項目 | 值 |
|------|-----|
| Agent 名稱 | `cydroned` |
| 安裝路徑 | `/usr/local/bin/cydroned` |
| 設定目錄 | `/etc/cydroned/`(主設定檔 `/etc/cydroned/config` |
| 服務檔 | `/lib/systemd/system/cydroned.service`service 名稱 `CyDrone Agent`enabled |
| 資料目錄 | `/var/lib/cydroned/`(含 `loader`,僅 root 可讀) |
| 日誌 | `/var/log/cydroned.log``/var/log/cydroned/`(僅 root |
| APIKey | `c064efc31aed4ec4a5073013809a169d` |
| TargetURL | `https://node7.xensor.ai:443` |
| 同步週期 | `SyncPeriodSec: 600` |
| CPU 上限 | `MaxCPU: 35` |
> ⚠️ **敏感資訊**:安裝腳本與設定檔內含 APIKey、RSA 公鑰、內部群組名稱(醫院名)。
> 屬該院的部署憑證,請勿外流或提交到公開 repo。
## 連線到主機(三層 SSH 跳板)
`106.105.181.40` 不可直連,需經兩層跳板:
```
本機 → timmy_home_server (125.229.110.50:22, user timmy) ← 需密碼,另行保管
→ jason_hsieh_home_srv (220.135.27.129:2022, user timmy) ← 金鑰
→ hospital_media (106.105.181.40:22, user tpech_1duan) ← 金鑰
```
`~/.ssh/config` 已設好 `hospital_media` 別名ProxyJump 鏈)。連線前確認金鑰已載入 agent
```bash
ssh-add -l # 應列出 id_ecdsa / id_rsa
ssh-add # 若無,載入金鑰(需 passphrase
ssh hospital_media # 第一跳 timmy_home_server 會提示密碼,互動輸入
```
> 第一跳 `timmy_home_server` 用**密碼認證**(金鑰不被接受),自動化時可用 `sshpass`
> 以環境變數帶入密碼,避免明碼落地。後兩跳走金鑰。
## 安裝腳本運作方式
腳本(`<APIKey>_..._Linux-臺北市立聯合醫院.sh`)分三段:
1. **前置相容性檢查**CPU 架構、kernel 版本、libc、init 系統、`/proc``/sys`
套件管理器dpkg/rpm、Python 版本與模組、`/tmp` `/var/log` `/var/lib` 磁碟空間。
`/usr/local/bin/cydroned``/etc/cydroned` 已存在,**預設直接退出不重裝**。
2. **下載並安裝 agent**:從 `node7.xensor.ai` 依架構amd64/arm64/ppc64下載 `cydroned`
以多重 fallback 方式wget → curl → perl抓取驗證為 ELF 後執行:
```
./cydroned -sync 5 -url https://node7.xensor.ai:443 \
-apikey c064efc31aed4ec4a5073013809a169d -pubkey <RSA 公鑰> -background
```
裝成 systemd 服務常駐回報。
3. **失敗時自動診斷**:失敗會跑診斷蒐集日誌打包,提示送交 CyCraft。
### 執行安裝
```bash
# 1. 把安裝包上傳到主機
scp XENSOR_Linux-臺北市立聯合醫院.zip hospital_media:~/
# 2. 在主機上解壓、賦予執行權限、以 root 執行
ssh hospital_media
unzip XENSOR_Linux-臺北市立聯合醫院.zip
chmod +x *_Linux-臺北市立聯合醫院.sh
sudo ./*_Linux-臺北市立聯合醫院.sh
```
腳本選項:
| 選項 | 用途 |
|------|------|
| (無) | 正常安裝已安裝會退出exit 3 |
| `-f` | 強制安裝:先解除既有安裝再重裝 |
| `-d` / `--diagnosis` | 只跑診斷,蒐集系統/agent 資訊打包供 CyCraft 排錯 |
| `-h` | 顯示用法 |
## 驗證安裝狀態
```bash
ssh hospital_media '
ls -al /usr/local/bin/cydroned # 執行檔
pgrep -a cydroned # process
systemctl status cydroned --no-pager | head # 服務狀態
cat /etc/cydroned/config # 設定APIKey/TargetURL
/usr/local/bin/cydroned -id # Endpoint ID
/usr/local/bin/cydroned -version # 版本
'
```
### 目前狀態2026-06-08 檢查)
| 項目 | 值 |
|------|-----|
| 安裝日期 | 2026-04-14 |
| 執行檔 | `/usr/local/bin/cydroned`16 MBroot |
| 服務 | `cydroned.service` enabled + **active (running)** |
| Endpoint ID | `25F3B0AFCA173F2417950B2FD28CFA66` |
| 版本 | `0.57.5 (release)`tag `ap03`Python `/usr/bin/python3 (3.10.12)` |
| 設定一致性 | APIKey / TargetURL / PubKey 皆與安裝包相符 ✅ |
## 解除安裝
腳本以 `-f` 執行時會先解除既有安裝,等同於:
```bash
sudo /usr/local/bin/cydroned -ctrl force-uninstall
sudo /usr/local/bin/cydroned -uninstall
sudo killall cydroned
sudo rm -rf /etc/cydroned /var/lib/cydroned /usr/local/bin/cydroned \
/var/log/cydroned /var/log/cydroned.log \
/lib/systemd/system/cydroned.service /etc/init/cydroned.conf /etc/init.d/cydroned
```
## 注意事項
- 這是**合法商用 EDR agent**但行為root、常駐、外連 `node7.xensor.ai`、可 dump
process 記憶體)與惡意程式相似,操作前需確認來源與授權。
- agent 以 root 運行,`/var/lib/cydroned`、`/var/log/cydroned/` 僅 root 可讀屬正常。
- 重跑安裝腳本(不帶 `-f`)在已安裝狀態下會直接退出,不會破壞現有部署。
- 排錯時用 `-d` 產生診斷包,依提示送交 CyCraft診斷包內含系統資訊注意保管。