Un routeur domestique (dans ce cas FritzBox) sait enregistrer beaucoup: combien de trafic quand il passe, qui est connecté à quelle vitesse, etc. Pour découvrir ce qui est caché sous des adresses étranges, j'ai été aidé par un serveur de noms de domaine (DNS) sur le réseau local.
En général, le DNS a eu un impact positif sur le réseau domestique: vitesse, résilience et gérabilité accrues.
Voici un tableau qui soulève des questions et la nécessité de comprendre ce qui se passe. Les résultats ont déjà filtré les requêtes connues et fonctionnelles vers les serveurs de noms de domaine.
Pourquoi est-ce que 60 domaines obscurs sont interrogés chaque jour alors qu'ils dorment encore?
Chaque jour, 440 domaines inconnus sont interrogés en temps actif. Qui sont-ils et que font-ils?
Recherches quotidiennes moyennes par heure

Demande de rapport SQLWITH CLS AS ( SELECT DISTINCT DATE_NK, STRFTIME( '%s', SUBSTR(DATE_NK,8,4) || '-' || CASE SUBSTR(DATE_NK,4,3) WHEN 'Jan' THEN '01' WHEN 'Feb' THEN '02' WHEN 'Mar' THEN '03' WHEN 'Apr' THEN '04' WHEN 'May' THEN '05' WHEN 'Jun' THEN '06' WHEN 'Jul' THEN '07' WHEN 'Aug' THEN '08' WHEN 'Sep' THEN '09' WHEN 'Oct' THEN '10' WHEN 'Nov' THEN '11' ELSE '12' END || '-' || SUBSTR(DATE_NK,1,2) || ' ' || SUBSTR(TIME_NK,1,8) ) AS EVENT_DT, REQUEST_NK, DOMAIN FROM STG_BIND9_LOG ) SELECT 1 as 'Line: DNS Requests per Day for Hours', strftime('%H:00', datetime(EVENT_DT, 'unixepoch')) AS 'Day', ROUND(1.0*SUM(1)/COUNT(DISTINCT strftime('%d.%m', datetime(EVENT_DT, 'unixepoch'))), 1) AS 'Requests per Day' FROM CLS WHERE DOMAIN NOT IN ('in-addr.arpa', 'IN-ADDR.ARPA', 'local', 'dyndns', 'nas', 'ntp.org') AND datetime(EVENT_DT, 'unixepoch') > date('now', '-20 days') GROUP BY strftime('%H:00', datetime(EVENT_DT, 'unixepoch')) ORDER BY strftime('%H:00', datetime(EVENT_DT, 'unixepoch'))
La nuit, l'accès sans fil est désactivé et l'activité de l'appareil est attendue, c'est-à-dire il n'y a pas d'enquête sur les domaines obscurs. Cela signifie que la plupart des activités proviennent d'appareils équipés de systèmes d'exploitation tels que Android, iOS et Blackberry OS.
Énumérez les domaines qui sont interrogés de manière intensive. L'intensité sera déterminée par des paramètres tels que le nombre de demandes par jour, le nombre de jours d'activité et le nombre d'heures de la journée qui ont été remarquées.
Tous les suspects attendus figuraient sur la liste.
Domaines interrogés intensivement

