- HTTP-запрос
- Параметры запроса
- Тело запроса
- Тело ответа
- FullHash
- FullHashDetail
- Тип угрозы
- Атрибут угрозы
Найдите полные хеши, соответствующие указанным префиксам.
Это настраиваемый метод, как определено https://google.aip.dev/136 (настраиваемый метод относится к этому методу, имеющему настраиваемое имя в общей номенклатуре разработки API Google; он не относится к использованию настраиваемого метода HTTP).
HTTP-запрос
GET https://safebrowsing.googleapis.com/v5/hashes:search
URL-адрес использует синтаксис транскодирования gRPC .
Параметры запроса
Параметры | |
---|---|
hashPrefixes[] | Необходимый. Хэш-префиксы, которые необходимо найти. Клиенты НЕ ДОЛЖНЫ отправлять более 1000 хэш-префиксов. Однако после процедуры обработки URL-адреса клиентам НЕ ДОЛЖНО отправляться более 30 хеш-префиксов. В настоящее время длина каждого хеш-префикса должна составлять ровно 4 байта. В будущем это МОЖЕТ быть смягчено. Строка в кодировке Base64. |
Тело запроса
Тело запроса должно быть пустым.
Тело ответа
Ответ вернулся после поиска хэшей угроз.
Если ничего не найдено, сервер вернет статус ОК (код состояния HTTP 200) с пустым полем fullHashes
, а не возвратит статус NOT_FOUND (код состояния HTTP 404).
Что нового в V5 : существует разделение между FullHash
и FullHashDetail
. В случае, когда хэш представляет сайт, имеющий несколько угроз (например, MALWARE и SOCIAL_ENGINEERING), полный хеш не нужно отправлять дважды, как в версии 4. Кроме того, продолжительность кэша была упрощена до одного поля cacheDuration
.
В случае успеха тело ответа содержит данные следующей структуры:
JSON-представление |
---|
{
"fullHashes": [
{
object ( |
Поля | |
---|---|
fullHashes[] | Неупорядоченный список. Неупорядоченный список найденных полных хешей. |
cacheDuration | Продолжительность кэша на стороне клиента. Клиент ДОЛЖЕН добавить эту продолжительность к текущему времени, чтобы определить срок действия. Затем срок действия применяется к каждому префиксу хеша, запрошенному клиентом в запросе, независимо от того, сколько полных хешей возвращается в ответе. Даже если сервер не возвращает полных хешей для определенного префикса хеш-функции, этот факт ДОЛЖЕН также кэшироваться клиентом. Если и только если поле Важно: клиент НЕ ДОЛЖЕН предполагать, что сервер вернет одинаковую продолжительность кэша для всех ответов. Сервер МОЖЕТ выбирать разную продолжительность кэширования для разных ответов в зависимости от ситуации. Длительность в секундах, содержащая до девяти дробных цифр и оканчивающаяся на « |
FullHash
Полный хеш, идентифицированный с одним или несколькими совпадениями.
JSON-представление |
---|
{
"fullHash": string,
"fullHashDetails": [
{
object ( |
Поля | |
---|---|
fullHash | Соответствующий полный хэш. Это хэш SHA256. Длина будет ровно 32 байта. Строка в кодировке Base64. |
fullHashDetails[] | Неупорядоченный список. Повторяющееся поле, определяющее детали, относящиеся к этому полному хешу. |
FullHashDetail
Подробности о соответствующем полном хеше.
Важное примечание о прямой совместимости: новые типы угроз и атрибуты угроз могут быть добавлены сервером в любое время; эти дополнения считаются незначительными изменениями версии. Политика Google не раскрывает второстепенные номера версий в API (политику управления версиями см. на странице https://cloud.google.com/apis/design/versioning ), поэтому клиенты ДОЛЖНЫ быть готовы получать сообщения FullHashDetail
, содержащие значения перечисления ThreatType
или ThreatAttribute
. значения перечисления, которые клиент считает недействительными. Таким образом, ответственность за проверку правильности всех значений перечислений ThreatType
и ThreatAttribute
лежит на клиенте; если какое-либо значение считается недействительным, клиент ДОЛЖЕН игнорировать все сообщение FullHashDetail
.
JSON-представление |
---|
{ "threatType": enum ( |
Поля | |
---|---|
threatType | Тип угрозы. Это поле никогда не будет пустым. |
attributes[] | Неупорядоченный список. Дополнительные атрибуты этих полных хешей. Это может быть пусто. |
Тип угрозы
Виды угроз.
Перечисления | |
---|---|
THREAT_TYPE_UNSPECIFIED | Неизвестный тип угрозы. Если это возвращается сервером, клиент должен вообще игнорировать включающий FullHashDetail . |
MALWARE | Тип угрозы вредоносного ПО. Вредоносное ПО — это любое программное обеспечение или мобильное приложение, специально предназначенное для нанесения вреда компьютеру, мобильному устройству, программному обеспечению, на котором оно работает, или его пользователям. Вредоносное ПО демонстрирует вредоносное поведение, которое может включать установку программного обеспечения без согласия пользователя и установку вредоносного программного обеспечения, например вирусов. Более подробную информацию можно найти здесь . |
SOCIAL_ENGINEERING | Тип угрозы социальной инженерии. Страницы социальной инженерии ложно претендуют на то, чтобы действовать от имени третьей стороны с намерением ввести зрителей в заблуждение и заставить их выполнить действие, которому зритель доверял бы только истинному агенту этой третьей стороны. Фишинг — это тип социальной инженерии, который обманом заставляет зрителя выполнить определенное действие по предоставлению информации, например учетных данных для входа. Более подробную информацию можно найти здесь . |
UNWANTED_SOFTWARE | Тип нежелательной программной угрозы. Нежелательным программным обеспечением является любое программное обеспечение, которое не соответствует принципам программного обеспечения Google, но не является вредоносным ПО. |
POTENTIALLY_HARMFUL_APPLICATION | Тип потенциально опасной угрозы приложения , используемый Google Play Protect для Play Store . |
Атрибут угрозы
Атрибуты угроз. Эти атрибуты могут придавать дополнительное значение конкретной угрозе, но не влияют на тип угрозы. Например, атрибут может указывать более низкую достоверность, тогда как другой атрибут может указывать более высокую достоверность. В будущем могут быть добавлены дополнительные атрибуты.
Перечисления | |
---|---|
THREAT_ATTRIBUTE_UNSPECIFIED | Неизвестный атрибут. Если это возвращается сервером, клиент должен вообще игнорировать включающий FullHashDetail . |
CANARY | Указывает, что ThreatType не следует использовать для принудительного применения. |
FRAME_ONLY | Указывает, что ThreatType следует использовать только для принудительного применения к кадрам. |