New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 906817 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
hobby only
Closed: Nov 22
Cc:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 1
Type: Bug



Sign in to add a comment

Excessive logging in autofill_phone_number_i18n_fuzzer

Project Member Reported by mmoroz@chromium.org, Nov 19

Issue description

As the fuzzer started to work, I've noticed that its output is totally messed up due to the excessive logging:

#9443	NEW    cov: 3063 ft: 4064 corp: 56/275b lim: 6 exec/s: 1573 rss: 179Mb L: 6/6 MS: 4 CrossOver-ChangeBinInt-CrossOver-ChangeByte-
UTF-8 buffer is not interchange-valid.UTF-8 buffer is not interchange-valid.UTF-8 buffer is not interchange-valid.UTF-8 buffer is not interchange-valid.UTF-8 buffer is not interchange-valid.UTF-8 buffer is not interchange-valid.UTF-8 buffer is not interchange-valid.UTF-8 buffer is not interchange-valid.UTF-8 buffer is not interchange-valid.UTF-8 buffer is not interchange-valid.UTF-8 buffer is not interchange-valid.UTF-8 buffer is not interchange-valid.UTF-8 buffer is not interchange-valid.UTF-8 buffer is not interchange-valid.UTF-8 buffer is not interchange-valid.UTF-8 buffer is not interchange-valid.UTF-8 buffer is not interchange-valid.UTF-8 buffer is not interchange-valid.UTF-8 buffer is not interchange-valid.UTF-8 buffer is not interchange-valid.UTF-8 buffer is not interchange-valid.UTF-8 buffer is not interchange-valid.UTF-8 buffer is not interchange-valid.UTF-8 buffer is not interchange-valid.UTF-8 buffer is not interchange-valid.UTF-8 buffer is not interchange-valid.UTF-8 buffer is not interchange-valid.UTF-8 buffer is not interchange-valid.UTF-8 buffer is not interchange-valid.UTF-8 buffer is not interchange-valid.UTF-8 buffer is not interchange-valid.UTF-8 buffer is not interchange-valid.UTF-8 buffer is not interchange-valid.UTF-8 buffer is not interchange-valid.UTF-8 buffer is not interchange-valid.UTF-8 buffer is not interchange-valid.UTF-8 buffer is not interchange-valid.UTF-8 buffer is not interchange-valid.UTF-8 buffer is not interchange-valid.UTF-8 buffer is not interchange-valid.UTF-8 buffer is not interchange-valid.UTF-8 buffer is not interchange-valid.UTF-8 buffer is not interchange-valid.UTF-8 buffer is not interchange-valid.UTF-8 buffer is not interchange-valid.UTF-8 buffer is not interchange-valid.UTF-8 buffer is not interchange-valid.UTF-8 buffer is not interchange-valid.UTF-8 buffer is not interchange-valid.#9597	NEW    cov: 3063 ft: 4065 corp: 57/281b lim: 6 exec/s: 1599 rss: 180Mb L: 6/6 MS: 4 ShuffleBytes-ChangeByte-ChangeBit-ShuffleBytes-



This makes the fuzzer slightly inefficient + may cause some unexpected problems on CF side as we parse the logs for certain information.

This should be a simple fix, something like https://chromium.googlesource.com/chromium/src/+/master/testing/libfuzzer/getting_started.md#disable-noisy-error-message-logging I suppose.
 
Cc: -vabr@chromium.org
Owner: vabr@chromium.org
Vaclav, do you want to give this a shot? I don't see you on the Fuzzathon leaderboard :)
Status: Started (was: Untriaged)
Hmm, SetMinLogLevel does not work here, the string likely comes from within ICU. I'll have a look if there is anything to be done about it.

I wish the Fuzzathon all success, but won't join myself. It does not combine well with my 75% schedule, team priorities and the fact that I'm leaving Chrome-as-work by the end of this month (I might still do hobby contributions afterwards, but likely will struggle to find time for that).
Project Member

Comment 4 by bugdroid1@chromium.org, Nov 22

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/f922ed607e25df6a5de412b52350819d5b14ee60

commit f922ed607e25df6a5de412b52350819d5b14ee60
Author: Vaclav Brozek <vabr@chromium.org>
Date: Thu Nov 22 17:08:47 2018

Filter invalid UTF8 in ParsePhoneNumber

The libphonenumber routine used in autofill's ParsePhoneNumber expects
input which is:
 * valid Unicode
 * avoids noncharacters [1]
 * avoids nonprintable ASCII

This CL checks the input passed to libphonenumber for these criteria
and aborts ParsePhoneNumber if they are not met.

As a side effect, this also decreases log spam seen in
autofill_phone_number_i18n_fuzzer, because libphonenumber has been
complaining about interchange-invalid UTF8.

[1] http://www.unicode.org/faq/private_use.html#nonchar1

Bug:  906817 
Change-Id: I451272d2f838bd266ad3a043f556610b8007ae1a
Reviewed-on: https://chromium-review.googlesource.com/c/1343004
Commit-Queue: Vaclav Brozek <vabr@chromium.org>
Reviewed-by: Roger McFarlane <rogerm@chromium.org>
Cr-Commit-Position: refs/heads/master@{#610445}
[modify] https://crrev.com/f922ed607e25df6a5de412b52350819d5b14ee60/components/autofill/core/browser/phone_number_i18n.cc
[modify] https://crrev.com/f922ed607e25df6a5de412b52350819d5b14ee60/components/autofill/core/browser/phone_number_i18n_unittest.cc

Status: Fixed (was: Started)

Sign in to add a comment