Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(5059)

Unified Diff: chrome/browser/safe_browsing/client_side_detection_host.cc

Issue 14999008: Add a killswitch for CSD malware IP match and report feature. Use a new killswitch whitelist URL wh… (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Review comment and add unittest Created 7 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/safe_browsing/client_side_detection_host.cc
diff --git a/chrome/browser/safe_browsing/client_side_detection_host.cc b/chrome/browser/safe_browsing/client_side_detection_host.cc
index d9107dd4aaaee54a1dcc06927389814ab711b14c..fbc34512ee4362a171954e8c9718dd51af31facf 100644
--- a/chrome/browser/safe_browsing/client_side_detection_host.cc
+++ b/chrome/browser/safe_browsing/client_side_detection_host.cc
@@ -176,6 +176,8 @@ class ClientSideDetectionHost::ShouldClassifyUrlRequest
return;
}
+ host_->malware_killswitch_on_ = database_manager_->MalwareKillSwitchOn();
+
BrowserThread::PostTask(
BrowserThread::UI,
FROM_HERE,
@@ -249,7 +251,8 @@ ClientSideDetectionHost::ClientSideDetectionHost(WebContents* tab)
: content::WebContentsObserver(tab),
csd_service_(NULL),
weak_factory_(this),
- unsafe_unique_page_id_(-1) {
+ unsafe_unique_page_id_(-1),
+ malware_killswitch_on_(false) {
DCHECK(tab);
// Note: csd_service_ and sb_service will be NULL here in testing.
csd_service_ = g_browser_process->safe_browsing_detection_service();
@@ -380,14 +383,18 @@ void ClientSideDetectionHost::OnPhishingDetectionDone(
browse_info_.get() &&
verdict->ParseFromString(verdict_str) &&
verdict->IsInitialized()) {
- scoped_ptr<ClientMalwareRequest> malware_verdict(new ClientMalwareRequest);
- // Start browser-side malware feature extraction. Once we're done it will
- // send the malware client verdict request.
- malware_verdict->set_url(verdict->url());
- feature_extractor_->ExtractMalwareFeatures(
- browse_info_.get(),
- malware_verdict.get());
- MalwareFeatureExtractionDone(malware_verdict.Pass());
+ // We do the malware IP matching and request sending if the feature
+ // is enabled
+ if (!malware_killswitch_on_) {
+ scoped_ptr<ClientMalwareRequest> malware_verdict(
+ new ClientMalwareRequest);
+ // Start browser-side malware feature extraction. Once we're done it will
+ // send the malware client verdict request.
+ malware_verdict->set_url(verdict->url());
+ feature_extractor_->ExtractMalwareFeatures(
+ browse_info_.get(), malware_verdict.get());
+ MalwareFeatureExtractionDone(malware_verdict.Pass());
+ }
// We only send phishing verdict to the server if the verdict is phishing or
// if a SafeBrowsing interstitial was already shown for this site. E.g., a

Powered by Google App Engine
This is Rietveld 408576698