Splunk App for NodeZero®¶
We’ve built an integration that allows you to ingest NodeZero pentest results directly into Splunk, merging insights gained from the attacker’s perspective with existing data and workflows.
You can access the app, along with setup and usage info at Splunkbase
App Contents¶
The NodeZero App for Splunk comes bundled with the NodeZero Add-on for Splunk built in, which contains the modular input for pulling NodeZero pentests results into the Splunk index of your choosing. There is no need to install both on a standalone instance.
- Sample Dashboard
There exists a sample dashboard,
NodeZero Operations, to demonstrate how one might view summary information across all penetration tests visible in Splunk, then drilldown through specific weaknesses to see exactly what operations NodeZero took against certain hosts during a specific time range.
CIM Compliant¶
Weakness data has been mapped to the CIM Vulnerability datamodel
Prerequisites¶
NodeZero API Key¶
An API key is required to access the API. One can be generated in the Horizon3.ai portal via Settings > API Keys. (Note: The Splunk App for NodeZero uses a ReadOnly API Key)
Setup¶
Save API Key to Splunk credential store¶
On the Configuration page, click the Add button on the Accounts sub-tab
Nameis a simple name that gets used by theInputspageDescriptionis for any notes/details about the API Key/AccountAPI Keyis an encrypted field for saving the NodeZero API Key
Create the Input¶
On the 'Inputs' tab, click "Create New Input"
Name(required) is a simple name that gets used by the modular inputDescription(optional) is for any notes about the modular inputAPI Account(required) is a dropdown single select to choose the account for which you wish to pull dataIndex(required) the index to which you would like to ingest NodeZero dataPolling Interval(optional) Default is 86400 seconds (daily). How frequently you want to poll for new data
Once the input is saved, it immediately begins attempting to pull data from the NodeZero API
Index macro¶
For the sample dashboard to work, it relies on a macro called: h3_index. The default value for this macro is: (), and will only work if your events are being sent do the default index (usually main). Set the macro (via Settings > Advanced Search > Search Macros) to whatever index you selected when defining your modular input (e.g., (index=my_nodezero_test_index)
Verify data is being indexed¶
To make sure the modular input is doing its job, you can run the following search:
`h3_index` | stats values(sourcetype) as st
h3:nodezero:api:action_logs
h3:nodezero:api:host_export_csv
h3:nodezero:api:weakness_export_csv
There is also a non-navigable dashboard at /en-US/app/nodezero/kvstore_state that will show a table based on the KVstore the modular input uses to store app state. This can be used during troubleshooting to see what data has been pulled for each pentest.
Troubleshooting¶
For troubleshooting information, view ExecProcessor logs and the nodezero logs:
index=_internal (sourcetype=splunkd nodezero component=ExecProcessor) OR sourcetype="nodezero-*"
Note: Don't forget the asterisk on the end of sourcetype=nodezero*, as they often show up as nodezero-too-small.
For more logs: set LOGGING to DEBUG in the Configuration tab
Support¶
Email splunk@horizon3.ai with any questions, comments, or concerns. Feedback is greatly appreciated!