Find MalOps for a Specific Machine

Sometimes, if you find that a specific machine has been compromised, you may want to find with what other malicious activity the machine is associated. In this case, you can return a list of MalOps for a specific machine.

Step 1: Build the request to retrieve MalOps

To help you identify the MalOps for a machine, you need to build a query that filters by the machine name.

For this example, we will use the machine name hrmanager

To build the request, replace the placeholders in the relevant cURL command, request body example, or Python script:

curl --request POST \
          --url https://<your server>/rest/visualsearch/query/simple \
          --header 'Content-Type:application/json' \
          --data '{
                      "queryPath": [
                        {
                          "requestedType": "MalopProcess",
                          "filters": [],
                          "connectionFeature": {
                            "elementInstanceType": "MalopProcess",
                            "featureName": "suspects"
                          },
                          "isResult": true
                        },
                        {
                          "requestedType": "Process",
                          "filters": [],
                          "connectionFeature": {
                            "elementInstanceType": "Process",
                            "featureName": "ownerMachine"
                          }
                        },
                        {
                          "requestedType": "Machine",
                          "filters": [
                            {
                              "facetName": "elementDisplayName",
                              "filterType": "Contains",
                              "values": [
                                "hrmanager"
                              ]
                            }
                          ],
                          "isResult": false
                        }
                      ],
                      "totalResultLimit": "100",
                      "perGroupLimit": 1200,
                      "perFeatureLimit": 1200,
                      "templateContext": "DETAILS",
                      "queryTimeout": null,
                      "customFields": [
                        "elementDisplayName"
                      ]
                  }'

Step 2: Run your request and generate the response

In the command line, REST API client, or IDE, run the command or script that contains the request. After a few seconds, the Cybereason API returns a response.

Step 3: Evaluate the response

The response contains a large number fields. Focus on these fields for meaningful information:

Example

{
 "data": {
     "resultIdToElementDataMap": {
         "AAAA1kFkoAiE4Tf9": {
             "simpleValues": {
                 "elementDisplayName": {
                     "totalValues": 1,
                     "values": [
                         ""
                     ]
                 }
             },
             "elementValues": {},
             "suspicions": {},
             "filterData": {
                 "sortInGroupValue": "",
                 "groupByValue": ""
             },
             "isMalicious": false,
             "suspicionCount": 0,
             "guidString": "AAAA1kFkoAiE4Tf9",
             "labelsIds": null,
             "malopPriority": null,
             "suspect": false,
             "malicious": false
         }
     },
     "suspicionsMap": {},
     "evidenceMap": {},
     "totalResults": 1,
     "totalPossibleResults": 1,
     "guessedPossibleResults": 1,
     "queryLimits": {
         "totalResultLimit": 100,
         "perGroupLimit": 100,
         "perFeatureLimit": 100,
         "groupingFeature": {
             "elementInstanceType": "MalopDetectionEvents",
             "featureName": "self"
         },
         "sortInGroupFeature": null
     },
     "queryTerminated": false,
     "pathResultCounts": [
         {
             "featureDescriptor": {
                 "elementInstanceType": "MalopDetectionEvents",
                 "featureName": null
             },
             "count": 1
         }
     ],
     "guids": [
         "AAAA1kFkoAiE4Tf9"
     ],
     "paginationToken": null,
     "executionUUID": "23505f1c-c6c2-42a9-8bc5-ab3a1f4137e4",
     "quapiMeasurementData": {
         "timeToGetGuids": [
             67
         ],
         "timeToGetData": [
             24
         ],
         "timeToGetAdditionalData": [
             0
         ],
         "totalQuapiQueryTime": [
             93
         ],
         "startTime": [
             1682008688827
         ],
         "endTime": [
             1682008688921
         ]
     }
 },
    "status": "SUCCESS",
    "hidePartialSuccess": false,
    "message": "",
    "expectedResults": 0,
    "failures": 0,
    "failedServersInfo": null
 }