Exemplos do GuardDuty usando AWS CLI - AWS Command Line Interface

Exemplos do GuardDuty usando AWS CLI

Os exemplos de código a seguir mostram como realizar ações e implementar cenários comuns usando o AWS Command Line Interface com o GuardDuty.

Ações são trechos de código de programas maiores e devem ser executadas em contexto. Embora as ações mostrem como chamar funções de serviço individuais, você pode ver as ações no contexto em seus cenários relacionados.

Cada exemplo inclui um link para o código-fonte completo, em que você pode encontrar instruções sobre como configurar e executar o código.

Tópicos

Ações

O código de exemplo a seguir mostra como usar accept-invitation.

AWS CLI

Aceitar um convite para se tornar uma conta-membro do GuardDuty na região atual

O exemplo accept-invitation a seguir mostra como aceitar um convite para se tornar uma conta-membro do GuardDuty na região atual.

aws guardduty accept-invitation \ --detector-id 12abc34d567e8fa901bc2d34eexample \ --master-id 123456789111 \ --invitation-id d6b94fb03a66ff665f7db8764example

Este comando não produz saída.

Para obter mais informações, consulte Gerenciar Contas GuardDuty Por Convite no Guia do Usuário GuardDuty.

  • Para ver detalhes da API, consulte AcceptInvitation na Referência de comandos da AWS CLI.

O código de exemplo a seguir mostra como usar archive-findings.

AWS CLI

Arquivar descobertas na região atual

Este exemplo mostra como arquivar descobertas na região atual.

aws guardduty archive-findings \ --detector-id 12abc34d567e8fa901bc2d34eexample \ --finding-ids d6b94fb03a66ff665f7db8764example 3eb970e0de00c16ec14e6910fexample

Este comando não produz saída.

Para obter mais informações, consulte Gerenciar Contas GuardDuty Por Convite no Guia do usuário GuardDuty.

  • Para obter detalhes sobre a API, consulte ArchiveFindings na AWS CLI Referência de comando.

O código de exemplo a seguir mostra como usar create-detector.

AWS CLI

Habilitar o GuardDuty na região atual

Este exemplo mostra como criar um novo detector, que habilita o GuardDuty, na região atual:

aws guardduty create-detector \ --enable

Saída:

{ "DetectorId": "b6b992d6d2f48e64bc59180bfexample" }

Para ter mais informações, consulte Habilitar Amazon GuardDuty no Guia do usuário do GuardDuty.

  • Para ver detalhes da API, consulte CreateDetector na Referência de comandos da AWS CLI.

O código de exemplo a seguir mostra como usar create-filter.

AWS CLI

Criar um novo filtro para a região atual

Este exemplo cria um filtro que corresponde a todas as descobertas do portscan para a instância criada a partir de uma imagem específica:

aws guardduty create-filter \ --detector-id b6b992d6d2f48e64bc59180bfexample \ --action ARCHIVE \ --name myFilter \ --finding-criteria '{"Criterion": {"type": {"Eq": ["Recon:EC2/Portscan"]},"resource.instanceDetails.imageId": {"Eq": ["ami-0a7a207083example"]}}}'

Saída:

{ "Name": "myFilter" }

Para obter mais informações, consulte Filtrar descobertas no Guia do usuário do GuardDuty.

  • Para ver detalhes da API, consulte CreateFilter na Referência de comandos AWS CLI.

O código de exemplo a seguir mostra como usar create-ip-set.

AWS CLI

Criar um conjunto de IP confiável

O exemplo create-ip-set a seguir cria e ativa um conjunto de IP confiável na região atual.

aws guardduty create-ip-set \ --detector-id 12abc34d567e8fa901bc2d34eexample \ --name new-ip-set \ --format TXT --location s3://AWSDOC-EXAMPLE-BUCKET/customtrustlist.csv --activate

Saída:

{ "IpSetId": "d4b94fc952d6912b8f3060768example" }

Para obter mais informações, consulte Trabalhando com Listas de IP Confiáveis e Listas de Ameaças no Guia do usuário GuardDuty.

  • Para ver detalhes da API, consulte CreateIpSet na Referência de comandos da AWS CLI.

O código de exemplo a seguir mostra como usar create-members.

AWS CLI

Associar um novo membro à sua conta principal do GuardDuty na região atual.

