Artisan's AWS AMI is currently unavailable as we transition our deployment to a more reliable and versatile Docker image. Scheduled release date: Sep 3
Artisan [primarily refers to a skilled craftsperson who creates high-quality items by hand], but in our case, Artisan is a CLI tool meant to expose your security automation gaps, help you craft a posture that enables 100% coverage, and autonomously & continuously checks your security automation posture to make sure your environment never has any security automation & response gaps.
For the public preview, we've bundled Artisan CLI in an AWS AMI image alongside a pre-installed instance of Splunk SOAR, to make testing and using the CLI easy and hassle-free.
Run the command on the right or use AWS Console Dashboard to create your own EC2 instance from Artisan's AMI. You can view the video on the side for a quick tutorial on how to create an EC2 instance from an AMI.
Create a simple inbound rule for the security group you assigned to the EC2 instance, and make sure port 8443 can receive traffic.
Run su ec2-user to switch to user ec2-user
Run /opt/phantom/bin/start_phantom.sh to start Splunk SOAR.
Run cd /home/ec2-user/artisan to go to Artisan's directory.
Ensure .env is configured as per your preferences. Artisan will throw errors if .env is not set up properly.
Run ./artisan to run Artisan CLI interactive session.
Go here to read how to prepare your Splunk SOAR instance.
The .env file is located inside Artisan's directory, and here's where you can modify LLM_PROVIDER, LLM_API_KEY, LLM_MODEL, LLM_EXTRA_HEADERS_JSON, SOAR_IP, PH_AUTH_TOKEN
You can also use your local LLM instance. Simply type custom in the LLM_PROVIDER field
and leave LLM_API_KEY blank if your local inference doesn't require authentication. You will find more details and instructions written as comments inside .env.Run ./artisan -h to get a menu of arguments you can pass, or simply run ./artisan to start an interactive session.
First, make sure that you've successfuly initiated Splunk SOAR as defined in the steps above. Now, you can access its web interface by visiting https://YOUR_SOAR_IP:8443. Your browser will warn you that the connection is not secure, however that's because by default Splunk SOAR is meant to run on-prem, and therefore communication is not secured. It's safe to proceed to the login page. The username is soar_local_admin and the password is soar.
For Artisan to authenticate its operations with your instance of Splunk SOAR REST API, you need to supply the authentication token from your Splunk SOAR web interface. You can find this by clicking Home -> Administration -> User Mangement -> Users and select the user automation
Copy the value on the key ph-auth-token and paste it in the PH_AUTH_TOKEN field in your .env file. Make sure that the field SOAR_IP has the same value you see on your Splunk SOAR REST authentication. It will look something like the one displayed here.
Artisan saves results for Security Automation Integrity Check under integrity_reports.json, located in the same directory as ./artisan.
Artisan saves results for Security Automation & Response Posture (SARP) Assesment under sarp_reports.json, located in the same directory as integrity_reports.json.
You can now ingest these JSON files into Splunk ES and customize your dashboard and key-value pairs.
Congratulations! Now you have a complete and in-depth view of your security automations and response posture and effectiveness.
The .env file is a configuration file meant to provide you flexibility in what resources you wish Artisan to consume. It's primarily important for you to choose an LLM provider you trust, and that ideally you have under complete control.
There are no network requests that facilitate data egress. No data ever leaves your environment. Other than SOAR-related REST calls, there are only two network GET calls that are used for
1) Fetching tuning data for Artisan's ML model
2) The LLM network calls whose configuration you can define in the .env file.
Here you can define your preferred LLM provider.
This field is necessary if your LLM provider requires a key for authentication.
If your LLM provider supports it, you can define a specific model to be used during Artisan's LLM inferences.
Define extra data to be carried in the header of the network request made to your LLM provider.
Determine a period of time in seconds, within which if there's no response from the LLM inference request, it safely continues to the next operation.
This field hosts the IP address of your Splunk SOAR instance.
This field hosts the authentication token that authenticates Artisan's operations with Splunk SOAR REST API.
This field hosts the URL of Artisan's REST API prompt endpoint. It returns a specialized prompt unique for the particular operation being carried at that moment.
This is how we validate you as a user. You need this API key to pull prompt data from Artisan.
Determines a period of time in seconds, within which if there's no response from Artisan's prompt endpoint, it safely stops execution.