Commit 098b2caf authored by Allen Webb's avatar Allen Webb Committed by Commit Bot

anonymizer_tool: Added pattern to remove usbguard serial numbers.

The usbguard-daemon prints serial numbers of USB devices to
/var/log/messages. This change adds a pattern to anonymize those
serial numbers to prevent leaking PII.

BUG=None
TEST=Generate a report with logs and verify usbguard-daemon log
lines are properly anonymized.
Signed-off-by: default avatarAllen Webb <allenwebb@google.com>
Change-Id: Ifd41c8208b4d14bb3fafbf38198b04da6a8babd6
Reviewed-on: https://chromium-review.googlesource.com/1160935Reviewed-by: default avatarRahul Chaturvedi <rkc@chromium.org>
Reviewed-by: default avatarMattias Nissler <mnissler@chromium.org>
Cr-Commit-Position: refs/heads/master@{#580946}
parent 55273237
...@@ -55,6 +55,9 @@ constexpr const char* kCustomPatternsWithContext[] = { ...@@ -55,6 +55,9 @@ constexpr const char* kCustomPatternsWithContext[] = {
// Serial numbers // Serial numbers
"(?i-s)(serial\\s*(?:number)?\\s*[:=]\\s*)([0-9a-zA-Z\\-\"]+)()", "(?i-s)(serial\\s*(?:number)?\\s*[:=]\\s*)([0-9a-zA-Z\\-\"]+)()",
// usbguard-daemon
"(?-s)(usbguard-daemon.* serial \")(.*)(\" name \")",
}; };
// Helper macro: Non capturing group // Helper macro: Non capturing group
......
...@@ -165,6 +165,25 @@ TEST_F(AnonymizerToolTest, AnonymizeCustomPatterns) { ...@@ -165,6 +165,25 @@ TEST_F(AnonymizerToolTest, AnonymizeCustomPatterns) {
// Test that "Android:" is not considered a schema with empty hier part. // Test that "Android:" is not considered a schema with empty hier part.
EXPECT_EQ("The following applies to Android:", EXPECT_EQ("The following applies to Android:",
AnonymizeCustomPatterns("The following applies to Android:")); AnonymizeCustomPatterns("The following applies to Android:"));
EXPECT_EQ(
"2000-01-01T01:00:00.123456-00:00 NOTICE usbguard-daemon[5000]: uid=0 "
"pid=5000 result='SUCCESS' device.rule='block id 13fe:5500 serial "
"\"1\" name \"Patriot Memory\" hash "
"\"nrP2FU5Q0KDHJvqT4OFjvpA4Mu/ITEF+fMCMuXsTBs4=\" parent-hash "
"\"++ZNvxSmqWP6SLayt9yJSIHqUn0PKkvTNT/TVw0OKDE=\" via-port \"2-5\" "
"with-interface 08:06:50' target.old='block' "
"device.system_name='/devices/pci0000:00/0000:00:15.0/usb2/2-5' "
"target.new='block' type='Policy.Device.Update'",
AnonymizeCustomPatterns(
"2000-01-01T01:00:00.123456-00:00 NOTICE usbguard-daemon[5000]: "
"uid=0 pid=5000 result='SUCCESS' device.rule='block id 13fe:5500 "
"serial \"0609911A1Z199991\" name \"Patriot Memory\" hash "
"\"nrP2FU5Q0KDHJvqT4OFjvpA4Mu/ITEF+fMCMuXsTBs4=\" parent-hash "
"\"++ZNvxSmqWP6SLayt9yJSIHqUn0PKkvTNT/TVw0OKDE=\" via-port \"2-5\" "
"with-interface 08:06:50' target.old='block' "
"device.system_name='/devices/pci0000:00/0000:00:15.0/usb2/2-5' "
"target.new='block' type='Policy.Device.Update'"));
} }
TEST_F(AnonymizerToolTest, AnonymizeCustomPatternWithContext) { TEST_F(AnonymizerToolTest, AnonymizeCustomPatternWithContext) {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment