首頁 繪圖設計 工作閒聊 比賽活動 美術討論 標籤 圖片
Google Safe Browsing API 安全瀏覽簡介教學
Type(Type) 2012/11/5 12:57

Google Safe Browsing API 簡介教學



API 限制 Limitation



(1) 每個 Post 五百筆: 500 URL per POST request

(2) 一天一萬筆: 10,000 request per 24-Hours one API-Key


HTTP Response Code



HTTP 200: 被 Google + StopBadWare 是有問題的網站,細節要看 BODY 的內容(可能是惡意軟體 or 釣魚網站)。

HTTP 204: 被 Google + StopBadWare 初步判斷是安全網站,風險不大。 204 Response 沒有 HTTP-BODY。

HTTP 400: 傳入 URL 的格式有問題,需要依照 Google Safe Browsing API 格式規則

HTTP 401 / HTTP 403: API 金鑰不合法

HTTP 503: 可能是該金鑰每日上限 10000 request 到達,或者每個 POST 500 筆超過,或者真的是 Server 暫時出問題。


範例 PHP Example: Use "IanFette.ORG" as Example



使用 ianfette.org 這個示範網站
代碼:

$url = 'https://sb-ssl.google.com/safebrowsing/api/lookup?client=api&apikey=<YOUR_GOOGLE_SB_API_KEY>&appver=1.5.2&pver=3.0&url=http://ianfette.org";
echo 'BODY: '.file_get_contents($url)."\n";
echo 'HEAD: '.$http_response_header[0]."\n";


使用 https://www.google.com.tw 這個安全網站
代碼:

$url = 'https://sb-ssl.google.com/safebrowsing/api/lookup?client=api&apikey=<YOUR_GOOGLE_SB_API_KEY>&appver=1.5.2&pver=3.0&url=http://www.google.com.tw";
echo 'BODY: '.file_get_contents($url)."\n";
echo 'HEAD: '.$http_response_header[0]."\n";



使用上注意:要顯示結果給第三使用者看



1. 就算得到 HTTP 200 :: Malware,你若要顯示警告給使用者看,用詞要注意「不可武斷」,盡量使用「疑似為惡意網站」「懷疑為惡意網站」或「可能、很有可能」之類的,並指引使用者進行探查,
如給他 http://www.antiphishing.org/http://www.stopbadware.org/ 相關網址。

2. 透過 Google SB API 提供的警告顯示內容,必須包含「由 Google 提供的安全搜尋建議結果」這句話。





更多細節請參考:
=> https://developers.google.com/safe-browsing/lookup_guide
=> https://developers.google.com/safe-browsing/reference
=> https://developers.google.com/safe-browsing/developers_guide_v2



Google Safe Browse PHP sample code


代碼:

/* Google Safe Browse */
function google_sb_check($site, $api_key)
{
    $msg = array(
       'risk' => '... YOUR UNSAFE MESSAGE toward {SITE} {BODY} ...',
       'safe' => '... YOUR __SAFE__ MESSAFGE toward {SITE} ... ',
       'unknown' => '<h2>{SITE} {BODY}</h2>'
    );

    $tpl = 'https://sb-ssl.google.com/safebrowsing/api/lookup?client=api&apikey='.$api_key.'&appver=vovo2000.com&pver=3.0&url=http://';

    $body = file_get_contents($tpl.$site);
    $ary = explode(' ', $http_response_header[0]);

    $http_result = intval($ary[1]);

    switch ($http_result)
    {
        /* Risky */
        case 200:
            $result = $msg['risk'];
            break;

        /* Safe */
        case 204:
            $result = $msg['safe'];
            break;

        default:
            $result = $msg['unknown'];
            $body = $http_result.'';
            break;
    }

    $result = str_replace('{SITE}', $site, $result);
    $result = str_replace('{BODY}', $body, $result);

    return $result;

} /* end google_sb_check */


(10,299 views)
[更多討論] Google 討論區

"Google Safe Browsing API 安全瀏覽簡介教學" 傳統頁面(電腦版)

首頁 繪圖設計 工作閒聊 比賽活動 美術討論 標籤 圖片
傳統桌面版 [ 登入/註冊 ]
© Vovo2000.com Mobile Version 小哈手機版 2024