Применяется к Advanced Threat Analytics версии 1.8Applies to: Advanced Threat Analytics version 1.8

Устранение неполадок в ATA с помощью базы данных ATATroubleshooting ATA using the ATA database

В качестве своей базы данных ATA использует MongoDB.ATA uses MongoDB as its database. Для взаимодействия с базой данных можно использовать заданную по умолчанию командную строку или инструмент пользовательского интерфейса для выполнения дополнительных задач и устранения неполадок.You can interact with the database using the default command line or using a user interface tool to perform advanced tasks and troubleshooting.

Взаимодействие с базой данныхInteracting with the database

Чтобы отправить запрос в базу данных, проще всего (и это стандартный способ) использовать оболочку Mongo. Сделать это можно так:The default and most basic way to query the database is using the Mongo shell:

  1. Откройте окно командной строки и измените путь к папке Bin службы MongoDB.Open a command line window and change the path to the MongoDB bin folder. По умолчанию задан путь C:\Program Files\Microsoft Advanced Threat Analytics\Center\MongoDB\bin.The default path is: C:\Program Files\Microsoft Advanced Threat Analytics\Center\MongoDB\bin.

  2. Запустите mongo.exe ATA.Run: mongo.exe ATA. Убедитесь, что значение ATA указано прописными буквами.Make sure to type ATA with all capital letters.

Как...How to... СинтаксисSyntax ПримечанияNotes
проверить наличие коллекций в базе данных.Check for collections in the database. show collections Полезно использовать в качестве полной проверки, чтобы убедиться, что трафик записывается в базу данных и что АТА получает сведения о событии 4776.Useful as an end-to-end test to see that traffic is being written to the database and that event 4776 is being received by ATA.
получить сведения о пользователе, компьютере или группе (UniqueEntity). Это, например, могут быть сведения об идентификаторе пользователя.Get the details of a user/computer/group (UniqueEntity), such as user ID. db.UniqueEntity.find({SearchNames: "<name of entity in lower case>"})
найти исходящий трафик проверки подлинности Kerberos с конкретного компьютера в определенный день.Find Kerberos authentication traffic originating from a specific computer on a specific day. db.KerberosAs_<datetime>.find({SourceComputerId: "<Id of the source computer>"}) Чтобы получить <идентификатор исходного компьютера>, выполните запрос к коллекциям UniqueEntity, как показано в примере.To get the <ID of the source computer> you can query the UniqueEntity collections, as shown in the example.

Каждый тип сетевой активности, например проверка подлинности Kerberos, имеет собственную коллекцию для каждой даты в формате UTC.Each network activity type, for example Kerberos authentications, has its own collection per UTC date.
найти исходящий трафик NTLM с конкретного компьютера, имеющего отношение к конкретной учетной записи, в определенный день.Find NTLM traffic originating from a specific computer related to a specific account on a specific day. db.Ntlm_<datetime>.find({SourceComputerId: "<Id of the source computer>", SourceAccountId: "<Id of the account>"}) Чтобы получить <идентификатор исходного компьютера> и <идентификатор учетной записи>, выполните запрос к коллекциям UniqueEntity, как показано в примере.To get the <ID of the source computer> and <ID of the account> you can query the UniqueEntity collections, as shown in the example.

Каждый тип сетевых операций, например проверка подлинности NTLM, имеет собственную коллекцию для каждой даты в формате UTC.Each network activity type, for example NTLM authentications, has its own collection per UTC date.
выполнять расширенные изменения конфигурации.Make advanced configuration changes. В этом примере мы изменим размер очереди отправки для всех шлюзов ATA до 10 000.In this example we change the send queue size for all ATA Gateways to 10,000. db.SystemProfile.update( {_t: "GatewaySystemProfile"} ,
{$set:{"Configuration.EntitySenderConfiguration.EntityBatchBlockMaxSize" : "10000"}})
`

Ниже приведен пример кода, в котором используется синтаксис.The following example provides sample code using the syntax provided above. Он предусмотрен для такого сценария — вы анализируете подозрительную активность, зафиксированную 20 октября 2015 года, и хотите узнать больше о действиях NTLM, совершенных в этот день пользователем John Doe:If you are investigating a suspicious activity that occurred on 20/10/2015 and want to learn more about the NTLM activities that "John Doe" performed on that day:

Сначала найдите идентификатор пользователя John Doe.First, find the ID of "John Doe"

db.UniqueEntity.find({Name: "John Doe"})
Запишите его идентификатор, обозначенный значением _id. В нашем примере предположим, что используется идентификатор 123bdd24-b269-h6e1-9c72-7737as875351.Take a note of his ID as indicated by the value of _id For our example, let's assume the ID is 123bdd24-b269-h6e1-9c72-7737as875351
Затем выполните поиск коллекции, в которой ближайшая дата предшествует искомой дате. В нашем примере это 20 октября 2015 г.Then, search for the collection with the closest date that is before the date you are looking for, in our example 20/10/2015.
После этого выполните поиск действий NTLM для учетной записи John Doe:Then, search for John Doe's account NTLM activities:

db.Ntlms_<closest date>.find({SourceAccountId: "123bdd24-b269-h6e1-9c72-7737as875351"})

См. такжеSee Also