diff options
author | Ivan Nardi <12729895+IvanNardi@users.noreply.github.com> | 2022-02-20 10:19:52 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-02-20 10:19:52 +0100 |
commit | 2f5f445f7229592c9a9a108e39fa5db3dc456dce (patch) | |
tree | 5fc62676bfcae90c6add143074954d562bc97122 | |
parent | 75a53ad064bcb19570847554b72e9303d776b8fd (diff) |
Add support for Google Cloud (#1447)
Differentiate between Google its own apps/services and Google Cloud.
We already do something similar for Amazon vs AWS and Microsoft vs Azure.
-rw-r--r-- | src/include/ndpi_protocol_ids.h | 1 | ||||
-rw-r--r-- | src/include/ndpi_typedefs.h | 2 | ||||
-rw-r--r-- | src/lib/ndpi_content_match.c.inc | 75 | ||||
-rw-r--r-- | src/lib/ndpi_google_cloud_match.c.inc | 493 | ||||
-rw-r--r-- | src/lib/ndpi_google_match.c.inc | 179 | ||||
-rw-r--r-- | src/lib/ndpi_main.c | 10 | ||||
-rw-r--r-- | tests/result/anyconnect-vpn.pcap.out | 9 | ||||
-rw-r--r-- | tests/result/dtls_certificate_fragments.pcap.out | 4 | ||||
-rw-r--r-- | tests/result/ethereum.pcap.out | 9 | ||||
-rw-r--r-- | tests/result/quic_frags_ch_out_of_order_same_packet_craziness.pcapng.out | 13 | ||||
-rw-r--r-- | tests/result/ssl-cert-name-mismatch.pcap.out | 4 | ||||
-rw-r--r-- | tests/result/synscan.pcap.out | 4 | ||||
-rw-r--r-- | tests/result/tls_certificate_too_long.pcap.out | 5 | ||||
-rw-r--r-- | tests/result/zoom.pcap.out | 5 | ||||
-rw-r--r-- | utils/google.py | 41 | ||||
-rwxr-xr-x | utils/google_cloud_ip_addresses_download.sh | 23 | ||||
-rwxr-xr-x | utils/google_ip_addresses_download.sh | 17 | ||||
-rwxr-xr-x | utils/update_every_content_match_lists.sh | 2 |
18 files changed, 797 insertions, 99 deletions
diff --git a/src/include/ndpi_protocol_ids.h b/src/include/ndpi_protocol_ids.h index 70b9850e2..cebb75b04 100644 --- a/src/include/ndpi_protocol_ids.h +++ b/src/include/ndpi_protocol_ids.h @@ -312,6 +312,7 @@ typedef enum { NDPI_PROTOCOL_GOOGLE_CLASSROOM = 281, NDPI_PROTOCOL_HSRP = 282, NDPI_PROTOCOL_CYBERSECURITY = 283, /* Cybersecurity companies */ + NDPI_PROTOCOL_GOOGLE_CLOUD = 284, #ifdef CUSTOM_NDPI_PROTOCOLS #include "../../../nDPI-custom/custom_ndpi_protocol_ids.h" diff --git a/src/include/ndpi_typedefs.h b/src/include/ndpi_typedefs.h index a86fa79da..e19e9f82c 100644 --- a/src/include/ndpi_typedefs.h +++ b/src/include/ndpi_typedefs.h @@ -1400,6 +1400,8 @@ typedef enum ndpi_dont_load_zoom_list = (1 << 7), ndpi_dont_load_cloudflare_list = (1 << 8), ndpi_dont_load_microsoft_list = (1 << 9), + ndpi_dont_load_google_list = (1 << 10), + ndpi_dont_load_google_cloud_list = (1 << 11), } ndpi_prefs; typedef struct { diff --git a/src/lib/ndpi_content_match.c.inc b/src/lib/ndpi_content_match.c.inc index 2c4781e82..06c45ba5a 100644 --- a/src/lib/ndpi_content_match.c.inc +++ b/src/lib/ndpi_content_match.c.inc @@ -878,81 +878,6 @@ static ndpi_network host_protocol_list[] = { { 0xCA094200 /* 202.9.66.0/23 */, 23, NDPI_PROTOCOL_STARCRAFT }, /* - Google Inc. / Google Switzerland GmbH / Google Ireland Limited - origin AS15169, AS36384, AS41264, AS43515, AS36039, AS36040, AS36492 - */ - { 0x08063000 /* 8.6.48.0/21 */, 21, NDPI_PROTOCOL_GOOGLE }, - { 0x08080400 /* 8.8.4.0/24 */, 24, NDPI_PROTOCOL_GOOGLE }, - { 0x08080800 /* 8.8.8.0/24 */, 24, NDPI_PROTOCOL_GOOGLE }, - { 0x080FCA00 /* 8.15.202.0/24 */, 24, NDPI_PROTOCOL_GOOGLE }, - { 0x0822D000 /* 8.34.208.0/21 */, 21, NDPI_PROTOCOL_GOOGLE }, - { 0x0822D800 /* 8.34.216.0/21 */, 21, NDPI_PROTOCOL_GOOGLE }, - { 0x0823C000 /* 8.35.192.0/21 */, 21, NDPI_PROTOCOL_GOOGLE }, - { 0x0823C800 /* 8.35.200.0/21 */, 21, NDPI_PROTOCOL_GOOGLE }, - { 0x17EC3000 /* 23.236.48.0/20 */, 20, NDPI_PROTOCOL_GOOGLE }, - { 0x17FB8000 /* 23.251.128.0/19 */, 19, NDPI_PROTOCOL_GOOGLE }, - { 0x23B80000 /* 35.184.0.0/13 */, 13, NDPI_PROTOCOL_GOOGLE }, - { 0x2D79E400 /* 45.121.228.0/24 */, 24, NDPI_PROTOCOL_GOOGLE }, - { 0x2D79E500 /* 45.121.229.0/24 */, 24, NDPI_PROTOCOL_GOOGLE }, - { 0x2D79E600 /* 45.121.230.0/23 */, 23, NDPI_PROTOCOL_GOOGLE }, - { 0x2E1CF700 /* 46.28.247.0/24 */, 24, NDPI_PROTOCOL_GOOGLE }, - { 0x4009E000 /* 64.9.224.0/19 */, 19, NDPI_PROTOCOL_GOOGLE }, - { 0x400F7000 /* 64.15.112.0/20 */, 20, NDPI_PROTOCOL_GOOGLE }, - { 0x40E9A000 /* 64.233.160.0/19 */, 19, NDPI_PROTOCOL_GOOGLE }, - { 0x42660000 /* 66.102.0.0/20 */, 20, NDPI_PROTOCOL_GOOGLE }, - { 0x42F94000 /* 66.249.64.0/19 */, 19, NDPI_PROTOCOL_GOOGLE }, - { 0x46208000 /* 70.32.128.0/19 */, 19, NDPI_PROTOCOL_GOOGLE }, - { 0x480EC000 /* 72.14.192.0/18 */, 18, NDPI_PROTOCOL_GOOGLE }, - { 0x4A721800 /* 74.114.24.0/21 */, 21, NDPI_PROTOCOL_GOOGLE }, - { 0x4A7D0000 /* 74.125.0.0/16 */, 16, NDPI_PROTOCOL_GOOGLE }, - { 0x59CFE000 /* 89.207.224.0/21 */, 21, NDPI_PROTOCOL_GOOGLE }, - { 0x673E4000 /* 103.62.64.0/24 */, 24, NDPI_PROTOCOL_GOOGLE }, - { 0x673E4100 /* 103.62.65.0/24 */, 24, NDPI_PROTOCOL_GOOGLE }, - { 0x673E4200 /* 103.62.66.0/23 */, 23, NDPI_PROTOCOL_GOOGLE }, - { 0x68840000 /* 104.132.0.0/14 */, 14, NDPI_PROTOCOL_GOOGLE }, - { 0x689A0000 /* 104.154.0.0/15 */, 15, NDPI_PROTOCOL_GOOGLE }, - { 0x68C40000 /* 104.196.0.0/14 */, 14, NDPI_PROTOCOL_GOOGLE }, - { 0x68EDA000 /* 104.237.160.0/19*/, 19, NDPI_PROTOCOL_GOOGLE }, - { 0x6BA7A000 /* 107.167.160.0/19*/, 19, NDPI_PROTOCOL_GOOGLE }, - { 0x6BB2C000 /* 107.178.192.0/18*/, 18, NDPI_PROTOCOL_GOOGLE }, - { 0x6C3B5000 /* 108.59.80.0/20 */, 20, NDPI_PROTOCOL_GOOGLE }, - { 0x6CAAC000 /* 108.170.192.0/18*/, 18, NDPI_PROTOCOL_GOOGLE }, - { 0x6CB10000 /* 108.177.0.0/17 */, 17, NDPI_PROTOCOL_GOOGLE }, - { 0x71C56800 /* 113.197.104.0/22 */, 22, NDPI_PROTOCOL_GOOGLE }, - { 0x82D30000 /* 130.211.0.0/16 */, 16, NDPI_PROTOCOL_GOOGLE }, - { 0x8EFA0000 /* 142.250.0.0/15 */, 15, NDPI_PROTOCOL_GOOGLE }, - { 0x92940000 /* 146.148.0.0/17 */, 17, NDPI_PROTOCOL_GOOGLE }, - { 0xA2D89400 /* 162.216.148.0/22 */, 22, NDPI_PROTOCOL_GOOGLE }, - { 0xA2DEB000 /* 162.222.176.0/21*/, 21, NDPI_PROTOCOL_GOOGLE }, - { 0xAC660800 /* 172.102.8.0/21 */, 21, NDPI_PROTOCOL_GOOGLE }, - { 0xAC6E2000 /* 172.110.32.0/21 */, 21, NDPI_PROTOCOL_GOOGLE }, - { 0xACD90000 /* 172.217.0.0/16 */, 16, NDPI_PROTOCOL_GOOGLE }, - { 0xACFD0000 /* 172.253.0.0/16 */, 16, NDPI_PROTOCOL_GOOGLE }, - { 0xADC20000 /* 173.194.0.0/16 */, 16, NDPI_PROTOCOL_GOOGLE }, - { 0xADFF7000 /* 173.255.112.0/20*/, 20, NDPI_PROTOCOL_GOOGLE }, - { 0xB9191C00 /* 185.25.28.0/22 */, 22, NDPI_PROTOCOL_GOOGLE }, - { 0xB9969400 /* 185.150.148.0/22 */, 22, NDPI_PROTOCOL_GOOGLE }, - { 0xC068A000 /* 192.104.160.0/23*/, 23, NDPI_PROTOCOL_GOOGLE }, - { 0xC0771C00 /* 192.119.28.0/24 */, 24, NDPI_PROTOCOL_GOOGLE }, - { 0xC09E1C00 /* 192.158.28.0/22 */, 22, NDPI_PROTOCOL_GOOGLE }, - { 0xC0B20000 /* 192.178.0.0/15 */, 15, NDPI_PROTOCOL_GOOGLE }, - { 0xC1210400 /* 193.33.4.0/24 */, 24, NDPI_PROTOCOL_GOOGLE }, - { 0xC1210500 /* 193.33.5.0/24 */, 24, NDPI_PROTOCOL_GOOGLE }, - { 0xC1C8DE00 /* 193.200.222.0/24*/, 24, NDPI_PROTOCOL_GOOGLE }, - { 0xC27A5000 /* 194.122.80.0/22 */, 22, NDPI_PROTOCOL_GOOGLE }, - { 0xC7C07000 /* 199.192.112.0/22 */, 22, NDPI_PROTOCOL_GOOGLE }, - { 0xC7DFE800 /* 199.223.232.0/21*/, 21, NDPI_PROTOCOL_GOOGLE }, - { 0xCFDFA000 /* 207.223.160.0/20*/, 20, NDPI_PROTOCOL_GOOGLE }, - { 0xD0419800 /* 208.65.152.0/22 */, 22, NDPI_PROTOCOL_GOOGLE }, - { 0xD075E000 /* 208.117.224.0/19*/, 19, NDPI_PROTOCOL_GOOGLE }, - { 0xD1558000 /* 209.85.128.0/17 */, 17, NDPI_PROTOCOL_GOOGLE }, - { 0xD16BB000 /* 209.107.176.0/20*/, 20, NDPI_PROTOCOL_GOOGLE }, - { 0xD83AC000 /* 216.58.192.0/19 */, 19, NDPI_PROTOCOL_GOOGLE }, - { 0xD8495000 /* 216.73.80.0/20 */, 20, NDPI_PROTOCOL_GOOGLE }, - { 0xD8EF2000 /* 216.239.32.0/19 */, 19, NDPI_PROTOCOL_GOOGLE }, - { 0xD8FCDC00 /* 216.252.220.0/22 */, 22, NDPI_PROTOCOL_GOOGLE }, - - /* Canonical Ltd (Ubuntu) origin AS41231z */ diff --git a/src/lib/ndpi_google_cloud_match.c.inc b/src/lib/ndpi_google_cloud_match.c.inc new file mode 100644 index 000000000..83efedc55 --- /dev/null +++ b/src/lib/ndpi_google_cloud_match.c.inc @@ -0,0 +1,493 @@ +/* + * + * This file is generated automatically and part of nDPI + * + * nDPI is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * nDPI is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with nDPI. If not, see <http://www.gnu.org/licenses/>. + * + */ + +/* ****************************************************** */ + + +static ndpi_network ndpi_protocol_google_cloud_protocol_list[] = { + { 0x22500000 /* 34.80.0.0/15 */, 15, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22890000 /* 34.137.0.0/16 */, 16, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23B98000 /* 35.185.128.0/19 */, 19, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23B9A000 /* 35.185.160.0/20 */, 20, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23BB9000 /* 35.187.144.0/20 */, 20, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23BDA000 /* 35.189.160.0/19 */, 19, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23C28000 /* 35.194.128.0/17 */, 17, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23C98000 /* 35.201.128.0/17 */, 17, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23CEC000 /* 35.206.192.0/18 */, 18, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23DC2000 /* 35.220.32.0/21 */, 21, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23DD8000 /* 35.221.128.0/17 */, 17, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23E58000 /* 35.229.128.0/17 */, 17, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23EA0000 /* 35.234.0.0/18 */, 18, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23EB1000 /* 35.235.16.0/20 */, 20, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23EC8000 /* 35.236.128.0/18 */, 18, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23F22000 /* 35.242.32.0/21 */, 21, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x689BC000 /* 104.155.192.0/19 */, 19, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x689BE000 /* 104.155.224.0/20 */, 20, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x68C78000 /* 104.199.128.0/18 */, 18, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x68C7C000 /* 104.199.192.0/19 */, 19, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x68C7E000 /* 104.199.224.0/20 */, 20, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x68C7F200 /* 104.199.242.0/23 */, 23, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x68C7F400 /* 104.199.244.0/22 */, 22, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x68C7F800 /* 104.199.248.0/21 */, 21, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x6BA7B000 /* 107.167.176.0/20 */, 20, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x82D3F000 /* 130.211.240.0/20 */, 20, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x225C0000 /* 34.92.0.0/16 */, 16, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22608000 /* 34.96.128.0/17 */, 17, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22685800 /* 34.104.88.0/21 */, 21, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x227C1800 /* 34.124.24.0/21 */, 21, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22960000 /* 34.150.0.0/17 */, 17, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23D78000 /* 35.215.128.0/18 */, 18, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23DC1B00 /* 35.220.27.0/24 */, 24, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23DC8000 /* 35.220.128.0/17 */, 17, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23F14000 /* 35.241.64.0/18 */, 18, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23F21B00 /* 35.242.27.0/24 */, 24, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23F30800 /* 35.243.8.0/21 */, 21, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22540000 /* 34.84.0.0/16 */, 16, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22550000 /* 34.85.0.0/17 */, 17, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22683E00 /* 34.104.62.0/23 */, 23, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22688000 /* 34.104.128.0/17 */, 17, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x227FBE00 /* 34.127.190.0/23 */, 23, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22920000 /* 34.146.0.0/16 */, 16, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x229D4000 /* 34.157.64.0/20 */, 20, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x229DA400 /* 34.157.164.0/22 */, 22, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x229DC000 /* 34.157.192.0/20 */, 20, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23BBC000 /* 35.187.192.0/19 */, 19, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23BD8000 /* 35.189.128.0/19 */, 19, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23BEE000 /* 35.190.224.0/20 */, 20, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23C26000 /* 35.194.96.0/19 */, 19, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23C80000 /* 35.200.0.0/17 */, 17, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23D50000 /* 35.213.0.0/17 */, 17, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23DC3800 /* 35.220.56.0/22 */, 22, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23DD4000 /* 35.221.64.0/18 */, 18, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23E6F000 /* 35.230.240.0/20 */, 20, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23F23800 /* 35.242.56.0/22 */, 22, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23F34000 /* 35.243.64.0/18 */, 18, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x68C65000 /* 104.198.80.0/20 */, 20, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x68C67000 /* 104.198.112.0/20 */, 20, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22610000 /* 34.97.0.0/16 */, 16, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22683100 /* 34.104.49.0/24 */, 24, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x227FB100 /* 34.127.177.0/24 */, 24, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23D98000 /* 35.217.128.0/17 */, 17, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23DC2D00 /* 35.220.45.0/24 */, 24, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23F22D00 /* 35.242.45.0/24 */, 24, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23F33800 /* 35.243.56.0/21 */, 21, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22402000 /* 34.64.32.0/19 */, 19, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22404000 /* 34.64.64.0/22 */, 22, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22404400 /* 34.64.68.0/22 */, 22, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22404800 /* 34.64.72.0/21 */, 21, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22405000 /* 34.64.80.0/20 */, 20, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22406000 /* 34.64.96.0/19 */, 19, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22408000 /* 34.64.128.0/22 */, 22, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22408400 /* 34.64.132.0/22 */, 22, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22408800 /* 34.64.136.0/21 */, 21, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22409000 /* 34.64.144.0/20 */, 20, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x2240A000 /* 34.64.160.0/19 */, 19, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x2240C000 /* 34.64.192.0/18 */, 18, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23D80000 /* 35.216.0.0/17 */, 17, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x225D0000 /* 34.93.0.0/16 */, 16, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22648000 /* 34.100.128.0/17 */, 17, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22686C00 /* 34.104.108.0/23 */, 23, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x227C2C00 /* 34.124.44.0/23 */, 23, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23C88000 /* 35.200.128.0/17 */, 17, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23C92900 /* 35.201.41.0/24 */, 24, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23CFC000 /* 35.207.192.0/18 */, 18, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23DC2A00 /* 35.220.42.0/24 */, 24, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23EAD000 /* 35.234.208.0/20 */, 20, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23F22A00 /* 35.242.42.0/24 */, 24, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23F40000 /* 35.244.0.0/18 */, 18, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22687800 /* 34.104.120.0/23 */, 23, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x227C3800 /* 34.124.56.0/23 */, 23, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x227ED000 /* 34.126.208.0/20 */, 20, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22830000 /* 34.131.0.0/16 */, 16, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22570000 /* 34.87.0.0/17 */, 17, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22578000 /* 34.87.128.0/18 */, 18, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22683A00 /* 34.104.58.0/23 */, 23, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22686A00 /* 34.104.106.0/23 */, 23, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x227C2A00 /* 34.124.42.0/23 */, 23, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x227C8000 /* 34.124.128.0/17 */, 17, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x227E4000 /* 34.126.64.0/18 */, 18, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x227E8000 /* 34.126.128.0/18 */, 18, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x228F8000 /* 34.143.128.0/17 */, 17, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x229D5200 /* 34.157.82.0/23 */, 23, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x229DD200 /* 34.157.210.0/23 */, 23, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23B9B000 /* 35.185.176.0/20 */, 20, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23BA9000 /* 35.186.144.0/20 */, 20, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23BBE000 /* 35.187.224.0/19 */, 19, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23C58000 /* 35.197.128.0/19 */, 19, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23C6C000 /* 35.198.192.0/18 */, 18, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23D58000 /* 35.213.128.0/18 */, 18, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23DC1800 /* 35.220.24.0/23 */, 23, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23EAC000 /* 35.234.192.0/20 */, 20, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23F08000 /* 35.240.128.0/17 */, 17, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23F21800 /* 35.242.24.0/23 */, 23, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23F78000 /* 35.247.128.0/18 */, 18, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22651200 /* 34.101.18.0/24 */, 24, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22651400 /* 34.101.20.0/22 */, 22, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22651800 /* 34.101.24.0/22 */, 22, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22652000 /* 34.101.32.0/19 */, 19, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22654000 /* 34.101.64.0/18 */, 18, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22658000 /* 34.101.128.0/17 */, 17, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23DB0000 /* 35.219.0.0/17 */, 17, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x2257C000 /* 34.87.192.0/18 */, 18, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22686800 /* 34.104.104.0/23 */, 23, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22744000 /* 34.116.64.0/18 */, 18, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x227C2800 /* 34.124.40.0/23 */, 23, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22974000 /* 34.151.64.0/18 */, 18, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22978000 /* 34.151.128.0/18 */, 18, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23BD0000 /* 35.189.0.0/18 */, 18, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23C5A000 /* 35.197.160.0/19 */, 19, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23C90000 /* 35.201.0.0/19 */, 19, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23D5C000 /* 35.213.192.0/18 */, 18, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23DC2900 /* 35.220.41.0/24 */, 24, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23EAE000 /* 35.234.224.0/20 */, 20, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23F22900 /* 35.242.41.0/24 */, 24, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23F44000 /* 35.244.64.0/18 */, 18, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22687A00 /* 34.104.122.0/23 */, 23, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x227C3A00 /* 34.124.58.0/23 */, 23, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x227EC000 /* 34.126.192.0/20 */, 20, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22810000 /* 34.129.0.0/16 */, 16, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22687400 /* 34.104.116.0/22 */, 22, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22748000 /* 34.116.128.0/17 */, 17, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22760000 /* 34.118.0.0/17 */, 17, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x227C3400 /* 34.124.52.0/22 */, 22, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22580000 /* 34.88.0.0/16 */, 16, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22686000 /* 34.104.96.0/21 */, 21, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x227C2000 /* 34.124.32.0/21 */, 21, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23CBE800 /* 35.203.232.0/21 */, 21, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23D90000 /* 35.217.0.0/18 */, 18, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23DC1A00 /* 35.220.26.0/24 */, 24, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23E40000 /* 35.228.0.0/16 */, 16, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23F21A00 /* 35.242.26.0/24 */, 24, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x0822D000 /* 8.34.208.0/23 */, 23, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x0822D300 /* 8.34.211.0/24 */, 24, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x0822DC00 /* 8.34.220.0/22 */, 22, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x17FB8000 /* 23.251.128.0/20 */, 20, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x224C0000 /* 34.76.0.0/14 */, 14, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x228C0000 /* 34.140.0.0/16 */, 16, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23BB0000 /* 35.187.0.0/17 */, 17, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23BBA000 /* 35.187.160.0/19 */, 19, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23BDC000 /* 35.189.192.0/18 */, 18, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23BEC000 /* 35.190.192.0/19 */, 19, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23C30000 /* 35.195.0.0/16 */, 16, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23CD0000 /* 35.205.0.0/16 */, 16, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23CE8000 /* 35.206.128.0/18 */, 18, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23D20000 /* 35.210.0.0/16 */, 16, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23DC6000 /* 35.220.96.0/19 */, 19, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23E90000 /* 35.233.0.0/17 */, 17, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23F00000 /* 35.240.0.0/17 */, 17, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23F18000 /* 35.241.128.0/17 */, 17, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23F24000 /* 35.242.64.0/19 */, 19, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x689B0000 /* 104.155.0.0/17 */, 17, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x68C70000 /* 104.199.0.0/18 */, 18, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x68C74200 /* 104.199.66.0/23 */, 23, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x68C74400 /* 104.199.68.0/22 */, 22, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x68C74800 /* 104.199.72.0/21 */, 21, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x68C75000 /* 104.199.80.0/20 */, 20, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x68C76000 /* 104.199.96.0/20 */, 20, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x82D33000 /* 130.211.48.0/20 */, 20, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x82D34000 /* 130.211.64.0/19 */, 19, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x82D36000 /* 130.211.96.0/20 */, 20, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x92940200 /* 146.148.2.0/23 */, 23, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x92940400 /* 146.148.4.0/22 */, 22, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x92940800 /* 146.148.8.0/21 */, 21, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x92941000 /* 146.148.16.0/20 */, 20, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x92947000 /* 146.148.112.0/20 */, 20, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0xC09E1C00 /* 192.158.28.0/22 */, 22, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22590000 /* 34.89.0.0/17 */, 17, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22698000 /* 34.105.128.0/17 */, 17, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x227FBA00 /* 34.127.186.0/23 */, 23, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x228E0000 /* 34.142.0.0/17 */, 17, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22938000 /* 34.147.128.0/17 */, 17, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x229D2400 /* 34.157.36.0/22 */, 22, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x229D2800 /* 34.157.40.0/22 */, 22, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x229DA800 /* 34.157.168.0/22 */, 22, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23BD4000 /* 35.189.64.0/18 */, 18, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23C5C000 /* 35.197.192.0/18 */, 18, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23CBD200 /* 35.203.210.0/23 */, 23, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23CBD400 /* 35.203.212.0/22 */, 22, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23CBD800 /* 35.203.216.0/22 */, 22, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23D60000 /* 35.214.0.0/17 */, 17, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23DC1400 /* 35.220.20.0/22 */, 22, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23E68000 /* 35.230.128.0/19 */, 19, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23EA8000 /* 35.234.128.0/19 */, 19, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23EB3000 /* 35.235.48.0/20 */, 20, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23F21400 /* 35.242.20.0/22 */, 22, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23F28000 /* 35.242.128.0/18 */, 18, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23F60000 /* 35.246.0.0/17 */, 17, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22598000 /* 34.89.128.0/17 */, 17, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22687000 /* 34.104.112.0/23 */, 23, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x226B0000 /* 34.107.0.0/17 */, 17, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x227C3000 /* 34.124.48.0/23 */, 23, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x228D0000 /* 34.141.0.0/17 */, 17, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x229D3000 /* 34.157.48.0/20 */, 20, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x229DB000 /* 34.157.176.0/20 */, 20, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x229F0000 /* 34.159.0.0/16 */, 16, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23C64000 /* 35.198.64.0/18 */, 18, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23C68000 /* 35.198.128.0/18 */, 18, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23CF4000 /* 35.207.64.0/18 */, 18, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23CF8000 /* 35.207.128.0/18 */, 18, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23DC1200 /* 35.220.18.0/23 */, 23, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23EA4000 /* 35.234.64.0/18 */, 18, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23EB2000 /* 35.235.32.0/20 */, 20, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23F21200 /* 35.242.18.0/23 */, 23, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23F2C000 /* 35.242.192.0/18 */, 18, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23F68000 /* 35.246.128.0/17 */, 17, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x225A0000 /* 34.90.0.0/15 */, 15, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22687E00 /* 34.104.126.0/23 */, 23, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x227C3E00 /* 34.124.62.0/23 */, 23, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x228D8000 /* 34.141.128.0/17 */, 17, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22930000 /* 34.147.0.0/17 */, 17, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x229D5000 /* 34.157.80.0/23 */, 23, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x229DD000 /* 34.157.208.0/23 */, 23, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23CC0000 /* 35.204.0.0/16 */, 16, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23D68000 /* 35.214.128.0/17 */, 17, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23DC1000 /* 35.220.16.0/23 */, 23, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23EAA000 /* 35.234.160.0/20 */, 20, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23F21000 /* 35.242.16.0/23 */, 23, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22410000 /* 34.65.0.0/16 */, 16, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22686E00 /* 34.104.110.0/23 */, 23, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x227C2E00 /* 34.124.46.0/23 */, 23, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23D88000 /* 35.216.128.0/17 */, 17, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23DC2C00 /* 35.220.44.0/24 */, 24, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23EBD800 /* 35.235.216.0/21 */, 21, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23F22C00 /* 35.242.44.0/24 */, 24, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x225F4000 /* 34.95.64.0/18 */, 18, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22604000 /* 34.96.64.0/18 */, 18, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22624000 /* 34.98.64.0/18 */, 18, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22668000 /* 34.102.128.0/17 */, 17, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22681B00 /* 34.104.27.0/24 */, 24, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x226B8000 /* 34.107.128.0/17 */, 17, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x226E8000 /* 34.110.128.0/17 */, 17, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x226F0000 /* 34.111.0.0/16 */, 16, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22740000 /* 34.116.0.0/21 */, 21, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22750000 /* 34.117.0.0/16 */, 16, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22780000 /* 34.120.0.0/16 */, 16, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22950000 /* 34.149.0.0/16 */, 16, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23BAC000 /* 35.186.192.0/18 */, 18, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23BE0000 /* 35.190.0.0/18 */, 18, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23BE4000 /* 35.190.64.0/19 */, 19, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23BE7000 /* 35.190.112.0/20 */, 20, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23C94000 /* 35.201.64.0/18 */, 18, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23E3C000 /* 35.227.192.0/18 */, 18, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23F10000 /* 35.241.0.0/18 */, 18, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23F48000 /* 35.244.128.0/17 */, 17, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x6BB2F000 /* 107.178.240.0/20 */, 20, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x82D30400 /* 130.211.4.0/22 */, 22, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x82D30800 /* 130.211.8.0/21 */, 21, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x82D31000 /* 130.211.16.0/20 */, 20, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x82D32000 /* 130.211.32.0/20 */, 20, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x225F0000 /* 34.95.0.0/18 */, 18, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22684C00 /* 34.104.76.0/22 */, 22, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x227C0C00 /* 34.124.12.0/22 */, 22, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22980000 /* 34.152.0.0/18 */, 18, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23CB0000 /* 35.203.0.0/17 */, 17, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23D70000 /* 35.215.0.0/18 */, 18, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23DC2B00 /* 35.220.43.0/24 */, 24, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23EAF000 /* 35.234.240.0/20 */, 20, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23F22B00 /* 35.242.43.0/24 */, 24, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22687200 /* 34.104.114.0/23 */, 23, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x227C3200 /* 34.124.50.0/23 */, 23, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x227C7000 /* 34.124.112.0/20 */, 20, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22820000 /* 34.130.0.0/16 */, 16, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x225F8000 /* 34.95.128.0/17 */, 17, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22685000 /* 34.104.80.0/21 */, 21, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x227C1000 /* 34.124.16.0/21 */, 21, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22970000 /* 34.151.0.0/18 */, 18, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x2297C000 /* 34.151.192.0/18 */, 18, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23C60000 /* 35.198.0.0/18 */, 18, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23C74000 /* 35.199.64.0/18 */, 18, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23D7C000 /* 35.215.192.0/18 */, 18, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23DC2800 /* 35.220.40.0/24 */, 24, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23EB0000 /* 35.235.0.0/20 */, 20, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23F22800 /* 35.242.40.0/24 */, 24, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23F7C000 /* 35.247.192.0/18 */, 18, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22683200 /* 34.104.50.0/23 */, 23, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x227FB200 /* 34.127.178.0/23 */, 23, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22B00000 /* 34.176.0.0/16 */, 16, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x0822D200 /* 8.34.210.0/24 */, 24, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x0822D400 /* 8.34.212.0/22 */, 22, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x0822D800 /* 8.34.216.0/22 */, 22, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x0823C000 /* 8.35.192.0/21 */, 21, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x17EC3000 /* 23.236.48.0/20 */, 20, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x17FB9000 /* 23.251.144.0/20 */, 20, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22420000 /* 34.66.0.0/15 */, 15, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22440000 /* 34.68.0.0/14 */, 14, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22480000 /* 34.72.0.0/16 */, 16, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22790000 /* 34.121.0.0/16 */, 16, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x227A0000 /* 34.122.0.0/15 */, 15, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22840000 /* 34.132.0.0/14 */, 14, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22880000 /* 34.136.0.0/16 */, 16, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x229D5400 /* 34.157.84.0/23 */, 23, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x229DD400 /* 34.157.212.0/23 */, 23, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22AA0000 /* 34.170.0.0/15 */, 15, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22AC0000 /* 34.172.0.0/15 */, 15, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23B80000 /* 35.184.0.0/16 */, 16, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23BC0000 /* 35.188.0.0/17 */, 17, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23BC8000 /* 35.188.128.0/18 */, 18, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23BCC000 /* 35.188.192.0/19 */, 19, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23C00000 /* 35.192.0.0/15 */, 15, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23C20000 /* 35.194.0.0/18 */, 18, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23CA0000 /* 35.202.0.0/16 */, 16, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23CE4000 /* 35.206.64.0/18 */, 18, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23D00000 /* 35.208.0.0/15 */, 15, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23DC4000 /* 35.220.64.0/19 */, 19, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23DE0000 /* 35.222.0.0/15 */, 15, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23E00000 /* 35.224.0.0/15 */, 15, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23E20000 /* 35.226.0.0/16 */, 16, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23E80000 /* 35.232.0.0/16 */, 16, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23EE0000 /* 35.238.0.0/15 */, 15, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23F26000 /* 35.242.96.0/19 */, 19, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x689A1000 /* 104.154.16.0/20 */, 20, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x689A2000 /* 104.154.32.0/19 */, 19, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x689A4000 /* 104.154.64.0/19 */, 19, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x689A6000 /* 104.154.96.0/20 */, 20, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x689A7100 /* 104.154.113.0/24 */, 24, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x689A7200 /* 104.154.114.0/23 */, 23, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x689A7400 /* 104.154.116.0/22 */, 22, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x689A7800 /* 104.154.120.0/23 */, 23, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x689A8000 /* 104.154.128.0/17 */, 17, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x689B8000 /* 104.155.128.0/18 */, 18, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x68C50000 /* 104.197.0.0/16 */, 16, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x68C61000 /* 104.198.16.0/20 */, 20, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x68C62000 /* 104.198.32.0/19 */, 19, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x68C64000 /* 104.198.64.0/20 */, 20, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x68C68000 /* 104.198.128.0/17 */, 17, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x6BB2D000 /* 107.178.208.0/20 */, 20, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x6C3B5000 /* 108.59.80.0/21 */, 21, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x82D37000 /* 130.211.112.0/20 */, 20, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x82D38000 /* 130.211.128.0/18 */, 18, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x82D3C000 /* 130.211.192.0/19 */, 19, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x82D3E000 /* 130.211.224.0/20 */, 20, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x92942000 /* 146.148.32.0/19 */, 19, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x92944000 /* 146.148.64.0/19 */, 19, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x92946000 /* 146.148.96.0/20 */, 20, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0xA2DEB000 /* 162.222.176.0/21 */, 21, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0xADFF7000 /* 173.255.112.0/21 */, 21, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0xC7C07300 /* 199.192.115.0/24 */, 24, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0xC7DFE800 /* 199.223.232.0/22 */, 22, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0xC7DFEC00 /* 199.223.236.0/24 */, 24, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23BA0000 /* 35.186.0.0/17 */, 17, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23BA8000 /* 35.186.128.0/20 */, 20, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23CE2000 /* 35.206.32.0/19 */, 19, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23DC2E00 /* 35.220.46.0/24 */, 24, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23F22E00 /* 35.242.46.0/24 */, 24, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x6BA7A000 /* 107.167.160.0/20 */, 20, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x6C3B5800 /* 108.59.88.0/21 */, 21, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0xADFF7800 /* 173.255.120.0/21 */, 21, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22490000 /* 34.73.0.0/16 */, 16, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x224A0000 /* 34.74.0.0/15 */, 15, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22628000 /* 34.98.128.0/21 */, 21, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x228A0000 /* 34.138.0.0/15 */, 15, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22940000 /* 34.148.0.0/16 */, 16, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23B90000 /* 35.185.0.0/17 */, 17, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23BE8000 /* 35.190.128.0/18 */, 18, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23C40000 /* 35.196.0.0/16 */, 16, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23CF0000 /* 35.207.0.0/18 */, 18, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23D30000 /* 35.211.0.0/16 */, 16, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23DC0000 /* 35.220.0.0/20 */, 20, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23E30000 /* 35.227.0.0/17 */, 17, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23E51000 /* 35.229.16.0/20 */, 20, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23E52000 /* 35.229.32.0/19 */, 19, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23E54000 /* 35.229.64.0/18 */, 18, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23E70000 /* 35.231.0.0/16 */, 16, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23ED0000 /* 35.237.0.0/16 */, 16, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23F20000 /* 35.242.0.0/20 */, 20, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23F38000 /* 35.243.128.0/17 */, 17, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x68C40000 /* 104.196.0.0/18 */, 18, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x68C44100 /* 104.196.65.0/24 */, 24, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x68C44200 /* 104.196.66.0/23 */, 23, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x68C44400 /* 104.196.68.0/22 */, 22, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x68C46000 /* 104.196.96.0/19 */, 19, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x68C48000 /* 104.196.128.0/18 */, 18, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x68C4C000 /* 104.196.192.0/19 */, 19, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0xA2D89400 /* 162.216.148.0/22 */, 22, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22558000 /* 34.85.128.0/17 */, 17, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22560000 /* 34.86.0.0/16 */, 16, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22683C00 /* 34.104.60.0/23 */, 23, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22687C00 /* 34.104.124.0/23 */, 23, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x227C3C00 /* 34.124.60.0/23 */, 23, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x227FBC00 /* 34.127.188.0/23 */, 23, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22918000 /* 34.145.128.0/17 */, 17, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22968000 /* 34.150.128.0/17 */, 17, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x229D0000 /* 34.157.0.0/21 */, 21, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x229D1000 /* 34.157.16.0/20 */, 20, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x229D8000 /* 34.157.128.0/21 */, 21, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x229D9000 /* 34.157.144.0/20 */, 20, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23BAA000 /* 35.186.160.0/19 */, 19, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23BCE000 /* 35.188.224.0/19 */, 19, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23C24000 /* 35.194.64.0/19 */, 19, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23C70000 /* 35.199.0.0/18 */, 18, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23D40000 /* 35.212.0.0/17 */, 17, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23DC3C00 /* 35.220.60.0/22 */, 22, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23DD0000 /* 35.221.0.0/18 */, 18, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23E6A000 /* 35.230.160.0/19 */, 19, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23EAB000 /* 35.234.176.0/20 */, 20, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23ECC000 /* 35.236.192.0/18 */, 18, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23F23C00 /* 35.242.60.0/22 */, 22, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23F32800 /* 35.243.40.0/21 */, 21, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23F50000 /* 35.245.0.0/16 */, 16, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22683800 /* 34.104.56.0/23 */, 23, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x227FB800 /* 34.127.184.0/23 */, 23, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22A10000 /* 34.161.0.0/16 */, 16, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22520000 /* 34.82.0.0/15 */, 15, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22690000 /* 34.105.0.0/17 */, 17, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x227F0000 /* 34.127.0.0/17 */, 17, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22910000 /* 34.145.0.0/17 */, 17, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22A80000 /* 34.168.0.0/15 */, 15, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23B9C000 /* 35.185.192.0/18 */, 18, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23C50000 /* 35.197.0.0/17 */, 17, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23C79000 /* 35.199.144.0/20 */, 20, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23C7A000 /* 35.199.160.0/19 */, 19, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23CB8000 /* 35.203.128.0/18 */, 18, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23D48000 /* 35.212.128.0/17 */, 17, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23DC3000 /* 35.220.48.0/21 */, 21, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23E38000 /* 35.227.128.0/18 */, 18, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23E60000 /* 35.230.0.0/17 */, 17, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23E98000 /* 35.233.128.0/17 */, 17, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23F23000 /* 35.242.48.0/21 */, 21, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23F32000 /* 35.243.32.0/21 */, 21, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23F70000 /* 35.247.0.0/17 */, 17, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x68C4E000 /* 104.196.224.0/19 */, 19, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x68C60000 /* 104.198.0.0/20 */, 20, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x68C66000 /* 104.198.96.0/20 */, 20, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x68C77000 /* 104.199.112.0/20 */, 20, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x225E0000 /* 34.94.0.0/16 */, 16, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22660000 /* 34.102.0.0/17 */, 17, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22684000 /* 34.104.64.0/21 */, 21, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x226C0000 /* 34.108.0.0/16 */, 16, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x227C0000 /* 34.124.0.0/21 */, 21, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23D74000 /* 35.215.64.0/18 */, 18, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23DC2F00 /* 35.220.47.0/24 */, 24, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23EB4000 /* 35.235.64.0/18 */, 18, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23EC0000 /* 35.236.0.0/17 */, 17, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23F22F00 /* 35.242.47.0/24 */, 24, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23F30000 /* 35.243.0.0/21 */, 21, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22683400 /* 34.104.52.0/24 */, 24, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x226A0000 /* 34.106.0.0/16 */, 16, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x227FB400 /* 34.127.180.0/24 */, 24, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23D94000 /* 35.217.64.0/18 */, 18, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23DC1F00 /* 35.220.31.0/24 */, 24, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23F21F00 /* 35.242.31.0/24 */, 24, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x22684800 /* 34.104.72.0/22 */, 22, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x227C0800 /* 34.124.8.0/22 */, 22, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x227D0000 /* 34.125.0.0/16 */, 16, NDPI_PROTOCOL_GOOGLE_CLOUD }, + { 0x23DB8000 /* 35.219.128.0/18 */, 18, NDPI_PROTOCOL_GOOGLE_CLOUD }, + /* End */ + { 0x0, 0, 0 } +}; diff --git a/src/lib/ndpi_google_match.c.inc b/src/lib/ndpi_google_match.c.inc new file mode 100644 index 000000000..c93c140b8 --- /dev/null +++ b/src/lib/ndpi_google_match.c.inc @@ -0,0 +1,179 @@ +/* + * + * This file is generated automatically and part of nDPI + * + * nDPI is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * nDPI is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with nDPI. If not, see <http://www.gnu.org/licenses/>. + * + */ + +/* ****************************************************** */ + + +static ndpi_network ndpi_protocol_google_protocol_list[] = { + { 0x08080400 /* 8.8.4.0/24 */, 24, NDPI_PROTOCOL_GOOGLE }, + { 0x08080800 /* 8.8.8.0/24 */, 24, NDPI_PROTOCOL_GOOGLE }, + { 0x0823C800 /* 8.35.200.0/21 */, 21, NDPI_PROTOCOL_GOOGLE }, + { 0x22400000 /* 34.64.0.0/19 */, 19, NDPI_PROTOCOL_GOOGLE }, + { 0x22600000 /* 34.96.0.0/18 */, 18, NDPI_PROTOCOL_GOOGLE }, + { 0x22620000 /* 34.98.0.0/18 */, 18, NDPI_PROTOCOL_GOOGLE }, + { 0x22628800 /* 34.98.136.0/21 */, 21, NDPI_PROTOCOL_GOOGLE }, + { 0x22629000 /* 34.98.144.0/20 */, 20, NDPI_PROTOCOL_GOOGLE }, + { 0x2262A000 /* 34.98.160.0/19 */, 19, NDPI_PROTOCOL_GOOGLE }, + { 0x2262C000 /* 34.98.192.0/18 */, 18, NDPI_PROTOCOL_GOOGLE }, + { 0x22630000 /* 34.99.0.0/16 */, 16, NDPI_PROTOCOL_GOOGLE }, + { 0x22640000 /* 34.100.0.0/17 */, 17, NDPI_PROTOCOL_GOOGLE }, + { 0x22650000 /* 34.101.0.0/20 */, 20, NDPI_PROTOCOL_GOOGLE }, + { 0x22651000 /* 34.101.16.0/23 */, 23, NDPI_PROTOCOL_GOOGLE }, + { 0x22651300 /* 34.101.19.0/24 */, 24, NDPI_PROTOCOL_GOOGLE }, + { 0x22651C00 /* 34.101.28.0/22 */, 22, NDPI_PROTOCOL_GOOGLE }, + { 0x22670000 /* 34.103.0.0/16 */, 16, NDPI_PROTOCOL_GOOGLE }, + { 0x22680000 /* 34.104.0.0/20 */, 20, NDPI_PROTOCOL_GOOGLE }, + { 0x22681000 /* 34.104.16.0/21 */, 21, NDPI_PROTOCOL_GOOGLE }, + { 0x22681800 /* 34.104.24.0/23 */, 23, NDPI_PROTOCOL_GOOGLE }, + { 0x22681A00 /* 34.104.26.0/24 */, 24, NDPI_PROTOCOL_GOOGLE }, + { 0x22681C00 /* 34.104.28.0/22 */, 22, NDPI_PROTOCOL_GOOGLE }, + { 0x22682000 /* 34.104.32.0/20 */, 20, NDPI_PROTOCOL_GOOGLE }, + { 0x22683000 /* 34.104.48.0/24 */, 24, NDPI_PROTOCOL_GOOGLE }, + { 0x22683500 /* 34.104.53.0/24 */, 24, NDPI_PROTOCOL_GOOGLE }, + { 0x22683600 /* 34.104.54.0/23 */, 23, NDPI_PROTOCOL_GOOGLE }, + { 0x226D0000 /* 34.109.0.0/16 */, 16, NDPI_PROTOCOL_GOOGLE }, + { 0x226E0000 /* 34.110.0.0/17 */, 17, NDPI_PROTOCOL_GOOGLE }, + { 0x22700000 /* 34.112.0.0/14 */, 14, NDPI_PROTOCOL_GOOGLE }, + { 0x22740800 /* 34.116.8.0/21 */, 21, NDPI_PROTOCOL_GOOGLE }, + { 0x22741000 /* 34.116.16.0/20 */, 20, NDPI_PROTOCOL_GOOGLE }, + { 0x22742000 /* 34.116.32.0/19 */, 19, NDPI_PROTOCOL_GOOGLE }, + { 0x22768000 /* 34.118.128.0/17 */, 17, NDPI_PROTOCOL_GOOGLE }, + { 0x22770000 /* 34.119.0.0/16 */, 16, NDPI_PROTOCOL_GOOGLE }, + { 0x227C4000 /* 34.124.64.0/19 */, 19, NDPI_PROTOCOL_GOOGLE }, + { 0x227C6000 /* 34.124.96.0/20 */, 20, NDPI_PROTOCOL_GOOGLE }, + { 0x227E0000 /* 34.126.0.0/18 */, 18, NDPI_PROTOCOL_GOOGLE }, + { 0x227EE000 /* 34.126.224.0/19 */, 19, NDPI_PROTOCOL_GOOGLE }, + { 0x227F8000 /* 34.127.128.0/19 */, 19, NDPI_PROTOCOL_GOOGLE }, + { 0x227FA000 /* 34.127.160.0/20 */, 20, NDPI_PROTOCOL_GOOGLE }, + { 0x227FB000 /* 34.127.176.0/24 */, 24, NDPI_PROTOCOL_GOOGLE }, + { 0x227FB500 /* 34.127.181.0/24 */, 24, NDPI_PROTOCOL_GOOGLE }, + { 0x227FB600 /* 34.127.182.0/23 */, 23, NDPI_PROTOCOL_GOOGLE }, + { 0x227FC000 /* 34.127.192.0/18 */, 18, NDPI_PROTOCOL_GOOGLE }, + { 0x22800000 /* 34.128.0.0/16 */, 16, NDPI_PROTOCOL_GOOGLE }, + { 0x228E8000 /* 34.142.128.0/17 */, 17, NDPI_PROTOCOL_GOOGLE }, + { 0x228F0000 /* 34.143.0.0/17 */, 17, NDPI_PROTOCOL_GOOGLE }, + { 0x22900000 /* 34.144.0.0/16 */, 16, NDPI_PROTOCOL_GOOGLE }, + { 0x22984000 /* 34.152.64.0/18 */, 18, NDPI_PROTOCOL_GOOGLE }, + { 0x22988000 /* 34.152.128.0/17 */, 17, NDPI_PROTOCOL_GOOGLE }, + { 0x22990000 /* 34.153.0.0/16 */, 16, NDPI_PROTOCOL_GOOGLE }, + { 0x229A0000 /* 34.154.0.0/15 */, 15, NDPI_PROTOCOL_GOOGLE }, + { 0x229C0000 /* 34.156.0.0/16 */, 16, NDPI_PROTOCOL_GOOGLE }, + { 0x229D0800 /* 34.157.8.0/21 */, 21, NDPI_PROTOCOL_GOOGLE }, + { 0x229D2000 /* 34.157.32.0/22 */, 22, NDPI_PROTOCOL_GOOGLE }, + { 0x229D2C00 /* 34.157.44.0/22 */, 22, NDPI_PROTOCOL_GOOGLE }, + { 0x229D5600 /* 34.157.86.0/23 */, 23, NDPI_PROTOCOL_GOOGLE }, + { 0x229D5800 /* 34.157.88.0/21 */, 21, NDPI_PROTOCOL_GOOGLE }, + { 0x229D6000 /* 34.157.96.0/19 */, 19, NDPI_PROTOCOL_GOOGLE }, + { 0x229D8800 /* 34.157.136.0/21 */, 21, NDPI_PROTOCOL_GOOGLE }, + { 0x229DA000 /* 34.157.160.0/22 */, 22, NDPI_PROTOCOL_GOOGLE }, + { 0x229DAC00 /* 34.157.172.0/22 */, 22, NDPI_PROTOCOL_GOOGLE }, + { 0x229DD600 /* 34.157.214.0/23 */, 23, NDPI_PROTOCOL_GOOGLE }, + { 0x229DD800 /* 34.157.216.0/21 */, 21, NDPI_PROTOCOL_GOOGLE }, + { 0x229DE000 /* 34.157.224.0/19 */, 19, NDPI_PROTOCOL_GOOGLE }, + { 0x229E0000 /* 34.158.0.0/16 */, 16, NDPI_PROTOCOL_GOOGLE }, + { 0x22A00000 /* 34.160.0.0/16 */, 16, NDPI_PROTOCOL_GOOGLE }, + { 0x22A20000 /* 34.162.0.0/15 */, 15, NDPI_PROTOCOL_GOOGLE }, + { 0x22A40000 /* 34.164.0.0/14 */, 14, NDPI_PROTOCOL_GOOGLE }, + { 0x22AE0000 /* 34.174.0.0/15 */, 15, NDPI_PROTOCOL_GOOGLE }, + { 0x22B10000 /* 34.177.0.0/16 */, 16, NDPI_PROTOCOL_GOOGLE }, + { 0x22B20000 /* 34.178.0.0/15 */, 15, NDPI_PROTOCOL_GOOGLE }, + { 0x22B40000 /* 34.180.0.0/14 */, 14, NDPI_PROTOCOL_GOOGLE }, + { 0x22B80000 /* 34.184.0.0/13 */, 13, NDPI_PROTOCOL_GOOGLE }, + { 0x23BB8000 /* 35.187.128.0/20 */, 20, NDPI_PROTOCOL_GOOGLE }, + { 0x23BE6000 /* 35.190.96.0/20 */, 20, NDPI_PROTOCOL_GOOGLE }, + { 0x23BEF000 /* 35.190.240.0/20 */, 20, NDPI_PROTOCOL_GOOGLE }, + { 0x23BF0000 /* 35.191.0.0/16 */, 16, NDPI_PROTOCOL_GOOGLE }, + { 0x23C78000 /* 35.199.128.0/20 */, 20, NDPI_PROTOCOL_GOOGLE }, + { 0x23C92000 /* 35.201.32.0/21 */, 21, NDPI_PROTOCOL_GOOGLE }, + { 0x23C92800 /* 35.201.40.0/24 */, 24, NDPI_PROTOCOL_GOOGLE }, + { 0x23C92A00 /* 35.201.42.0/23 */, 23, NDPI_PROTOCOL_GOOGLE }, + { 0x23C92C00 /* 35.201.44.0/22 */, 22, NDPI_PROTOCOL_GOOGLE }, + { 0x23C93000 /* 35.201.48.0/20 */, 20, NDPI_PROTOCOL_GOOGLE }, + { 0x23CBC000 /* 35.203.192.0/20 */, 20, NDPI_PROTOCOL_GOOGLE }, + { 0x23CBD000 /* 35.203.208.0/23 */, 23, NDPI_PROTOCOL_GOOGLE }, + { 0x23CBDC00 /* 35.203.220.0/22 */, 22, NDPI_PROTOCOL_GOOGLE }, + { 0x23CBE000 /* 35.203.224.0/21 */, 21, NDPI_PROTOCOL_GOOGLE }, + { 0x23CBF000 /* 35.203.240.0/20 */, 20, NDPI_PROTOCOL_GOOGLE }, + { 0x23CE0000 /* 35.206.0.0/19 */, 19, NDPI_PROTOCOL_GOOGLE }, + { 0x23DA0000 /* 35.218.0.0/16 */, 16, NDPI_PROTOCOL_GOOGLE }, + { 0x23DBC000 /* 35.219.192.0/18 */, 18, NDPI_PROTOCOL_GOOGLE }, + { 0x23DC1C00 /* 35.220.28.0/23 */, 23, NDPI_PROTOCOL_GOOGLE }, + { 0x23DC1E00 /* 35.220.30.0/24 */, 24, NDPI_PROTOCOL_GOOGLE }, + { 0x23E50000 /* 35.229.0.0/20 */, 20, NDPI_PROTOCOL_GOOGLE }, + { 0x23E6C000 /* 35.230.192.0/19 */, 19, NDPI_PROTOCOL_GOOGLE }, + { 0x23E6E000 /* 35.230.224.0/20 */, 20, NDPI_PROTOCOL_GOOGLE }, + { 0x23EB8000 /* 35.235.128.0/18 */, 18, NDPI_PROTOCOL_GOOGLE }, + { 0x23EBC000 /* 35.235.192.0/20 */, 20, NDPI_PROTOCOL_GOOGLE }, + { 0x23EBD000 /* 35.235.208.0/21 */, 21, NDPI_PROTOCOL_GOOGLE }, + { 0x23EBE000 /* 35.235.224.0/19 */, 19, NDPI_PROTOCOL_GOOGLE }, + { 0x23F21C00 /* 35.242.28.0/23 */, 23, NDPI_PROTOCOL_GOOGLE }, + { 0x23F21E00 /* 35.242.30.0/24 */, 24, NDPI_PROTOCOL_GOOGLE }, + { 0x23F31000 /* 35.243.16.0/20 */, 20, NDPI_PROTOCOL_GOOGLE }, + { 0x23F33000 /* 35.243.48.0/21 */, 21, NDPI_PROTOCOL_GOOGLE }, + { 0x400F7000 /* 64.15.112.0/20 */, 20, NDPI_PROTOCOL_GOOGLE }, + { 0x40E9A000 /* 64.233.160.0/19 */, 19, NDPI_PROTOCOL_GOOGLE }, + { 0x42660000 /* 66.102.0.0/20 */, 20, NDPI_PROTOCOL_GOOGLE }, + { 0x42F94000 /* 66.249.64.0/19 */, 19, NDPI_PROTOCOL_GOOGLE }, + { 0x46208000 /* 70.32.128.0/19 */, 19, NDPI_PROTOCOL_GOOGLE }, + { 0x480EC000 /* 72.14.192.0/18 */, 18, NDPI_PROTOCOL_GOOGLE }, + { 0x4A721800 /* 74.114.24.0/21 */, 21, NDPI_PROTOCOL_GOOGLE }, + { 0x4A7D0000 /* 74.125.0.0/16 */, 16, NDPI_PROTOCOL_GOOGLE }, + { 0x689A0000 /* 104.154.0.0/20 */, 20, NDPI_PROTOCOL_GOOGLE }, + { 0x689A7000 /* 104.154.112.0/24 */, 24, NDPI_PROTOCOL_GOOGLE }, + { 0x689A7A00 /* 104.154.122.0/23 */, 23, NDPI_PROTOCOL_GOOGLE }, + { 0x689A7C00 /* 104.154.124.0/22 */, 22, NDPI_PROTOCOL_GOOGLE }, + { 0x689BF000 /* 104.155.240.0/20 */, 20, NDPI_PROTOCOL_GOOGLE }, + { 0x68C44000 /* 104.196.64.0/24 */, 24, NDPI_PROTOCOL_GOOGLE }, + { 0x68C44800 /* 104.196.72.0/21 */, 21, NDPI_PROTOCOL_GOOGLE }, + { 0x68C45000 /* 104.196.80.0/20 */, 20, NDPI_PROTOCOL_GOOGLE }, + { 0x68C74000 /* 104.199.64.0/23 */, 23, NDPI_PROTOCOL_GOOGLE }, + { 0x68C7F000 /* 104.199.240.0/23 */, 23, NDPI_PROTOCOL_GOOGLE }, + { 0x68EDA000 /* 104.237.160.0/19 */, 19, NDPI_PROTOCOL_GOOGLE }, + { 0x6BB2C000 /* 107.178.192.0/20 */, 20, NDPI_PROTOCOL_GOOGLE }, + { 0x6BB2E000 /* 107.178.224.0/20 */, 20, NDPI_PROTOCOL_GOOGLE }, + { 0x6CAAC000 /* 108.170.192.0/18 */, 18, NDPI_PROTOCOL_GOOGLE }, + { 0x6CB10000 /* 108.177.0.0/17 */, 17, NDPI_PROTOCOL_GOOGLE }, + { 0x82D30000 /* 130.211.0.0/22 */, 22, NDPI_PROTOCOL_GOOGLE }, + { 0x88700000 /* 136.112.0.0/12 */, 12, NDPI_PROTOCOL_GOOGLE }, + { 0x8EFA0000 /* 142.250.0.0/15 */, 15, NDPI_PROTOCOL_GOOGLE }, + { 0x92940000 /* 146.148.0.0/23 */, 23, NDPI_PROTOCOL_GOOGLE }, + { 0xAC6E2000 /* 172.110.32.0/21 */, 21, NDPI_PROTOCOL_GOOGLE }, + { 0xACD90000 /* 172.217.0.0/16 */, 16, NDPI_PROTOCOL_GOOGLE }, + { 0xACFD0000 /* 172.253.0.0/16 */, 16, NDPI_PROTOCOL_GOOGLE }, + { 0xADC20000 /* 173.194.0.0/16 */, 16, NDPI_PROTOCOL_GOOGLE }, + { 0xC0B20000 /* 192.178.0.0/15 */, 15, NDPI_PROTOCOL_GOOGLE }, + { 0xC1BA0400 /* 193.186.4.0/24 */, 24, NDPI_PROTOCOL_GOOGLE }, + { 0xC7249A00 /* 199.36.154.0/23 */, 23, NDPI_PROTOCOL_GOOGLE }, + { 0xC7249C00 /* 199.36.156.0/24 */, 24, NDPI_PROTOCOL_GOOGLE }, + { 0xC7C07000 /* 199.192.112.0/23 */, 23, NDPI_PROTOCOL_GOOGLE }, + { 0xC7C07200 /* 199.192.114.0/24 */, 24, NDPI_PROTOCOL_GOOGLE }, + { 0xC7DFED00 /* 199.223.237.0/24 */, 24, NDPI_PROTOCOL_GOOGLE }, + { 0xC7DFEE00 /* 199.223.238.0/23 */, 23, NDPI_PROTOCOL_GOOGLE }, + { 0xCFDFA000 /* 207.223.160.0/20 */, 20, NDPI_PROTOCOL_GOOGLE }, + { 0xD0419800 /* 208.65.152.0/22 */, 22, NDPI_PROTOCOL_GOOGLE }, + { 0xD0446C00 /* 208.68.108.0/22 */, 22, NDPI_PROTOCOL_GOOGLE }, + { 0xD051BC00 /* 208.81.188.0/22 */, 22, NDPI_PROTOCOL_GOOGLE }, + { 0xD075E000 /* 208.117.224.0/19 */, 19, NDPI_PROTOCOL_GOOGLE }, + { 0xD1558000 /* 209.85.128.0/17 */, 17, NDPI_PROTOCOL_GOOGLE }, + { 0xD83AC000 /* 216.58.192.0/19 */, 19, NDPI_PROTOCOL_GOOGLE }, + { 0xD8495000 /* 216.73.80.0/20 */, 20, NDPI_PROTOCOL_GOOGLE }, + { 0xD8EF2000 /* 216.239.32.0/19 */, 19, NDPI_PROTOCOL_GOOGLE }, + /* End */ + { 0x0, 0, 0 } +}; diff --git a/src/lib/ndpi_main.c b/src/lib/ndpi_main.c index 82f24f4aa..33c291b96 100644 --- a/src/lib/ndpi_main.c +++ b/src/lib/ndpi_main.c @@ -61,6 +61,8 @@ #include "ndpi_ms_onedrive_match.c.inc" #include "ndpi_ms_outlook_match.c.inc" #include "ndpi_ms_skype_teams_match.c.inc" +#include "ndpi_google_match.c.inc" +#include "ndpi_google_cloud_match.c.inc" /* Third party libraries */ #include "third_party/include/ndpi_patricia.h" @@ -1821,6 +1823,10 @@ static void ndpi_init_protocol_defaults(struct ndpi_detection_module_struct *ndp "Azure", NDPI_PROTOCOL_CATEGORY_CLOUD, ndpi_build_default_ports(ports_a, 0, 0, 0, 0, 0) /* TCP */, ndpi_build_default_ports(ports_b, 0, 0, 0, 0, 0) /* UDP */); + ndpi_set_proto_defaults(ndpi_str, 0 /* encrypted */, NDPI_PROTOCOL_ACCEPTABLE, NDPI_PROTOCOL_GOOGLE_CLOUD, + "GoogleCloud", NDPI_PROTOCOL_CATEGORY_CLOUD, + ndpi_build_default_ports(ports_a, 0, 0, 0, 0, 0) /* TCP */, + ndpi_build_default_ports(ports_b, 0, 0, 0, 0, 0) /* UDP */); #ifdef CUSTOM_NDPI_PROTOCOLS #include "../../../nDPI-custom/custom_ndpi_main.c" @@ -2417,6 +2423,10 @@ struct ndpi_detection_module_struct *ndpi_init_detection_module(ndpi_init_prefs ndpi_init_ptree_ipv4(ndpi_str, ndpi_str->protocols_ptree, ndpi_protocol_ms_outlook_protocol_list); ndpi_init_ptree_ipv4(ndpi_str, ndpi_str->protocols_ptree, ndpi_protocol_skype_teams_protocol_list); } + if(!(prefs & ndpi_dont_load_google_list)) + ndpi_init_ptree_ipv4(ndpi_str, ndpi_str->protocols_ptree, ndpi_protocol_google_protocol_list); + if(!(prefs & ndpi_dont_load_google_cloud_list)) + ndpi_init_ptree_ipv4(ndpi_str, ndpi_str->protocols_ptree, ndpi_protocol_google_cloud_protocol_list); } ndpi_str->ip_risk_mask_ptree = ndpi_patricia_new(32 /* IPv4 */); diff --git a/tests/result/anyconnect-vpn.pcap.out b/tests/result/anyconnect-vpn.pcap.out index b2e97e5a2..dbca63334 100644 --- a/tests/result/anyconnect-vpn.pcap.out +++ b/tests/result/anyconnect-vpn.pcap.out @@ -4,8 +4,8 @@ DPI Packets (TCP): 174 (7.91 pkts/flow) DPI Packets (UDP): 90 (2.43 pkts/flow) DPI Packets (other): 10 (1.00 pkts/flow) Confidence Unknown : 2 (flows) -Confidence Match by port : 6 (flows) -Confidence Match by IP : 4 (flows) +Confidence Match by port : 5 (flows) +Confidence Match by IP : 5 (flows) Confidence DPI : 57 (flows) Unknown 19 1054 2 @@ -16,7 +16,7 @@ NetBIOS 15 1542 1 SSDP 15 5625 9 ICMP 2 126 2 IGMP 8 378 6 -TLS 255 78703 7 +TLS 251 78369 6 ICMPV6 18 2964 2 Slack 29 4979 2 Google 2 132 1 @@ -25,6 +25,7 @@ Apple 2 297 1 CiscoVPN 2474 896875 3 ApplePush 11 1325 4 AmazonAWS 36 3540 3 +GoogleCloud 4 334 1 JA3 Host Stats: IP Address # JA3C @@ -64,7 +65,7 @@ JA3 Host Stats: 31 TCP 10.0.0.227:56916 -> 10.0.0.151:8009 [proto: 139/AJP][ClearText][Confidence: Match by port][cat: Web/5][5 pkts/390 bytes -> 0 pkts/0 bytes][Goodput ratio: 0/0][5.03 sec][Plen Bins: 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] 32 TCP 10.0.0.227:56886 <-> 17.57.144.116:5223 [proto: 238/ApplePush][Encrypted][Confidence: DPI][cat: Cloud/13][3 pkts/174 bytes <-> 2 pkts/185 bytes][Goodput ratio: 0/28][0.02 sec][Plen Bins: 0,100,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] 33 UDP 10.0.0.151:1900 -> 10.0.0.227:61328 [proto: 12/SSDP][ClearText][Confidence: DPI][cat: System/18][1 pkts/353 bytes -> 0 pkts/0 bytes][Goodput ratio: 88/0][< 1 sec][PLAIN TEXT (HTTP/1.1 200 OK)][Plen Bins: 0,0,0,0,0,0,0,0,0,100,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] - 34 TCP 10.0.0.227:56910 <-> 35.201.124.9:443 [proto: 91/TLS][Encrypted][Confidence: Match by port][cat: Web/5][2 pkts/170 bytes <-> 2 pkts/164 bytes][Goodput ratio: 22/19][0.05 sec][Plen Bins: 0,100,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] + 34 TCP 10.0.0.227:56910 <-> 35.201.124.9:443 [proto: 91.284/TLS.GoogleCloud][Encrypted][Confidence: Match by IP][cat: Cloud/13][2 pkts/170 bytes <-> 2 pkts/164 bytes][Goodput ratio: 22/19][0.05 sec][Plen Bins: 0,100,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] 35 UDP 10.0.0.227:62427 <-> 75.75.75.75:53 [proto: 5/DNS][ClearText][Confidence: DPI][cat: ConnCheck/30][1 pkts/84 bytes <-> 1 pkts/242 bytes][Goodput ratio: 49/82][0.02 sec][Hostname/SNI: detectportal.firefox.com][184.25.56.82][PLAIN TEXT (detectportal)][Plen Bins: 0,50,0,0,0,0,50,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] 36 UDP 10.0.0.227:58074 <-> 75.75.75.75:53 [proto: 5/DNS][ClearText][Confidence: DPI][cat: Network/14][1 pkts/75 bytes <-> 1 pkts/230 bytes][Goodput ratio: 43/81][0.01 sec][Hostname/SNI: www.outlook.com][40.97.222.34][PLAIN TEXT (outlook)][Plen Bins: 0,50,0,0,0,50,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] 37 UDP 10.0.0.227:60341 <-> 75.75.75.75:53 [proto: 5.140/DNS.Apple][ClearText][Confidence: DPI][cat: Web/5][1 pkts/73 bytes <-> 1 pkts/224 bytes][Goodput ratio: 42/81][0.01 sec][Hostname/SNI: www.apple.com][184.27.115.161][PLAIN TEXT (edgekey)][Plen Bins: 50,0,0,0,0,50,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] diff --git a/tests/result/dtls_certificate_fragments.pcap.out b/tests/result/dtls_certificate_fragments.pcap.out index 685f4f893..3197af620 100644 --- a/tests/result/dtls_certificate_fragments.pcap.out +++ b/tests/result/dtls_certificate_fragments.pcap.out @@ -3,11 +3,11 @@ Guessed flow protos: 0 DPI Packets (UDP): 4 (4.00 pkts/flow) Confidence DPI : 1 (flows) -DTLS 20 5978 1 +GoogleCloud 20 5978 1 JA3 Host Stats: IP Address # JA3C 1 10.186.198.149 1 - 1 UDP 10.186.198.149:39347 <-> 35.210.59.134:44443 [proto: 30/DTLS][Encrypted][Confidence: DPI][cat: Web/5][11 pkts/2624 bytes <-> 9 pkts/3354 bytes][Goodput ratio: 82/89][2.92 sec][bytes ratio: -0.122 (Mixed)][IAT c2s/s2c min/avg/max/stddev: 0/0 324/76 2179/186 659/75][Pkt Len c2s/s2c min/avg/max/stddev: 167/90 239/373 416/1454 97/388][Risk: ** Weak TLS Cipher **** TLS (probably) Not Carrying HTTPS **** Missing SNI TLS Extension **][Risk Score: 160][DTLSv1.2][JA3C: 3c3d129780d0066cd8936a6291a8d44f][JA3S: d45798bc098cd930de7eb2f5f866e994 (WEAK)][Firefox][Cipher: TLS_RSA_WITH_AES_256_CBC_SHA][PLAIN TEXT (Opera Software ASA1)][Plen Bins: 0,5,0,35,5,10,10,0,10,10,5,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0] + 1 UDP 10.186.198.149:39347 <-> 35.210.59.134:44443 [proto: 30.284/DTLS.GoogleCloud][Encrypted][Confidence: DPI][cat: Cloud/13][11 pkts/2624 bytes <-> 9 pkts/3354 bytes][Goodput ratio: 82/89][2.92 sec][bytes ratio: -0.122 (Mixed)][IAT c2s/s2c min/avg/max/stddev: 0/0 324/76 2179/186 659/75][Pkt Len c2s/s2c min/avg/max/stddev: 167/90 239/373 416/1454 97/388][Risk: ** Weak TLS Cipher **** TLS (probably) Not Carrying HTTPS **** Missing SNI TLS Extension **][Risk Score: 160][DTLSv1.2][JA3C: 3c3d129780d0066cd8936a6291a8d44f][JA3S: d45798bc098cd930de7eb2f5f866e994 (WEAK)][Firefox][Cipher: TLS_RSA_WITH_AES_256_CBC_SHA][PLAIN TEXT (Opera Software ASA1)][Plen Bins: 0,5,0,35,5,10,10,0,10,10,5,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0] diff --git a/tests/result/ethereum.pcap.out b/tests/result/ethereum.pcap.out index 46670c020..5a73ec33e 100644 --- a/tests/result/ethereum.pcap.out +++ b/tests/result/ethereum.pcap.out @@ -2,12 +2,13 @@ Guessed flow protos: 3 DPI Packets (TCP): 217 (3.88 pkts/flow) DPI Packets (UDP): 18 (1.00 pkts/flow) -Confidence Match by port : 2 (flows) -Confidence Match by IP : 1 (flows) +Confidence Match by port : 1 (flows) +Confidence Match by IP : 2 (flows) Confidence DPI : 71 (flows) -Mining 1999 216033 73 +Mining 1997 215877 72 AmazonAWS 1 78 1 +GoogleCloud 2 156 1 1 TCP 192.168.1.184:56626 <-> 178.128.195.220:30303 [proto: 42/Mining][ClearText][Confidence: DPI][cat: Mining/99][32 pkts/3294 bytes <-> 37 pkts/3156 bytes][Goodput ratio: 36/21][0.16 sec][ETH][bytes ratio: 0.021 (Mixed)][IAT c2s/s2c min/avg/max/stddev: 0/0 2/4 42/62 8/14][Pkt Len c2s/s2c min/avg/max/stddev: 66/60 103/85 612/470 105/69][Risk: ** Unsafe Protocol **][Risk Score: 10][Plen Bins: 62,21,0,3,3,0,0,0,3,0,0,0,3,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] 2 TCP 192.168.1.184:56638 <-> 209.250.240.205:30303 [proto: 42/Mining][ClearText][Confidence: DPI][cat: Mining/99][34 pkts/3347 bytes <-> 28 pkts/2774 bytes][Goodput ratio: 34/32][0.15 sec][ETH][bytes ratio: 0.094 (Mixed)][IAT c2s/s2c min/avg/max/stddev: 0/0 5/3 43/41 12/10][Pkt Len c2s/s2c min/avg/max/stddev: 54/60 98/99 481/560 79/95][Risk: ** Unsafe Protocol **][Risk Score: 10][Plen Bins: 43,29,0,14,3,3,0,0,0,0,0,0,3,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] @@ -81,5 +82,5 @@ AmazonAWS 1 78 1 70 UDP 60.191.32.71:30303 -> 192.168.1.184:30303 [proto: 42/Mining][ClearText][Confidence: DPI][cat: Mining/99][1 pkts/171 bytes -> 0 pkts/0 bytes][Goodput ratio: 75/0][< 1 sec][ETH][Risk: ** Unsafe Protocol **][Risk Score: 10][Plen Bins: 0,0,0,0,100,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] 71 UDP 192.168.1.184:30303 -> 106.12.39.168:30333 [proto: 42/Mining][ClearText][Confidence: DPI][cat: Mining/99][1 pkts/170 bytes -> 0 pkts/0 bytes][Goodput ratio: 75/0][< 1 sec][ETH][Risk: ** Unsafe Protocol **][Risk Score: 10][Plen Bins: 0,0,0,0,100,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] 72 TCP 192.168.1.184:56625 -> 5.1.83.226:30303 [proto: 42/Mining][ClearText][Confidence: Match by port][cat: Mining/99][2 pkts/156 bytes -> 0 pkts/0 bytes][Goodput ratio: 0/0][1.10 sec][Risk: ** Unsafe Protocol **][Risk Score: 10][Plen Bins: 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] - 73 TCP 192.168.1.184:56637 -> 35.233.197.131:30303 [proto: 42/Mining][ClearText][Confidence: Match by port][cat: Mining/99][2 pkts/156 bytes -> 0 pkts/0 bytes][Goodput ratio: 0/0][1.11 sec][Risk: ** Unsafe Protocol **][Risk Score: 10][Plen Bins: 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] + 73 TCP 192.168.1.184:56637 -> 35.233.197.131:30303 [proto: 42.284/Mining.GoogleCloud][ClearText][Confidence: Match by IP][cat: Cloud/13][2 pkts/156 bytes -> 0 pkts/0 bytes][Goodput ratio: 0/0][1.11 sec][Plen Bins: 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] 74 TCP 192.168.1.184:56644 -> 13.230.108.42:30303 [proto: 42.265/Mining.AmazonAWS][ClearText][Confidence: Match by IP][cat: Cloud/13][1 pkts/78 bytes -> 0 pkts/0 bytes][Goodput ratio: 0/0][< 1 sec][Plen Bins: 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] diff --git a/tests/result/quic_frags_ch_out_of_order_same_packet_craziness.pcapng.out b/tests/result/quic_frags_ch_out_of_order_same_packet_craziness.pcapng.out index c74326ca4..cc81070e1 100644 --- a/tests/result/quic_frags_ch_out_of_order_same_packet_craziness.pcapng.out +++ b/tests/result/quic_frags_ch_out_of_order_same_packet_craziness.pcapng.out @@ -3,10 +3,11 @@ Guessed flow protos: 113 DPI Packets (UDP): 179 (1.58 pkts/flow) Confidence DPI : 113 (flows) -Google 6 8352 2 -QUIC 130 180960 100 +Google 7 9744 3 +QUIC 126 175392 96 GoogleServices 4 5568 1 Azure 39 54288 10 +GoogleCloud 3 4176 3 JA3 Host Stats: IP Address # JA3C @@ -49,7 +50,7 @@ JA3 Host Stats: 31 UDP 159.117.176.124:51856 -> 16.205.123.234:443 [proto: 188/QUIC][Encrypted][Confidence: DPI][cat: Web/5][1 pkts/1392 bytes -> 0 pkts/0 bytes][Goodput ratio: 97/0][< 1 sec][Plen Bins: 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,100,0,0,0,0,0] 32 UDP 168.144.64.5:49153 -> 153.98.28.78:443 [proto: 188/QUIC][Encrypted][Confidence: DPI][cat: Web/5][1 pkts/1392 bytes -> 0 pkts/0 bytes][Goodput ratio: 97/0][< 1 sec][Plen Bins: 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,100,0,0,0,0,0] 33 UDP 168.144.64.5:49217 -> 185.186.183.185:443 [proto: 188/QUIC][Encrypted][Confidence: DPI][cat: Web/5][1 pkts/1392 bytes -> 0 pkts/0 bytes][Goodput ratio: 97/0][< 1 sec][Plen Bins: 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,100,0,0,0,0,0] - 34 UDP 168.144.64.5:49324 -> 35.194.157.47:443 [proto: 188/QUIC][Encrypted][Confidence: DPI][cat: Web/5][1 pkts/1392 bytes -> 0 pkts/0 bytes][Goodput ratio: 97/0][< 1 sec][Plen Bins: 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,100,0,0,0,0,0] + 34 UDP 168.144.64.5:49324 -> 35.194.157.47:443 [proto: 188.284/QUIC.GoogleCloud][Encrypted][Confidence: DPI][cat: Cloud/13][1 pkts/1392 bytes -> 0 pkts/0 bytes][Goodput ratio: 97/0][< 1 sec][Plen Bins: 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,100,0,0,0,0,0] 35 UDP 168.144.64.5:49860 -> 113.250.137.243:443 [proto: 188/QUIC][Encrypted][Confidence: DPI][cat: Web/5][1 pkts/1392 bytes -> 0 pkts/0 bytes][Goodput ratio: 97/0][< 1 sec][Plen Bins: 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,100,0,0,0,0,0] 36 UDP 168.144.64.5:49926 -> 103.179.40.184:443 [proto: 188/QUIC][Encrypted][Confidence: DPI][cat: Web/5][1 pkts/1392 bytes -> 0 pkts/0 bytes][Goodput ratio: 97/0][< 1 sec][Plen Bins: 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,100,0,0,0,0,0] 37 UDP 168.144.64.5:50023 -> 76.231.104.92:443 [proto: 188/QUIC][Encrypted][Confidence: DPI][cat: Web/5][1 pkts/1392 bytes -> 0 pkts/0 bytes][Goodput ratio: 97/0][< 1 sec][PLAIN TEXT (TJdZNR)][Plen Bins: 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,100,0,0,0,0,0] @@ -72,7 +73,7 @@ JA3 Host Stats: 54 UDP 168.144.64.5:54449 -> 102.194.207.179:443 [proto: 188/QUIC][Encrypted][Confidence: DPI][cat: Web/5][1 pkts/1392 bytes -> 0 pkts/0 bytes][Goodput ratio: 97/0][< 1 sec][Plen Bins: 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,100,0,0,0,0,0] 55 UDP 168.144.64.5:55066 -> 128.248.24.1:443 [proto: 188/QUIC][Encrypted][Confidence: DPI][cat: Web/5][1 pkts/1392 bytes -> 0 pkts/0 bytes][Goodput ratio: 97/0][< 1 sec][Plen Bins: 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,100,0,0,0,0,0] 56 UDP 168.144.64.5:55479 -> 113.250.137.243:443 [proto: 188/QUIC][Encrypted][Confidence: DPI][cat: Web/5][1 pkts/1392 bytes -> 0 pkts/0 bytes][Goodput ratio: 97/0][< 1 sec][Plen Bins: 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,100,0,0,0,0,0] - 57 UDP 168.144.64.5:55561 -> 35.194.157.47:443 [proto: 188/QUIC][Encrypted][Confidence: DPI][cat: Web/5][1 pkts/1392 bytes -> 0 pkts/0 bytes][Goodput ratio: 97/0][< 1 sec][Plen Bins: 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,100,0,0,0,0,0] + 57 UDP 168.144.64.5:55561 -> 35.194.157.47:443 [proto: 188.284/QUIC.GoogleCloud][Encrypted][Confidence: DPI][cat: Cloud/13][1 pkts/1392 bytes -> 0 pkts/0 bytes][Goodput ratio: 97/0][< 1 sec][Plen Bins: 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,100,0,0,0,0,0] 58 UDP 168.144.64.5:55572 -> 117.148.117.30:443 [proto: 188/QUIC][Encrypted][Confidence: DPI][cat: Web/5][1 pkts/1392 bytes -> 0 pkts/0 bytes][Goodput ratio: 97/0][< 1 sec][Plen Bins: 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,100,0,0,0,0,0] 59 UDP 168.144.64.5:55637 -> 169.81.163.225:443 [proto: 188/QUIC][Encrypted][Confidence: DPI][cat: Web/5][1 pkts/1392 bytes -> 0 pkts/0 bytes][Goodput ratio: 97/0][< 1 sec][Plen Bins: 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,100,0,0,0,0,0] 60 UDP 168.144.64.5:55844 -> 112.1.105.138:443 [proto: 188/QUIC][Encrypted][Confidence: DPI][cat: Web/5][1 pkts/1392 bytes -> 0 pkts/0 bytes][Goodput ratio: 97/0][< 1 sec][Plen Bins: 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,100,0,0,0,0,0] @@ -105,10 +106,10 @@ JA3 Host Stats: 87 UDP 168.144.64.5:60934 -> 128.248.24.1:443 [proto: 188/QUIC][Encrypted][Confidence: DPI][cat: Web/5][1 pkts/1392 bytes -> 0 pkts/0 bytes][Goodput ratio: 97/0][< 1 sec][Plen Bins: 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,100,0,0,0,0,0] 88 UDP 168.144.64.5:60936 -> 9.65.169.252:443 [proto: 188/QUIC][Encrypted][Confidence: DPI][cat: Web/5][1 pkts/1392 bytes -> 0 pkts/0 bytes][Goodput ratio: 97/0][< 1 sec][Plen Bins: 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,100,0,0,0,0,0] 89 UDP 168.144.64.5:60949 -> 185.186.183.185:443 [proto: 188/QUIC][Encrypted][Confidence: DPI][cat: Web/5][1 pkts/1392 bytes -> 0 pkts/0 bytes][Goodput ratio: 97/0][< 1 sec][Plen Bins: 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,100,0,0,0,0,0] - 90 UDP 168.144.64.5:61209 -> 35.194.157.47:443 [proto: 188/QUIC][Encrypted][Confidence: DPI][cat: Web/5][1 pkts/1392 bytes -> 0 pkts/0 bytes][Goodput ratio: 97/0][< 1 sec][Plen Bins: 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,100,0,0,0,0,0] + 90 UDP 168.144.64.5:61209 -> 35.194.157.47:443 [proto: 188.284/QUIC.GoogleCloud][Encrypted][Confidence: DPI][cat: Cloud/13][1 pkts/1392 bytes -> 0 pkts/0 bytes][Goodput ratio: 97/0][< 1 sec][Plen Bins: 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,100,0,0,0,0,0] 91 UDP 168.144.64.5:61341 -> 16.232.218.117:443 [proto: 188/QUIC][Encrypted][Confidence: DPI][cat: Web/5][1 pkts/1392 bytes -> 0 pkts/0 bytes][Goodput ratio: 97/0][< 1 sec][Plen Bins: 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,100,0,0,0,0,0] 92 UDP 168.144.64.5:61886 -> 65.33.51.74:443 [proto: 188/QUIC][Encrypted][Confidence: DPI][cat: Web/5][1 pkts/1392 bytes -> 0 pkts/0 bytes][Goodput ratio: 97/0][< 1 sec][Plen Bins: 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,100,0,0,0,0,0] - 93 UDP 168.144.64.5:62047 -> 136.125.67.96:443 [proto: 188/QUIC][Encrypted][Confidence: DPI][cat: Web/5][1 pkts/1392 bytes -> 0 pkts/0 bytes][Goodput ratio: 97/0][< 1 sec][Plen Bins: 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,100,0,0,0,0,0] + 93 UDP 168.144.64.5:62047 -> 136.125.67.96:443 [proto: 188.126/QUIC.Google][Encrypted][Confidence: DPI][cat: Web/5][1 pkts/1392 bytes -> 0 pkts/0 bytes][Goodput ratio: 97/0][< 1 sec][Plen Bins: 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,100,0,0,0,0,0] 94 UDP 168.144.64.5:62652 -> 158.146.215.30:443 [proto: 188/QUIC][Encrypted][Confidence: DPI][cat: Web/5][1 pkts/1392 bytes -> 0 pkts/0 bytes][Goodput ratio: 97/0][< 1 sec][Plen Bins: 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,100,0,0,0,0,0] 95 UDP 168.144.64.5:62818 -> 113.250.137.243:443 [proto: 188/QUIC][Encrypted][Confidence: DPI][cat: Web/5][1 pkts/1392 bytes -> 0 pkts/0 bytes][Goodput ratio: 97/0][< 1 sec][Plen Bins: 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,100,0,0,0,0,0] 96 UDP 168.144.64.5:63136 -> 9.65.169.252:443 [proto: 188/QUIC][Encrypted][Confidence: DPI][cat: Web/5][1 pkts/1392 bytes -> 0 pkts/0 bytes][Goodput ratio: 97/0][< 1 sec][Plen Bins: 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,100,0,0,0,0,0] diff --git a/tests/result/ssl-cert-name-mismatch.pcap.out b/tests/result/ssl-cert-name-mismatch.pcap.out index eb83fad33..fe541fe63 100644 --- a/tests/result/ssl-cert-name-mismatch.pcap.out +++ b/tests/result/ssl-cert-name-mismatch.pcap.out @@ -3,11 +3,11 @@ Guessed flow protos: 0 DPI Packets (TCP): 10 (10.00 pkts/flow) Confidence DPI : 1 (flows) -Google 21 5412 1 +GoogleCloud 21 5412 1 JA3 Host Stats: IP Address # JA3C 1 192.168.2.222 1 - 1 TCP 192.168.2.222:54772 <-> 104.154.89.105:443 [proto: 91.126/TLS.Google][Encrypted][Confidence: DPI][cat: Web/5][11 pkts/1136 bytes <-> 10 pkts/4276 bytes][Goodput ratio: 35/84][0.72 sec][Hostname/SNI: wrong.host.badssl.com][ALPN: http/1.1][bytes ratio: -0.580 (Download)][IAT c2s/s2c min/avg/max/stddev: 0/0 79/48 167/160 64/68][Pkt Len c2s/s2c min/avg/max/stddev: 66/66 103/428 311/1474 70/548][TLSv1.2][JA3C: 4e69e4e5627c5e4c2846ba3e64d23fb9][ServerNames: *.badssl.com,badssl.com][JA3S: b898351eb5e266aefd3723d466935494][Issuer: C=US, O=DigiCert Inc, CN=DigiCert SHA2 Secure Server CA][Subject: C=US, ST=California, L=Walnut Creek, O=Lucas Garron Torres, CN=*.badssl.com][Certificate SHA-1: 18:45:B2:16:EF:D0:83:9A:18:51:A9:57:32:5D:A3:36:21:70:49:CB][Firefox][Validity: 2020-03-23 00:00:00 - 2022-05-17 12:00:00][Cipher: TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256][Plen Bins: 12,12,12,0,0,0,0,12,12,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,25,0,0,0] + 1 TCP 192.168.2.222:54772 <-> 104.154.89.105:443 [proto: 91.284/TLS.GoogleCloud][Encrypted][Confidence: DPI][cat: Cloud/13][11 pkts/1136 bytes <-> 10 pkts/4276 bytes][Goodput ratio: 35/84][0.72 sec][Hostname/SNI: wrong.host.badssl.com][ALPN: http/1.1][bytes ratio: -0.580 (Download)][IAT c2s/s2c min/avg/max/stddev: 0/0 79/48 167/160 64/68][Pkt Len c2s/s2c min/avg/max/stddev: 66/66 103/428 311/1474 70/548][TLSv1.2][JA3C: 4e69e4e5627c5e4c2846ba3e64d23fb9][ServerNames: *.badssl.com,badssl.com][JA3S: b898351eb5e266aefd3723d466935494][Issuer: C=US, O=DigiCert Inc, CN=DigiCert SHA2 Secure Server CA][Subject: C=US, ST=California, L=Walnut Creek, O=Lucas Garron Torres, CN=*.badssl.com][Certificate SHA-1: 18:45:B2:16:EF:D0:83:9A:18:51:A9:57:32:5D:A3:36:21:70:49:CB][Firefox][Validity: 2020-03-23 00:00:00 - 2022-05-17 12:00:00][Cipher: TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256][Plen Bins: 12,12,12,0,0,0,0,12,12,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,25,0,0,0] diff --git a/tests/result/synscan.pcap.out b/tests/result/synscan.pcap.out index 68aa216d9..7a964d9a8 100644 --- a/tests/result/synscan.pcap.out +++ b/tests/result/synscan.pcap.out @@ -104,7 +104,7 @@ iSCSI 2 116 2 43 TCP 172.16.0.8:36050 -> 64.13.134.52:2605 [proto: 13/BGP][ClearText][Confidence: Match by port][cat: Network/14][1 pkts/58 bytes -> 0 pkts/0 bytes][Goodput ratio: 0/0][< 1 sec][Plen Bins: 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] 44 TCP 172.16.0.8:36050 -> 64.13.134.52:3000 [proto: 26/ntop][ClearText][Confidence: Match by port][cat: Network/14][1 pkts/58 bytes -> 0 pkts/0 bytes][Goodput ratio: 0/0][< 1 sec][Plen Bins: 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] 45 TCP 172.16.0.8:36050 -> 64.13.134.52:3128 [proto: 131/HTTP_Proxy][ClearText][Confidence: Match by port][cat: Web/5][1 pkts/58 bytes -> 0 pkts/0 bytes][Goodput ratio: 0/0][< 1 sec][Plen Bins: 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] - 46 TCP 172.16.0.8:36050 -> 64.13.134.52:3260 [proto: 284/iSCSI][ClearText][Confidence: Match by port][1 pkts/58 bytes -> 0 pkts/0 bytes][Goodput ratio: 0/0][< 1 sec][Plen Bins: 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] + 46 TCP 172.16.0.8:36050 -> 64.13.134.52:3260 [proto: 285/iSCSI][ClearText][Confidence: Match by port][1 pkts/58 bytes -> 0 pkts/0 bytes][Goodput ratio: 0/0][< 1 sec][Plen Bins: 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] 47 TCP 172.16.0.8:36050 -> 64.13.134.52:3306 [proto: 20/MySQL][ClearText][Confidence: Match by port][cat: Database/11][1 pkts/58 bytes -> 0 pkts/0 bytes][Goodput ratio: 0/0][< 1 sec][Plen Bins: 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] 48 TCP 172.16.0.8:36050 -> 64.13.134.52:3389 [proto: 88/RDP][ClearText][Confidence: Match by port][cat: RemoteAccess/12][1 pkts/58 bytes -> 0 pkts/0 bytes][Goodput ratio: 0/0][< 1 sec][Risk: ** Desktop/File Sharing Session **][Risk Score: 10][Plen Bins: 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] 49 TCP 172.16.0.8:36050 -> 64.13.134.52:4343 [proto: 170/Whois-DAS][ClearText][Confidence: Match by port][cat: Network/14][1 pkts/58 bytes -> 0 pkts/0 bytes][Goodput ratio: 0/0][< 1 sec][Plen Bins: 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] @@ -165,7 +165,7 @@ iSCSI 2 116 2 104 TCP 172.16.0.8:36051 -> 64.13.134.52:2605 [proto: 13/BGP][ClearText][Confidence: Match by port][cat: Network/14][1 pkts/58 bytes -> 0 pkts/0 bytes][Goodput ratio: 0/0][< 1 sec][Plen Bins: 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] 105 TCP 172.16.0.8:36051 -> 64.13.134.52:3000 [proto: 26/ntop][ClearText][Confidence: Match by port][cat: Network/14][1 pkts/58 bytes -> 0 pkts/0 bytes][Goodput ratio: 0/0][< 1 sec][Plen Bins: 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] 106 TCP 172.16.0.8:36051 -> 64.13.134.52:3128 [proto: 131/HTTP_Proxy][ClearText][Confidence: Match by port][cat: Web/5][1 pkts/58 bytes -> 0 pkts/0 bytes][Goodput ratio: 0/0][< 1 sec][Plen Bins: 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] - 107 TCP 172.16.0.8:36051 -> 64.13.134.52:3260 [proto: 284/iSCSI][ClearText][Confidence: Match by port][1 pkts/58 bytes -> 0 pkts/0 bytes][Goodput ratio: 0/0][< 1 sec][Plen Bins: 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] + 107 TCP 172.16.0.8:36051 -> 64.13.134.52:3260 [proto: 285/iSCSI][ClearText][Confidence: Match by port][1 pkts/58 bytes -> 0 pkts/0 bytes][Goodput ratio: 0/0][< 1 sec][Plen Bins: 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] 108 TCP 172.16.0.8:36051 -> 64.13.134.52:3306 [proto: 20/MySQL][ClearText][Confidence: Match by port][cat: Database/11][1 pkts/58 bytes -> 0 pkts/0 bytes][Goodput ratio: 0/0][< 1 sec][Plen Bins: 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] 109 TCP 172.16.0.8:36051 -> 64.13.134.52:3389 [proto: 88/RDP][ClearText][Confidence: Match by port][cat: RemoteAccess/12][1 pkts/58 bytes -> 0 pkts/0 bytes][Goodput ratio: 0/0][< 1 sec][Risk: ** Desktop/File Sharing Session **][Risk Score: 10][Plen Bins: 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] 110 TCP 172.16.0.8:36051 -> 64.13.134.52:4343 [proto: 170/Whois-DAS][ClearText][Confidence: Match by port][cat: Network/14][1 pkts/58 bytes -> 0 pkts/0 bytes][Goodput ratio: 0/0][< 1 sec][Plen Bins: 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] diff --git a/tests/result/tls_certificate_too_long.pcap.out b/tests/result/tls_certificate_too_long.pcap.out index 4abdb5ddf..c6f0c8960 100644 --- a/tests/result/tls_certificate_too_long.pcap.out +++ b/tests/result/tls_certificate_too_long.pcap.out @@ -14,10 +14,11 @@ NTP 8 720 4 Outlook 126 53776 2 IGMP 2 92 2 TLS 4 283 1 -Google 30 3310 5 +Google 26 2980 4 Apple 2 273 1 Microsoft 121 47561 14 Azure 4 414 2 +GoogleCloud 4 330 1 JA3 Host Stats: IP Address # JA3C @@ -40,7 +41,7 @@ JA3 Host Stats: 14 UDP 192.168.1.121:51998 <-> 8.8.8.8:53 [proto: 5.126/DNS.Google][ClearText][Confidence: DPI][cat: Web/5][3 pkts/255 bytes <-> 3 pkts/449 bytes][Goodput ratio: 50/72][1.02 sec][Hostname/SNI: 235.33.22.2.in-addr.arpa][::][bytes ratio: -0.276 (Download)][IAT c2s/s2c min/avg/max/stddev: 999/996 500/498 999/996 500/498][Pkt Len c2s/s2c min/avg/max/stddev: 84/131 85/150 86/171 1/16][PLAIN TEXT (deploy)][Plen Bins: 0,51,16,16,16,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] 15 UDP 192.168.1.121:5353 -> 192.168.1.139:5353 [proto: 8/MDNS][ClearText][Confidence: DPI][cat: Network/14][1 pkts/383 bytes -> 0 pkts/0 bytes][Goodput ratio: 89/0][< 1 sec][Hostname/SNI: _companion-link._tcp.local][_companion-link._tcp.local][PLAIN TEXT (companion)][Plen Bins: 0,0,0,0,0,0,0,0,0,0,100,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] 16 UDP 192.168.1.121:51364 <-> 8.8.8.8:53 [proto: 5.212/DNS.Microsoft][ClearText][Confidence: DPI][cat: Cloud/13][1 pkts/77 bytes <-> 1 pkts/289 bytes][Goodput ratio: 45/85][0.01 sec][Hostname/SNI: www.microsoft.com][::][PLAIN TEXT (microsoft)][Plen Bins: 0,50,0,0,0,0,0,50,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] - 17 TCP 130.211.33.145:443 <-> 192.168.1.121:53432 [proto: 91.126/TLS.Google][Encrypted][Confidence: Match by IP][cat: Web/5][2 pkts/163 bytes <-> 2 pkts/167 bytes][Goodput ratio: 19/21][0.01 sec][Plen Bins: 50,50,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] + 17 TCP 130.211.33.145:443 <-> 192.168.1.121:53432 [proto: 91.284/TLS.GoogleCloud][Encrypted][Confidence: Match by IP][cat: Cloud/13][2 pkts/163 bytes <-> 2 pkts/167 bytes][Goodput ratio: 19/21][0.01 sec][Plen Bins: 50,50,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] 18 UDP 192.168.1.121:55567 <-> 8.8.8.8:53 [proto: 5.212/DNS.Microsoft][ClearText][Confidence: DPI][cat: Cloud/13][1 pkts/78 bytes <-> 1 pkts/250 bytes][Goodput ratio: 46/83][0.07 sec][Hostname/SNI: wdcp.microsoft.com][::][PLAIN TEXT (microsoft)][Plen Bins: 0,50,0,0,0,0,50,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] 19 UDP 192.168.1.121:58161 <-> 8.8.8.8:53 [proto: 5.212/DNS.Microsoft][ClearText][Confidence: DPI][cat: Cloud/13][1 pkts/77 bytes <-> 1 pkts/244 bytes][Goodput ratio: 45/82][0.03 sec][Hostname/SNI: www.microsoft.com][2.22.33.235][PLAIN TEXT (microsoft)][Plen Bins: 0,50,0,0,0,0,50,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] 20 UDP [fe80::1059:a858:f9e7:cf94]:5353 -> [ff02::fb]:5353 [proto: 8/MDNS][ClearText][Confidence: DPI][cat: Network/14][2 pkts/320 bytes -> 0 pkts/0 bytes][Goodput ratio: 61/0][1.02 sec][Hostname/SNI: _companion-link._tcp.local][_companion-link._tcp.local][PLAIN TEXT (companion)][Plen Bins: 0,0,50,50,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] diff --git a/tests/result/zoom.pcap.out b/tests/result/zoom.pcap.out index 0825230fe..9f006ae89 100644 --- a/tests/result/zoom.pcap.out +++ b/tests/result/zoom.pcap.out @@ -15,11 +15,12 @@ DHCP 1 321 1 ntop 20 4265 1 IMAPS 2 226 1 ICMP 3 210 2 -Google 22 7791 2 +Google 6 952 1 Spotify 1 86 1 Zoom 635 354005 19 GoogleServices 4 1060 1 AmazonAWS 2 114 1 +GoogleCloud 16 6839 1 JA3 Host Stats: IP Address # JA3C @@ -35,7 +36,7 @@ JA3 Host Stats: 7 TCP 192.168.1.117:54867 <-> 213.19.144.105:443 [proto: 91.189/TLS.Zoom][Encrypted][Confidence: DPI][cat: Video/26][16 pkts/2468 bytes <-> 13 pkts/7188 bytes][Goodput ratio: 58/88][0.42 sec][Hostname/SNI: zoomam105zc.zoom.us][bytes ratio: -0.489 (Download)][IAT c2s/s2c min/avg/max/stddev: 0/0 30/43 147/178 40/63][Pkt Len c2s/s2c min/avg/max/stddev: 54/60 154/553 642/1506 179/612][Risk: ** TLS (probably) Not Carrying HTTPS **][Risk Score: 10][TLSv1.2][JA3C: c51de225944b7d58d48c0f99f86ba8e6][ServerNames: *.zoom.us,zoom.us][JA3S: ada793d0f02b028a6c840504edccb652][Issuer: C=US, ST=Arizona, L=Scottsdale, O=GoDaddy.com, Inc., OU=http://certs.godaddy.com/repository/, CN=Go Daddy Secure Certificate Authority - G2][Subject: OU=Domain Control Validated, CN=*.zoom.us][Certificate SHA-1: F7:5A:83:A8:77:24:55:D7:6D:2E:93:F6:6E:9C:C9:7E:AD:9B:3B:E8][Firefox][Validity: 2019-03-25 19:38:42 - 2021-03-25 19:38:42][Cipher: TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256][Plen Bins: 21,6,6,6,6,0,0,6,0,0,0,0,0,6,0,0,6,0,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,0,0,0,21,0,0] 8 TCP 192.168.1.117:54870 <-> 213.244.140.84:443 [proto: 91.189/TLS.Zoom][Encrypted][Confidence: DPI][cat: Video/26][16 pkts/1832 bytes <-> 12 pkts/6702 bytes][Goodput ratio: 44/88][0.38 sec][Hostname/SNI: zoomfr84zc.zoom.us][bytes ratio: -0.571 (Download)][IAT c2s/s2c min/avg/max/stddev: 0/0 28/40 187/280 49/91][Pkt Len c2s/s2c min/avg/max/stddev: 54/66 114/558 583/1506 129/636][Risk: ** TLS (probably) Not Carrying HTTPS **][Risk Score: 10][TLSv1.2][JA3C: c51de225944b7d58d48c0f99f86ba8e6][ServerNames: *.zoom.us,zoom.us][JA3S: ada793d0f02b028a6c840504edccb652][Issuer: C=US, ST=Arizona, L=Scottsdale, O=GoDaddy.com, Inc., OU=http://certs.godaddy.com/repository/, CN=Go Daddy Secure Certificate Authority - G2][Subject: OU=Domain Control Validated, CN=*.zoom.us][Certificate SHA-1: F7:5A:83:A8:77:24:55:D7:6D:2E:93:F6:6E:9C:C9:7E:AD:9B:3B:E8][Firefox][Validity: 2019-03-25 19:38:42 - 2021-03-25 19:38:42][Cipher: TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256][Plen Bins: 25,0,8,8,8,0,0,8,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,25,0,0] 9 TCP 192.168.1.117:54864 <-> 52.202.62.238:443 [proto: 91.189/TLS.Zoom][Encrypted][Confidence: DPI][cat: Video/26][10 pkts/2030 bytes <-> 8 pkts/6283 bytes][Goodput ratio: 72/93][0.47 sec][Hostname/SNI: log.zoom.us][ALPN: http/1.1][bytes ratio: -0.512 (Download)][IAT c2s/s2c min/avg/max/stddev: 2/0 58/40 110/131 50/57][Pkt Len c2s/s2c min/avg/max/stddev: 54/60 203/785 812/1506 256/675][TLSv1.2][JA3C: 535aca3d99fc247509cd50933cd71d37][ServerNames: *.zoom.us,zoom.us][JA3S: 3c30f2c064a3aed8cd95de8d68c726a6][Issuer: C=US, ST=Arizona, L=Scottsdale, O=GoDaddy.com, Inc., OU=http://certs.godaddy.com/repository/, CN=Go Daddy Secure Certificate Authority - G2][Subject: OU=Domain Control Validated, CN=*.zoom.us][Certificate SHA-1: F7:5A:83:A8:77:24:55:D7:6D:2E:93:F6:6E:9C:C9:7E:AD:9B:3B:E8][Firefox][Validity: 2019-03-25 19:38:42 - 2021-03-25 19:38:42][Cipher: TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256][Plen Bins: 0,11,0,0,0,22,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,33,0,0] - 10 TCP 192.168.1.117:53872 <-> 35.186.224.53:443 [proto: 91.126/TLS.Google][Encrypted][Confidence: Match by IP][cat: Web/5][8 pkts/2017 bytes <-> 8 pkts/4822 bytes][Goodput ratio: 74/89][0.07 sec][bytes ratio: -0.410 (Download)][IAT c2s/s2c min/avg/max/stddev: 0/0 10/10 58/45 22/16][Pkt Len c2s/s2c min/avg/max/stddev: 66/66 252/603 1434/1484 447/585][Plen Bins: 0,12,25,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,25,0,0,0] + 10 TCP 192.168.1.117:53872 <-> 35.186.224.53:443 [proto: 91.284/TLS.GoogleCloud][Encrypted][Confidence: Match by IP][cat: Cloud/13][8 pkts/2017 bytes <-> 8 pkts/4822 bytes][Goodput ratio: 74/89][0.07 sec][bytes ratio: -0.410 (Download)][IAT c2s/s2c min/avg/max/stddev: 0/0 10/10 58/45 22/16][Pkt Len c2s/s2c min/avg/max/stddev: 66/66 252/603 1434/1484 447/585][Plen Bins: 0,12,25,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,25,0,0,0] 11 TCP 192.168.1.117:54863 <-> 167.99.215.164:4434 [proto: 91.26/TLS.ntop][Encrypted][Confidence: DPI][cat: Network/14][10 pkts/2198 bytes <-> 10 pkts/2067 bytes][Goodput ratio: 69/68][5.26 sec][Hostname/SNI: dati.ntop.org][bytes ratio: 0.031 (Mixed)][IAT c2s/s2c min/avg/max/stddev: 0/0 645/740 5003/5003 1647/1741][Pkt Len c2s/s2c min/avg/max/stddev: 66/66 220/207 932/1292 283/364][Risk: ** Known Protocol on Non Standard Port **** TLS (probably) Not Carrying HTTPS **][Risk Score: 60][TLSv1.2][JA3C: a795593605a13211941d44505b4d1e39][JA3S: dd4b012f7a008e741554bd0a4ed12920][Firefox][Cipher: TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384][Plen Bins: 16,0,0,0,34,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,0,0] 12 TCP 192.168.1.117:54854 -> 172.217.21.72:443 [proto: 91.239/TLS.GoogleServices][Encrypted][Confidence: DPI][cat: Web/5][4 pkts/1060 bytes -> 0 pkts/0 bytes][Goodput ratio: 75/0][6.46 sec][Hostname/SNI: www.googletagmanager.com][ALPN: h2;h2-16;h2-15;h2-14;spdy/3.1;spdy/3;http/1.1][Risk: ** Obsolete TLS Version (1.1 or older) **][Risk Score: 100][TLSv1][JA3C: d78489b860c8bf7838a6ff0b4d131541][Plen Bins: 0,0,0,0,0,0,100,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] 13 TCP 192.168.1.117:53867 <-> 104.199.65.42:80 [proto: 7.126/HTTP.Google][ClearText][Confidence: Match by IP][cat: Web/5][4 pkts/710 bytes <-> 2 pkts/242 bytes][Goodput ratio: 63/45][0.09 sec][bytes ratio: 0.492 (Upload)][IAT c2s/s2c min/avg/max/stddev: 30/64 31/64 32/64 1/0][Pkt Len c2s/s2c min/avg/max/stddev: 66/121 178/121 329/121 115/0][Plen Bins: 0,50,0,0,0,25,0,0,25,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] diff --git a/utils/google.py b/utils/google.py new file mode 100644 index 000000000..e8b4114c8 --- /dev/null +++ b/utils/google.py @@ -0,0 +1,41 @@ +#!/usr/bin/env python3 + +import json +import urllib.request +import netaddr + +GOOG_URL="https://www.gstatic.com/ipranges/goog.json" +CLOUD_URL="https://www.gstatic.com/ipranges/cloud.json" + +def read_url(url): + try: + s = urllib.request.urlopen(url).read() + return json.loads(s) + except urllib.error.HTTPError: + print("Invalid HTTP response from %s" % url) + return {} + except json.decoder.JSONDecodeError: + print("Could not parse HTTP response from %s" % url) + return {} + +def main(): + goog_json=read_url(GOOG_URL) + cloud_json=read_url(CLOUD_URL) + + if goog_json and cloud_json: +# print("{} published: {}".format(GOOG_URL,goog_json.get('creationTime'))) +# print("{} published: {}".format(CLOUD_URL,cloud_json.get('creationTime'))) + goog_cidrs = netaddr.IPSet() + for pref in goog_json['prefixes']: + if pref.get('ipv4Prefix'): + goog_cidrs.add(pref.get('ipv4Prefix')) + cloud_cidrs = netaddr.IPSet() + for pref in cloud_json['prefixes']: + if pref.get('ipv4Prefix'): + cloud_cidrs.add(pref.get('ipv4Prefix')) +# print("IP ranges for Google APIs and services default domains:") + for i in goog_cidrs.difference(cloud_cidrs).iter_cidrs(): + print(i) + +if __name__=='__main__': + main() diff --git a/utils/google_cloud_ip_addresses_download.sh b/utils/google_cloud_ip_addresses_download.sh new file mode 100755 index 000000000..b14a33af7 --- /dev/null +++ b/utils/google_cloud_ip_addresses_download.sh @@ -0,0 +1,23 @@ +#!/bin/sh + +cd "$(dirname "${0}")" || return + +DEST=../src/lib/ndpi_google_cloud_match.c.inc +TMP=/tmp/google_c.json +LIST=/tmp/google_c.list +ORIGIN="https://www.gstatic.com/ipranges/cloud.json" + + +echo "(1) Downloading file..." +http_response=$(curl -s -o $TMP -w "%{http_code}" ${ORIGIN}) +if [ "$http_response" != "200" ]; then + echo "Error $http_response: you probably need to update the list url!" + return +fi + +echo "(2) Processing IP addresses..." +jq -r '.prefixes | .[].ipv4Prefix | select( . != null )' $TMP > $LIST # TODO: ipv6 +./ipaddr2list.py $LIST NDPI_PROTOCOL_GOOGLE_CLOUD > $DEST +rm -f $TMP $LIST + +echo "(3) Google Cloud IPs are available in $DEST" diff --git a/utils/google_ip_addresses_download.sh b/utils/google_ip_addresses_download.sh new file mode 100755 index 000000000..9560ef3c9 --- /dev/null +++ b/utils/google_ip_addresses_download.sh @@ -0,0 +1,17 @@ +#!/bin/sh + +cd "$(dirname "${0}")" || return + +DEST=../src/lib/ndpi_google_match.c.inc +LIST=/tmp/google.list + +echo "(1) Downloading file..." +#Nothing to do + +echo "(2) Processing IP addresses..." +#https://cloud.google.com/vpc/docs/configure-private-google-access#ip-addr-defaults +python3 google.py > $LIST +./ipaddr2list.py $LIST NDPI_PROTOCOL_GOOGLE > $DEST +#rm -f $TMP $LIST + +echo "(3) Google IPs are available in $DEST" diff --git a/utils/update_every_content_match_lists.sh b/utils/update_every_content_match_lists.sh index f300ede07..74c8e9ca2 100755 --- a/utils/update_every_content_match_lists.sh +++ b/utils/update_every_content_match_lists.sh @@ -10,3 +10,5 @@ cd "$(dirname "${0}")" ./tor_ip_addresses_download.sh ./whatsapp_ip_addresses_download.sh ./zoom_ip_addresses_download.sh +./google_cloud_ip_addresses_download.sh +./google_ip_addresses_download.sh |