ดัชนี
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
Update API ออกแบบมาสำหรับลูกค้ารายใหญ่ของเรา และมีเมธอด FindFullHashes และ FetchThreatListUpdates Update API กําหนดให้ไคลเอ็นต์ต้องดูแลรักษารายการภัยคุกคามที่ดาวน์โหลดไว้ในฐานข้อมูลในเครื่อง
ก่อนอื่น ไคลเอ็นต์จะจับคู่กับรายการในเครื่องเพื่อระบุสถานะ (ปลอดภัยหรือไม่ปลอดภัย) ของทรัพยากรบนเว็บหนึ่งๆ โดยทั่วไปแล้ว รายการจะประกอบด้วยคำนำหน้าแฮชของนิพจน์ URL ที่อยู่ในรายการที่อนุญาตพิเศษ หากต้องการตรวจสอบ URL ลูกค้าจะสร้างแฮชของ URL หนึ่งๆ และตรวจสอบการชนกันของคำนำหน้าในรายการในเครื่อง หากพบคำนำหน้าตรงกัน ลูกค้าจะได้รับแฮชแบบเต็มซึ่งเชื่อมโยงกับคำนำหน้าแฮชที่ตรงกันผ่านเมธอด FindFullHashes จากนั้นไคลเอ็นต์จะเปรียบเทียบแฮชแบบเต็มในเครื่องกับแฮชแบบเต็มที่ได้รับ ซึ่งการจับคู่บ่งชี้ว่า URL ไม่ปลอดภัย
ประการที่ 2 ไคลเอ็นต์จะรับการอัปเดตฐานข้อมูลในเครื่องผ่านเมธอด FetchThreatListUpdates ซึ่งจะนําสถานะปัจจุบันของไคลเอ็นต์ไปแสดงสถานะไคลเอ็นต์ที่อัปเดตแล้วพร้อมกับการเปลี่ยนแปลงที่ไคลเอ็นต์ควรนําไปใช้กับรายการภัยคุกคามในเครื่อง
Lookup API ออกแบบมาสำหรับลูกค้ารายเล็กของเรา และช่วยให้ลูกค้าจับคู่ทรัพยากรกับรายการภัยคุกคามของ Google Safe Browsing ได้โดยตรงผ่านเมธอด FindThreatMatches
ไคลเอ็นต์ที่ใช้ Update API หรือ Lookup API สามารถดูรายการภัยคุกคามจาก Google Safe Browsing ที่พร้อมให้ดาวน์โหลดผ่านเมธอด ListThreatLists
{-- TRUSTED_THREAT_REPORTER: Trusted threat clients can submit reports to Google for analysis via the SubmitThreatReport method. --}
| FetchThreatListUpdates |
|---|
|
ดึงข้อมูลการอัปเดตรายการภัยคุกคามล่าสุด ไคลเอ็นต์สามารถขอการอัปเดตสำหรับหลายรายการพร้อมกันได้ |
| FindFullHashes |
|---|
|
ค้นหาแฮชแบบเต็มซึ่งตรงกับคำนำหน้าแฮชที่ขอ |
| FindThreatMatches |
|---|
|
ค้นหารายการภัยคุกคามที่ตรงกับรายการ Google Safe Browsing |
| ListThreatLists |
|---|
|
แสดงรายการภัยคุกคามของ Google Safe Browsing ที่พร้อมให้ดาวน์โหลด |
ตรวจสอบข้อผิดพลาด
สถานะที่คาดไว้ของฐานข้อมูลในเครื่องของลูกค้า
| ช่อง | |
|---|---|
sha256 |
แฮช SHA256 ของสถานะไคลเอ็นต์ ซึ่งก็คือรายการแฮชทั้งหมดที่จัดเรียงอยู่ในฐานข้อมูล |
ClientInfo
ข้อมูลเมตาไคลเอ็นต์ที่เชื่อมโยงกับคำขอ Safe Browsing API
| ช่อง | |
|---|---|
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 จะมีการเข้ารหัสแฮชเป็น Base64 |
RawIndices
ชุดดัชนีดิบที่จะนําออกจากรายการในเครื่อง
| ช่อง | |
|---|---|
indices[] |
ดัชนีที่จะนำออกจากรายการในเครื่องที่จัดเรียงตามลําดับตัวอักษร |
RiceDeltaEncoding
ข้อมูลที่เข้ารหัสด้วย Rice-Golomb ใช้สำหรับส่งแฮช 4 ไบต์ที่บีบอัดหรือดัชนีการนำออกที่บีบอัด
| ช่อง | |
|---|---|
first_value |
ส่วนเพิ่มของรายการแรกในข้อมูลที่เข้ารหัส หรือค่าของจำนวนเต็มรายการเดียวหากมีการเข้ารหัสจำนวนเต็มรายการเดียวเท่านั้น หากช่องว่างเปล่าหรือไม่มีอยู่ ระบบจะถือว่าค่าเป็น 0 |
rice_parameter |
พารามิเตอร์ Golomb-Rice ซึ่งเป็นตัวเลขระหว่าง 2 ถึง 28 ช่องนี้ไม่มีค่า (นั่นคือเป็น 0) หาก |
num_entries |
จํานวนรายการที่เข้ารหัส Delta ในข้อมูลที่เข้ารหัส หากมีการเข้ารหัสจำนวนเต็มที่เดียว ค่านี้จะเท่ากับ 0 และระบบจะจัดเก็บค่าเดียวใน |
encoded_data |
เดลต้าที่เข้ารหัสซึ่งเข้ารหัสโดยใช้โปรแกรมเข้ารหัส Golomb-Rice |
ThreatEntry
ภัยคุกคามแต่ละรายการ เช่น URL ที่เป็นอันตรายหรือการแสดงผลแฮชของ URL ดังกล่าว คุณควรตั้งค่าเพียงช่องใดช่องหนึ่งเท่านั้น
| ช่อง | |
|---|---|
hash |
คำนำหน้าแฮชที่ประกอบด้วยไบต์ที่มีนัยสำคัญที่สุด 4-32 ไบต์ของแฮช SHA256 ช่องนี้เป็นรูปแบบไบนารี สำหรับคำขอ JSON ระบบจะเข้ารหัสแฮชเป็น Base64 |
url |
URL |
digest |
ข้อมูลสรุปของไฟล์ปฏิบัติการในรูปแบบ SHA256 API รองรับทั้งข้อมูลสรุปแบบไบนารีและฐาน 16 สำหรับคำขอ JSON ข้อมูลสรุปจะเข้ารหัสฐาน 64 |
ThreatEntryMetadata
ข้อมูลเมตาที่เชื่อมโยงกับรายการภัยคุกคามหนึ่งๆ ลูกค้าควรทราบคู่คีย์/ค่าข้อมูลเมตาที่เชื่อมโยงกับภัยคุกคามแต่ละประเภท
| ช่อง | |
|---|---|
entries[] |
รายการข้อมูลเมตา |
MetadataEntry
รายการข้อมูลเมตารายการเดียว
| ช่อง | |
|---|---|
key |
คีย์รายการข้อมูลเมตา สําหรับคําขอ JSON คีย์จะเข้ารหัส Base64 |
value |
ค่ารายการข้อมูลเมตา สําหรับคําขอ JSON ค่าจะเข้ารหัส Base64 |
ThreatEntrySet
ชุดภัยคุกคามที่ควรเพิ่มหรือนําออกจากฐานข้อมูลในเครื่องของลูกค้า
| ช่อง | |
|---|---|
compression_type |
ประเภทการบีบอัดสำหรับรายการในชุดนี้ |
raw_hashes |
รายการในรูปแบบ SHA256 ดิบ |
raw_indices |
ดัชนีการนําออกดิบของรายการในเครื่อง |
rice_hashes |
ส่วนหน้า 4 ไบต์ที่เข้ารหัสของรายการรูปแบบ SHA256 โดยใช้การเข้ารหัส Golomb-Rice ระบบจะแปลงแฮชเป็น uint32 จัดเรียงจากน้อยไปมาก จากนั้นเข้ารหัส Delta และจัดเก็บเป็น encoded_data |
rice_indices |
ดัชนีรายการที่เข้ารหัสในเครื่องซึ่งจัดเรียงตามลําดับอักขระโดยใช้การเข้ารหัส Golomb-Rice ใช้สำหรับส่งดัชนีการนำออกแบบบีบอัด ดัชนีการนําออก (uint32) จะจัดเรียงจากน้อยไปมาก จากนั้นเข้ารหัส Delta และจัดเก็บเป็น encoded_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 |
ประเภทภัยคุกคามของแอปที่อาจเป็นอันตราย |