Home | History | Annotate | Download | only in safe_browsing
      1 // Copyright (c) 2011 The Chromium Authors. All rights reserved.
      2 // Use of this source code is governed by a BSD-style license that can be
      3 // found in the LICENSE file.
      4 //
      5 // Client-side phishing features that are extracted by the browser, after
      6 // receiving a score from the renderer.
      7 
      8 #ifndef CHROME_BROWSER_SAFE_BROWSING_BROWSER_FEATURES_H_
      9 #define CHROME_BROWSER_SAFE_BROWSING_BROWSER_FEATURES_H_
     10 
     11 namespace safe_browsing {
     12 namespace features {
     13 
     14 // IMPORTANT: when adding new features, you must update kAllowedFeatures in
     15 // chrome/browser/safe_browsing/client_side_detection_service.cc if the feature
     16 // should be sent in sanitized pingbacks.
     17 //
     18 ////////////////////////////////////////////////////
     19 // History features.
     20 ////////////////////////////////////////////////////
     21 
     22 // Number of visits to that URL stored in the browser history.
     23 // Should always be an integer larger than 1 because by the time
     24 // we lookup the history the current URL should already be stored there.
     25 extern const char kUrlHistoryVisitCount[];
     26 
     27 // Number of times the URL was typed in the Omnibox.
     28 extern const char kUrlHistoryTypedCount[];
     29 
     30 // Number of times the URL was reached by clicking a link.
     31 extern const char kUrlHistoryLinkCount[];
     32 
     33 // Number of times URL was visited more than 24h ago.
     34 extern const char kUrlHistoryVisitCountMoreThan24hAgo[];
     35 
     36 // Number of user-visible visits to all URLs on the same host/port as
     37 // the URL for HTTP and HTTPs.
     38 extern const char kHttpHostVisitCount[];
     39 extern const char kHttpsHostVisitCount[];
     40 
     41 // Boolean feature which is true if the host was visited for the first
     42 // time more than 24h ago (only considers user-visible visits like above).
     43 extern const char kFirstHttpHostVisitMoreThan24hAgo[];
     44 extern const char kFirstHttpsHostVisitMoreThan24hAgo[];
     45 
     46 ////////////////////////////////////////////////////
     47 // Browse features.
     48 ////////////////////////////////////////////////////
     49 // Note that these features may have the following prefixes appended to them
     50 // that tell for which page type the feature pertains.
     51 extern const char kHostPrefix[];
     52 
     53 // Referrer
     54 extern const char kReferrer[];
     55 // True if the referrer was stripped because it is an SSL referrer.
     56 extern const char kHasSSLReferrer[];
     57 // Stores the page transition.  See: PageTransition.  We strip the qualifier.
     58 extern const char kPageTransitionType[];
     59 // True if this navigation is the first for this tab.
     60 extern const char kIsFirstNavigation[];
     61 // Feature that is set if the url from the navigation entry doesn't match the
     62 // url at the end of the redirect chain.
     63 extern const char kRedirectUrlMismatch[];
     64 // The redirect chain that leads to the named page.
     65 extern const char kRedirect[];
     66 // If a redirect is SSL, we will use this value instead of the actual redirect
     67 // so we don't leak any SSL sites.
     68 extern const char kSecureRedirectValue[];
     69 
     70 // Resource was fetched from a known bad IP address.
     71 extern const char kBadIpFetch[];
     72 
     73 // The HTTP status code for the main document.
     74 extern const char kHttpStatusCode[];
     75 
     76 // SafeBrowsing related featues.  Fields from the UnsafeResource if there is
     77 // any.
     78 extern const char kSafeBrowsingMaliciousUrl[];
     79 extern const char kSafeBrowsingOriginalUrl[];
     80 extern const char kSafeBrowsingIsSubresource[];
     81 extern const char kSafeBrowsingThreatType[];
     82 }  // namespace features
     83 }  // namespace safe_browsing
     84 
     85 #endif  // CHROME_BROWSER_SAFE_BROWSING_BROWSER_FEATURES_H_
     86