Este exemplo mostra como associar contas de membros a serem gerenciadas pela atual conta principal do GuardDuty.

aws guardduty create-members --detector-id b6b992d6d2f48e64bc59180bfexample \ --account-details AccountId=111122223333,Email=first+member@example.com AccountId=111111111111 ,Email=another+member@example.com

Saída:

{ "UnprocessedAccounts": [] }

Para obter mais informações, consulte Gerenciar várias contas no Guia do Usuário GuardDuty.

  • Para ver detalhes da API, consulte CreateMembers na Referência de comandos da AWS CLI.

O código de exemplo a seguir mostra como usar create-publishing-destination.

AWS CLI

Criar um destino de publicação para exportar as descobertas do GuardDuty na região atual para.

Este exemplo mostra como criar um destino de publicação para as descobertas do GuardDuty.

aws guardduty create-publishing-destination \ --detector-id b6b992d6d2f48e64bc59180bfexample \ --destination-type S3 \ --destination-properties DestinationArn=arn:aws:s3:::yourbucket,KmsKeyArn=arn:aws:kms:us-west-1:111122223333:key/84cee9c5-dea1-401a-ab6d-e1de7example

Saída:

{ "DestinationId": "46b99823849e1bbc242dfbe3cexample" }

Para obter mais informações, consulte Exportar as descobertas no Guia do Usuário do GuardDuty.

O código de exemplo a seguir mostra como usar create-sample-findings.

AWS CLI

Criar exemplos de descobertas do GuardDuty na região atual.

Este exemplo mostra como criar um exemplo de descoberta dos tipos fornecidos.

aws guardduty create-sample-findings \ --detector-id b6b992d6d2f48e64bc59180bfexample \ --finding-types UnauthorizedAccess:EC2/TorClient UnauthorizedAccess:EC2/TorRelay

Este comando não produz saída.

Para obter mais informações, consulte Exemplo de descobertas no Guia do usuário GuardDuty.

O código de exemplo a seguir mostra como usar create-threat-intel-set.

AWS CLI

Criar um novo conjunto de informações sobre ameaças na região atual.

Este exemplo mostra como fazer upload de um conjunto de informações sobre ameaças para o GuardDuty e ativá-lo imediatamente.

aws guardduty create-threat-intel-set \ --detector-id b6b992d6d2f48e64bc59180bfexample \ --name myThreatSet \ --format TXT \ --location s3://EXAMPLEBUCKET/threatlist.csv \ --activate

Saída:

{ "ThreatIntelSetId": "20b9a4691aeb33506b808878cexample" }

Para obter mais informações, consulte IP confiável e listas de ameaças no Guia do Usuário GuardDuty.

O código de exemplo a seguir mostra como usar decline-invitations.

AWS CLI

Recusar um convite para que o Guardduty seja gerenciado por outra conta na região atual.

Este exemplo mostra como recusar um convite de associação.

aws guardduty decline-invitations \ --account-ids 111122223333

Saída:

{ "UnprocessedAccounts": [] }

Para obter mais informações, consulte Gerenciar Contas GuardDuty Por Convite no Guia do Usuário GuardDuty.

  • Para ver detalhes da API, consulte DeclineInvitations na Referência de comandos da AWS CLI.

O código de exemplo a seguir mostra como usar delete-detector.

AWS CLI

Excluir um detector e desativar o GuardDuty na região atual.

Este exemplo mostra como excluir um detector. Em caso de êxito, o GuardDuty será desativado na região associada a esse detector.

aws guardduty delete-detector \ --detector-id b6b992d6d2f48e64bc59180bfexample

Este comando não produz saída.

Para obter mais informações, consulte Suspensão ou desativação do GuardDuty no Guia do usuário GuardDuty.

  • Para ver detalhes da API, consulte DeleteDetector na Referência de comandos da AWS CLI.

O código de exemplo a seguir mostra como usar delete-filter.

AWS CLI

Excluir um filtro existente na região atual

Este exemplo mostra como criar e excluir um filtro.

aws guardduty delete-filter \ --detector-id b6b992d6d2f48e64bc59180bfexample \ --filter-name byebyeFilter

Este comando não produz saída.

