Area 1 Security
Area 1 Security offers Application Programming Interfaces (APIs) to expose our phishing campaign rulesets. These APIs both aid research and provide a set of indicators to block using network security edge devices.
Connect Area 1 Security with Devo SOAR
Navigate to Automations > Integrations.
Search for Area 1 Security.
Click Details, then the + icon. Enter the required information in the following fields.
Label: Enter a connection name.
Reference Values: Define variables here to templatize integration connections and actions. For example, you can use https://www.{{hostname}}.com where, hostname is a variable defined in this input. For more information on how to add data, see 'Add Data' Input Type for Integrations.
Verify SSL: Select option to verify connecting server's SSL certificate (Default is Verify SSL Certificate).
Remote Agent: Run this integration using the Devo SOAR Remote Agent.
Username: Username to access Area 1 Security APIs.
Password: Password to access Area 1 Security APIs.
After you've entered all the details, click Connect.
Actions for Area 1 Security
List Actors
This service returns a list of Actors.
Input Field
Choose a connection that you have previously created to complete the connection.
Output
A JSON object containing multiple rows of result:
``` {json}{ "error":null, "has_error":false, "result":"ALL_ACTOR" }
## Return Indicators (Rate Limit: 10/hour)
This service returns malicious indicators (file hashes, URLs, domains, and IP address) that we recommend you block at your network edge using proxy devices and firewalls.
### Input Field
Choose a connection that you have previously created and then fill in the necessary information in the following input fields to complete the connection.
| Input Name | Description | Required |
| : -------- | : -------- | : -------- |
| Since | [Jinja-templated](doc:jinja-template) text containing the value for start time, the ISO 8601 date and time (Default is Batch start time).
Example: to specify July 16, 2017, use the form YYYY-MM-DDTHH:mm:ss, or 2017-07-16T00:00:00. Can also be timezone specific YYYY-MM-DDTHH:mm:ss-HH:mm, or 2017-07-16T00:00:00-4:00. | |
| End | [Jinja-templated](doc:jinja-template) text containing the value for end time, the ISO 8601 date and time (Default is Batch end time).
Example: to specify July 16, 2017, use the form YYYY-MM-DDTHH:mm:ss, or 2017-07-16T00:00:00. Can also be timezone specific YYYY-MM-DDTHH:mm:ss-HH:mm, or 2017-07-16T00:00:00-4:00. | |
| Actor | [Jinja-templated](doc:jinja-template) text containing the value of actor. Example: {{actor}}
\* Killchain (Optional): [Jinja-Templated](doc:jinja-template) text containing the CSVs of the killchain.
Example: {{killchain_1}},3 | |
| Killchain | [Jinja-templated](doc:jinja-template) text containing the CSVs of the killchain.
Example: {{killchain_1}},3 | |
| Cat | [Jinja-templated](doc:jinja-template) text containing the CSVs of the cat.
Example: {{cat_1}},targeted | |
| Type | [Jinja-templated](doc:jinja-template) text containing the CSVs of the type.
Example: {{type_1}},domain | |
### Output
A JSON object containing indicator details:
``` {json}{
"has_error":false,
"error":null,
"threat_name": "Google Credential Harvester",
"item_type": "url",
"description": "https://api.area1.com/nirvana/google-credential-harvesting.html",
"item_name": "www.example.com/a-bad-url/",
"first_detected": 1449164991,
"threat_categories": [
{
"threat_type": [
"Credential Harvester",
"Malicious Web Server"
],
"category": [
"Universal"
],
"killchain": [
"3"
],
"actor": [
"CHN1"
]
}
]
}
Search Indicator (Rate Limit: 4/minute)
This service can be queried with a basic indicator (file hash (MD5/SHA-1/SHA-256), URL, domain, IP Address, or email address) and returns information about the indicator.
Input Field
Choose a connection that you have previously created and then fill in the necessary information in the following input fields to complete the connection.
Input Name | Description | Required |
---|---|---|
Indicator | Jinja-templated text containing the value of indicator of interest. Example: {{indicator}} | Required |
Historic | Select value of Historic (Default is False). True/False | Optional |
Output
A JSON object containing indicator details:
``` {json}{ "has_error":false, "error":null, "indicator": "example", "first_seen": 1433810886000, "last_seen": 1478200022000, "Hash_ImpHash": "eample", "Hash_authentihash": "example", "type": "Hash_SHA1", "Hash_ssdeep": "example", "disposition": "MALICIOUS", "tlp": "white", "Hash_MD5": "example_md5", "tag_histories": [ { "intervals": [ { "start": 1337347427000, "end": "current" } ], "category": "Actor", "value": "abc" }, { "intervals": [ { "start": 1337347427000, "end": "current" } ], "category": "ThreatType", "value": "Dropper" } ], "family": "file", "Hash_SHA256": "example" }
## List Alerts (Rate Limit: 5/hour)
This service returns information of each alert that is generated through the Area 1 Security email product.
### Input Field
Choose a connection that you have previously created and then fill in the necessary information in the following input fields to complete the connection.
| Input Name | Description | Required |
| : -------- | : -------- | : -------- |
| Disposition | [Jinja-templated](doc:jinja-template) text containing the CSVs of disposition (Default is malicious).
Example: {{disposition}},spam | Optional |
| Since | [Jinja-templated](doc:jinja-template) text containing the value for start time, the ISO 8601 date and time (Default is Batch start time).
Example: to specify July 16, 2017, use the form YYYY-MM-DDTHH:mm:ss, or 2017-07-16T00:00:00. Can also be timezone specific YYYY-MM-DDTHH:mm:ss-HH:mm, or 2017-07-16T00:00:00-4:00. | Optional |
| End | [Jinja-templated](doc:jinja-template) text containing the value for end time, the ISO 8601 date and time (Default is Batch end time).
Example: to specify July 16, 2017, use the form YYYY-MM-DDTHH:mm:ss, or 2017-07-16T00:00:00. Can also be timezone specific YYYY-MM-DDTHH:mm:ss-HH:mm, or 2017-07-16T00:00:00-4:00. | Optional |
### Output
A JSON object containing List of Alerts:
``` {json}{
"has_error":false,
"error":null,
"source": "area1security",
"time": 1524570920,
"event": {
"final_disposition": "MALICIOUS",
"attachments": [
{
"sha1": "example",
"sha256": "example",
"content_type_provided": "image/jpeg",
"content_type_computed": "image/jpeg",
"name": "image003.jpg",
"ssdeep": "example",
"md5": "example"
}
],
"smtp_helo_server_name": "mail.example.net",
"envelope_to": [
"user@example.com"
],
"subject": "Potential Partnership",
"smtp_helo_server_ip_as_name": "LIQUIDWEB - Liquid Web, L.L.C, US",
"alert_reasons": [
"Malicious previous hop domain server 'mail.example[dot]net'",
"no really, it's a very mailicious domain 'example[dot]net'"
],
"encrypted_feature_count": null,
"message_id": "<example@example.com.ph>",
"replyto_name": null,
"from_name": "Christine",
"smtp_helo_server_ip": "192.168.1.184",
"smtp_helo_server_ip_geo": "US/-/-",
"smtp_helo_server_ip_as_number": "3232235960",
"envelope_from": "christine@example.com.ph",
"alert_id": "40VVylabcbz7pJj-2018-04-24T04:41:19",
"replyto": "christine@example.com.ph",
"from": "CEO Christine <christine@example.com.ph>",
"to": [
"user@example.com"
],
"ts": "2018-04-24T04:41:19Z"
}
}
Email Details by Alert ID
This service returns the content of an email given an alert_id from the detection message sent from Area 1.
Input Field
Choose a connection that you have previously created and then fill in the necessary information in the following input fields to complete the connection.
Input Name | Description | Required |
---|---|---|
Alert ID | Jinja-templated text containing the value of the Alert ID. Example: {{alert_id}} | Required |
Output
A JSON object containing message content and fileId of message details:
``` {json}{ "has_error":false, "error":null, "email": "body", "fileId": "4153535" }
## Search Detected Emails
This service returns information for each email that matches the search parameter(s). Only emails that have a detection (final_disposition of SPOOF, SPAM, SUSPICIOUS, MALICIOUS-BEC or MALICIOUS) will be searched.
### Input Field
Choose a connection that you have previously created and then fill in the necessary information in the following input fields to complete the connection.
| Input Name | Description | Required |
| : -------- | : -------- | : -------- |
| Query | [Jinja-templated](doc:jinja-template) text containing the value of the query.
Example: {{query}} | Required |
| Days Back | [Jinja-templated](doc:jinja-template) text containing the value of the days back (default is 7, maximum is 365).
Example: 108 | Optional |
| Limit | [Jinja-templated](doc:jinja-template) text containing the value of the number of Emails to fetch (Default is 100, Maximum is 1000).
Example: 50 | Optional |
**Output of Action**:
A JSON object containing detected email list:
``` {json}{
"has_error":false,
"error":null,
"cc": null,
"tracking_value_sent": "",
"final_disposition": "MALICIOUS",
"x_originating_ip": null,
"to_name": null,
"subject": "listen, I highly recommend u to read that email, just to ensure not a thing will take place ",
"findings": [
{
"reason": "IP is a source of spam/uce : Smtp-Helo-Server-Ip='127.0.0[dot]186'",
"score": null,
"detection": "SPAM",
"field": "smtp_helo_server_ip",
"attachment": null,
"portion": "SMTP",
"name": "blocklist",
"action": "PROMOTE",
"detail": null,
"diagnostic": "",
"value": "127.0.0.186",
"version": null
}
],
"sent_date": "2019-11-21T00:22:01",
"detectionReasons": [
"IP is a source of spam/uce : Smtp-Helo-Server-Ip=<b>127.0.0[dot]186</b>"
],
"client_uuid": "abcdef12-3456-7890-abcd-ef1234567896",
"from_name": null,
"smtp_helo_server_ip": "127.0.0.186",
"smtp_previous_hop_ip": "127.0.0.186",
"envelope_from": "d1994@example.com",
"replyto": "d1994@example.com",
"from": "d1994@example.com",
"to": [
"email@area1security.com"
],
"client_name": "area1",
"postfix_ident": "47JJcT1w6GztQV7",
"ts": "2019-11-20T23:22:01"
}
Search All Emails
This service returns information for each email that matches the search parameter(s). All email can be searched, whether it registered a detection or not.
Input Field
Choose a connection that you have previously created and then fill in the necessary information in the following input fields to complete the connection.
Input Name | Description | Required |
---|---|---|
Subject | Jinja-templated text containing the value of the Subject. | Â |
Example: {{subject}} | Optional | Â |
Alert ID | Jinja-templated text containing the value of the Alert ID(only present for emails with a final_disposition of SPOOF, SPAM, SUSPICIOUS, MALICIOUS-BEC, or MALICIOUS). | Â |
Example: {{alert_id}} | Optional | Â |
Message ID | Jinja-templated text containing the value of the full Message ID. | Â |
Example: {{message_id}} | Optional | Â |
Recipient | Jinja-templated text containing the value of the Recipient. | Â |
Example: {{recipient}} | Optional | Â |
Sender | Jinja-templated text containing the value of the Sender. | Â |
Example: {{sender}} | Optional | Â |
Since | Jinja-templated text containing the value for start time, the ISO 8601 date and time (Default is Batch start time). | Â |
Example: to specify July 16, 2017, use the form YYYY-MM-DDTHH:mm:ss, or 2017-07-16T00:00:00. Can also be timezone specific YYYY-MM-DDTHH:mm:ss-HH:mm, or 2017-07-16T00:00:00-4:00. | Optional | Â |
End | Jinja-templated text containing the value for end time, the ISO 8601 date and time (Default is Batch end time). | Â |
Example: to specify July 16, 2017, use the form YYYY-MM-DDTHH:mm:ss, or 2017-07-16T00:00:00. Can also be timezone specific YYYY-MM-DDTHH:mm:ss-HH:mm, or 2017-07-16T00:00:00-4:00. | Optional | Â |
Limit | Jinja-templated text containing the value of the number of Emails to fetch (Default is 100, Maximum is 1000). | Â |
Example: 50 | Optional | Â |
Output
A JSON object containing email details:
{json}{
"has_error":false,
"error":null,
"postfix_ident_outbound": "47Jjdp3WRsz11M1D",
"final_disposition": "NONE",
"envelope_to": [
"rebecca@example.com"
],
"subject": "[EXTERNAL] RE: Lost and found",
"from": "kelsey@example.com",
"message_id": "<DM3P159M258D4E0@DM3P159MB001.PROD.OUTLOOK.COM>",
"postfix_ident": "47Jjcz1H88z11M4F",
"client_name": "mr. client",
"ts": "2019-11-21T15:09:33"
}
Release Notes
v2.0.0
- Updated architecture to support IO via filesystem