summaryrefslogtreecommitdiffstats
path: root/chrome/browser/safe_browsing/client_side_detection_service.cc
diff options
context:
space:
mode:
authorbryner@chromium.org <bryner@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-10-16 23:36:45 +0000
committerbryner@chromium.org <bryner@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-10-16 23:36:45 +0000
commit1ca7d8add56fcfaba068761235dfdc6762eb50e5 (patch)
treeb225d655a12458aeb14ac18470632fbc900eba9c /chrome/browser/safe_browsing/client_side_detection_service.cc
parent84a4ef38a17cca183c2d963b8c0db8baf31dcdc0 (diff)
downloadchromium_src-1ca7d8add56fcfaba068761235dfdc6762eb50e5.zip
chromium_src-1ca7d8add56fcfaba068761235dfdc6762eb50e5.tar.gz
chromium_src-1ca7d8add56fcfaba068761235dfdc6762eb50e5.tar.bz2
Include the URL and all features in the CSD pingback for all users.
BUG=none TEST=updated existsing tests Review URL: http://codereview.chromium.org/8296012 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@105756 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/safe_browsing/client_side_detection_service.cc')
-rw-r--r--chrome/browser/safe_browsing/client_side_detection_service.cc87
1 files changed, 2 insertions, 85 deletions
diff --git a/chrome/browser/safe_browsing/client_side_detection_service.cc b/chrome/browser/safe_browsing/client_side_detection_service.cc
index 3903131..3942499 100644
--- a/chrome/browser/safe_browsing/client_side_detection_service.cc
+++ b/chrome/browser/safe_browsing/client_side_detection_service.cc
@@ -15,13 +15,11 @@
#include "base/task.h"
#include "base/time.h"
#include "chrome/browser/browser_process.h"
-#include "chrome/browser/safe_browsing/browser_features.h"
-#include "chrome/browser/safe_browsing/safe_browsing_service.h"
+#include "chrome/browser/safe_browsing/safe_browsing_util.h"
#include "chrome/common/net/http_return.h"
#include "chrome/common/safe_browsing/client_model.pb.h"
#include "chrome/common/safe_browsing/csd.pb.h"
#include "chrome/common/safe_browsing/safebrowsing_messages.h"
-#include "chrome/renderer/safe_browsing/features.h"
#include "content/browser/browser_thread.h"
#include "content/browser/renderer_host/render_process_host.h"
#include "content/common/notification_service.h"
@@ -65,10 +63,8 @@ ClientSideDetectionService::CacheState::CacheState(bool phish, base::Time time)
ClientSideDetectionService::ClientSideDetectionService(
net::URLRequestContextGetter* request_context_getter)
: enabled_(false),
- sb_service_(g_browser_process->safe_browsing_service()),
ALLOW_THIS_IN_INITIALIZER_LIST(method_factory_(this)),
request_context_getter_(request_context_getter) {
- InitializeAllowedFeatures();
registrar_.Add(this, content::NOTIFICATION_RENDERER_PROCESS_CREATED,
NotificationService::AllSources());
}
@@ -269,39 +265,6 @@ void ClientSideDetectionService::EndFetchModel(ClientModelStatus status) {
ScheduleFetchModel(delay_ms);
}
-void ClientSideDetectionService::SanitizeRequestForPingback(
- const ClientPhishingRequest& full_request,
- ClientPhishingRequest* sanitized_request) {
- DCHECK(full_request.IsInitialized());
- sanitized_request->Clear();
- if (full_request.has_hash_prefix()) {
- sanitized_request->set_hash_prefix(full_request.hash_prefix());
- }
- sanitized_request->set_client_score(full_request.client_score());
- if (full_request.has_is_phishing()) {
- sanitized_request->set_is_phishing(full_request.is_phishing());
- }
-
- for (int i = 0; i < full_request.feature_map_size(); ++i) {
- const ClientPhishingRequest_Feature& feature = full_request.feature_map(i);
- if (allowed_features_.find(feature.name()) != allowed_features_.end()) {
- sanitized_request->add_feature_map()->CopyFrom(feature);
- }
- }
-
- if (full_request.has_model_version()) {
- sanitized_request->set_model_version(full_request.model_version());
- }
-
- for (int i = 0; i < full_request.non_model_feature_map_size(); ++i) {
- const ClientPhishingRequest_Feature& feature =
- full_request.non_model_feature_map(i);
- if (allowed_features_.find(feature.name()) != allowed_features_.end()) {
- sanitized_request->add_non_model_feature_map()->CopyFrom(feature);
- }
- }
-}
-
void ClientSideDetectionService::StartClientReportPhishingRequest(
ClientPhishingRequest* verdict,
ClientReportPhishingRequestCallback* callback) {
@@ -315,16 +278,8 @@ void ClientSideDetectionService::StartClientReportPhishingRequest(
return;
}
- // Create the version of the request proto that we'll send over the network.
- ClientPhishingRequest request_to_send;
- if (sb_service_ && sb_service_->CanReportStats()) {
- request_to_send.CopyFrom(*request);
- } else {
- SanitizeRequestForPingback(*request, &request_to_send);
- }
-
std::string request_data;
- if (!request_to_send.SerializeToString(&request_data)) {
+ if (!request->SerializeToString(&request_data)) {
UMA_HISTOGRAM_COUNTS("SBClientPhishing.RequestNotSerialized", 1);
VLOG(1) << "Unable to serialize the CSD request. Proto file changed?";
if (cb.get()) {
@@ -515,44 +470,6 @@ bool ClientSideDetectionService::InitializePrivateNetworks() {
return true;
}
-void ClientSideDetectionService::InitializeAllowedFeatures() {
- static const char* const kAllowedFeatures[] = {
- // Renderer (model) features.
- features::kUrlHostIsIpAddress,
- features::kUrlNumOtherHostTokensGTOne,
- features::kUrlNumOtherHostTokensGTThree,
- features::kPageHasForms,
- features::kPageActionOtherDomainFreq,
- features::kPageHasTextInputs,
- features::kPageHasPswdInputs,
- features::kPageHasRadioInputs,
- features::kPageHasCheckInputs,
- features::kPageExternalLinksFreq,
- features::kPageSecureLinksFreq,
- features::kPageNumScriptTagsGTOne,
- features::kPageNumScriptTagsGTSix,
- features::kPageImgOtherDomainFreq,
- // Browser (non-model) features.
- features::kUrlHistoryVisitCount,
- features::kUrlHistoryTypedCount,
- features::kUrlHistoryLinkCount,
- features::kUrlHistoryVisitCountMoreThan24hAgo,
- features::kHttpHostVisitCount,
- features::kHttpsHostVisitCount,
- features::kFirstHttpHostVisitMoreThan24hAgo,
- features::kFirstHttpsHostVisitMoreThan24hAgo,
- features::kHasSSLReferrer,
- features::kPageTransitionType,
- features::kIsFirstNavigation,
- features::kSafeBrowsingIsSubresource,
- features::kSafeBrowsingThreatType,
- };
-
- for (size_t i = 0; i < arraysize(kAllowedFeatures); ++i) {
- allowed_features_.insert(kAllowedFeatures[i]);
- }
-}
-
// static
void ClientSideDetectionService::SetBadSubnets(const ClientSideModel& model,
BadSubnetMap* bad_subnets) {