Para obter mais informações, consulte Filtrar descobertas no Guia do usuário do GuardDuty.

  • Para ver detalhes da API, consulte DeleteFilter na Referência de comandos da AWS CLI.

O código de exemplo a seguir mostra como usar disable-organization-admin-account.

AWS CLI

Remover uma conta como administrador delegado do GuardDuty em sua organização

Este exemplo mostra como remover uma conta como administrador delegado do GuardDuty.

aws guardduty disable-organization-admin-account \ --admin-account-id 111122223333

Este comando não produz saída.

Para obter mais informações, consulte Gerenciar contas com o AWS Organizations no Guia do Usuário GuardDuty.

O código de exemplo a seguir mostra como usar disassociate-from-master-account.

AWS CLI

Desassociar-se de sua conta principal atual na região atual

O exemplo disassociate-from-master-account a seguir dissocia sua conta da conta principal atual do GuardDuty na região da AWS atual.

aws guardduty disassociate-from-master-account \ --detector-id d4b040365221be2b54a6264dcexample

Este comando não produz saída.

Para obter mais informações, consulte Entendendo a Relação entre as Contas Principal e de Membro do GuardDuty no Guia do Usuário do GuardDuty.

O código de exemplo a seguir mostra como usar get-detector.

AWS CLI

Recuperar detalhes de um detector específico

O exemplo get-detector a seguir exibe os detalhes das configurações do detector específico.

aws guardduty get-detector \ --detector-id 12abc34d567e8fa901bc2d34eexample

Saída:

{ "Status": "ENABLED", "ServiceRole": "arn:aws:iam::111122223333:role/aws-service-role/guardduty.amazonaws.com/AWSServiceRoleForAmazonGuardDuty", "Tags": {}, "FindingPublishingFrequency": "SIX_HOURS", "UpdatedAt": "2018-11-07T03:24:22.938Z", "CreatedAt": "2017-12-22T22:51:31.940Z" }

Para obter mais informações, consulte Conceitos e Terminologia no Guia do Usuário GuardDuty.

  • Para ver detalhes da API, consulte GetDetector na Referência de comandos da AWS CLI.

O código de exemplo a seguir mostra como usar get-findings.

AWS CLI

Exemplo 1: recuperar os detalhes de uma descoberta específica

O exemplo get-findings a seguir recupera os detalhes completos da descoberta JSON a partir da descoberta especificada.

aws guardduty get-findings \ --detector-id 12abc34d567e8fa901bc2d34eexample \ --finding-id 1ab92989eaf0e742df4a014d5example

Saída:

{ "Findings": [ { "Resource": { "ResourceType": "AccessKey", "AccessKeyDetails": { "UserName": "testuser", "UserType": "IAMUser", "PrincipalId": "AIDACKCEVSQ6C2EXAMPLE", "AccessKeyId": "ASIASZ4SI7REEEXAMPLE" } }, "Description": "APIs commonly used to discover the users, groups, policies and permissions in an account, was invoked by IAM principal testuser under unusual circumstances. Such activity is not typically seen from this principal.", "Service": { "Count": 5, "Archived": false, "ServiceName": "guardduty", "EventFirstSeen": "2020-05-26T22:02:24Z", "ResourceRole": "TARGET", "EventLastSeen": "2020-05-26T22:33:55Z", "DetectorId": "d4b040365221be2b54a6264dcexample", "Action": { "ActionType": "AWS_API_CALL", "AwsApiCallAction": { "RemoteIpDetails": { "GeoLocation": { "Lat": 51.5164, "Lon": -0.093 }, "City": { "CityName": "London" }, "IpAddressV4": "52.94.36.7", "Organization": { "Org": "Amazon.com", "Isp": "Amazon.com", "Asn": "16509", "AsnOrg": "AMAZON-02" }, "Country": { "CountryName": "United Kingdom" } }, "Api": "ListPolicyVersions", "ServiceName": "iam.amazonaws.com", "CallerType": "Remote IP" } } }, "Title": "Unusual user permission reconnaissance activity by testuser.", "Type": "Recon:IAMUser/UserPermissions", "Region": "us-east-1", "Partition": "aws", "Arn": "arn:aws:guardduty:us-east-1:111122223333:detector/d4b040365221be2b54a6264dcexample/finding/1ab92989eaf0e742df4a014d5example", "UpdatedAt": "2020-05-26T22:55:21.703Z", "SchemaVersion": "2.0", "Severity": 5, "Id": "1ab92989eaf0e742df4a014d5example", "CreatedAt": "2020-05-26T22:21:48.385Z", "AccountId": "111122223333" } ] }

