分析指令 (Linux™ 及 macOS)
分析指令用於提交掃描要求以進行分析,或者用於處理已提交的掃描要求。使用這些指令,您也可以接收掃描的相關資訊。此資訊可用於自動化 Script。
使用這些指令之前,請確定您已登入分析服務(請參閱鑑別指令)。
appscan.sh status
語法:
appscan.sh status -i <job_id>說明:
傳回分析工作的下列其中一個狀態碼:
0 = Pending
1 = Starting
2 = Running
3 = FinishedRunning
4 = FinishedRunningWithErrors
5 = PendingSupport
6 = Ready
7 = ReadyIncomplete
8 = FailedToScan
9 = ManuallyStopped
10 = None
11 = Initiating
12 = MissingConfiguration
13 = PossibleMissingConfiguration 必要選項:
-i:指定-i <job_id>,其中<job_id>是分析工作的 ID。
範例:
如果要查看工作 ID 12345 的狀態,請指定下列指令:
appscan.sh status -i 12345如果回覆碼是 0,則工作為擱置中。如果回覆碼是 1,則工作為啟動中,等等。
appscan.sh list
語法:
appscan.sh list說明:
列出所有分析工作,包括排入佇列、執行中及已完成的那些工作。系統會傳回每個工作的 ID,以便您將該 ID 用於其他指令。例如,在命令提示字元或 Script 中,ID 可以與 info 指令搭配使用。
appscan.sh list_apps
語法:
appscan.sh list_apps說明:
HCL Cloud Marketplace 限定:如果您連線至位於 HCL Cloud Marketplace 的 AppScan on Cloud 服務,您提交至雲端的 IRX 檔案必須關聯至現有的 AppScan on Cloud 應用程式。
這個指令可讓您查看您有權存取的 AppScan on Cloud 應用程式。如果要使用指令,您必須接受服務的鑑別。在發出指令之後, 會顯示 AppScan on Cloud 應用程式清單以及應用程式名稱,且名稱之後是其 ID(括上括弧)。當在 queue_analysis 指令中使用 -a 選項時,請使用此清單中的 ID 值。
appscan.sh cancel
語法:
appscan.sh cancel -i <job_id>說明:
取消執行中或已置入佇列的分析工作。
必要選項:
-i:指定-i <job_id>,其中<job_id>是分析工作的 ID。
範例:
若要取消工作 ID 12345,請指定下列指令:
appscan.sh cancel -i 12345
appscan.sh queue_analysis
語法:
appscan.sh queue_analysis -a <app_id> -f <file> -di -n <scan_name> -nen -oso -ps -sao說明:
必要選項:
-a:您提交進行分析的檔案(IRX 檔案或非 IRX 封存)必須與現有 AppScan on Cloud 應用程式相關聯。在這個選項中,指定-a <app_id>,其中<app_id>是要產生關聯之應用程式的 ID。如果要判斷 ID,請使用list_apps指令。-f:指定-f <file>,其中<file>是您要提交以進行掃描的 IRX 檔案或非 IRX 封存。如果檔案不在現行目錄中,請使用此選項來指定檔案路徑及檔名。註: 只有在符合下列其中一個或兩個陳述式時,才需要此選項:- 您是從包含多個目標檔案的目錄中發出指令。如果目錄只包含一個目標檔案,則未使用
-f選項時,將會提交該檔案。 - 您是從未包含目標檔案的目錄中發出指令。在此情況下,必須使用
-f選項來指定要提交的檔案的路徑及檔名。
- 您是從包含多個目標檔案的目錄中發出指令。如果目錄只包含一個目標檔案,則未使用
-di:停用介入。如果您的掃描由於任何原因而失敗,我們的掃描啟用團隊將不會介入以嘗試改善配置。依預設,當掃描失敗時,會進入「檢閱中」狀態,等待掃描啟用團隊介入。指定-di以停用此介入作業;掃描會直接失敗。-n:指定-n <scan_name>,其中<scan_name>是所提交掃描的名稱。-nen:在分析完成時停用電子郵件通知。如果未指定此旗標,依預設會發生電子郵件通知。註:-e旗標已淘汰,並由-nen取代。-oso:指定-oso,在 SCA 套件中只尋找已知漏洞。指定-oso時,則 AppScan on Cloud 不會在套件上執行靜態分析。註: 當使用者具有「開放程式碼」授權時,SCA 分析預設是靜態掃描的一部分。這個選項會限制對於 SCA 漏洞的分析。使用者必須具有「開放程式碼」授權,才能利用僅限 SCA 的分析。-ps:以個人掃描形式執行掃描。如果未指定此旗標,依預設會發生一般掃描。-sao:指定-sao,只執行靜態分析。指定-sao時,AppScan on Cloud不會在套件上執行開放原始碼分析。
範例:
appscan queue_analysis -f my_irx.irx -a 12345 -n my_scan其中 12345 是要與掃描產生關聯之應用程式的 ID (可以使用 list_apps 指令來判斷應用程式 ID)。透過使用者介面或 list 指令以查看所有現行掃描時,my_scan 會出現在清單中。-oso 或 -sao 選項與 appscan queue_analysis 搭配使用來套用這些選項。在此範例中,下列指令會傳送開放原始碼和靜態分析的檔案:appscan queue_analysis -a <application> -f my_irx.irx下列指令會針對僅限靜態分析傳送檔案:appscan queue_analysis -a <application> -f <file> -sao下列指令會針對僅限開放原始碼 (SCA) 傳送檔案:appscan queue_analysis -a <application> -f <file> -os相反地,如果建立檔案且開放原始碼 (SCA) 或僅限靜態分析僅使用 appscan prepare 指定,則基本指令appscan queue_analysis -a <application> -f my_irx.irx僅會針對以 appscan prepare 指令指定的分析類型傳送檔案。appscan.sh info
語法:
appscan.sh info -i <job_id>說明:
顯示所指定分析工作的資訊。
提供的資訊可以用於自動化 Script。
必要選項:
-i:指定-i <job_id>,其中<job_id>是分析工作的 ID。
範例:
如果要接收工作 ID 12345 的相關資訊,請指定下列指令:
appscan.sh info -i 12345所傳回資訊的範例為:
NLowIssues=0
ReadStatus=2
NHighIssues=0
Name=appscan.zip
ScanEndTime=2014-11-20T13:56:04.497Z
Progress=0
RemainingFreeRescanMinutes=0
ParentJobId=00000000-0000-0000-0000-000000000000
EnableMailNotifications=false
JobStatus=6
NInfoIssues=0
JobId=9b344fc7-bc70-e411-b922-005056924f9b
NIssuesFound=0
CreatedAt=2014-11-20T13:54:49.597Z
UserMessage=Scan completed successfully. The report is ready.
NMediumIssues=0
Result=1