Method to create a custom rule.
Parameter | Type | Optional | Description |
---|---|---|---|
| Number | Yes | The type of rule to create. Possible values: |
| String | Yes | The company Id where the attached rule should be created. The default value is the ID of the company linked to the user who generated the API key. |
| String | No | The name of the rule to be created. |
| String | Yes | The description of the rule. |
| Array | Yes | The list of associated tags. The tag list is an array of strings. |
| Array | No | The rule settings. These are the available settings:
NoteFor more information on the possible values of |
| Boolean | Yes | Indicates if the request will return the ID of the new rule. Possible values:
Default value: |
Detection (type =1) | Exclusion (type=2) | Display Name | target | Field | Relation | Validator |
---|---|---|---|---|---|---|
Yes | Yes | Name | process | Process.Name | is |contains| any | string |
Yes | Yes | Path | process | Process.Path | is |contains| any | string |
Yes | Yes | Full Path Name | process | Process.FullPathName | is |contains| any | string |
Yes | Yes | Command Line | process | Process.CommandLine | is |contains| any | string |
Yes | Yes | Parent Name | process | Process.Parent.Name | is |contains| any | string |
Yes | Yes | Parent Path | process | Process.Parent.Path | is |contains| any | string |
Yes | Yes | Paret Full Path Name | process | Process.Parent.FullPathName | is |contains| any | string |
Yes | Yes | Parent Command Line | process | Process.Parent.CommandLine | is |contains| any | string |
Yes | Yes | Name | file | File.Name | is |contains| any | string |
Yes | Yes | Path | file | File.Path | is |contains| any | string |
Yes | Yes | Full Path Name | file | File.FullPathName | is |contains| any | string |
Yes | Yes | Creation Process Name | file | File.CreatedBy.Name | is |contains| any | string |
Yes | Yes | Creation Process Path | file | File.CreatedBy.Path | is |contains| any | string |
Yes | Yes | Creation Process Full Path Name | file | File.CreatedBy.FullPathName | is |contains| any | string |
Yes | Yes | Creation Process Command Line | file | File.CreatedBy.CommandLine | is |contains| any | string |
Yes | Yes | Source IP | connection | Connection.SourceIP | is |contains| any | valid IP |
Yes | Yes | Destination IP | connection | Connection.DestinationIP | is |contains| any | valid IP |
Yes | Yes | Source Port | connection | Connection.SourcePort | is |contains| any | integer between 0 and 65,535 |
Yes | Yes | Destination Port | connection | Connection.DestinationPort | is |contains| any | integer between 0 and 65,535 |
Yes | Yes | Creation Process Name | connection | Connection.Process.Name | is |contains| any | string |
Yes | Yes | Creation Process Path | connection | Connection.Process.Path | is |contains| any | string |
Yes | Yes | Creation Process Full Path Name | connection | Connection.Process.FullPathName | is |contains| any | string |
Yes | Yes | Creation Process Command Line | connection | Connection.Process.CommandLine | is |contains| any | string |
Yes | No | Key | registry | Registry.Key | is |contains| any | string |
Yes | No | Value | registry | Registry.Value | is |contains| any | string |
Yes | No | Creation Process Name | registry | Registry.CreatedBy.Name | is |contains| any | string |
Yes | No | Creation Process Path | registry | Registry.CreatedBy.Path | is |contains| any | string |
Yes | No | Creation Process Full Path Name | registry | Registry.CreatedBy.FullPathName | is |contains| any | string |
Yes | No | Creation Process Command Line | registry | Registry.CreatedBy.CommandLine | is |contains| any | string |
Note
The any
operator implies an array.
This method returns the ID of the newly created rule or a boolean value which is true
if the creation of the custom rule was successful.
Request:
{
"params": {
"companyId": "61827b8036492c2fc0718722",
"type": 1,
"name": "Detection Rule via API",
"description": "description test api",
"tags": [
"test",
"api",
"demo"
],
"settings": {
"status": 0,
"severity": 1,
"target": "connection",
"criteriaList": [
{
"field": "Connection.DestinationPort",
"relation": "is",
"value": [
"25691"
]
},
{
"field": "Connection.Process.Name",
"relation": "contains",
"value": "./network1"
},
{
"field": "Connection.SourcePort",
"relation": "any",
"value": [
"22",
"23",
"24"
]
}
]
},
"returnRuleId": true
},
"jsonrpc": "2.0",
"method": "createCustomRule",
"id": "0df7568c-59c1-48e0-a31b-18d83e6d9810"
}
Response:
{
"id": "0df7568c-59c1-48e0-a31b-18d83e6d9810",
"jsonrpc": "2.0",
"result": 6372b7a3897aaa77ee021642
}