Para obter mais informações, consulte Descobertas no Guia do usuário GuardDuty.

  • Para ver detalhes da API, consulte GetFindings na Referência de comandos da AWS CLI.

O código de exemplo a seguir mostra como usar get-ip-set.

AWS CLI

Listar detalhes sobre um conjunto específico de IP confiável

O exemplo get-ip-set a seguir mostra o status e os detalhes do conjunto específico de IP confiável.

aws guardduty get-ip-set \ --detector-id 12abc34d567e8fa901bc2d34eexample \ --ip-set-id d4b94fc952d6912b8f3060768example

Saída:

{ "Status": "ACTIVE", "Location": "s3://AWSDOC-EXAMPLE-BUCKET.s3-us-west-2.amazonaws.com/customlist.csv", "Tags": {}, "Format": "TXT", "Name": "test-ip-set" }

Para obter mais informações, consulte Trabalhando com Listas de IP Confiáveis e Listas de Ameaças no Guia do usuário GuardDuty.

  • Para ver detalhes da API, consulte GetIpSet na Referência de comandos da AWS CLI.

O código de exemplo a seguir mostra como usar get-master-account.

AWS CLI

Recuperar detalhes sobre sua conta principal na região atual

O exemplo get-master-account a seguir exibe o status e os detalhes da conta principal associada ao seu detector na região atual.

aws guardduty get-master-account \ --detector-id 12abc34d567e8fa901bc2d34eexample

Saída:

{ "Master": { "InvitationId": "04b94d9704854a73f94e061e8example", "InvitedAt": "2020-06-09T22:23:04.970Z", "RelationshipStatus": "Enabled", "AccountId": "123456789111" } }

Para obter mais informações, consulte Entendendo a Relação entre as Contas Principal e de Membro do GuardDuty no Guia do Usuário do GuardDuty.

  • Para ver detalhes da API, consulte GetMasterAccount na Referência de comandos da AWS CLI.

O código de exemplo a seguir mostra como usar list-detectors.

AWS CLI

Listar os detectores disponíveis na região atual

O exemplo list-detectors a seguir lista os detectores disponíveis na sua região da AWS atual.

aws guardduty list-detectors

Saída:

{ "DetectorIds": [ "12abc34d567e8fa901bc2d34eexample" ] }

Para obter mais informações, consulte Conceitos e Terminologia no Guia do Usuário GuardDuty.

  • Para ver detalhes da API, consulte ListDetectors na Referência de comandos da AWS CLI.

O código de exemplo a seguir mostra como usar list-findings.

AWS CLI

Exemplo 1: listar todas as descobertas da região atual

O exemplo list-findings a seguir exibe uma lista de todas as descobertas da região atual, classificadas por gravidade, da mais alta para a mais baixa.

aws guardduty list-findings \ --detector-id 12abc34d567e8fa901bc2d34eexample \ --sort-criteria '{"AttributeName": "severity","OrderBy":"DESC"}'

Saída:

{ "FindingIds": [ "04b8ab50fd29c64fc771b232dexample", "5ab8ab50fd21373735c826d3aexample", "90b93de7aba69107f05bbe60bexample", ... ] }

Para obter mais informações, consulte Descobertas no Guia do usuário GuardDuty.

Exemplo 2: listar descobertas da região atual que correspondam a um critério de descoberta específico

O exemplo list-findings a seguir exibe uma lista de todas as descobertas que correspondem a um tipo de descoberta específico.

aws guardduty list-findings \ --detector-id 12abc34d567e8fa901bc2d34eexample \ --finding-criteria '{"Criterion":{"type": {"Eq":["UnauthorizedAccess:EC2/SSHBruteForce"]}}}'

Saída:

{ "FindingIds": [ "90b93de7aba69107f05bbe60bexample", "6eb9430d7023d30774d6f05e3example", "2eb91a2d060ac9a21963a5848example", "44b8ab50fd2b0039a9e48f570example", "9eb8ab4cd2b7e5b66ba4f5e96example", "e0b8ab3a38e9b0312cc390ceeexample" ] }

