رابطهای برنامهنویسی کاربردی مرور ایمن به برنامههای کلاینت شما اجازه میدهند تا بررسیهای URL را به صورت آنی یا مبتنی بر فهرست، در برابر فهرستهای دائماً بهروز شدهی منابع وب ناامن گوگل انجام دهند. نمونههایی از منابع وب ناامن، سایتهای مهندسی اجتماعی (سایتهای فیشینگ و فریبنده) و سایتهایی هستند که میزبان بدافزار یا نرمافزارهای ناخواسته هستند. هر URL که در فهرست مرور ایمن یافت شود، ناامن تلقی میشود.
برای تعیین اینکه آیا یک URL در هر یک از فهرستهای مرور ایمن قرار دارد یا خیر، کلاینتها میتوانند از urls.search یا hashes.search استفاده کنند.
چه خبر؟
تازگی دادهها
بهطور سنتی، کلاینتهای مرور ایمن بهطور دورهای فهرستهای تهدید را که برای مقابله با تهدیدهای بالقوه استفاده میشوند، دانلود میکنند. با افزایش حجم و سرعت تهدیدها در طول زمان، این فهرستهای تهدید محلی در برابر تهدیدهای مدرن کمتر مؤثر شدهاند.
برای پر کردن این شکاف، ما قابلیت تغییر پروتکلها به حالت بررسی پیشفرض (check-by-default) را به جای پروتکل اجازه پیشفرض (allow-by-default) که قبلاً در نسخه ۴ موجود بود، معرفی میکنیم. این کار با معرفی قابلیت دانلود لیستی از سایتهای احتمالاً بیخطر که به عنوان "Global Cache" شناخته میشوند، انجام میشود. اگر یک URL در Global Cache یافت نشود، کلاینت باید با API بررسی کند که آیا URL یک تهدید است یا خیر.
این قابلیت انجام بررسیها به صورت پیشفرض، علاوه بر بهبود تازگی دادهها در سرویس، محافظت سریعتر و تقریباً بلادرنگ در برابر تهدیدات جدید را فراهم میکند.
حریم خصوصی آیپی
رابط برنامهنویسی کاربردی مرور ایمن فقط از آدرسهای IP برای نیازهای ضروری شبکه و برای اهداف ضد DoS استفاده میکند.
ما یک API همراه به نام Safe Browsing Oblivious HTTP Gateway API معرفی کردیم تا تضمینهای حریم خصوصی بیشتری را فراهم کنیم. این API از Oblivious HTTP برای پنهان کردن آدرسهای IP کاربران نهایی از گوگل استفاده میکند. این API با داشتن یک شخص ثالث بدون تبانی، نسخه رمزگذاری شده درخواست کاربر را مدیریت کرده و سپس آن را به گوگل ارسال میکند. بنابراین شخص ثالث فقط به آدرسهای IP دسترسی دارد و گوگل فقط به محتوای درخواست دسترسی دارد. شخص ثالث یک رله HTTP Oblivious (مانند این سرویس توسط Fastly ) را اداره میکند و گوگل Oblivious HTTP Gateway را اداره میکند. این یک API همراه اختیاری است. هنگام استفاده از آن همراه با Google Safe Browsing، آدرسهای IP کاربران نهایی دیگر به گوگل ارسال نمیشوند.
برای جزئیات بیشتر به مستندات API مربوط به Safe Browsing Oblivious HTTP Gateway مراجعه کنید.
روشهای جستجو
بیایید روشهای مختلف موجود برای انجام بررسیهای بلادرنگ URLها را بررسی کنیم.
urls.search
به برنامههای کلاینت اجازه میدهد URLها را به سرویس مرور ایمن ارسال کنند تا بررسی شود که آیا تهدیدی مرتبط با URLها وجود دارد یا خیر.
مزایا
- بررسیهای ساده URL : شما درخواستی را با URLهای واقعی ارسال میکنید و سرور با URLها به همراه تهدیدات مرتبط با آنها (در صورت وجود) پاسخ میدهد.
معایب
- عدم محرمانگی URL : درخواست شامل URLهای خامی است که بررسی میشوند.
اگر مزایا/معایب برای نیاز شما مناسب است، استفاده از urls.search را در نظر بگیرید زیرا استفاده از آن ساده است.
شرایط خدمات استفاده از روش را بررسی کنید زیرا با hashes.search متفاوت است.
hashes.search
به برنامههای کلاینت اجازه میدهد تا بررسی کنند که آیا تهدیدهای شناختهشدهای در مجموعهای از URLها وجود دارد یا خیر، بدون اینکه URLهای واقعی برای سرویس آشکار شوند. این کار فقط با ارائه پیشوند هش URL انجام میشود. پاسخ شامل هشهای کامل تهدیدهای شناختهشده با پیشوند هش shard خواهد بود.
مزایا
- محرمانگی URL : فقط یک پیشوند هش ۴ بایتی از URL هش شده در درخواست وجود دارد.
- سازگاری : از آنجا که کلاینت، استانداردسازی و هش کردن URL را مدیریت میکند، این روش به طور یکپارچه با حالتهایی که از یک پایگاه داده محلی استفاده میکنند، مانند حالت بلادرنگ و حالت فهرست محلی، ادغام میشود.
معایب
- بررسیهای پیچیده URL : شما باید بدانید که چگونه URLها را استانداردسازی کنید، عبارات پسوند/پیشوند ایجاد کنید و هشهای SHA256 را برای ارسال درخواست به این روش، مقایسه با کپیهای محلی لیستهای ناامن یا Global Cache محاسبه کنید.
اگر نیاز دارید که محرمانگی URL را در اولویت قرار دهید و به استفاده از حالت بلادرنگ یا حالت فهرست محلی علاقهمند هستید، hashes.search رویکرد پیشنهادی است.
متدهای HashList
این روشها به کلاینتها اجازه میدهند نسخههای هششدهی لیستهای ناامن و Global Cache را دانلود و ذخیره کنند. کلاینتها میتوانند از این اطلاعات برای تعیین اینکه آیا باید جستجوی بلادرنگ URLهای مورد نظر را انجام دهند یا خیر، استفاده کنند.
این روشها برای عملکرد حالت بلادرنگ و حالت فهرست محلی ضروری هستند.
برای اطلاعات بیشتر در مورد نحوه استفاده از این روشها، به صفحه پایگاه داده محلی مراجعه کنید.
درخواستهای نمونه
این بخش چند نمونه از استفاده مستقیم از HTTP API برای دسترسی به مرور ایمن را مستند میکند. به طور کلی توصیه میشود از یک اتصال زبان تولید شده استفاده کنید زیرا به طور خودکار رمزگذاری و رمزگشایی را به روشی راحت انجام میدهد. لطفاً به مستندات مربوط به آن اتصال مراجعه کنید.
مثال درخواست HTTP با استفاده از urls.search :
GET https://safebrowsing.googleapis.com/v5alpha1/urls:search?key=INSERT_YOUR_API_KEY_HERE&urls=testsafebrowsing.appspot.com/
مثال درخواست HTTP با استفاده از hashes.search :
GET https://safebrowsing.googleapis.com/v5/hashes:search?key=INSERT_YOUR_API_KEY_HERE&hashPrefixes=WwuJdQ
مثال درخواست HTTP با استفاده از hashLists.batchGet :
GET https://safebrowsing.googleapis.com/v5/hashLists:batchGet?key=INSERT_YOUR_API_KEY_HERE&names=se&names=mw-4b
تمام بدنههای پاسخ، فایلهایی با فرمت بافر پروتکل هستند که میتوانید آنها را رمزگشایی کنید.