Detection rules › Panther

Malicious Content Detected

Severity
high
Log types
Box.Event
Tags
Box, Execution:User Execution
Reference
https://developer.box.com/guides/events/shield-alert-events/
Source
github.com/panther-labs/panther-analysis

Box has detect malicious content, such as a virus.

MITRE ATT&CK coverage

TacticTechniques
ExecutionT1204 User Execution

Rule body yaml

AnalysisType: rule
Filename: box_malicious_content.py
RuleID: "Box.Malicious.Content"
DisplayName: "Malicious Content Detected"
Enabled: true
LogTypes:
  - Box.Event
Tags:
  - Box
  - Execution:User Execution
Reports:
  MITRE ATT&CK:
    - TA0002:T1204
Severity: High
Description: >
  Box has detect malicious content, such as a virus.
Reference: >
  https://developer.box.com/guides/events/shield-alert-events/
Runbook: >
  Investigate whether this is a false positive or if the virus needs to be contained appropriately.
SummaryAttributes:
  - event_type
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: File marked malicious
    ExpectedResult: true
    Log:
      {
        "type": "event",
        "additional_details": '{"key": "value"}',
        "created_by":
          {
            "id": "12345678",
            "type": "user",
            "login": "cat@example",
            "name": "Bob Cat",
          },
        "event_type": "FILE_MARKED_MALICIOUS",
        "source":
          {
            "item_id": "123456789012",
            "item_name": "bad_file.pdf",
            "item_type": "file",
            "owned_by":
              {
                "id": "12345678",
                "type": "user",
                "login": "cat@example",
                "name": "Bob",
              },
            "parent":
              {
                "id": "12345",
                "type": "folder",
                "etag": "1",
                "name": "Parent_Folder",
                "sequence_id": "2",
              },
          },
      }
  - Name: Malicious Content
    ExpectedResult: true
    Log:
      {
        "type": "event",
        "additional_details": '{"shield_alert":{"rule_category":"Malicious Content","risk_score":100,"alert_summary":{"upload_activity":{"item_name":"malware.exe"}},"user":{"email":"cat@example"}}}',
        "created_by":
          {
            "id": 12345678,
            "type": "user",
            "login": "bob@example",
            "name": "Bob Cat",
          },
        "event_type": "SHIELD_ALERT",
        "source": { "id": 12345678, "type": "user", "login": "bob@example" },
      }

Detection logic

Condition

event_type eq "SHIELD_ALERT"
event_type eq "FILE_MARKED_MALICIOUS"

This rule also runs imperative logic the parser cannot express as a filter; the conditions above are the structured part it could extract.

Indicators

Each row is a field, operator, and value that the rule matches. The corpus column counts how many other rules in the catalog look for the same combination: high numbers point to widely-used, community-vetted indicators. Blank or 1 shows that the indicator is specific to this rule.

FieldKindValues
event_typeeq
  • FILE_MARKED_MALICIOUS
  • SHIELD_ALERT

Output fields

Fields the rule emits when it matches. Chronicle authors list these in the outcome block; they appear on the detection and $risk_score drives alerting. Sentinel / Defender XDR rules build them up through project / summarize / extend stages. Sentinel maps these into alert fields via entityMappings and customDetails; Defender XDR custom detections surface them as alert fields directly.

FieldSource
item_namesource.item_name
loginsource.owned_by.login