使用 CLI 部署 Trend Vision One™ 檔案安全性
集成到 CI/CD 管道
將檔案安全性納入您的 CI/CD 管道,以在檔案分發到生產管道或儲存之前檢測惡意程式。輕鬆將檔案安全性 CLI 整合到您的持續整合 (CI) 或持續交付 (CD)
管道中。例如,Jenkins® 專案可以自動構建、測試和推送檔案和應用程式到生產環境。如果這些檔案中存在任何惡意程式,那麼在檔案運行或分發到生產管道的其他部分時,它們將成為風險。
File Security CLI 功能多樣,可用於生產環境中,當文件由第三方供應商或供應鏈合作夥伴上傳或分發時使用。它會掃描任何接收到的文件,以確保在允許它們進入企業環境的其他部分之前,企業範圍內沒有惡意的橫向移動。
可以使用檔案安全命令列介面掃描的檔案範例包括:
-
二進位檔案
-
具有各種檔案類型的目錄
-
大型媒體檔案
-
從第三方或供應鏈合作夥伴接收的檔案
安裝檔案安全命令列介面
為確保最佳性能和訪問最新功能,我們建議您安裝最新版本的 File Security CLI。要檢查最新版本,請前往 metadata.json。
注意如果您正在更新到新版的 File Security CLI,您需要通過以下其中一種方式調整系統的二進位路徑設置:
|
架構
|
Darwin_arm64(MacOS - Apple Silicon 晶片組)
|
Darwin_x86_64 (MacOS - Intel 晶片組)
|
取得 API 金鑰
File Security CLI 需要儲存在環境變數中的有效 API 金鑰。它可以接受 Trend Vision One API 金鑰。請將與您希望調用的 Trend
Vision One 區域相關聯的 API 金鑰添加為環境變數。
macOS 和 Linux
export TMFS_API_KEY=<your_vision_one_api_key>
Windows 命令提示字元 (cmd)
set TMFS_API_KEY=<your_vision_one_api_key>
Windows PowerShell
$env:TMFS_API_KEY="<your_vision_one_api_key>"
注意在獲取 API 金鑰時,將其與您的 Trend Vision One 區域關聯。在運行 File Security CLI 時使用
-- region 標誌來指定該 API 金鑰的區域,並確保您具有適當的授權。受支持的 Trend Vision One 區域列表可以在 region 標誌下找到。 |
步驟
- 建立新的 Trend Vision One API 金鑰:
- 導航至Trend Vision One 使用者角色頁面。
- 確認是否有已啟動「透過 SDK 執行檔案掃瞄」權限的角色。如果沒有,請點選Add Role來建立角色,然後在完成後點選儲存。
- 直接在 Trend Vision One API 金鑰頁面上配置新金鑰,使用具有「通過 SDK 執行檔案掃瞄」權限的角色。我們建議您為 API 金鑰設置到期時間並記錄下來以供將來參考。您可以從Trend Vision One API 金鑰頁面管理這些金鑰。
- 將檔案安全 CLI 新增到您的 PATH:
-
macOS 和 Linux:
export
PATH="/path/to/tmfs/binary/directory:$PATH"
-
Windows 命令提示字元 (cmd):
setx PATH "%PATH%;C:\path\to\tmfs\binary\directory"
注意
關閉並重新開啟命令提示字元以使變更生效。 -
Windows PowerShell:
$pathToAdd = "C:\path\to\tmfs\binary\directory" [System.Environment]::SetEnvironmentVariable("Path", "$($env:Path);$pathToAdd", [System.EnvironmentVariableTarget]::User)
注意
關閉並重新開啟 PowerShell 以使變更生效。
-
一般使用
有關使用檔案安全 CLI 的指令範例,請參閱範例部分。
tmfs scan [target] [flags]
可用命令
命令
|
說明
|
掃瞄 |
掃瞄目標(檔案或目錄)
|
版本 |
取得目前的 CLI 版本 (長)
|
幫助 |
說明
|
命令範例
// use region flag and file target tmfs scan --region us-east-1 file:/Users/XXX/Downloads/eicar.tar.gz --tag "owner=johndoe" --tag "stack=prod" // use endpoint flag and directory target tmfs scan --endpoint antimalware.us-1.cloudone.trendmicro.com:443 dir:/Users/XXX/Uploads --tag "owner=janedoe" --tag "stack=dev"
使用指令標誌
命令標誌
範圍
|
旗標
|
說明
|
範例
|
掃瞄指令
|
-r, --region |
(string) vision one region options=[us-east-1, eu-central-1, ap-northeast-1, ap-southeast-2,
ap-southeast-1]
|
|
掃瞄指令
|
-- timeoutInSecs |
單個文件掃瞄的超時秒數
|
180
|
掃瞄指令
|
-t, --標籤 |
用於掃瞄的標籤
|
--tag "stack=production"
--tag "owner=johndoe"
--tag "type=OCR"
--tag "purpose=customer_upload"
|
掃瞄指令
|
--pml |
指定啟用 Machine Learning (PML)。
|
--pml true |
掃瞄指令 |
--feedback |
指定啟用趨勢主動式雲端截毒技術 (SPN) 反饋。
|
--feedback true |
掃瞄指令
|
--allResults |
|
--allResults |
全球
|
--verbose |
增加詳細程度 (-v = 資訊, -vv = 除錯
|
|
全球
|
-h, --help |
說明
|
支援的目標
File Security CLI 支援目錄和檔案目標。
支援的目標
目標
|
說明
|
注意
|
dir:path/to/yourproject |
直接從磁碟上的路徑(任何目錄)讀取
|
|
檔案:path/to/yourproject/file |
直接從磁碟上的路徑(任何檔案)讀取
|
注意對於檔案安全預覽版本,掃描僅限於小於 1GB 的檔案。
|
檔案安全 CLI 回應負載
檔案安全 CLI 回應負載包括檔案和目錄的參數。
檔案
參數
|
類型
|
說明
|
掃描器版本
|
字串
|
掃描器版本
|
schemaVersion
|
字串
|
架構版本
|
掃描結果
|
整數
|
找到的惡意程式檔案數量
|
掃描ID
|
字串
|
掃瞄的唯一識別碼
|
掃描時間戳
|
字串
|
掃瞄發生的時間戳記 |
檔案名稱
|
字串
|
掃描檔案的名稱
|
foundMalwares
|
物件
|
包含已識別惡意程式(如果有)的詳細資訊的陣列
|
fileSHA1
|
字串
|
已掃描檔案的 SHA-1 雜湊值
|
fileSHA256
|
字串
|
掃描檔案的 SHA-256 雜湊值
|
foundMalware[].fileName
|
字串
|
檔案中偵測到惡意程式的名稱
|
foundMalware[]malwareName
|
字串
|
檢測到的惡意程式名稱或識別碼
|
範例
{ "scannerVersion": "1.0.0-9271111", "schemaVersion": "1.0.0", "scanResult": 1, "scanId": "6a018277-f969-403d-aa63-eba1223337e1", "scanTimestamp": "2023-11-20T18:50:43.663Z", "fileName": "./test/eicar-alpine.tar", "foundMalwares": [ { "fileName": "malware/eicar.com", "malwareName": "Eicar_test_file" } ], "fileSHA1": "da39a3ee5e6b4b0d3255bfef95601890afd80709", "fileSHA256": "e5f24b4ac134a7d923ae0f9689b86f015f86edbc3cc95e4c9f9406412914de05" }
目錄
參數
|
類型
|
說明
|
注意
|
startTime
|
字串
|
掃瞄作業開始的時間戳記
|
|
結束時間
|
字串
|
顯示掃瞄作業結束時間的時間戳
|
|
totalMalwareCount
|
整數
|
所有掃瞄結果的總惡意程式數量
|
|
掃描結果
|
物件
|
包含所有掃瞄結果的陣列
|
僅收集包含惡意程式的檔案
|
scanResults[].scannerVersion
|
字串
|
掃描器版本
|
|
scanResults[].schemaVersion
|
字串
|
架構版本
|
|
scanResults[].scanResults
|
整數
|
找到的惡意程式數量
|
|
scanResults[].scanId
|
字串
|
掃瞄的唯一識別碼
|
|
scanResults[].scanTimestamp
|
字串
|
顯示掃瞄執行時間的時間戳記
|
|
scanResults[].fileName
|
字串
|
掃描檔案的名稱
|
|
scanResults[].foundMalwares
|
物件
|
包含已識別惡意程式(如果有)的詳細資訊的陣列
|
|
scanResults[].SHA1
|
字串
|
已掃描檔案的 SHA-1 雜湊值
|
|
scanResults[].SHA256
|
字串
|
掃描檔案的 SHA-256 雜湊值
|
|
scanResults[].foundMalwares[].fileName
|
字串
|
檔案中偵測到惡意程式的檔案名稱
|
|
scanResults[].foundMalwares[].malwareName
|
字串
|
檢測到的惡意程式名稱或識別碼
|
範例
{ "startTime": "2023-11-20T18:36:05.926Z", "endTime": "2023-11-20T18:36:06.316Z", "totalMalwareCount": 1, "scanResults": [ { "scannerVersion": "1.0.0-9271111", "schemaVersion": "1.0.0", "scanResult": 1, "scanId": "c104229a-247c-4d0d-8fca-c27c33824ef5", "scanTimestamp": "2023-11-20T18:36:06.373Z", "fileName": "./test/eicar-alpine.tar", "foundMalwares": [ { "fileName": "malware/eicar.com", "malwareName": "Eicar_test_file" } ], "fileSHA1": "da39a3ee5e6b4b0d3255bfef95601890afd80709", "fileSHA256": "e5f24b4ac134a7d923ae0f9689b86f015f86edbc3cc95e4c9f9406412914de05" } ] }
Proxy 組態設定
File Security CLI 從一組可選的環境變數中加載 Proxy 配置。
環境變數
環境變數
|
必填/選填
|
說明
|
||
NO_PROXY
|
選用
|
將檔案安全惡意程式掃描作為服務的端點新增到以逗號分隔的主機名稱列表中。如果您想跳過檔案安全 CLI 的 Proxy 設定,請使用此選項。
|
||
HTTP_PROXY
|
選用
|
http://proxy.example.com
|
||
HTTPS_PROXY
|
選用
|
https://proxy.example.com
|
||
PROXY_USER
|
選用
|
用於
Proxy-Authorization 的驗證標頭的使用者名稱 |
||
PROXY_PASS
|
選用
|
用於
Proxy-Authorization 的驗證標頭密碼。僅在配置了PROXY_USER時使用。 |