SSL_Certificate_Verification
Demo playbook - takes list of addresses from an XSOAR list, process the status of each SSL certificate, and generate war room and email summary outputs.
SSL Certificates · 15 tasks · 0 inputs · 0 outputs
Details
| ID | SSL_Certificate_Verification |
|---|---|
| From Version | 6.0.0 |
| Tasks | 15 |
README
Demo playbook to take a list of addresses from a specified XSOAR list, process the status of the SSL certificate for each address, and generate war room and email outputs for the status of each certificate.
Dependencies
This playbook uses the following sub-playbooks, integrations, and scripts.
Sub-playbooks
This playbook does not use any sub-playbooks.
Integrations
This playbook does not use any integrations.
Scripts
- SetGridField
- SSLVerifierV2_ParseOutput
- SSLVerifierV2_GenerateEmailBody
- SSLVerifierV2
Commands
- send-mail
Playbook Inputs
There are no inputs for this playbook.
Playbook Outputs
There are no outputs for this playbook.
Playbook Image

Commands used
send-mail
Flowchart
contentitemexportablefields: contentitemfields: propagationLabels: - all id: SSL_Certificate_Verification name: SSL_Certificate_Verification description: 'Demo playbook - takes list of addresses from an XSOAR list, process the status of each SSL certificate, and generate war room and email summary outputs.' starttaskid: "0" tasks: "0": id: "0" taskid: f0b75a56-9b8e-4ea4-850a-c194e46d18d3 type: start task: description: "" id: f0b75a56-9b8e-4ea4-850a-c194e46d18d3 version: -1 name: "" iscommand: false brand: "" nexttasks: '#none#': - "2" separatecontext: false continueonerrortype: "" view: |- { "position": { "x": 725, "y": 50 } } note: false timertriggers: [] ignoreworker: false skipunavailable: false quietmode: 0 isoversize: false isautoswitchedtoquietmode: false "2": id: "2" taskid: e6993720-eb0a-47a9-88aa-fbae58abe029 type: regular task: id: e6993720-eb0a-47a9-88aa-fbae58abe029 version: -1 name: Check certificate status for each domain description: Use this automation to check for validity of your SSL certificate and get the time until expiration. scriptName: SSLVerifierV2 type: regular iscommand: false brand: "" nexttasks: '#none#': - "4" scriptarguments: URL: complex: root: lists accessor: Domains_All transformers: - operator: splitAndTrim args: delimiter: value: simple: ',' ignore-outputs: simple: "false" separatecontext: false continueonerror: true continueonerrortype: "" view: |- { "position": { "x": 725, "y": 195 } } note: false timertriggers: [] ignoreworker: false skipunavailable: false quietmode: 0 isoversize: false isautoswitchedtoquietmode: false "4": id: "4" taskid: 886eed48-8ee6-4c2d-8f6a-2433e1f6e0e1 type: regular task: id: 886eed48-8ee6-4c2d-8f6a-2433e1f6e0e1 version: -1 name: Parse SSLVerifierV2 Output description: "Parses the output from the !SSLVerifier automation into a markdown table and separate context key \n\n" scriptName: SSLVerifierV2_ParseOutput type: regular iscommand: false brand: "" nexttasks: '#none#': - "15" - "16" - "17" - "18" scriptarguments: OutputToWarRoom: simple: "False" StatusType: simple: all separatecontext: false continueonerrortype: "" view: |- { "position": { "x": 725, "y": 370 } } note: false timertriggers: [] ignoreworker: false skipunavailable: false quietmode: 1 isoversize: false isautoswitchedtoquietmode: false "5": id: "5" taskid: ee0cf87d-7eda-4b2e-8073-f2d98b8f15b6 type: regular task: id: ee0cf87d-7eda-4b2e-8073-f2d98b8f15b6 version: -1 name: Generate Report Email (HTML) description: Generate the HTML-formatted report for delivery via email scriptName: SSLVerifierV2_GenerateEmailBody type: regular iscommand: false brand: "" nexttasks: '#none#': - "6" separatecontext: false continueonerrortype: "" view: |- { "position": { "x": 725, "y": 895 } } note: false timertriggers: [] ignoreworker: false skipunavailable: false quietmode: 0 isoversize: false isautoswitchedtoquietmode: false "6": id: "6" taskid: e00afaca-34b2-47f1-87dd-4f15e61f9a3a type: regular task: id: e00afaca-34b2-47f1-87dd-4f15e61f9a3a version: -1 name: Send Report Email (HTML) description: Sends mail using Gmail. script: '|||send-mail' type: regular iscommand: true brand: "" nexttasks: '#none#': - "19" scriptarguments: htmlBody: simple: ${SSLReport.HTML} subject: simple: SSL Certificate Report to: simple: lol@hotmail.com separatecontext: false continueonerrortype: "" view: |- { "position": { "x": 725, "y": 1070 } } note: false timertriggers: [] ignoreworker: false skipunavailable: false quietmode: 0 isoversize: false isautoswitchedtoquietmode: false "10": id: "10" taskid: 2a695572-5883-4d50-8ea2-0b735ced3b41 type: regular task: id: 2a695572-5883-4d50-8ea2-0b735ced3b41 version: -1 name: Set Expired Certificates Grid description: Creates a Grid table from items or key-value pairs. scriptName: SetGridField type: regular iscommand: false brand: "" nexttasks: '#none#': - "5" scriptarguments: columns: simple: Domain, ExpirationDate, TimeToExpiration context_path: simple: SSLReport.Expired grid_id: simple: sslcertificatesexpired overwrite: simple: "true" sort_by: simple: timetoexpiration separatecontext: false continueonerrortype: "" view: |- { "position": { "x": 162.5, "y": 720 } } note: false timertriggers: [] ignoreworker: false skipunavailable: false quietmode: 1 isoversize: false isautoswitchedtoquietmode: false "11": id: "11" taskid: 6fac48fe-8413-4176-85b5-5237d8542ae9 type: regular task: id: 6fac48fe-8413-4176-85b5-5237d8542ae9 version: -1 name: Set Expiring Certificates Grid description: Creates a Grid table from items or key-value pairs. scriptName: SetGridField type: regular iscommand: false brand: "" nexttasks: '#none#': - "5" scriptarguments: columns: simple: Domain, ExpirationDate, TimeToExpiration context_path: simple: SSLReport.Expiring grid_id: simple: sslcertificatesexpiring overwrite: simple: "true" sort_by: simple: timetoexpiration separatecontext: false continueonerrortype: "" view: |- { "position": { "x": 612.5, "y": 720 } } note: false timertriggers: [] ignoreworker: false skipunavailable: false quietmode: 1 isoversize: false isautoswitchedtoquietmode: false "12": id: "12" taskid: 20f51842-d663-49da-86cd-729637a1f7ac type: regular task: id: 20f51842-d663-49da-86cd-729637a1f7ac version: -1 name: Set Warning Certificates Grid description: Creates a Grid table from items or key-value pairs. scriptName: SetGridField type: regular iscommand: false brand: "" nexttasks: '#none#': - "5" scriptarguments: columns: simple: Domain, ExpirationDate, TimeToExpiration context_path: simple: SSLReport.Warning grid_id: simple: sslcertificateswarning overwrite: simple: "true" sort_by: simple: timetoexpiration separatecontext: false continueonerrortype: "" view: |- { "position": { "x": 1062.5, "y": 720 } } note: false timertriggers: [] ignoreworker: false skipunavailable: false quietmode: 1 isoversize: false isautoswitchedtoquietmode: false "13": id: "13" taskid: 8ac08fdf-83be-45cf-84b8-af7e6cd6c257 type: regular task: id: 8ac08fdf-83be-45cf-84b8-af7e6cd6c257 version: -1 name: Set Good Certificates Grid description: Creates a Grid table from items or key-value pairs. scriptName: SetGridField type: regular iscommand: false brand: "" nexttasks: '#none#': - "5" scriptarguments: columns: simple: Domain, ExpirationDate, TimeToExpiration context_path: simple: SSLReport.Good grid_id: simple: sslcertificatesgood overwrite: simple: "true" sort_by: simple: timetoexpiration separatecontext: false continueonerrortype: "" view: |- { "position": { "x": 1512.5, "y": 720 } } note: false timertriggers: [] ignoreworker: false skipunavailable: false quietmode: 1 isoversize: false isautoswitchedtoquietmode: false "14": id: "14" taskid: b4cbe90d-11b5-4a19-87af-b4104075b1d3 type: title task: description: "" id: b4cbe90d-11b5-4a19-87af-b4104075b1d3 version: -1 name: Playbook Finished type: title iscommand: false brand: "" separatecontext: false continueonerrortype: "" view: |- { "position": { "x": 725, "y": 1420 } } note: false timertriggers: [] ignoreworker: false skipunavailable: false quietmode: 0 isoversize: false isautoswitchedtoquietmode: false "15": id: "15" taskid: 3cff891b-3eeb-4822-8d3c-ff22abd027fb type: condition task: id: 3cff891b-3eeb-4822-8d3c-ff22abd027fb version: -1 name: Were Expired Certificates Found? description: This script checks that a context key exists (and contains data), and optionally checks the value of the context key for a match against an input value. If a regex is not supplied, the script checks that the key is not empty. This script can be used with the "GenericPolling" playbook to poll for field population or that a field contains a specific value. This scripts does not support a context key which holds a list of values. type: condition iscommand: false brand: "" nexttasks: '#default#': - "5" "yes": - "10" separatecontext: false conditions: - label: "yes" condition: - - operator: isExists left: value: simple: ${SSLReport.Expired} iscontext: true right: value: {} continueonerrortype: "" view: |- { "position": { "x": 50, "y": 545 } } note: false timertriggers: [] ignoreworker: false skipunavailable: false quietmode: 1 isoversize: false isautoswitchedtoquietmode: false "16": id: "16" taskid: 224d869f-67db-468f-8b71-8f2193711dd4 type: condition task: id: 224d869f-67db-468f-8b71-8f2193711dd4 version: -1 name: Were Expiring Certificates Found? description: This script checks that a context key exists (and contains data), and optionally checks the value of the context key for a match against an input value. If a regex is not supplied, the script checks that the key is not empty. This script can be used with the "GenericPolling" playbook to poll for field population or that a field contains a specific value. This scripts does not support a context key which holds a list of values. type: condition iscommand: false brand: "" nexttasks: '#default#': - "5" "yes": - "11" separatecontext: false conditions: - label: "yes" condition: - - operator: isExists left: value: simple: ${SSLReport.Expiring} iscontext: true right: value: {} continueonerrortype: "" view: |- { "position": { "x": 500, "y": 545 } } note: false timertriggers: [] ignoreworker: false skipunavailable: false quietmode: 1 isoversize: false isautoswitchedtoquietmode: false "17": id: "17" taskid: 4373cdbb-6054-406a-82e2-fc0fbadd8b7c type: condition task: id: 4373cdbb-6054-406a-82e2-fc0fbadd8b7c version: -1 name: Were Warning Certificates Found? description: This script checks that a context key exists (and contains data), and optionally checks the value of the context key for a match against an input value. If a regex is not supplied, the script checks that the key is not empty. This script can be used with the "GenericPolling" playbook to poll for field population or that a field contains a specific value. This scripts does not support a context key which holds a list of values. type: condition iscommand: false brand: "" nexttasks: '#default#': - "5" "yes": - "12" separatecontext: false conditions: - label: "yes" condition: - - operator: isExists left: value: simple: ${SSLReport.Warning} iscontext: true right: value: {} continueonerrortype: "" view: |- { "position": { "x": 950, "y": 545 } } note: false timertriggers: [] ignoreworker: false skipunavailable: false quietmode: 1 isoversize: false isautoswitchedtoquietmode: false "18": id: "18" taskid: f435796d-9278-44a9-88e0-fd21853b7ada type: condition task: id: f435796d-9278-44a9-88e0-fd21853b7ada version: -1 name: Were Good Certificates Found? description: This script checks that a context key exists (and contains data), and optionally checks the value of the context key for a match against an input value. If a regex is not supplied, the script checks that the key is not empty. This script can be used with the "GenericPolling" playbook to poll for field population or that a field contains a specific value. This scripts does not support a context key which holds a list of values. type: condition iscommand: false brand: "" nexttasks: '#default#': - "5" "yes": - "13" separatecontext: false conditions: - label: "yes" condition: - - operator: isExists left: value: simple: ${SSLReport.Good} iscontext: true right: value: {} continueonerrortype: "" view: |- { "position": { "x": 1400, "y": 545 } } note: false timertriggers: [] ignoreworker: false skipunavailable: false quietmode: 1 isoversize: false isautoswitchedtoquietmode: false "19": id: "19" taskid: 1a365373-a1f7-4a84-82c1-eeb45f26009d type: regular task: id: 1a365373-a1f7-4a84-82c1-eeb45f26009d version: -1 name: Print output to War Room description: Prints text to war room (Markdown supported) scriptName: Print type: regular iscommand: false brand: "" nexttasks: '#none#': - "14" scriptarguments: value: simple: ${SSLReport.md} separatecontext: false continueonerrortype: "" view: |- { "position": { "x": 725, "y": 1245 } } note: false timertriggers: [] ignoreworker: false skipunavailable: false quietmode: 0 isoversize: false isautoswitchedtoquietmode: false version: -1 view: |- { "linkLabelsPosition": {}, "paper": { "dimensions": { "height": 1435, "width": 1842.5, "x": 50, "y": 50 } } } tests: - No tests (auto formatted) fromversion: 6.0.0