Demande de rapport SQL WITH CLS AS ( SELECT DISTINCT DATE_NK, STRFTIME( '%s', SUBSTR(DATE_NK,8,4) || '-' || CASE SUBSTR(DATE_NK,4,3) WHEN 'Jan' THEN '01' WHEN 'Feb' THEN '02' WHEN 'Mar' THEN '03' WHEN 'Apr' THEN '04' WHEN 'May' THEN '05' WHEN 'Jun' THEN '06' WHEN 'Jul' THEN '07' WHEN 'Aug' THEN '08' WHEN 'Sep' THEN '09' WHEN 'Oct' THEN '10' WHEN 'Nov' THEN '11' ELSE '12' END || '-' || SUBSTR(DATE_NK,1,2) || ' ' || SUBSTR(TIME_NK,1,8) ) AS EVENT_DT, REQUEST_NK, DOMAIN FROM STG_BIND9_LOG ) SELECT 1 as 'Table: Havy DNS Requests', REQUEST_NK AS 'Request', DOMAIN AS 'Domain', REQ AS 'Requests per Day', DH AS 'Hours per Day', DAYS AS 'Active Days' FROM ( SELECT REQUEST_NK, MAX(DOMAIN) AS DOMAIN, COUNT(DISTINCT REQUEST_NK) AS SUBD, COUNT(DISTINCT strftime('%d.%m', datetime(EVENT_DT, 'unixepoch'))) AS DAYS, ROUND(1.0*SUM(1)/COUNT(DISTINCT strftime('%d.%m', datetime(EVENT_DT, 'unixepoch'))), 1) AS REQ, ROUND(1.0*COUNT(DISTINCT strftime('%d.%m %H', datetime(EVENT_DT, 'unixepoch')))/COUNT(DISTINCT strftime('%d.%m', datetime(EVENT_DT, 'unixepoch'))), 1) AS DH FROM CLS WHERE DOMAIN NOT IN ('in-addr.arpa', 'IN-ADDR.ARPA', 'local', 'dyndns', 'nas', 'ntp.org') AND datetime(EVENT_DT, 'unixepoch') > date('now', '-20 days') GROUP BY REQUEST_NK ) WHERE DAYS > 9
Nous bloquons ic.blackberry.com et iceberg.blackberry.com, que le fabricant justifiera pour des raisons de sécurité. Résultat: lorsque vous essayez de vous connecter au WLAN, il affiche la page de connexion et ne se connecte plus jamais. Déverrouillez.
detectportal.firefox.com est le même mécanisme, implémenté uniquement dans le navigateur Firefox. Si nécessaire, connectez-vous au WLAN, affichez d'abord la page de connexion. Il n'est pas tout à fait clair pourquoi cingler l'adresse si souvent, mais le mécanisme est disponible auprès du fabricant.
skype. Les actions de ce programme sont similaires à un ver: il se cache et ne se laisse pas tuer dans la barre des tâches, il génère beaucoup de trafic sur le réseau, ping 4 domaines toutes les 10 minutes. Lors d'un appel vidéo, la connexion Internet se mobilise en permanence, alors qu'elle ne peut plus être meilleure. Bien que cela soit nécessaire, cela reste.
upload.fp.measure.office.com - fait référence à Office 365, n'a pas trouvé de description décente.
browser.pipe.aria.microsoft.com - n'a pas trouvé une description décente.
Les deux bloquent.
connect.facebook.net est une application de chat Facebook. Cela reste.
mediator.mail.ru L'analyse de toutes les demandes de domaine mail.ru a montré la présence d'une énorme quantité de ressources publicitaires et de collecteurs de statistiques, ce qui suscite la méfiance. Le domaine mail.ru est complètement sur liste noire.
google-analytics.com - n'affecte pas la fonctionnalité des appareils, nous la bloquons donc.
doubleclick.net - compte les clics sur les annonces. Nous bloquons.
De nombreuses demandes sont envoyées à googleapis.com. Le blocage a conduit à une déconnexion joyeuse de courts messages sur la tablette qui me semblent stupides. Mais le Playstore a cessé de fonctionner, nous le débloquons donc.
cloudflare.com - ils écrivent qu'ils aiment le code open source et, en général, écrivent beaucoup sur eux-mêmes. L'intensité de l'enquête de domaine, qui est souvent beaucoup plus élevée que l'activité sur Internet, n'est pas entièrement claire. Laissons-le pour l'instant.
Ainsi, l'intensité des demandes est souvent associée à la fonctionnalité nécessaire des appareils. Mais ceux qui ont fait trop d'activité ont également été découverts.
Tout d'abord
Au moment d'activer Internet sans fil, ils dorment toujours et il est possible de voir quelles demandes sont envoyées en premier au réseau. Ainsi, à 6 h 50, Internet est activé et au cours des dix premières minutes, 60 domaines sont interrogés quotidiennement:

