Hvordan fungerer hjemmenettverket og domenenavnserverstatistikken?

En hjemmeruter (i dette tilfellet FritzBox) kan registrere mye: hvor mye trafikk som går når, hvem er koblet til med hvilken hastighet osv. En domenenavnserver (DNS) på det lokale nettverket hjalp meg med å finne ut hva som var skjult bak de ukjente mottakerne.

Totalt sett har DNS hatt en positiv innvirkning på hjemmenettverket: det har lagt til hastighet, stabilitet og administrerbarhet.

Nedenfor er et diagram som reiste spørsmål og behovet for å forstå hva som skjedde. Resultatene filtrerer allerede ut kjente og fungerende forespørsler til domenenavnservere.

Hvorfor blir 60 obskure domener spurt hver dag mens alle fortsatt sover?

Hver dag blir 440 ukjente domener spurt under aktive timer. Hvem er de og hva gjør de?

Gjennomsnittlig antall forespørsler per dag for time

Hvordan fungerer hjemmenettverket og domenenavnserverstatistikken?

SQL-rapportspørring

WITH CLS AS ( /* prepare unique requests */
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 /* hour aggregate */
  strftime('%H:00', datetime(EVENT_DT, 'unixepoch'))
ORDER BY strftime('%H:00', datetime(EVENT_DT, 'unixepoch'))

Om natten er trådløs tilgang deaktivert og enhetsaktivitet forventes, dvs. det er ingen avstemning for ukjente domener. Det betyr at den største aktiviteten kommer fra enheter med operativsystemer som Android, iOS og Blackberry OS.

La oss liste opp domenene som blir spurt intensivt. Intensiteten vil bli bestemt av parametere som antall forespørsler per dag, antall dager med aktivitet og hvor mange timer på dagen de ble lagt merke til.

Alle de forventede mistenkte var på listen.

Intensivt undersøkte domener

Hvordan fungerer hjemmenettverket og domenenavnserverstatistikken?

SQL-rapportspørring

WITH CLS AS ( /* prepare unique requests */
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 -- long period
ORDER BY 4 DESC, 5 DESC
LIMIT 20

Vi blokkerer isс.blackberry.com og iceberg.blackberry.com, noe produsenten vil begrunne av sikkerhetsgrunner. Resultat: når du prøver å koble til WLAN, viser den påloggingssiden og kobler aldri til noe sted igjen. La oss oppheve blokkeringen.

detectportal.firefox.com er den samme mekanismen, bare implementert i Firefox-nettleseren. Hvis du trenger å logge på WLAN-nettverket, vil det først vise påloggingssiden. Det er ikke helt klart hvorfor adressen skal pinges så ofte, men mekanismen er tydelig beskrevet av produsenten.

skype. Handlingene til dette programmet ligner på en orm: den gjemmer seg og lar seg ikke bare drepe på oppgavelinjen, genererer mye trafikk på nettverket, pinger 10 domener hvert 4. minutt. Når du foretar en videosamtale, bryter Internett-tilkoblingen hele tiden, når det ikke kan bli bedre. Foreløpig er det nødvendig, så det gjenstår.

upload.fp.measure.office.com - refererer til Office 365, jeg kunne ikke finne en anstendig beskrivelse.
browser.pipe.aria.microsoft.com - Jeg kunne ikke finne en anstendig beskrivelse.
Vi blokkerer begge.

connect.facebook.net - Facebook chat-applikasjon. Rester.

mediator.mail.ru En analyse av alle forespørsler for mail.ru-domenet viste tilstedeværelsen av et stort antall reklameressurser og statistikksamlere, noe som forårsaker mistillit. Mail.ru-domenet sendes i sin helhet til svartelisten.

google-analytics.com - påvirker ikke funksjonaliteten til enhetene, så vi blokkerer den.
doubleclick.net - teller annonseklikk. Vi blokkerer.

Mange forespørsler går til googleapis.com. Blokkeringen har ført til gledelig nedleggelse av korte meldinger på nettbrettet, noe som virker dumt for meg. Men playstore sluttet å fungere, så la oss fjerne blokkeringen.

cloudflare.com – de skriver at de elsker åpen kildekode og skriver generelt mye om seg selv. Intensiteten på domeneundersøkelsen er ikke helt klar, som ofte er mye høyere enn den faktiske aktiviteten på Internett. La oss la det være nå.

Derfor er intensiteten av forespørsler ofte knyttet til den nødvendige funksjonaliteten til enhetene. Men de som overdrev det med aktivitet ble også oppdaget.

Den aller første

Når det trådløse Internett er slått på sover alle fortsatt og det er mulig å se hvilke forespørsler som sendes til nettverket først. Så klokken 6 slås Internett på, og i løpet av den første ti-minutters perioden blir 50 domener spurt daglig:

Hvordan fungerer hjemmenettverket og domenenavnserverstatistikken?

SQL-rapportspørring

WITH CLS AS ( /* prepare unique requests */
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 -- at least 4 days activity
ORDER BY 5 DESC, 4 DESC

Firefox sjekker WLAN-tilkoblingen for tilstedeværelsen av en påloggingsside.
Citrix pinger serveren sin selv om applikasjonen ikke kjører aktivt.
Symantec verifiserer sertifikater.
Mozilla ser etter oppdateringer, selv om jeg i innstillingene ba om å ikke gjøre dette.

mmo.de er en spilltjeneste. Mest sannsynlig er forespørselen initiert av facebook-chat. Vi blokkerer.

Apple vil aktivere alle sine tjenester. api-glb-fra.smoot.apple.com - etter beskrivelsen å dømme, sendes hvert knappeklikk hit for søkemotoroptimaliseringsformål. Svært mistenkelig, men relatert til funksjonalitet. Vi lar det være.

Følgende er en lang liste over forespørsler til microsoft.com. Vi blokkerer alle domener fra og med tredje nivå.

Antall aller første underdomener
Hvordan fungerer hjemmenettverket og domenenavnserverstatistikken?

Så de første 10 minuttene med å slå på det trådløse Internett.
iOS måler flest underdomener - 32. Etterfulgt av Android - 24, deretter Windows - 15 og til slutt Blackberry - 9.
Facebook-applikasjonen alene måler 10 domener, skype måler 9 domener.

Informasjonskilden

Kilden for analysen var den lokale serverloggfilen for bind9, som inneholder følgende format:

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)

Filen ble importert til en sqlite-database og analysert ved hjelp av SQL-spørringer.
Serveren fungerer som en cache; forespørsler kommer fra ruteren, så det er alltid én forespørselsklient. En forenklet tabellstruktur er tilstrekkelig, dvs. Rapporten krever tidspunktet for forespørselen, selve forespørselen og andrenivådomenet for gruppering.

DDL-tabeller

CREATE TABLE STG_BIND9_LOG (
  LINE_NK       INTEGER NOT NULL DEFAULT 1,
  DATE_NK       TEXT NOT NULL DEFAULT 'n.a.',
  TIME_NK       TEXT NOT NULL DEFAULT 'n.a.',
  CLI           TEXT, -- client
  IP            TEXT,
  REQUEST_NK    TEXT NOT NULL DEFAULT 'n.a.', -- requested domain
  DOMAIN        TEXT NOT NULL DEFAULT 'n.a.', -- domain second level
  QUERY         TEXT,
  UNIQUE (LINE_NK, DATE_NK, TIME_NK, REQUEST_NK)
);

Utgang

Som et resultat av analysen av domenenavnserverloggen ble mer enn 50 poster sensurert og plassert på blokkeringslisten.

Nødvendigheten av noen spørringer er godt beskrevet av programvareprodusenter og inspirerer til tillit. Mye av aktiviteten er imidlertid ubegrunnet og tvilsom.

Kilde: www.habr.com

Legg til en kommentar