Eyeglass Solutions Publication2

Securonix SIEM Zero Trust Alerts

Home



 

Overview

Customers using Securonix SIEM solution can now leverage a native integration that initiates native ingestion API alerts from Security Editions zero trust alerts.   Customers can augment the capabilities of Securonix SIEM with threat intelligence and Cyber Storage capabilities of Superna Security Edition.

Support Statement

  1. NOTE:  This documentation is provided "as is" without support for 3rd party software.  The level of support for this integration guide is best effort without any SLA on response time.  No 3rd party product support can be provided by Superna directly.  3rd party components require support contracts

Limitations

  1. None

Solution Overview

Superna Defender Zero Trust API receives webhook alerts and parses the key data into a HTTPS API payload events that are sent to the SIEM collector endpoint url.  Securonix SIEM (Security Information and Event Management) is a modular architecture that provides real-time visibility of your IT infrastructure, which you can use for threat detection and prioritization. 

Advanced Zero Trust Capabilities

  1. Webhook to native HTTPS collector API alarm integration

What is Securonix SIEM?

Securonix is a cybersecurity company that specializes in threat detection, investigation, and response (TDIR). They offer a platform called Unified Defense SIEM, which is a next-generation Security Information and Event Management (SIEM) system.


Integration Architecture



Solution Configuration in Securonix SIEM and Defender Zero Trust

Prerequisites

  1. Installed Security Edition
  2. Eyeglass OS appliance version 15.5
    1. cat /etc/os-release
  3. License key for the Zero Trust API 
  4. Securonix SIEM


Configuration in Securonix SIEM

The steps below create a collector endpoint, 

Steps to Create an Generic Webhook Cloud Collector 

  1. Log in to Securonix SIEM Console
    1. Login to SNYPR
    2. Navigate to Menu > Add Data > Activity in the SNYPR application
    3. Click Add Data > Add Data for Supported Device Type to setup the ingestion process.
      1. Choose Vendors 
      2. Click Vendor in the Resource Type Information section and select the following information:
        1. Vendors: Search for Superna.
        2. Resource Type: Search for Superna Eyeglass Zero Trust
        3. Parser Name: Select SCNX_SUPERN_SUPERNAEYEGLASSZEROTRUST_ZTS_HTT_JSO
    4. Create a resource group name and set the timezone, Source data name and set Authentication to Header based.  Enter a header value that will be used to authenticate. This is an api key to access the endpoint.
    5.   
    6. Select Generate Receiver endpoint button.
    7. Record the URL and the header value to be used to update the integration below.
    8. Leave all other fields at the defaults
    9. Click Activate Event Receiver
    10. Click through Save & Next and update the receiver to complete the configuration.
    11. Consult with Securonix support on other none default tab configurations.
    12. Once test events are generated with the steps below you should be able to see parsed messages
    13. The summary page should set the job interval to 300 seconds.
  2. done 



Configuration Steps on Eyeglass Virtual Machine

High Level steps

  1. Create python location to run the application on the Eyeglass vm
  2. Create python main application script
  3. Create linux systemd service and set to auto start
  4. Create Zero Trust configuration in Defender
  5. Update the main script to customize with Securonix SIEM python code
  6. Test the script is running as a service
  7. Create a test event in Defender to validate the alerts appear as indexed parsed events in Securonix SIEM

Configuration Step by Step

Configure the Service start and python integration files

# Securonix Integration Deployment Instructions

Login to the Eyeglass VM via SSH as the admin user:
ssh admin@<your-vm-ip>

# Become root
sudo -s
mkdir -p /opt/superna/cgi-bin
chown -R sca:users /opt/superna/cgi-bin
chmod -R u+rwX,g+rwX /opt/superna/cgi-bin

# Switch to the SCA user
sudo -u sca -s
cd /opt/superna/cgi-bin

# Create Python virtual environment for the integration
python3 -m venv venv-securonix
source venv-securonix/bin/activate

# Install required Python packages
pip install flask boto3 requests logging
deactivate

# Create integration script files
touch securonix.py
touch securonix.sh
chmod +x securonix.py
chmod +x securonix.sh

# Create the securonix.sh launch script
nano /opt/superna/cgi-bin/securonix.sh
# Paste the following into the file:
#!/bin/bash
export PATH="/opt/.pyenv/bin:$PATH"
source /opt/superna/cgi-bin/venv-securonix/bin/activate
exec python /opt/superna/cgi-bin/securonix.py