Demande de rapport SQL WITH CLS AS ( SELECT DISTINCT DATE_NK, STRFTIME( '%s', SUBSTR(DATE_NK,8,4) || '-' || CASE SUBSTR(DATE_NK,4,3) WHEN 'Jan' THEN '01' WHEN 'Feb' THEN '02' WHEN 'Mar' THEN '03' WHEN 'Apr' THEN '04' WHEN 'May' THEN '05' WHEN 'Jun' THEN '06' WHEN 'Jul' THEN '07' WHEN 'Aug' THEN '08' WHEN 'Sep' THEN '09' WHEN 'Oct' THEN '10' WHEN 'Nov' THEN '11' ELSE '12' END || '-' || SUBSTR(DATE_NK,1,2) || ' ' || SUBSTR(TIME_NK,1,8) ) AS EVENT_DT, REQUEST_NK, DOMAIN FROM STG_BIND9_LOG ) SELECT 1 as 'Table: First DNS Requests at 06:00', REQUEST_NK AS 'Request', DOMAIN AS 'Domain', REQ AS 'Requests', DAYS AS 'Active Days', strftime('%H:%M', datetime(MIN_DT, 'unixepoch')) AS 'First Ping', strftime('%H:%M', datetime(MAX_DT, 'unixepoch')) AS 'Last Ping' FROM ( SELECT REQUEST_NK, MAX(DOMAIN) AS DOMAIN, MIN(EVENT_DT) AS MIN_DT, MAX(EVENT_DT) AS MAX_DT, COUNT(DISTINCT strftime('%d.%m', datetime(EVENT_DT, 'unixepoch'))) AS DAYS, ROUND(1.0*SUM(1)/COUNT(DISTINCT strftime('%d.%m', datetime(EVENT_DT, 'unixepoch'))), 1) AS REQ FROM CLS WHERE DOMAIN NOT IN ('in-addr.arpa', 'IN-ADDR.ARPA', 'local', 'dyndns', 'nas', 'ntp.org') AND datetime(EVENT_DT, 'unixepoch') > date('now', '-20 days') AND strftime('%H', datetime(EVENT_DT, 'unixepoch')) = strftime('%H', '2019-08-01 06:50:00') GROUP BY REQUEST_NK ) WHERE DAYS > 3
Firefox vérifie la connexion WLAN pour une page de connexion.
Citrix envoie un ping à son serveur, même si l'application n'est pas en cours d'exécution.
Symantec vérifie les certificats.
Mozilla recherche les mises à jour, bien qu'il ait demandé de ne pas le faire dans les paramètres.
mmo.de est un service de jeux. Il est fort probable que la demande lance un chat Facebook. Nous bloquons.
Apple active tous ses services. api-glb-fra.smoot.apple.com - à en juger par la description, chaque clic sur le bouton est envoyé ici pour l'optimisation des moteurs de recherche. Très suspect, mais lié à la fonctionnalité. Nous partons.
Voici une longue liste d'appels vers microsoft.com. Tous les domaines, à partir du troisième niveau, sont bloqués.
Le nombre de sous-domaines du tout premier
Alors, les 10 premières minutes d'activation de l'Internet sans fil.
La plupart des sous-domaines sont interrogés par iOS - 32. Il est suivi par Android - 24, puis Windows - 15 et le dernier Blackberry - 9.
L'application Facebook interroge à elle seule 10 domaines, Skype interroge 9 domaines.
Source d'information
La source d'analyse était le fichier journal du serveur bind9 local, qui contient le format suivant:
01-Aug-2019 20:03:30.996 client 192.168.0.2#40693 (api.aps.skype.com): query: api.aps.skype.com IN A + (192.168.0.102)
Le fichier a été importé dans la base de données sqlite et analysé à l'aide de requêtes SQL.
Le serveur agit comme un cache, les requêtes proviennent du routeur, donc le client de requête est toujours seul. Une structure de tableau assez simplifiée, c'est-à-dire pour le rapport, vous avez besoin de l'heure de la demande, de la demande elle-même et du domaine de deuxième niveau pour le regroupement.
Tables DDL CREATE TABLE STG_BIND9_LOG ( LINE_NK INTEGER NOT NULL DEFAULT 1, DATE_NK TEXT NOT NULL DEFAULT 'na', TIME_NK TEXT NOT NULL DEFAULT 'na', CLI TEXT,
Conclusion
Ainsi, à la suite de l'analyse du journal du serveur de noms de domaine, plus de 50 enregistrements ont été censurés et placés sur la liste pour le blocage.
La nécessité de certaines requêtes a été bien décrite par les fabricants de logiciels et inspire confiance. Cependant, la plupart des activités sont déraisonnables et discutables.