ดัชนี
SafeBrowsing
(อินเทอร์เฟซ)Checksum
(ข้อความ)ClientInfo
(ข้อความ)CompressionType
(enum)FetchThreatListUpdatesRequest
(ข้อความ)FetchThreatListUpdatesRequest.ListUpdateRequest
(ข้อความ)FetchThreatListUpdatesRequest.ListUpdateRequest.Constraints
(ข้อความ)FetchThreatListUpdatesResponse
(ข้อความ)FetchThreatListUpdatesResponse.ListUpdateResponse
(ข้อความ)FetchThreatListUpdatesResponse.ListUpdateResponse.ResponseType
(enum)FindFullHashesRequest
(ข้อความ)FindFullHashesResponse
(ข้อความ)FindThreatMatchesRequest
(ข้อความ)FindThreatMatchesResponse
(ข้อความ)ListThreatListsResponse
(ข้อความ)PlatformType
(enum)RawHashes
(ข้อความ)RawIndices
(ข้อความ)RiceDeltaEncoding
(ข้อความ)ThreatEntry
(ข้อความ)ThreatEntryMetadata
(ข้อความ)ThreatEntryMetadata.MetadataEntry
(ข้อความ)ThreatEntrySet
(ข้อความ)ThreatEntryType
(enum)ThreatInfo
(ข้อความ)ThreatListDescriptor
(ข้อความ)ThreatMatch
(ข้อความ)ThreatType
(enum)
SafeBrowsing
Safe Browsing API ช่วยให้ลูกค้าตรวจสอบทรัพยากรบนเว็บ (ส่วนใหญ่เป็น URL) เทียบกับรายการทรัพยากรบนเว็บที่ไม่ปลอดภัยของ Google ได้ ซึ่งมีการอัปเดตอยู่เป็นประจำ Safe Browsing API (v4) มี Update API และ Lookup API
API การอัปเดตได้รับการออกแบบสำหรับลูกค้าขนาดใหญ่ของเรา และมีเมธอด FindFullHashes และ FetchThreatListUpdates API การอัปเดตกำหนดให้ไคลเอ็นต์ต้องเก็บรักษารายการภัยคุกคามที่ดาวน์โหลดไว้ในฐานข้อมูลของเครื่อง
โดยในขั้นแรก ไคลเอ็นต์จะจับคู่กับรายการในเครื่องเพื่อระบุสถานะ (ปลอดภัยหรือไม่ปลอดภัย) ของทรัพยากรเว็บหนึ่งๆ โดยส่วนใหญ่แล้ว รายการจะประกอบด้วยคำนำหน้าแฮชของนิพจน์ URL ที่ถูกขึ้นบัญชีดำ ในการตรวจสอบ URL ไคลเอ็นต์จะสร้างแฮชของ URL ที่ระบุและตรวจหาความขัดแย้งของคำนำหน้าในรายการในเครื่องของตน หากพบการจับคู่คำนำหน้า ไคลเอ็นต์จะได้รับแฮชแบบเต็มที่เชื่อมโยงกับคำนำหน้าแฮชที่ตรงกันผ่านเมธอด FindFullHashes จากนั้นไคลเอ็นต์จะเปรียบเทียบแฮชแบบเต็มในเครื่องกับแฮชแบบเต็มที่ส่งกลับมา โดยมีการจับคู่ที่ตรงกันแสดงให้เห็นว่า URL นี้ไม่ปลอดภัย
ประการที่สอง ไคลเอ็นต์จะได้รับการอัปเดตไปยังฐานข้อมูลภายในเครื่องของตนผ่านเมธอด FetchThreatListUpdates ซึ่งจะใช้สถานะปัจจุบันของไคลเอ็นต์ และแสดงผลลัพธ์สถานะไคลเอ็นต์ที่อัปเดตแล้วพร้อมกับการเปลี่ยนแปลงที่ลูกค้าควรใช้กับรายการภัยคุกคามในพื้นที่
Lookup API ออกแบบมาสำหรับไคลเอ็นต์ขนาดเล็กของเรา และช่วยให้จับคู่ทรัพยากรกับรายการภัยคุกคามของ Google Safe Browsing ได้โดยตรงผ่านเมธอด FindThreatMatches
ไคลเอ็นต์ที่ใช้ Update API หรือ Lookup API สามารถรับรายการรายการภัยคุกคามของ Google Safe Browsing ที่มีให้ดาวน์โหลดผ่านเมธอด ListThreatLists
{-- TRUSTED_THREAT_REPORTER: ไคลเอ็นต์ภัยคุกคามที่เชื่อถือได้สามารถส่งรายงานให้ Google วิเคราะห์ผ่านเมธอด submitThreatReport --}
FetchThreatListUpdates |
---|
ดึงข้อมูลการอัปเดตรายการภัยคุกคามล่าสุด ลูกค้าขออัปเดตหลายรายการพร้อมกันได้ |
FindFullHashes |
---|
ค้นหาแฮชแบบเต็มที่ตรงกับคำนำหน้าแฮชที่ขอ |
FindThreatMatches |
---|
ค้นหารายการภัยคุกคามที่ตรงกับรายการ Google Safe Browsing |
ListThreatLists |
---|
แสดงรายการภัยคุกคามของ Google Safe Browsing ที่ดาวน์โหลดได้ |
ตรวจสอบข้อผิดพลาด
สถานะที่ต้องการของฐานข้อมูลภายในของไคลเอ็นต์
ช่อง | |
---|---|
sha256 |
แฮช SHA256 ของสถานะไคลเอ็นต์ ซึ่งก็คือรายการแฮชทั้งหมดที่จัดเรียงแล้วที่มีอยู่ในฐานข้อมูล |
ClientInfo
ข้อมูลเมตาของไคลเอ็นต์ที่เชื่อมโยงกับคำขอ API ของ Google Safe Browsing
ช่อง | |
---|---|
client_id |
รหัสไคลเอ็นต์ที่ (หวังว่า) จะระบุการใช้งาน Safe Browsing API ของไคลเอ็นต์โดยไม่ซ้ำกัน |
client_version |
เวอร์ชันของการติดตั้งใช้งานไคลเอ็นต์ |
CompressionType
วิธีบีบอัดชุดรายการภัยคุกคาม
Enum | |
---|---|
COMPRESSION_TYPE_UNSPECIFIED |
ไม่รู้จัก |
RAW |
ข้อมูลดิบที่ไม่มีการบีบอัด |
RICE |
ข้อมูลที่เข้ารหัส Rice-Golomb |
FetchThreatListUpdatesRequest
อธิบายคำขออัปเดต Safe Browsing API ลูกค้าสามารถขอการอัปเดตได้หลายรายการในคำขอเดียว เซิร์ฟเวอร์อาจไม่ตอบสนองคำขอทั้งหมด หากเซิร์ฟเวอร์ไม่มีการอัปเดตสำหรับรายการนั้น หมายเหตุ: ดัชนีช่อง 2 ไม่ได้ใช้งาน ถัดไป: 5
ช่อง | |
---|---|
client |
ข้อมูลเมตาของไคลเอ็นต์ |
list_update_requests[] |
ระบบจะอัปเดตรายการภัยคุกคามที่ขอ |
ListUpdateRequest
คำขออัปเดตรายการเดียว
ช่อง | |
---|---|
threat_type |
ประเภทของภัยคุกคามที่เกิดจากรายการที่แสดงอยู่ในรายการ |
platform_type |
ประเภทของแพลตฟอร์มที่มีความเสี่ยงตามรายการที่แสดงในรายการ |
threat_entry_type |
ประเภทของข้อมูลที่อยู่ในรายการ |
state |
สถานะปัจจุบันของไคลเอ็นต์สำหรับรายการที่ขอ (สถานะไคลเอ็นต์ที่เข้ารหัสซึ่งได้รับจากการอัปเดตรายการที่สำเร็จครั้งล่าสุด) |
constraints |
ข้อจำกัดที่เชื่อมโยงกับคำขอนี้ |
ข้อจำกัด
ข้อจำกัดสำหรับการอัปเดตนี้
ช่อง | |
---|---|
max_update_entries |
จำนวนรายการสูงสุด การอัปเดตจะไม่มีรายการมากกว่าค่านี้ ค่านี้ควรเป็นเลขยกกำลัง 2 ระหว่าง 2**10 ถึง 2**20 หากเป็น 0 แสดงว่าไม่มีการกำหนดขนาดการอัปเดตสูงสุดไว้ |
max_database_entries |
ตั้งค่าจำนวนรายการสูงสุดที่ไคลเอ็นต์ต้องการให้มีในฐานข้อมูลของเครื่องสำหรับรายการที่ระบุ ค่านี้ควรเป็นเลขยกกำลัง 2 ระหว่าง 2**10 ถึง 2**20 หากเป็น 0 ระบบจะไม่ตั้งค่าขีดจำกัดของขนาดฐานข้อมูล |
region |
ขอรายการสำหรับตำแหน่งทางภูมิศาสตร์ที่เฉพาะเจาะจง หากไม่ได้ตั้งค่า เซิร์ฟเวอร์อาจเลือกค่าดังกล่าวตามที่อยู่ IP ของผู้ใช้ คาดหวังรูปแบบ ISO 3166-1 alpha-2 |
supported_compressions[] |
ประเภทการบีบอัดที่ไคลเอ็นต์รองรับ |
language |
ขอรายการสำหรับภาษาที่เฉพาะเจาะจง คาดหวังรูปแบบ ISO 639 alpha-2 |
device_location |
สถานที่ตั้งทางกายภาพของลูกค้า ซึ่งแสดงเป็นรหัสภูมิภาค ISO 31166-1 alpha-2 |
FetchThreatListUpdatesResponse
ช่อง | |
---|---|
list_update_responses[] |
การอัปเดตรายการที่ลูกค้าขอ จํานวนคําตอบที่นี่อาจน้อยกว่าจํานวนคําขอที่ลูกค้าส่ง ตัวอย่างเช่น หากเซิร์ฟเวอร์ไม่มีการอัปเดตสำหรับรายการที่ต้องการ |
minimum_wait_duration |
ระยะเวลาขั้นต่ำที่ลูกค้าต้องรอก่อนที่จะส่งคำขออัปเดต หากไม่ได้ตั้งค่าช่องนี้ ลูกค้าจะอัปเดตได้ทันทีที่ต้องการ |
ListUpdateResponse
การอัปเดตทีละรายการ
ช่อง | |
---|---|
threat_type |
ประเภทของภัยคุกคามที่ส่งคืนข้อมูล |
threat_entry_type |
รูปแบบของภัยคุกคาม |
platform_type |
ประเภทแพลตฟอร์มที่ส่งคืนข้อมูล |
response_type |
ประเภทของคำตอบ ซึ่งอาจบ่งชี้ว่าลูกค้าต้องทำการดำเนินการเมื่อได้รับการตอบกลับ |
additions[] |
ชุดรายการที่จะเพิ่มลงในรายการประเภทภัยคุกคามในท้องถิ่น ทำซ้ำเพื่อให้ส่งชุดค่าผสมของข้อมูลและข้อมูลดิบในการตอบสนองเดียว |
removals[] |
ชุดของรายการที่จะนำออกจากรายการของประเภทภัยคุกคามในท้องถิ่น ในทางปฏิบัติ ช่องนี้จะว่างเปล่าหรือมี ThreatEntrySet เพียงรายการเดียว |
new_client_state |
สถานะลูกค้าใหม่ในรูปแบบที่เข้ารหัส ไม่ชัดเจนสำหรับลูกค้า |
checksum |
แฮช SHA256 ที่คาดหวังของสถานะไคลเอ็นต์ ซึ่งก็คือรายการแฮชทั้งหมดที่จัดเรียงแล้วที่มีอยู่ในฐานข้อมูลหลังจากนำการอัปเดตที่ให้มาไปใช้ หากสถานะของไคลเอ็นต์ไม่ตรงกับสถานะที่คาดไว้ ไคลเอ็นต์จะต้องเพิกเฉยต่อการอัปเดตนี้และลองอีกครั้งในภายหลัง |
ResponseType
ประเภทการตอบกลับที่ส่งไปยังไคลเอ็นต์
Enum | |
---|---|
RESPONSE_TYPE_UNSPECIFIED |
ไม่รู้จัก |
PARTIAL_UPDATE |
การอัปเดตบางส่วนจะมีผลกับฐานข้อมูลที่มีอยู่ของลูกค้า |
FULL_UPDATE |
การอัปเดตเต็มรูปแบบจะแทนที่ฐานข้อมูลทั้งหมดในเครื่องของไคลเอ็นต์ นั่นหมายความว่าลูกค้าล้าสมัยเป็นอย่างมาก หรือเชื่อว่าลูกค้ามีความเสียหาย |
FindFullHashesRequest
คำขอแสดงผลแฮชแบบเต็มที่ตรงกับคำนำหน้าแฮชที่ระบุ
ช่อง | |
---|---|
client |
ข้อมูลเมตาของไคลเอ็นต์ |
client_states[] |
สถานะลูกค้าปัจจุบันสำหรับรายการภัยคุกคามในท้องถิ่นแต่ละรายการของลูกค้า |
threat_info |
รายการและแฮชที่ต้องตรวจสอบ |
api_client |
ข้อมูลเมตาของไคลเอ็นต์ที่เชื่อมโยงกับตัวเรียกใช้ API ระดับสูงกว่าซึ่งสร้างขึ้นจากการติดตั้งใช้งานของลูกค้า |
FindFullHashesResponse
ช่อง | |
---|---|
matches[] |
แฮชแบบเต็มที่ตรงกับคำนำหน้าที่ขอ |
minimum_wait_duration |
ระยะเวลาขั้นต่ำที่ไคลเอ็นต์ต้องรอก่อนที่จะออกคําขอค้นหาแฮช หากไม่ได้ตั้งค่าช่องนี้ ลูกค้าจะออกคำขอได้ทันทีที่ต้องการ |
negative_cache_duration |
ระยะเวลาในการแคชการตอบสนองสำหรับเอนทิตีที่ขอซึ่งไม่ตรงกับรายการภัยคุกคาม |
FindThreatMatchesRequest
คำขอตรวจสอบรายการเทียบกับรายการ
ช่อง | |
---|---|
client |
ข้อมูลเมตาของไคลเอ็นต์ |
threat_info |
รายการและข้อมูลที่ต้องตรวจสอบเพื่อหารายการที่ตรงกัน |
FindThreatMatchesResponse
ช่อง | |
---|---|
matches[] |
รายการภัยคุกคามตรงกัน |
ListThreatListsResponse
ช่อง | |
---|---|
threat_lists[] |
รายการที่ลูกค้าดาวน์โหลดได้ |
PlatformType
ประเภทแพลตฟอร์ม
Enum | |
---|---|
PLATFORM_TYPE_UNSPECIFIED |
แพลตฟอร์มที่ไม่รู้จัก |
WINDOWS |
ภัยคุกคามที่ก่อให้เกิดปัญหาต่อ Windows |
LINUX |
ภัยคุกคามที่อาจเกิดกับ Linux |
ANDROID |
ภัยคุกคามที่เสี่ยงต่อการละเมิดต่อ Android |
OSX |
มีการข่มขู่ว่าจะมี OS X. |
IOS |
ภัยคุกคามที่ถูกส่งไปยัง iOS |
ANY_PLATFORM |
ภัยคุกคามที่กระทำต่อแพลตฟอร์มที่กำหนดไว้อย่างน้อย 1 แพลตฟอร์ม |
ALL_PLATFORMS |
ภัยคุกคามเกิดขึ้นกับทุกแพลตฟอร์มที่กำหนด |
CHROME |
ภัยคุกคามที่แสดงต่อ Chrome |
RawHashes
รายการภัยคุกคามที่ไม่ได้บีบอัดในรูปแบบแฮชที่มีความยาวของคำนำหน้าเฉพาะเจาะจง แฮชสามารถมีขนาดได้ตั้งแต่ 4 ถึง 32 ไบต์ แฮชส่วนใหญ่มีขนาด 4 ไบต์ แต่แฮชบางรายการจะยาวขึ้นหากขัดแย้งกับแฮชของ URL ยอดนิยม
ใช้เพื่อส่ง ThreatEntrySet ไปยังไคลเอ็นต์ที่ไม่รองรับการบีบอัด หรือเมื่อส่งแฮชที่ไม่ใช่ 4 ไบต์ไปยังไคลเอ็นต์ที่รองรับการบีบอัด
ช่อง | |
---|---|
prefix_size |
จำนวนไบต์ของคำนำหน้าแต่ละรายการที่เข้ารหัสด้านล่าง ช่องนี้เป็นช่องใดก็ได้ตั้งแต่ 4 (ส่วนนำหน้าที่สั้นที่สุด) จนถึง 32 (แฮช SHA256 แบบเต็ม) |
raw_hashes |
แฮชในรูปแบบไบนารีจะต่อกันเป็นสตริงแบบยาว 1 สตริง แฮชจะจัดเรียงตามลำดับพจนานุกรม สำหรับผู้ใช้ JSON API แฮชจะเข้ารหัสฐาน 64 |
RawIndices
ชุดดัชนีดิบที่จะนำออกจากรายการในเครื่อง
ช่อง | |
---|---|
indices[] |
ดัชนีที่จะนำออกจากรายการท้องถิ่นที่จัดเรียงแบบพจนานุกรม |
RiceDeltaEncoding
ข้อมูลที่เข้ารหัส Rice-Golomb ใช้เพื่อส่งแฮช 4 ไบต์ที่บีบอัดหรือดัชนีการลบที่บีบอัด
ช่อง | |
---|---|
first_value |
ค่าออฟเซ็ตของรายการแรกในข้อมูลที่เข้ารหัส หรือหากมีการเข้ารหัสจำนวนเต็มค่าเดียว ก็จะใช้ค่าของจำนวนเต็มค่าเดียวนั้น หากช่องว่างเปล่าหรือขาดหายไป ระบบจะถือว่าเป็น 0 |
rice_parameter |
พารามิเตอร์ Golomb-Rice ซึ่งเป็นตัวเลขระหว่าง 2 ถึง 28 หากไม่มีฟิลด์นี้ (ซึ่งก็คือ 0) หาก |
num_entries |
จำนวนรายการที่เข้ารหัสแบบเดลต้าในข้อมูลที่เข้ารหัส หากมีการเข้ารหัสจำนวนเต็มค่าเดียว ค่านี้จะเป็น 0 และจะเก็บค่าเดี่ยวไว้ใน |
encoded_data |
เดลต้าที่เข้ารหัสซึ่งเข้ารหัสโดยใช้ตัวแปลงรหัส Golomb-Rice |
ThreatEntry
ภัยคุกคามแต่ละรายการ เช่น URL ที่เป็นอันตรายหรือการแทนแฮช ควรตั้งค่าเพียงช่องเดียว
ช่อง | |
---|---|
hash |
คำนำหน้าแฮชที่ประกอบด้วยแฮช SHA256 จำนวน 4-32 ไบต์ที่สำคัญที่สุด ช่องนี้อยู่ในรูปแบบไบนารี สำหรับคำขอ JSON แฮชจะเข้ารหัส base64 |
url |
URL |
digest |
ไดเจสต์ของไฟล์ปฏิบัติการในรูปแบบ SHA256 API รองรับทั้งไดเจสต์แบบไบนารีและเลขฐานสิบหก สำหรับคำขอ JSON ไดเจสต์จะเข้ารหัส base64 |
ThreatEntryMetadata
ข้อมูลเมตาที่เชื่อมโยงกับรายการภัยคุกคามที่เฉพาะเจาะจง ไคลเอ็นต์ควรทราบคู่คีย์/ค่าข้อมูลเมตาที่เชื่อมโยงกับภัยคุกคามแต่ละประเภท
ช่อง | |
---|---|
entries[] |
รายการข้อมูลเมตา |
MetadataEntry
รายการข้อมูลเมตารายการเดียว
ช่อง | |
---|---|
key |
คีย์รายการข้อมูลเมตา สำหรับคำขอ JSON คีย์จะเข้ารหัส base64 |
value |
ค่ารายการข้อมูลเมตา สำหรับคำขอ JSON ค่าจะเข้ารหัสฐาน 64 |
ThreatEntrySet
ชุดของภัยคุกคามที่ควรเพิ่มหรือนำออกจากฐานข้อมูลในเครื่องของลูกค้า
ช่อง | |
---|---|
compression_type |
ประเภทการบีบอัดสำหรับรายการในชุดนี้ |
raw_hashes |
รายการรูปแบบ SHA256 ดิบ |
raw_indices |
ดัชนีการนำออกดิบสำหรับรายการท้องถิ่น |
rice_hashes |
คำนำหน้า 4 ไบต์ที่เข้ารหัสของรายการที่จัดรูปแบบ SHA256 โดยใช้การเข้ารหัส Golomb-Rice ระบบจะแปลงแฮชเป็น uint32 โดยจัดเรียงจากน้อยไปมาก จากนั้นมีการเข้ารหัสแบบเดลต้าและจัดเก็บเป็น encrypted_data |
rice_indices |
ดัชนีรายการแบบจัดเรียงด้วยพจนานุกรมในเครื่องที่เข้ารหัสโดยใช้การเข้ารหัส Golomb-Rice ใช้สำหรับส่งดัชนีการลบที่บีบอัด ระบบจะจัดเรียงดัชนีการนำออก (uint32) ตามลำดับจากน้อยไปมาก จากนั้นมีการเข้ารหัสแบบเดลต้าและจัดเก็บเป็น encrypted_data |
ThreatEntryType
ประเภทรายการที่ก่อให้เกิดภัยคุกคาม รายการภัยคุกคามคือคอลเล็กชันของรายการประเภทเดียว
Enum | |
---|---|
THREAT_ENTRY_TYPE_UNSPECIFIED |
ไม่ระบุ |
URL |
URL |
EXECUTABLE |
โปรแกรมสั่งการ |
ThreatInfo
ข้อมูลเกี่ยวกับภัยคุกคามอย่างน้อย 1 รายการที่ลูกค้าส่งเมื่อตรวจหารายการที่ตรงกันในรายการภัยคุกคาม
ช่อง | |
---|---|
threat_types[] |
ประเภทภัยคุกคามที่ต้องตรวจสอบ |
platform_types[] |
ประเภทแพลตฟอร์มที่ต้องการตรวจสอบ |
threat_entry_types[] |
ประเภทรายการที่จะตรวจสอบ |
threat_entries[] |
รายการภัยคุกคามที่ต้องตรวจสอบ |
ThreatListDescriptor
อธิบายรายการภัยคุกคามแต่ละรายการ ซึ่งแต่ละรายการจะมีพารามิเตอร์ 3 ตัว ได้แก่ ประเภทของภัยคุกคาม ประเภทแพลตฟอร์มที่ภัยคุกคามนี้กำหนดเป้าหมาย และประเภทของข้อมูลในรายการ
ช่อง | |
---|---|
threat_type |
ประเภทของภัยคุกคามที่เกิดจากข้อมูลในรายการ |
platform_type |
ประเภทแพลตฟอร์มที่กำหนดเป้าหมายตามรายการในรายการ |
threat_entry_type |
ประเภทรายการที่มีอยู่ในรายการ |
ThreatMatch
การจับคู่เมื่อตรวจสอบรายการภัยคุกคามในรายการภัยคุกคามของ Google Safe Browsing
ช่อง | |
---|---|
threat_type |
ประเภทภัยคุกคามที่ตรงกับภัยคุกคามนี้ |
platform_type |
ประเภทแพลตฟอร์มที่ตรงกับภัยคุกคามนี้ |
threat_entry_type |
ประเภทรายการภัยคุกคามที่ตรงกับภัยคุกคามนี้ |
threat |
ภัยคุกคามที่ตรงกับภัยคุกคามนี้ |
threat_entry_metadata |
ข้อมูลเมตาที่ไม่บังคับซึ่งเชื่อมโยงกับภัยคุกคามนี้ |
cache_duration |
อายุการใช้งานของแคชสำหรับการจับคู่ที่แสดงผล ไคลเอ็นต์ต้องไม่แคชคําตอบนี้นานกว่าระยะเวลานี้เพื่อหลีกเลี่ยงผลบวกลวง |
ThreatType
ประเภทของภัยคุกคาม
Enum | |
---|---|
THREAT_TYPE_UNSPECIFIED |
ไม่รู้จัก |
MALWARE |
ประเภทภัยคุกคามมัลแวร์ |
SOCIAL_ENGINEERING |
ประเภทภัยคุกคามด้านวิศวกรรมสังคม |
UNWANTED_SOFTWARE |
ประเภทภัยคุกคามซอฟต์แวร์ไม่พึงประสงค์ |
POTENTIALLY_HARMFUL_APPLICATION |
ประเภทภัยคุกคามแอปพลิเคชันที่อาจเป็นอันตราย |