Detective / Client / list_indicators

list_indicators#

Detective.Client.list_indicators(**kwargs)#

Get the indicators from an investigation

See also: AWS API Documentation

Request Syntax

response = client.list_indicators(
    GraphArn='string',
    InvestigationId='string',
    IndicatorType='TTP_OBSERVED'|'IMPOSSIBLE_TRAVEL'|'FLAGGED_IP_ADDRESS'|'NEW_GEOLOCATION'|'NEW_ASO'|'NEW_USER_AGENT'|'RELATED_FINDING'|'RELATED_FINDING_GROUP',
    NextToken='string',
    MaxResults=123
)
Parameters:
  • GraphArn (string) –

    [REQUIRED]

    The ARN of the behavior graph.

  • InvestigationId (string) –

    [REQUIRED]

    The investigation ID of the investigation report.

  • IndicatorType (string) – See Detective investigations..

  • NextToken (string) –

    List if there are more results available. The value of nextToken is a unique pagination token for each page. Repeat the call using the returned token to retrieve the next page. Keep all other arguments unchanged.

    Each pagination token expires after 24 hours. Using an expired pagination token will return a Validation Exception error.

  • MaxResults (integer) – List the maximum number of indicators in a page.

Return type:

dict

Returns:

Response Syntax

{
    'GraphArn': 'string',
    'InvestigationId': 'string',
    'NextToken': 'string',
    'Indicators': [
        {
            'IndicatorType': 'TTP_OBSERVED'|'IMPOSSIBLE_TRAVEL'|'FLAGGED_IP_ADDRESS'|'NEW_GEOLOCATION'|'NEW_ASO'|'NEW_USER_AGENT'|'RELATED_FINDING'|'RELATED_FINDING_GROUP',
            'IndicatorDetail': {
                'TTPsObservedDetail': {
                    'Tactic': 'string',
                    'Technique': 'string',
                    'Procedure': 'string',
                    'IpAddress': 'string',
                    'APIName': 'string',
                    'APISuccessCount': 123,
                    'APIFailureCount': 123
                },
                'ImpossibleTravelDetail': {
                    'StartingIpAddress': 'string',
                    'EndingIpAddress': 'string',
                    'StartingLocation': 'string',
                    'EndingLocation': 'string',
                    'HourlyTimeDelta': 123
                },
                'FlaggedIpAddressDetail': {
                    'IpAddress': 'string',
                    'Reason': 'AWS_THREAT_INTELLIGENCE'
                },
                'NewGeolocationDetail': {
                    'Location': 'string',
                    'IpAddress': 'string',
                    'IsNewForEntireAccount': True|False
                },
                'NewAsoDetail': {
                    'Aso': 'string',
                    'IsNewForEntireAccount': True|False
                },
                'NewUserAgentDetail': {
                    'UserAgent': 'string',
                    'IsNewForEntireAccount': True|False
                },
                'RelatedFindingDetail': {
                    'Arn': 'string',
                    'Type': 'string',
                    'IpAddress': 'string'
                },
                'RelatedFindingGroupDetail': {
                    'Id': 'string'
                }
            }
        },
    ]
}

Response Structure

  • (dict) –

    • GraphArn (string) –

      The ARN of the behavior graph.

    • InvestigationId (string) –

      The investigation ID of the investigation report.

    • NextToken (string) –

      List if there are more results available. The value of nextToken is a unique pagination token for each page. Repeat the call using the returned token to retrieve the next page. Keep all other arguments unchanged.

      Each pagination token expires after 24 hours. Using an expired pagination token will return a Validation Exception error.

    • Indicators (list) –

      Indicators of compromise listed based on severity.

      • (dict) –

        Investigations triages indicators of compromises such as a finding and surfaces only the most critical and suspicious issues, so you can focus on high-level investigations.

        • IndicatorType (string) –

          The type of indicator.

        • IndicatorDetail (dict) –

          Details about the indicator of compromise.

          • TTPsObservedDetail (dict) –

            Details about the indicator of compromise.

            • Tactic (string) –

              The tactic used, identified by the investigation.

            • Technique (string) –

              The technique used, identified by the investigation.

            • Procedure (string) –

              The procedure used, identified by the investigation.

            • IpAddress (string) –

              The IP address where the TTP was observed.

            • APIName (string) –

              The name of the API where the TTP was observed.

            • APISuccessCount (integer) –

              The total number of successful API requests.

            • APIFailureCount (integer) –

              The total number of failed API requests.

          • ImpossibleTravelDetail (dict) –

            Identifies unusual and impossible user activity for an account.

            • StartingIpAddress (string) –

              IP address where the resource was first used in the impossible travel

            • EndingIpAddress (string) –

              IP address where the resource was last used in the impossible travel.

            • StartingLocation (string) –

              Location where the resource was first used in the impossible travel

            • EndingLocation (string) –

              Location where the resource was last used in the impossible travel.

            • HourlyTimeDelta (integer) –

              Returns the time difference between the first and last timestamp the resource was used.

          • FlaggedIpAddressDetail (dict) –

            Suspicious IP addresses that are flagged, which indicates critical or severe threats based on threat intelligence by Detective. This indicator is derived from AWS threat intelligence.

            • IpAddress (string) –

              IP address of the suspicious entity.

            • Reason (string) –

              Details the reason the IP address was flagged as suspicious.

          • NewGeolocationDetail (dict) –

            Contains details about the new geographic location.

            • Location (string) –

              Location where the resource was accessed.

            • IpAddress (string) –

              IP address using which the resource was accessed.

            • IsNewForEntireAccount (boolean) –

              Checks if the gelocation is new for the entire account.

          • NewAsoDetail (dict) –

            Contains details about the new Autonomous System Organization (ASO).

            • Aso (string) –

              Details about the new Autonomous System Organization (ASO).

            • IsNewForEntireAccount (boolean) –

              Checks if the ASO is for new for the entire account.

          • NewUserAgentDetail (dict) –

            Contains details about the new user agent.

            • UserAgent (string) –

              New user agent which accessed the resource.

            • IsNewForEntireAccount (boolean) –

              Checks if the user agent is new for the entire account.

          • RelatedFindingDetail (dict) –

            Contains details about related findings.

            • Arn (string) –

              The ARN of the related finding.

            • Type (string) –

              The type of finding.

            • IpAddress (string) –

              The IP address of the finding.

          • RelatedFindingGroupDetail (dict) –

            Contains details about related finding groups.

            • Id (string) –

              The unique identifier for the finding group.

Exceptions

  • Detective.Client.exceptions.AccessDeniedException

  • Detective.Client.exceptions.InternalServerException

  • Detective.Client.exceptions.ValidationException

  • Detective.Client.exceptions.ResourceNotFoundException

  • Detective.Client.exceptions.TooManyRequestsException