- คำขอ HTTP
- พารามิเตอร์การค้นหา
- เนื้อความของคำขอ
- เนื้อหาการตอบกลับ
- FullHash
- FullHashDetail
- ThreatType
- ThreatAttribute
ค้นหาแฮชแบบเต็มที่ตรงกับคำนำหน้าที่ระบุ
ซึ่งเป็นเมธอดที่กำหนดเองซึ่ง https://google.aip.dev/136 กำหนด (เมธอดที่กำหนดเองหมายถึงวิธีนี้มีชื่อที่กำหนดเองภายในระบบการตั้งชื่อ API ทั่วไปของ Google และไม่ได้หมายถึงการใช้เมธอด HTTP ที่กำหนดเอง)
คำขอ HTTP
GET https://safebrowsing.googleapis.com/v5/hashes:search
URL ใช้ไวยากรณ์การแปลง gRPC
พารามิเตอร์การค้นหา
พารามิเตอร์ | |
---|---|
hashPrefixes[] |
ต้องระบุ คำนำหน้าแฮชที่ต้องค้นหา ไคลเอ็นต์ต้องไม่ส่งคำนำหน้าแฮชมากกว่า 1,000 รายการ แต่เมื่อทำตามขั้นตอนการประมวลผล URL ไคลเอ็นต์ไม่จำเป็นต้องส่งคำนำหน้าแฮชมากกว่า 30 รายการ ปัจจุบันคำนำหน้าแฮชแต่ละรายการต้องมีความยาว 4 ไบต์พอดี การเปลี่ยนแปลงนี้อาจผ่อนปรนในอนาคต สตริงที่เข้ารหัสฐาน 64 |
เนื้อหาของคำขอ
เนื้อหาของคำขอต้องว่างเปล่า
เนื้อหาการตอบกลับ
การตอบสนองที่แสดงหลังจากค้นหาแฮชของภัยคุกคาม
หากไม่พบอะไรเลย เซิร์ฟเวอร์จะแสดงสถานะ OK (รหัสสถานะ HTTP 200) พร้อมกับช่อง fullHashes
ที่ว่างเปล่า แทนที่จะส่งคืนสถานะ NOT_FOUND (รหัสสถานะ HTTP 404)
มีอะไรใหม่ใน V5: FullHash
และ FullHashDetail
แยกออกจากกัน ในกรณีที่แฮชแสดงถึงเว็บไซต์ที่มีภัยคุกคามหลายอย่าง (เช่น ทั้ง MALWARE และ SOCIAL_ENGINEERING) ไม่จำเป็นต้องส่งแฮชแบบเต็มเป็น 2 เท่าของเวอร์ชัน 4 นอกจากนี้ ได้ลดความซับซ้อนของระยะเวลาของแคชไว้ในช่อง cacheDuration
เพียงช่องเดียว
หากทำสำเร็จ เนื้อหาการตอบกลับจะมีข้อมูลซึ่งมีโครงสร้างดังต่อไปนี้
การแสดง JSON |
---|
{
"fullHashes": [
{
object ( |
ช่อง | |
---|---|
fullHashes[] |
รายการที่ไม่เรียงลำดับ พบรายการแฮชทั้งหมดแบบไม่เรียงลำดับ |
cacheDuration |
ระยะเวลาของแคชฝั่งไคลเอ็นต์ ไคลเอ็นต์จะต้องเพิ่มระยะเวลานี้เป็นเวลาปัจจุบันเพื่อกำหนดเวลาหมดอายุ จากนั้นเวลาหมดอายุจะมีผลกับคำนำหน้าแฮชทั้งหมดที่ไคลเอ็นต์ค้นหาในคำขอ โดยไม่คำนึงถึงจำนวนแฮชแบบเต็มที่ตอบกลับในการตอบสนอง แม้ว่าเซิร์ฟเวอร์จะไม่แสดงผลแฮชแบบเต็มสำหรับคำนำหน้าแฮชที่เจาะจง แต่ไคลเอ็นต์จะต้องแคชข้อเท็จจริงนี้ไว้ด้วย หากช่อง ข้อสำคัญ: ไคลเอ็นต์ต้องไม่คิดไปเองว่าเซิร์ฟเวอร์จะส่งคืนระยะเวลาแคชเดียวกันสำหรับการตอบกลับทั้งหมด เซิร์ฟเวอร์อาจเลือกระยะเวลาแคชที่แตกต่างกันสำหรับการตอบสนองที่แตกต่างกันขึ้นอยู่กับสถานการณ์ ระยะเวลาเป็นวินาทีที่มีเลขเศษส่วนไม่เกิน 9 หลัก ลงท้ายด้วย " |
FullHash
แฮชแบบเต็มที่ระบุตรงกับรายการที่ตรงกันอย่างน้อย 1 รายการ
การแสดง JSON |
---|
{
"fullHash": string,
"fullHashDetails": [
{
object ( |
ช่อง | |
---|---|
fullHash |
แฮชแบบเต็มที่ตรงกัน นี่คือแฮช SHA256 ความยาวจะอยู่ที่ 32 ไบต์พอดี สตริงที่เข้ารหัสฐาน 64 |
fullHashDetails[] |
รายการที่ไม่เรียงลำดับ ช่องที่ซ้ำซึ่งระบุรายละเอียดที่เกี่ยวข้องกับแฮชแบบเต็มนี้ |
FullHashDetail
รายละเอียดเกี่ยวกับแฮชแบบเต็มที่ตรงกัน
หมายเหตุสำคัญเกี่ยวกับความเข้ากันได้ในอนาคต: เซิร์ฟเวอร์อาจเพิ่มประเภทภัยคุกคามและแอตทริบิวต์ของภัยคุกคามใหม่ได้ทุกเมื่อ ส่วนเพิ่มเติมดังกล่าวถือว่าเป็นการเปลี่ยนแปลงเวอร์ชันเล็กน้อย Google มีนโยบายที่จะไม่เปิดเผยหมายเลขเวอร์ชันย่อยใน API (โปรดดูนโยบายการกำหนดเวอร์ชันใน https://cloud.google.com/apis/design/versioning) ดังนั้นไคลเอ็นต์ต้องเตรียมรับข้อความ FullHashDetail
ที่มีค่า enum ของ ThreatType
หรือค่า enum ThreatAttribute
ที่ไคลเอ็นต์ถือว่าไม่ถูกต้อง ดังนั้น ลูกค้ามีหน้าที่ตรวจสอบความถูกต้องของค่า enum ของ ThreatType
และ ThreatAttribute
ทั้งหมด หากค่าใดค่าหนึ่งถือว่าไม่ถูกต้อง ไคลเอ็นต์จะต้องเพิกเฉยต่อข้อความ FullHashDetail
ทั้งหมด
การแสดง JSON |
---|
{ "threatType": enum ( |
ช่อง | |
---|---|
threatType |
ประเภทของภัยคุกคาม ช่องนี้จะไม่ว่าง |
attributes[] |
รายการที่ไม่เรียงลำดับ แอตทริบิวต์เพิ่มเติมเกี่ยวกับแฮชแบบเต็มเหล่านั้น ส่วนนี้อาจว่างเปล่า |
ThreatType
ประเภทของภัยคุกคาม
Enum | |
---|---|
THREAT_TYPE_UNSPECIFIED |
ไม่ทราบประเภทภัยคุกคาม หากเซิร์ฟเวอร์ส่งคืนค่านี้ ไคลเอ็นต์จะเพิกเฉยต่อ FullHashDetail ที่รวมอยู่ทั้งหมด |
MALWARE |
ประเภทภัยคุกคามมัลแวร์ มัลแวร์คือซอฟต์แวร์หรือแอปพลิเคชันบนอุปกรณ์เคลื่อนที่ใดๆ ก็ตามที่ออกแบบมาเพื่อสร้างความเสียหายแก่คอมพิวเตอร์ อุปกรณ์เคลื่อนที่ ซอฟต์แวร์ที่ทำงานอยู่ หรือผู้ใช้ซอฟต์แวร์นั้นๆ มัลแวร์มีลักษณะการทำงานที่เป็นอันตราย ซึ่งอาจรวมถึงการติดตั้งซอฟต์แวร์โดยไม่ได้รับคำยินยอมจากผู้ใช้ และการติดตั้งซอฟต์แวร์ที่เป็นอันตรายอย่างเช่น ไวรัส ดูข้อมูลเพิ่มเติมได้ที่นี่ |
SOCIAL_ENGINEERING |
ประเภทภัยคุกคามด้านวิศวกรรมสังคม หน้าวิศวกรรมสังคมที่แอบอ้างว่ากระทำการในนามของบุคคลที่สามโดยมีเจตนาสร้างความสับสนแก่ผู้ชมให้กระทำสิ่งที่ผู้ดูจะเชื่อถือตัวแทนที่แท้จริงของบุคคลที่สามนั้นเท่านั้น ฟิชชิงเป็นวิศวกรรมสังคมประเภทหนึ่งที่หลอกลวงผู้ชมให้ระบุข้อมูลเพื่อดำเนินการบางอย่าง เช่น ข้อมูลเข้าสู่ระบบ ดูข้อมูลเพิ่มเติมได้ที่นี่ |
UNWANTED_SOFTWARE |
ประเภทภัยคุกคามซอฟต์แวร์ไม่พึงประสงค์ ซอฟต์แวร์ไม่พึงประสงค์คือซอฟต์แวร์ที่ไม่ปฏิบัติตามแนวนโยบายด้านซอฟต์แวร์ของ Google แต่ไม่ใช่มัลแวร์ |
POTENTIALLY_HARMFUL_APPLICATION |
ประเภทภัยคุกคามแอปพลิเคชันที่อาจเป็นอันตรายตามที่ Google Play Protect ใช้สำหรับ Play Store |
ThreatAttribute
ลักษณะของภัยคุกคาม แอตทริบิวต์เหล่านี้อาจให้ความหมายเพิ่มเติมแก่ภัยคุกคามหนึ่งๆ ด้วย แต่จะไม่ส่งผลต่อประเภทของภัยคุกคาม เช่น แอตทริบิวต์อาจระบุความเชื่อมั่นต่ำกว่า แต่อีกแอตทริบิวต์หนึ่งอาจระบุความเชื่อมั่นที่สูงกว่า เราอาจเพิ่มแอตทริบิวต์อื่นๆ ในอนาคต
Enum | |
---|---|
THREAT_ATTRIBUTE_UNSPECIFIED |
แอตทริบิวต์ที่ไม่รู้จัก หากเซิร์ฟเวอร์ส่งคืนค่านี้ ไคลเอ็นต์จะเพิกเฉยต่อ FullHashDetail ที่รวมอยู่ทั้งหมด |
CANARY |
ระบุว่าไม่ควรใช้ ThreatType ในการบังคับใช้ |
FRAME_ONLY |
ระบุว่าควรใช้ ThreatType สำหรับการบังคับใช้ในเฟรมเท่านั้น |