ΠΠΎΠΌΠ°ΡΠ΅Π½ ΡΡΡΠ΅Ρ (Π²ΠΎ ΠΎΠ²ΠΎΡ ΡΠ»ΡΡΠ°Ρ FritzBox) ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ½ΠΈΠΌΠ° ΠΌΠ½ΠΎΠ³Ρ: ΠΊΠΎΠ»ΠΊΡ ΡΠΎΠΎΠ±ΡΠ°ΡΠ°Ρ ΡΠ΅ ΠΎΠ΄Π²ΠΈΠ²Π° ΠΊΠΎΠ³Π°, ΠΊΠΎΡ Π΅ ΠΏΠΎΠ²ΡΠ·Π°Π½ ΡΠΎ ΠΊΠΎΡΠ° Π±ΡΠ·ΠΈΠ½Π° ΠΈΡΠ½. Π‘Π΅ΡΠ²Π΅ΡΠΎΡ Π·Π° ΠΈΠΌΠ΅ Π½Π° Π΄ΠΎΠΌΠ΅Π½ (DNS) Π½Π° Π»ΠΎΠΊΠ°Π»Π½Π°ΡΠ° ΠΌΡΠ΅ΠΆΠ° ΠΌΠΈ ΠΏΠΎΠΌΠΎΠ³Π½Π° Π΄Π° ΠΎΡΠΊΡΠΈΡΠ°ΠΌ ΡΡΠΎ ΡΠ΅ ΠΊΡΠΈΠ΅ Π·Π°Π΄ Π½Π΅ΠΏΠΎΠ·Π½Π°ΡΠΈΡΠ΅ ΠΏΡΠΈΠΌΠ°ΡΠΈ.
ΠΠ΅Π½Π΅ΡΠ°Π»Π½ΠΎ, DNS ΠΈΠΌΠ°ΡΠ΅ ΠΏΠΎΠ·ΠΈΡΠΈΠ²Π½ΠΎ Π²Π»ΠΈΡΠ°Π½ΠΈΠ΅ Π²ΡΠ· Π΄ΠΎΠΌΠ°ΡΠ½Π°ΡΠ° ΠΌΡΠ΅ΠΆΠ°: Π΄ΠΎΠ΄Π°Π΄Π΅ Π±ΡΠ·ΠΈΠ½Π°, ΡΡΠ°Π±ΠΈΠ»Π½ΠΎΡΡ ΠΈ ΡΠΏΡΠ°Π²Π»ΠΈΠ²ΠΎΡΡ.
ΠΠΎΠ΄ΠΎΠ»Ρ Π΅ Π΄ΠΈΡΠ°Π³ΡΠ°ΠΌ ΠΊΠΎΡ ΠΏΠΎΠΊΡΠ΅Π½Π° ΠΏΡΠ°ΡΠ°ΡΠ° ΠΈ ΠΏΠΎΡΡΠ΅Π±Π° Π΄Π° ΡΠ΅ ΡΠ°Π·Π±Π΅ΡΠ΅ ΡΡΠΎ ΡΠ΅ ΡΠ»ΡΡΡΠ²Π°. Π Π΅Π·ΡΠ»ΡΠ°ΡΠΈΡΠ΅ Π²Π΅ΡΠ΅ Π³ΠΈ ΡΠΈΠ»ΡΡΠΈΡΠ°Π°Ρ ΠΏΠΎΠ·Π½Π°ΡΠΈΡΠ΅ ΠΈ ΡΠ°Π±ΠΎΡΠ½ΠΈΡΠ΅ Π±Π°ΡΠ°ΡΠ° Π΄ΠΎ ΡΠ΅ΡΠ²Π΅ΡΠΈΡΠ΅ Π·Π° ΠΈΠΌΠΈΡΠ° Π½Π° Π΄ΠΎΠΌΠ΅Π½ΠΈ.
ΠΠΎΡΡΠΎ ΡΠ΅ΠΊΠΎΡ Π΄Π΅Π½ ΡΠ΅ Π°Π½ΠΊΠ΅ΡΠΈΡΠ°Π°Ρ 60 Π½Π΅ΡΠ°ΡΠ½ΠΈ Π΄ΠΎΠΌΠ΅Π½ΠΈ Π΄ΠΎΠ΄Π΅ΠΊΠ° ΡΠΈΡΠ΅ ΡΓ¨ ΡΡΡΠ΅ ΡΠΏΠΈΡΠ°Ρ?
Π‘Π΅ΠΊΠΎΡ Π΄Π΅Π½, Π²ΠΎ Π°ΠΊΡΠΈΠ²Π½ΠΈ ΡΠ°ΡΠΎΠ²ΠΈ ΡΠ΅ Π°Π½ΠΊΠ΅ΡΠΈΡΠ°Π°Ρ 440 Π½Π΅ΠΏΠΎΠ·Π½Π°ΡΠΈ Π΄ΠΎΠΌΠ΅Π½ΠΈ. ΠΠΎΠΈ ΡΠ΅ ΡΠΈΠ΅ ΠΈ ΡΡΠΎ ΠΏΡΠ°Π²Π°Ρ?
ΠΡΠΎΡΠ΅ΡΠ΅Π½ Π±ΡΠΎΡ Π½Π° Π±Π°ΡΠ°ΡΠ° Π΄Π½Π΅Π²Π½ΠΎ Π½Π° ΡΠ°Ρ
SQL Π±Π°ΡΠ°ΡΠ΅ Π·Π° ΠΈΠ·Π²Π΅ΡΡΠ°Ρ
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'))
ΠΠΎΡΠ΅, Π±Π΅Π·ΠΆΠΈΡΠ½ΠΈΠΎΡ ΠΏΡΠΈΡΡΠ°ΠΏ Π΅ ΠΎΠ½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ΅Π½ ΠΈ ΡΠ΅ ΠΎΡΠ΅ΠΊΡΠ²Π° Π°ΠΊΡΠΈΠ²Π½ΠΎΡΡ Π½Π° ΡΡΠ΅Π΄ΠΎΡ, Ρ.Π΅. Π½Π΅ΠΌΠ° Π°Π½ΠΊΠ΅ΡΠ° Π·Π° Π½Π΅ΠΏΠΎΠ·Π½Π°ΡΠΈ Π΄ΠΎΠΌΠ΅Π½ΠΈ. Π’ΠΎΠ° Π·Π½Π°ΡΠΈ Π΄Π΅ΠΊΠ° Π½Π°ΡΠ³ΠΎΠ»Π΅ΠΌΠ°ΡΠ° Π°ΠΊΡΠΈΠ²Π½ΠΎΡΡ Π΄ΠΎΠ°ΡΠ° ΠΎΠ΄ ΡΡΠ΅Π΄ΠΈΡΠ΅ ΡΠΎ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ²Π½ΠΈ ΡΠΈΡΡΠ΅ΠΌΠΈ ΠΊΠ°ΠΊΠΎ Android, iOS ΠΈ Blackberry OS.
ΠΠ° Π³ΠΈ Π½Π°Π²Π΅Π΄Π΅ΠΌΠ΅ Π΄ΠΎΠΌΠ΅Π½ΠΈΡΠ΅ ΠΊΠΎΠΈ ΠΈΠ½ΡΠ΅Π½Π·ΠΈΠ²Π½ΠΎ ΡΠ΅ Π°Π½ΠΊΠ΅ΡΠΈΡΠ°Π°Ρ. ΠΠ½ΡΠ΅Π½Π·ΠΈΡΠ΅ΡΠΎΡ ΡΠ΅ ΡΠ΅ ΠΎΠ΄ΡΠ΅Π΄ΡΠ²Π° ΡΠΏΠΎΡΠ΅Π΄ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈ ΠΊΠ°ΠΊΠΎ ΡΡΠΎ ΡΠ΅ Π±ΡΠΎΡΠΎΡ Π½Π° Π±Π°ΡΠ°ΡΠ° Π΄Π½Π΅Π²Π½ΠΎ, Π±ΡΠΎΡΠΎΡ Π½Π° Π΄Π΅Π½ΠΎΠ²ΠΈ Π½Π° Π°ΠΊΡΠΈΠ²Π½ΠΎΡΡ ΠΈ Π²ΠΎ ΠΊΠΎΠ»ΠΊΡ ΡΠ°ΡΠΎΠ²ΠΈ ΠΎΠ΄ Π΄Π΅Π½ΠΎΡ Π±ΠΈΠ»Π΅ Π·Π°Π±Π΅Π»Π΅ΠΆΠ°Π½ΠΈ.
Π‘ΠΈΡΠ΅ ΠΎΡΠ΅ΠΊΡΠ²Π°Π½ΠΈ ΠΎΡΠΎΠΌΠ½ΠΈΡΠ΅Π½ΠΈ Π±Π΅Π° Π½Π° ΡΠΏΠΈΡΠΎΠΊΠΎΡ.
ΠΠ½ΡΠ΅Π½Π·ΠΈΠ²Π½ΠΎ Π°Π½ΠΊΠ΅ΡΠΈΡΠ°Π½ΠΈ Π΄ΠΎΠΌΠ΅Π½ΠΈ
SQL Π±Π°ΡΠ°ΡΠ΅ Π·Π° ΠΈΠ·Π²Π΅ΡΡΠ°Ρ
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
ΠΠΈ Π±Π»ΠΎΠΊΠΈΡΠ°ΠΌΠ΅ isΡ.blackberry.com ΠΈ iceberg.blackberry.com, ΡΡΠΎ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΠΎΡ ΡΠ΅ Π³ΠΈ ΠΎΠΏΡΠ°Π²Π΄Π° ΠΎΠ΄ Π±Π΅Π·Π±Π΅Π΄Π½ΠΎΡΠ½ΠΈ ΠΏΡΠΈΡΠΈΠ½ΠΈ. Π Π΅Π·ΡΠ»ΡΠ°Ρ: ΠΊΠΎΠ³Π° ΡΠ΅ ΠΎΠ±ΠΈΠ΄ΡΠ²Π°ΡΠ΅ Π΄Π° ΡΠ΅ ΠΏΠΎΠ²ΡΠ·Π΅ΡΠ΅ Π½Π° WLAN, ΡΠ° ΠΏΡΠΈΠΊΠ°ΠΆΡΠ²Π° ΡΡΡΠ°Π½ΠΈΡΠ°ΡΠ° Π·Π° Π½Π°ΡΠ°Π²ΡΠ²Π°ΡΠ΅ ΠΈ Π½ΠΈΠΊΠΎΠ³Π°Ρ ΠΏΠΎΠ²Π΅ΡΠ΅ Π½Π΅ ΡΠ΅ ΠΏΠΎΠ²ΡΠ·ΡΠ²Π° Π½ΠΈΠΊΠ°Π΄Π΅. ΠΡΠ΄Π΅ Π΄Π° Π³ΠΎ ΠΎΠ΄Π±Π»ΠΎΠΊΠΈΡΠ°ΠΌΠ΅.
detectportal.firefox.com Π΅ ΠΈΡΡΠΈΠΎΡ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·Π°ΠΌ, ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠΈΡΠ°Π½ ΡΠ°ΠΌΠΎ Π²ΠΎ ΠΏΡΠ΅Π»ΠΈΡΡΡΠ²Π°ΡΠΎΡ Firefox. ΠΠΊΠΎ ΡΡΠ΅Π±Π° Π΄Π° ΡΠ΅ Π½Π°ΡΠ°Π²ΠΈΡΠ΅ Π½Π° WLAN ΠΌΡΠ΅ΠΆΠ°ΡΠ°, ΡΠ°Π° ΠΏΡΠ²ΠΎ ΡΠ΅ ΡΠ° ΠΏΡΠΈΠΊΠ°ΠΆΠ΅ ΡΡΡΠ°Π½ΠΈΡΠ°ΡΠ° Π·Π° Π½Π°ΡΠ°Π²ΡΠ²Π°ΡΠ΅. ΠΠ΅ Π΅ ΡΠΎΡΠ΅ΠΌΠ° ΡΠ°ΡΠ½ΠΎ Π·ΠΎΡΡΠΎ Π°Π΄ΡΠ΅ΡΠ°ΡΠ° ΡΡΠ΅Π±Π° Π΄Π° ΡΠ΅ ΠΏΠΈΠ½Π³ΠΈΡΠ° ΡΠΎΠ»ΠΊΡ ΡΠ΅ΡΡΠΎ, Π½ΠΎ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠΎΡ Π΅ ΡΠ°ΡΠ½ΠΎ ΠΎΠΏΠΈΡΠ°Π½ ΠΎΠ΄ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΠΎΡ.
ΡΠΊΠ°ΡΠΏ. ΠΠ΅ΡΡΡΠ²Π°ΡΠ° Π½Π° ΠΎΠ²Π°Π° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠ° ΡΠ΅ ΡΠ»ΠΈΡΠ½ΠΈ Π½Π° ΡΡΠ²: ΡΠ΅ ΠΊΡΠΈΠ΅ ΠΈ Π½Π΅ Π΄ΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° Π΅Π΄Π½ΠΎΡΡΠ°Π²Π½ΠΎ Π΄Π° Π±ΠΈΠ΄Π΅ ΡΠ±ΠΈΠ΅Π½ Π²ΠΎ Π»Π΅Π½ΡΠ°ΡΠ° ΡΠΎ Π·Π°Π΄Π°ΡΠΈ, Π³Π΅Π½Π΅ΡΠΈΡΠ° ΠΌΠ½ΠΎΠ³Ρ ΡΠΎΠΎΠ±ΡΠ°ΡΠ°Ρ Π½Π° ΠΌΡΠ΅ΠΆΠ°ΡΠ°, ΠΏΠΈΠ½Π³ΡΠ²Π° 10 Π΄ΠΎΠΌΠ΅Π½ΠΈ Π½Π° ΡΠ΅ΠΊΠΎΠΈ 4 ΠΌΠΈΠ½ΡΡΠΈ. ΠΠΎΠ³Π° ΠΏΡΠ°Π²ΠΈΡΠ΅ Π²ΠΈΠ΄Π΅ΠΎ ΠΏΠΎΠ²ΠΈΠΊ, ΠΈΠ½ΡΠ΅ΡΠ½Π΅Ρ ΠΊΠΎΠ½Π΅ΠΊΡΠΈΡΠ°ΡΠ° ΠΏΠΎΡΡΠΎΡΠ°Π½ΠΎ ΡΠ΅ ΡΠ°ΡΠΏΠ°ΡΠ°, ΠΊΠΎΠ³Π° Π½Π΅ ΠΌΠΎΠΆΠ΅ Π΄Π° Π±ΠΈΠ΄Π΅ ΠΏΠΎΠ΄ΠΎΠ±ΡΠΎ. ΠΠ°ΡΠ΅Π³Π° Π΅ ΠΏΠΎΡΡΠ΅Π±Π½ΠΎ, ΡΠ°ΠΊΠ° ΠΎΡΡΠ°Π½ΡΠ²Π°.
upload.fp.measure.office.com - ΡΠ΅ ΠΎΠ΄Π½Π΅ΡΡΠ²Π° Π½Π° Office 365, Π½Π΅ ΠΌΠΎΠΆΠ΅Π² Π΄Π° Π½Π°ΡΠ΄Π°ΠΌ ΠΏΡΠΈΡΡΠΎΠ΅Π½ ΠΎΠΏΠΈΡ.
browser.pipe.aria.microsoft.com - ΠΠ΅ ΠΌΠΎΠΆΠ΅Π² Π΄Π° Π½Π°ΡΠ΄Π°ΠΌ ΠΏΡΠΈΡΡΠΎΠ΅Π½ ΠΎΠΏΠΈΡ.
ΠΠΈ Π±Π»ΠΎΠΊΠΈΡΠ°ΠΌΠ΅ ΠΈ Π΄Π²Π΅ΡΠ΅.
connect.facebook.net - Π°ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΡΠ° Π·Π° ΡΠ°Π·Π³ΠΎΠ²ΠΎΡ Π½Π° Π€Π΅ΡΡΠ±ΡΠΊ. ΠΡΡΠ°Π½ΡΠ²Π°.
mediator.mail.ru ΠΠ½Π°Π»ΠΈΠ·Π°ΡΠ° Π½Π° ΡΠΈΡΠ΅ Π±Π°ΡΠ°ΡΠ° Π·Π° Π΄ΠΎΠΌΠ΅Π½ΠΎΡ mail.ru ΠΏΠΎΠΊΠ°ΠΆΠ° ΠΏΡΠΈΡΡΡΡΠ²ΠΎ Π½Π° ΠΎΠ³ΡΠΎΠΌΠ΅Π½ Π±ΡΠΎΡ ΡΠ΅ΠΊΠ»Π°ΠΌΠ½ΠΈ ΡΠ΅ΡΡΡΡΠΈ ΠΈ ΡΠΎΠ±ΠΈΡΠ°ΡΠΈ Π½Π° ΡΡΠ°ΡΠΈΡΡΠΈΠΊΠ°, ΡΡΠΎ ΠΏΡΠ΅Π΄ΠΈΠ·Π²ΠΈΠΊΡΠ²Π° Π½Π΅Π΄ΠΎΠ²Π΅ΡΠ±Π°. ΠΠΎΠΌΠ΅Π½ΠΎΡ mail.ru Π΅ ΡΠ΅Π»ΠΎΡΠ½ΠΎ ΠΈΡΠΏΡΠ°ΡΠ΅Π½ Π½Π° ΡΡΠ½Π°ΡΠ° Π»ΠΈΡΡΠ°.
google-analytics.com - Π½Π΅ Π²Π»ΠΈΡΠ°Π΅ Π½Π° ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»Π½ΠΎΡΡΠ° Π½Π° ΡΡΠ΅Π΄ΠΈΡΠ΅, ΠΏΠ° Π·Π°ΡΠΎΠ° Π³ΠΎ Π±Π»ΠΎΠΊΠΈΡΠ°ΠΌΠ΅.
doubleclick.net - Π±ΡΠΎΠΈ ΠΊΠ»ΠΈΠΊΠΎΠ²ΠΈ Π·Π° ΡΠ΅ΠΊΠ»Π°ΠΌΠΈΡΠ°ΡΠ΅. ΠΠΈΠ΅ Π±Π»ΠΎΠΊΠΈΡΠ°ΠΌΠ΅.
ΠΠ½ΠΎΠ³Ρ Π±Π°ΡΠ°ΡΠ° ΠΎΠ΄Π°Ρ Π½Π° googleapis.com. ΠΠ»ΠΎΠΊΠΈΡΠ°ΡΠ΅ΡΠΎ Π΄ΠΎΠ²Π΅Π΄Π΅ Π΄ΠΎ ΡΠ°Π΄ΠΎΡΠ½ΠΎ ΠΈΡΠΊΠ»ΡΡΡΠ²Π°ΡΠ΅ Π½Π° ΠΊΡΠ°ΡΠΊΠΈΡΠ΅ ΠΏΠΎΡΠ°ΠΊΠΈ Π½Π° ΡΠ°Π±Π»Π΅ΡΠΎΡ, ΠΊΠΎΠΈ ΠΌΠΈ ΠΈΠ·Π³Π»Π΅Π΄Π°Π°Ρ Π³Π»ΡΠΏΠ°Π²ΠΈ. ΠΠΎ, ΠΏΠ»Π΅ΡΡΡΠΎΡΠΎΡ ΠΏΡΠ΅ΡΡΠ°Π½Π° Π΄Π° ΡΠ°Π±ΠΎΡΠΈ, ΠΏΠ° Π°ΡΠ΄Π΅ Π΄Π° Π³ΠΎ ΠΎΠ΄Π±Π»ΠΎΠΊΠΈΡΠ°ΠΌΠ΅.
cloudflare.com - ΠΏΠΈΡΡΠ²Π°Π°Ρ Π΄Π΅ΠΊΠ° ΡΠ°ΠΊΠ°Π°Ρ ΠΎΡΠ²ΠΎΡΠ΅Π½ ΠΊΠΎΠ΄ ΠΈ, Π²ΠΎΠΎΠΏΡΡΠΎ, ΠΏΠΈΡΡΠ²Π°Π°Ρ ΠΌΠ½ΠΎΠ³Ρ Π·Π° ΡΠ΅Π±Π΅. ΠΠ½ΡΠ΅Π½Π·ΠΈΡΠ΅ΡΠΎΡ Π½Π° ΠΈΡΡΡΠ°ΠΆΡΠ²Π°ΡΠ΅ΡΠΎ Π½Π° Π΄ΠΎΠΌΠ΅Π½ΠΎΡ Π½Π΅ Π΅ ΡΠ΅Π»ΠΎΡΠ½ΠΎ ΡΠ°ΡΠ΅Π½, ΡΡΠΎ ΡΠ΅ΡΡΠΎ Π΅ ΠΌΠ½ΠΎΠ³Ρ ΠΏΠΎΠ³ΠΎΠ»Π΅ΠΌ ΠΎΠ΄ ΡΠ΅Π°Π»Π½Π°ΡΠ° Π°ΠΊΡΠΈΠ²Π½ΠΎΡΡ Π½Π° ΠΠ½ΡΠ΅ΡΠ½Π΅Ρ. ΠΠ° ΠΎΡΡΠ°Π²ΠΈΠΌΠ΅ Π·Π°ΡΠ΅Π³Π°.
Π’Π°ΠΊΠ°, ΠΈΠ½ΡΠ΅Π½Π·ΠΈΡΠ΅ΡΠΎΡ Π½Π° Π±Π°ΡΠ°ΡΠ°ΡΠ° ΡΠ΅ΡΡΠΎ Π΅ ΠΏΠΎΠ²ΡΠ·Π°Π½ ΡΠΎ ΠΏΠΎΡΡΠ΅Π±Π½Π°ΡΠ° ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»Π½ΠΎΡΡ Π½Π° ΡΡΠ΅Π΄ΠΈΡΠ΅. ΠΠΎ, ΠΎΡΠΊΡΠΈΠ΅Π½ΠΈ ΡΠ΅ ΠΈ ΠΎΠ½ΠΈΠ΅ ΠΊΠΎΠΈ ΠΏΡΠ΅ΡΠ΅ΡΠ°Π»Π΅ ΡΠΎ Π°ΠΊΡΠΈΠ²Π½ΠΎΡΡ.
Π£ΡΡΠ΅ ΠΏΡΠ²ΠΈΠΎΡ
ΠΠΎΠ³Π° Π±Π΅Π·ΠΆΠΈΡΠ½ΠΈΠΎΡ ΠΈΠ½ΡΠ΅ΡΠ½Π΅Ρ Π΅ Π²ΠΊΠ»ΡΡΠ΅Π½, ΡΠΈΡΠ΅ ΡΓ¨ ΡΡΡΠ΅ ΡΠΏΠΈΡΠ°Ρ ΠΈ ΠΌΠΎΠΆΠ½ΠΎ Π΅ Π΄Π° ΡΠ΅ Π²ΠΈΠ΄Π°Ρ ΠΊΠΎΠΈ Π±Π°ΡΠ°ΡΠ° ΠΏΡΠ²ΠΎ ΡΠ΅ ΠΈΡΠΏΡΠ°ΡΠ°Π°Ρ Π΄ΠΎ ΠΌΡΠ΅ΠΆΠ°ΡΠ°. Π’Π°ΠΊΠ°, Π²ΠΎ 6:50 ΡΠ΅ Π²ΠΊΠ»ΡΡΡΠ²Π° ΠΈΠ½ΡΠ΅ΡΠ½Π΅ΡΠΎΡ ΠΈ Π²ΠΎ ΠΏΡΠ²ΠΈΡΠ΅ Π΄Π΅ΡΠ΅Ρ ΠΌΠΈΠ½ΡΡΠΈ Π΄Π½Π΅Π²Π½ΠΎ ΡΠ΅ Π°Π½ΠΊΠ΅ΡΠΈΡΠ°Π°Ρ 60 Π΄ΠΎΠΌΠ΅Π½ΠΈ:
SQL Π±Π°ΡΠ°ΡΠ΅ Π·Π° ΠΈΠ·Π²Π΅ΡΡΠ°Ρ
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 ΡΠ° ΠΏΡΠΎΠ²Π΅ΡΡΠ²Π° WLAN Π²ΡΡΠΊΠ°ΡΠ° Π·Π° ΠΏΡΠΈΡΡΡΡΠ²ΠΎ Π½Π° ΡΡΡΠ°Π½ΠΈΡΠ° Π·Π° Π½Π°ΡΠ°Π²ΡΠ²Π°ΡΠ΅.
Citrix Π³ΠΎ ΠΏΠΈΠ½Π³ΡΠ²Π° ΡΠ²ΠΎΡΠΎΡ ΡΠ΅ΡΠ²Π΅Ρ ΠΈΠ°ΠΊΠΎ Π°ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΡΠ°ΡΠ° Π½Π΅ ΡΠ°Π±ΠΎΡΠΈ Π°ΠΊΡΠΈΠ²Π½ΠΎ.
Symantec Π³ΠΈ ΠΏΠΎΡΠ²ΡΠ΄ΡΠ²Π° ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠΈΡΠ΅.
ΠΠΎΠ·ΠΈΠ»Π° ΠΏΡΠΎΠ²Π΅ΡΡΠ²Π° Π΄Π°Π»ΠΈ ΠΈΠΌΠ° Π°ΠΆΡΡΠΈΡΠ°ΡΠ°, ΠΈΠ°ΠΊΠΎ Π²ΠΎ ΠΏΠΎΡΡΠ°Π²ΠΊΠΈΡΠ΅ ΠΏΠΎΠ±Π°ΡΠ°Π² Π΄Π° Π½Π΅ Π³ΠΎ ΠΏΡΠ°Π²Π°ΠΌ ΡΠΎΠ°.
mmo.de Π΅ ΡΡΠ»ΡΠ³Π° Π·Π° ΠΈΠ³ΡΠΈ. ΠΠ°ΡΠ²Π΅ΡΠΎΡΠ°ΡΠ½ΠΎ Π±Π°ΡΠ°ΡΠ΅ΡΠΎ Π΅ ΠΈΠ½ΠΈΡΠΈΡΠ°Π½ΠΎ ΠΎΠ΄ Π€Π΅ΡΡΠ±ΡΠΊ ΡΠ΅Ρ. ΠΠΈΠ΅ Π±Π»ΠΎΠΊΠΈΡΠ°ΠΌΠ΅.
Apple ΡΠ΅ Π³ΠΈ Π°ΠΊΡΠΈΠ²ΠΈΡΠ° ΡΠΈΡΠ΅ ΡΠ²ΠΎΠΈ ΡΡΠ»ΡΠ³ΠΈ. api-glb-fra.smoot.apple.com - ΡΡΠ΄Π΅ΡΡΠΈ ΡΠΏΠΎΡΠ΅Π΄ ΠΎΠΏΠΈΡΠΎΡ, ΡΠ΅ΠΊΠΎΠ΅ ΠΊΠ»ΠΈΠΊΠ½ΡΠ²Π°ΡΠ΅ Π½Π° ΠΊΠΎΠΏΡΠ΅ ΡΠ΅ ΠΈΡΠΏΡΠ°ΡΠ° ΠΎΠ²Π΄Π΅ Π·Π° ΡΠ΅Π»ΠΈΡΠ΅ Π½Π° ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΡΠ° Π½Π° ΠΏΡΠ΅Π±Π°ΡΡΠ²Π°ΡΠΈΡΠ΅. ΠΠ½ΠΎΠ³Ρ ΡΠΎΠΌΠ½ΠΈΡΠ΅Π»Π½ΠΎ, Π½ΠΎ ΠΏΠΎΠ²ΡΠ·Π°Π½ΠΎ ΡΠΎ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»Π½ΠΎΡΡΠ°. ΠΠΎ ΠΎΡΡΠ°Π²Π°ΠΌΠ΅.
Π‘Π»Π΅Π΄Π½ΠΎΡΠΎ Π΅ Π΄ΠΎΠ»Π³Π° Π»ΠΈΡΡΠ° Π½Π° Π±Π°ΡΠ°ΡΠ° Π΄ΠΎ microsoft.com. ΠΠΈ Π±Π»ΠΎΠΊΠΈΡΠ°ΠΌΠ΅ ΡΠΈΡΠ΅ Π΄ΠΎΠΌΠ΅Π½ΠΈ ΠΏΠΎΡΠ½ΡΠ²Π°ΡΡΠΈ ΠΎΠ΄ ΡΡΠ΅ΡΠΎΡΠΎ Π½ΠΈΠ²ΠΎ.
ΠΡΠΎΡ Π½Π° ΠΏΡΠ²ΠΈΡΠ΅ ΠΏΠΎΠ΄Π΄ΠΎΠΌΠ΅Π½ΠΈ
ΠΠ½Π°ΡΠΈ, ΠΏΡΠ²ΠΈΡΠ΅ 10 ΠΌΠΈΠ½ΡΡΠΈ ΠΎΠ΄ Π²ΠΊΠ»ΡΡΡΠ²Π°ΡΠ΅ΡΠΎ Π½Π° Π±Π΅Π·ΠΆΠΈΡΠ½ΠΈΠΎΡ ΠΈΠ½ΡΠ΅ΡΠ½Π΅Ρ.
iOS Π°Π½ΠΊΠ΅ΡΠΈΡΠ° Π½Π°ΡΠΌΠ½ΠΎΠ³Ρ ΠΏΠΎΠ΄Π΄ΠΎΠΌΠ΅Π½ΠΈ - 32. Π‘Π»Π΅Π΄ΡΠ²Π°Π°Ρ Android - 24, ΠΏΠ° Windows - 15 ΠΈ Π½Π° ΠΊΡΠ°Ρ Blackberry - 9.
Π‘Π°ΠΌΠΎ Π°ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΡΠ°ΡΠ° Π€Π΅ΡΡΠ±ΡΠΊ Π°Π½ΠΊΠ΅ΡΠΈΡΠ° 10 Π΄ΠΎΠΌΠ΅Π½ΠΈ, ΡΠΊΠ°ΡΠΏ Π°Π½ΠΊΠ΅ΡΠΈ 9 Π΄ΠΎΠΌΠ΅Π½ΠΈ.
ΠΠ·Π²ΠΎΡΠΎΡ Π½Π° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ
ΠΠ·Π²ΠΎΡΠΎΡ Π·Π° Π°Π½Π°Π»ΠΈΠ·Π° Π±Π΅ΡΠ΅ Π΄Π°ΡΠΎΡΠ΅ΠΊΠ°ΡΠ° Π·Π° Π΅Π²ΠΈΠ΄Π΅Π½ΡΠΈΡΠ° Π½Π° Π»ΠΎΠΊΠ°Π»Π½ΠΈΠΎΡ ΡΠ΅ΡΠ²Π΅Ρ bind9, ΠΊΠΎΡΠ° Π³ΠΎ ΡΠΎΠ΄ΡΠΆΠΈ ΡΠ»Π΅Π΄Π½ΠΈΠΎΠ² ΡΠΎΡΠΌΠ°Ρ:
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)
ΠΠ°ΡΠΎΡΠ΅ΠΊΠ°ΡΠ° Π±Π΅ΡΠ΅ ΡΠ²Π΅Π·Π΅Π½Π° Π²ΠΎ sqlite Π±Π°Π·Π° Π½Π° ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ ΠΈ Π°Π½Π°Π»ΠΈΠ·ΠΈΡΠ°Π½Π° ΡΠΎ ΠΏΠΎΠΌΠΎΡ Π½Π° SQL ΠΏΡΠ΅Π±Π°ΡΡΠ²Π°ΡΠ°.
Π‘Π΅ΡΠ²Π΅ΡΠΎΡ Π΄Π΅Π»ΡΠ²Π° ΠΊΠ°ΠΊΠΎ ΠΊΠ΅Ρ, Π±Π°ΡΠ°ΡΠ°ΡΠ° Π΄ΠΎΠ°ΡΠ°Π°Ρ ΠΎΠ΄ ΡΡΡΠ΅ΡΠΎΡ, ΡΠ°ΠΊΠ° ΡΡΠΎ ΡΠ΅ΠΊΠΎΠ³Π°Ρ ΠΈΠΌΠ° Π΅Π΄Π΅Π½ ΠΊΠ»ΠΈΠ΅Π½Ρ Π·Π° Π±Π°ΡΠ°ΡΠ΅. ΠΠΎΠ²ΠΎΠ»Π½Π° Π΅ ΠΏΠΎΠ΅Π΄Π½ΠΎΡΡΠ°Π²Π΅Π½Π° ΡΡΡΡΠΊΡΡΡΠ° Π½Π° ΡΠ°Π±Π΅Π»Π°ΡΠ°, Ρ.Π΅. ΠΠ·Π²Π΅ΡΡΠ°ΡΠΎΡ Π±Π°ΡΠ° Π²ΡΠ΅ΠΌΠ΅ΡΠΎ Π½Π° Π±Π°ΡΠ°ΡΠ΅ΡΠΎ, ΡΠ°ΠΌΠΎΡΠΎ Π±Π°ΡΠ°ΡΠ΅ ΠΈ Π΄ΠΎΠΌΠ΅Π½ΠΎΡ ΠΎΠ΄ Π²ΡΠΎΡΠΎ Π½ΠΈΠ²ΠΎ Π·Π° Π³ΡΡΠΏΠΈΡΠ°ΡΠ΅.
DDL ΡΠ°Π±Π΅Π»ΠΈ
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)
);
ΠΠ·Π»Π΅Π·
Π’Π°ΠΊΠ°, ΠΊΠ°ΠΊΠΎ ΡΠ΅Π·ΡΠ»ΡΠ°Ρ Π½Π° Π°Π½Π°Π»ΠΈΠ·Π°ΡΠ° Π½Π° Π΄Π½Π΅Π²Π½ΠΈΠΊΠΎΡ Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠΎΡ Π·Π° ΠΈΠΌΠ΅ Π½Π° Π΄ΠΎΠΌΠ΅Π½, ΠΏΠΎΠ²Π΅ΡΠ΅ ΠΎΠ΄ 50 Π·Π°ΠΏΠΈΡΠΈ Π±Π΅Π° ΡΠ΅Π½Π·ΡΡΠΈΡΠ°Π½ΠΈ ΠΈ ΡΡΠ°Π²Π΅Π½ΠΈ Π½Π° Π±Π»ΠΎΠΊ Π»ΠΈΡΡΠ°ΡΠ°.
ΠΠΎΡΡΠ΅Π±Π°ΡΠ° ΠΎΠ΄ Π½Π΅ΠΊΠΎΠΈ ΠΏΡΠ°ΡΠ°ΡΠ° Π΅ Π΄ΠΎΠ±ΡΠΎ ΠΎΠΏΠΈΡΠ°Π½Π° ΠΎΠ΄ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΠΈΡΠ΅ Π½Π° ΡΠΎΡΡΠ²Π΅Ρ ΠΈ ΠΈΠ½ΡΠΏΠΈΡΠΈΡΠ° Π΄ΠΎΠ²Π΅ΡΠ±Π°. Π‘Π΅ΠΏΠ°ΠΊ, Π³ΠΎΠ»Π΅ΠΌ Π΄Π΅Π» ΠΎΠ΄ Π°ΠΊΡΠΈΠ²Π½ΠΎΡΡΠ° Π΅ Π½Π΅ΠΎΡΠ½ΠΎΠ²Π°Π½Π° ΠΈ ΡΠΎΠΌΠ½ΠΈΡΠ΅Π»Π½Π°.
ΠΠ·Π²ΠΎΡ: www.habr.com