AnalysisType: rule
Filename: box_untrusted_device.py
RuleID: "Box.Untrusted.Device"
DisplayName: "Box Untrusted Device Login"
Enabled: true
LogTypes:
- Box.Event
Tags:
- Box
- Initial Access:Valid Accounts
Reports:
MITRE ATT&CK:
- TA0001:T1078
Severity: Info
CreateAlert: false
Description: >
A user attempted to login from an untrusted device.
Reference: https://support.box.com/hc/en-us/articles/360044194993-Setting-Up-Device-Trust-Security-Requirements
Runbook: >
Investigate whether this is a valid user attempting to login to box.
SummaryAttributes:
- ip_address
Tests:
- Name: Regular Event
ExpectedResult: false
Log:
{
"type": "event",
"additional_details": '{"key": "value"}',
"created_by":
{
"id": "12345678",
"type": "user",
"login": "cat@example",
"name": "Bob Cat",
},
"event_type": "DELETE",
}
- Name: New Login Event
ExpectedResult: true
Log:
{
"type": "event",
"additional_details": '{"key": "value"}',
"created_by":
{
"id": "12345678",
"type": "user",
"login": "cat@example",
"name": "Bob Cat",
},
"event_type": "DEVICE_TRUST_CHECK_FAILED",
"source": { "id": "12345678", "type": "user", "login": "user@example" },
}
# ------ paired body: box_untrusted_device.py ------
def rule(event):
# DEVICE_TRUST_CHECK_FAILED
# detect when a user attempts to login from an untrusted device
return event.get("event_type") == "DEVICE_TRUST_CHECK_FAILED"
def title(event):
return (
f"User [{event.deep_get('created_by', 'name', default='<UNKNOWN_USER>')}] "
f"attempted to login from an untrusted device."
)