Para obter mais informações, consulte Descobertas no Guia do usuário GuardDuty.

Exemplo 3: listar as descobertas da região atual que correspondam a um conjunto específico de critérios de busca definidos em um arquivo JSON

O exemplo list-findings a seguir exibe uma lista de todas as descobertas que não estão arquivadas e envolvem o usuário do IAM chamado "testuser", conforme especificado em um arquivo JSON.

aws guardduty list-findings \ --detector-id 12abc34d567e8fa901bc2d34eexample \ --finding-criteria file://myfile.json

Conteúdo de myfile.json:

{"Criterion": { "resource.accessKeyDetails.userName":{ "Eq":[ "testuser" ] }, "service.archived": { "Eq": [ "false" ] } } }

Saída:

{ "FindingIds": [ "1ab92989eaf0e742df4a014d5example" ] }

Para obter mais informações, consulte Descobertas no Guia do usuário GuardDuty.

  • Para ver detalhes da API, consulte ListFindings na Referência de comandos da AWS CLI.

O código de exemplo a seguir mostra como usar list-invitations.

AWS CLI

Listar detalhes sobre seus convites para se tornar uma conta-membro na região atual

O exemplo list-invitations a seguir lista detalhes e status de seus convites para se tornar uma conta-membro do GuardDuty na região atual.

aws guardduty list-invitations

Saída:

{ "Invitations": [ { "InvitationId": "d6b94fb03a66ff665f7db8764example", "InvitedAt": "2020-06-10T17:56:38.221Z", "RelationshipStatus": "Invited", "AccountId": "123456789111" } ] }

Para obter mais informações, consulte Gerenciar Contas GuardDuty Por Convite no Guia do Usuário GuardDuty.

  • Para ver detalhes da API, consulte ListInvitations na Referência de comandos da AWS CLI.

O código de exemplo a seguir mostra como usar list-ip-sets.

AWS CLI

Listar conjuntos de IP confiáveis na região atual

O exemplo list-ip-sets a seguir lista os conjuntos de IP confiáveis na sua região da AWS atual.

aws guardduty list-ip-sets \ --detector-id 12abc34d567e8fa901bc2d34eexample

Saída:

{ "IpSetIds": [ "d4b94fc952d6912b8f3060768example" ] }

Para obter mais informações, consulte Trabalhando com Listas de IP Confiáveis e Listas de Ameaças no Guia do usuário GuardDuty.

  • Para ver detalhes da API, consulte ListIpSets na Referência de comandos da AWS CLI.

O código de exemplo a seguir mostra como usar list-members.

AWS CLI

Listar todos os membros na região atual

O exemplo list-members a seguir lista todas as contas-membros e seus detalhes para a região atual.

aws guardduty list-members \ --detector-id 12abc34d567e8fa901bc2d34eexample

Saída:

{ "Members": [ { "RelationshipStatus": "Enabled", "InvitedAt": "2020-06-09T22:49:00.910Z", "MasterId": "123456789111", "DetectorId": "7ab8b2f61b256c87f793f6a86example", "UpdatedAt": "2020-06-09T23:08:22.512Z", "Email": "your+member@example.com", "AccountId": "123456789222" } ] }

Para obter mais informações, consulte Entendendo a Relação entre as Contas Principal e de Membro do GuardDuty no Guia do Usuário do GuardDuty.

  • Para ver detalhes da API, consulte ListMembers na Referência de comandos da AWS CLI.

O código de exemplo a seguir mostra como usar update-ip-set.

AWS CLI

Atualizar um conjunto de IP confiável

O exemplo update-ip-set a seguir mostra como atualizar os detalhes de um conjunto de IP confiável.

aws guardduty update-ip-set \ --detector-id 12abc34d567e8fa901bc2d34eexample \ --ip-set-id d4b94fc952d6912b8f3060768example \ --location https://AWSDOC-EXAMPLE-BUCKET.s3-us-west-2.amazonaws.com/customtrustlist2.csv

Este comando não produz saída.

Para obter mais informações, consulte Trabalhando com Listas de IP Confiáveis e Listas de Ameaças no Guia do usuário GuardDuty.

  • Para ver detalhes da API, consulte UpdateIpSet na Referência de comandos da AWS CLI.