# Make the script executable
chmod +x /opt/superna/cgi-bin/securonix.sh

# Exit back to root
exit
whoami # confirm you are root

# Create the systemd service unit file
nano /etc/systemd/system/securonix.service
# Paste the following into the file:
[Unit]
Description=Webhook listener for Zero Trust API translations and integrations
After=network.target

[Service]
Type=simple
User=sca
Group=users
WorkingDirectory=/opt/superna/cgi-bin
ExecStart=/bin/bash /opt/superna/cgi-bin/securonix.sh
Restart=always
RestartSec=5

[Install]
WantedBy=multi-user.target

# Reload systemd to register the new service
systemctl daemon-reload

# Enable the service to start on boot (do NOT start it yet)
systemctl enable securonix
Configure the python packages and customize the Securonix integration python code
  1. Customize the application code by downloading the python code from this link to download
    1. Open the python template file in a text editor. NOTE: make sure to only replace the values and do not delete any of the commas
    2. Locate this section in the file and replace the yellow sections to match your securonix endpoint URL.   The endpoint url is unique and can be copied from the console into the variable below.
      1. # Securonix HTTP Collector Endpoint
        Securonix_URL = "xxxxxxxx"
        Securonix_key = "yyyyyyy"
  2. nano /opt/superna/cgi-bin/securonix.py
  3. Open the file locally in Windows OS notepad and use control-A or select all the text in the python template
  4. Paste the clipboard into the ssh terminal session with the open nano editor file
  5. save the file
    1. press control+x
    2. Answer yes to save and exit the nano editor 
  6. Start the service and verify it is running
    1. systemctl start securonix
    2. systemctl status -l securonix 
    3. Verify the service is started successfully and returns "active and running".
  7. If the service does not start do not proceed and double check the steps above are completed. 

Configure Defender Zero Trust Webhooks

  1. The next step creates an Zero Trust Webhook URL.    
    1. Configure Zero Trust endpoint in Ransomware Defender Zero Trust tab.
      1. Recommended Configuration: Only Critical and Major events and only the webhooks that set lockout or delayed lockout.   Customers can customize based on specific requirements. The goal is to send findings versus a list of alarms that do not pinpoint a security incident.
        1.   
      2. The endpoint url above will use localhost and will send Webhooks to the application service listening on port 5000. URL to use in the configuration
        1. http://localhost:5000/webhook 
        2. Add the Content-Type header with value of application/json and the content-encoding with value gzip as shown above to complete the webhook configuration.
        3. Click save to commit the configuration.
        4. Click save on the main Webhook configuration page
  2. Test the configuration is working following the next section

How to test the Integration with Securonix SIEM

  1. To test the integration follow these steps
  2. Prerequisites In Securonix SIEMand Eyeglass:
    1. install the Securonix SIEMagent on a test machine.  Record the ip address of this test machine.
    2. Get the ip address of the Eyeglass vm
    3. download this curl command template and open with a text editor and locate the ip address of eyeglass at the very end of text and replace the ip address with the IP address of your eyeglass vm.
    4. Copy all the text in the text editor
    5. ssh to the eyeglass vm as the admin user
    6. Paste the entire cli command text to the ssh prompt to send sample data to the running Zero Trust application.  This will send test data directly to the application to be processed and sent to Securonix SIEM Integration service that is running on the Eyeglass VM.
    7. The output of a successfully processed webhook test will return this text in the ssh terminal
      1. done sending event to securonix and check for http 200 and success count in response
    8. How to review the process logs from the web application
      1. sudo -s 
      2. journalctl -f -u securonix 
      3. This allows you to view the logs generated by the application.
      4. To log to a file and review with nano showing only the most recent 250 lines.
      5. journalctl -f -n 250 -u securonix  > /tmp/securonix.log
      6. nano /tmp/securonix.log
      7. In the log below the response code from the Securonix SIEM api call should show http 200 status code and successCount 1 to indicate the Finding was successfully created.
      8.   You can also view securonix.log for specific error messages.
  3. Done


Securonix SIEM SecOps administrators Integration Experience 

Example parsed results after an alert is sent to the collector endpoint url and parsed.

  1.   
© Superna Inc