Blog 24/7
ARK. B15Parametr monitoringuBezpieczeństwo · lista 87 parametrów

Zmiana adresu IP

ważność wysokamierzonysposób ip_change

Porównanie aktualnego IP z poprzednim skanem DNS. Nieoczekiwana zmiana to przejęcie domeny lub migracja bez wiedzy agencji.

Pierwszy skan domeny tylko zapisuje wzorzec; ustalenie otwiera dopiero kolejny skan z innym adresem.

ARK. 1

WIKI

artykuł z 16.09.2026 · źródeł 8

Zmiana adresu IP to parametr monitoringu stron internetowych, który porównuje adresy IPv4 zwrócone dla domeny w bieżącym zapytaniu DNS z adresami zapamiętanymi przy poprzednim pomiarze. Możliwe wyniki to: adresy bez zmian, inny zbiór adresów niż poprzednio, pierwszy pomiar, który tylko zapisuje punkt odniesienia, albo brak odpowiedzi, przy którym porównania nie da się wykonać. Adres IPv4 hosta przechowuje rekord A z 32-bitowym adresem internetowym, a host z kilkoma adresami ma kilka rekordów A [2].

Jak działa

Pomiar zestawia dwie migawki. Pierwsza odpowiedź dla domeny staje się wzorcem, a każdą kolejną porównuje się z nim jako zbiór adresów. Kolejność rekordów nie powinna mieć znaczenia: RFC 1794 zauważa, że protokół DNS nie gwarantuje kolejności, a wczesne mechanizmy równoważenia obciążenia celowo rotowały rekordy adresowe metodą round-robin [3]. Po wykryciu różnicy nowy zbiór zwykle zastępuje wzorzec, żeby ta sama zmiana nie była zgłaszana w każdym kolejnym pomiarze.

RYS. 1.1Porównanie skanu N-1 i skanu N

Na wynik wpływa czas życia rekordu. TTL to limit czasu, przez który rekord może leżeć w pamięci podręcznej; ustala go administrator strefy [1]. RFC 1034 zaleca, by przed zapowiedzianą zmianą obniżyć TTL, a po zmianie przywrócić dawną wartość, co ogranicza niespójność w okresie przejścia [1]. Dwa kolejne pomiary mogą więc przez pewien czas widzieć raz stary, raz nowy adres, zależnie od tego, co pamięta pytany resolver.

Sama różnica adresów nie mówi, co się stało. Tę samą obserwację daje dostawca CDN, zaplanowana przeprowadzka serwera i przejęcie konta DNS, dlatego pomiar jest punktem wyjścia do rozróżnienia, a nie rozstrzygnięciem.

RYS. 1.2Rozróżnienie zmiany adresu

Standardy i specyfikacje

  • RFC 1034 i RFC 1035 definiują pole TTL i rekord A: 32-bitowy adres w danych rekordu, wiele rekordów A dla hosta z wieloma adresami oraz czas przechowywania w pamięci podręcznej [1] [2].
  • RFC 1794 (1995, dokument informacyjny) opisuje równoważenie obciążenia przez DNS. Odpowiedź zawiera wiele adresów, a w opisanym wdrożeniu adresy losowo przestawiano co 300 sekund. W takiej zmiennej strefie TTL rekordów musi być bardzo niski [3].
  • RFC 4786 definiuje anycast jako udostępnianie tego samego adresu usługi w wielu odrębnych lokalizacjach, tak że pakiety trafiają do jednej z nich [4].
  • NIST SP 800-128 definiuje konfigurację bazową (ang. baseline configuration) jako zestaw specyfikacji przejrzany i uzgodniony w danym momencie, który można zmieniać tylko przez procedury kontroli zmian [8]. Monitorowanie konfiguracji ma wykrywać, kiedy stan faktyczny odbiega od zatwierdzonego wzorca, czyli nieautoryzowaną zmianę [8].

Zagrożenia i skutki

Przejęcie DNS. Dyrektywa CISA ED 19-01 z 22 stycznia 2019 r. opisywała kampanię, w której napastnik po zdobyciu danych logowania zmieniał rekordy A, MX lub NS i kierował ruch na własną infrastrukturę [7]. Dyrektywa nakazywała sprawdzić, czy publiczne rekordy DNS wskazują zamierzone miejsca; CISA zamknęła ją 8 stycznia 2026 r. [7]. Szerzej o przejęciu domeny pisze artykuł Rozwiązywanie DNS.

Migracja poza kontrolą zmian. NIST SP 800-128 wśród przyczyn nieautoryzowanych zmian wymienia zmiany przypadkowe, działania osób, które nie znają procesu kontroli zmian albo uważają, że ich nie dotyczy, oraz opóźnienie między wprowadzeniem zmiany a aktualizacją wzorca [8]. Nieautoryzowana zmiana może świadczyć o ataku albo o tym, że procedury nie są przestrzegane, dlatego NIST zaleca analizować jej przyczynę [8]. Przeniesienie strony na inny serwer bez wiedzy osób, które ją utrzymują, wygląda z zewnątrz tak samo jak zmiana wprowadzona przez napastnika.

Fałszywe alarmy przy CDN. Dla rekordu obsługiwanego przez proxy Cloudflare zapytanie DNS zwraca adresy anycast Cloudflare zamiast adresu serwera źródłowego [5]. Zakresy tych adresów są wspólne dla wszystkich hostów za proxy [6]. TTL takich rekordów wynosi 300 sekund i nie da się go zmienić; krótki czas ma sprawić, że zmiana przypisanego adresu anycast szybko zacznie obowiązywać [5]. Inny adres w odpowiedzi nie oznacza wtedy zmiany serwera ani hostingu. Podobnie przy równoważeniu obciążenia przez DNS: jeśli zawartość puli rekordów zmienia się co kilka minut [3], porównanie pełnych zbiorów zgłosi zmianę przy każdej takiej rotacji.

Zmiana niewidoczna. Proxy działa też w drugą stronę i ukrywa przeprowadzkę: odwiedzający dostaje adres Cloudflare zamiast prawdziwego adresu serwera źródłowego [6]. Migracja serwera za CDN nie zmienia więc odpowiedzi DNS, a porównanie rekordów A jej nie wykryje.

Przykłady

ObserwacjaWynik porównaniaTypowa przyczyna
Te same adresy w innej kolejnościbez zmianrotacja round-robin [3]
Jeden adres zastąpiony innym, TTL wcześniej obniżonyzmianazapowiedziana migracja serwera [1]
Adresy z zakresów CDN zamiast adresu serwerazmianawłączenie proxy, adresy anycast [5] [6]
Inny adres CDN przy niezmienionej konfiguracjizmianadostawca zmienił przydział adresu anycast [5]
Nowy adres i zmienione rekordy NS lub MXzmianaprzejęcie konta DNS [7]
Nowy adres, którego nikt nie zatwierdziłzmianamigracja poza procesem kontroli zmian [8]
Migracja serwera schowanego za proxybez zmianadres źródłowy ukryty za CDN [6]
Brak odpowiedzi albo nazwa nie istniejenie da się porównaćawaria DNS, wygaśnięcie domeny — patrz Rozwiązywanie DNS
TAB. 1.1Przypisy8
  1. [1] RFC 1034 — Domain Names: Concepts and Facilities · IETF
  2. [2] RFC 1035 — Domain Names: Implementation and Specification · IETF
  3. [3] RFC 1794 — DNS Support for Load Balancing · IETF
  4. [4] RFC 4786 — Operation of Anycast Services · IETF
  5. [5] Proxy status — Cloudflare DNS docs · Cloudflare
  6. [6] Cloudflare IP addresses — Cloudflare Fundamentals docs · Cloudflare
  7. [7] Emergency Directive 19-01 — Mitigate DNS Infrastructure Tampering · CISA
  8. [8] SP 800-128 — Guide for Security-Focused Configuration Management of Information Systems · NIST
ARK. 2

STATS

wyniki z systemu · tylko liczby zbiorcze
TAB. 2.1Odczyty per strona—

Ten parametr nie zapisuje odczytu per strona — przebieg zostawia tylko ustalenia, więc liczby sprawdzonych stron i wyników „ok” system nie ma. Pojawią się po wdrożeniu zapisu przebiegów per strona per parametr.

TAB. 2.3Ustalenia—

Ten parametr nie otworzył jeszcze żadnego ustalenia w bazie LAB247. Pusto nie znaczy „czysto” — znaczy, że nic nie przekroczyło reguły.

TAB. 2.4Przebiegi z tym sposobem sprawdzeniaod 09.09.2026
Przebiegów
33sposób ip_change
W 30 dni
0przebiegów
Ostatni
19.09.2026start przebiegu
Stron w przebiegach
—33 przebiegów bez liczby stron
ARK. 3

CARD

karta z kodu CREATO_PING, odczyt 22.09.2026

Jak ten parametr trafia do ClickUpa: wynik sondy to linia w subtasku 2. Pomiar, a usterka, którą otwiera — linia w subtasku 1. Podsumowanie (z identyfikatorem CWE i kategorią OWASP), skąd liczy się wskaźnik zagrożenia i status strony. Projekcja z bazy skanera odświeża oba subtaski co godzinę. Do 22.09 każde ustalenie dostawało własny subtask i status ze starego słownika (PODATNA, WARNING…) — te słowa zostały jeszcze w części opisów pomiaru niżej jako język wewnętrzny sond.

RYS. 3.1Droga parametru przez system: Zmiana adresu IP
TAB. 3.1Pomiarpliki: 8
Obszar i ważnośćBezpieczeństwo · wysoka (B15)
Workflow i częstotliwośćcreato_ping_security_v2 · P3 działa na LAB247Skaner 2.0, rytm „p3” / „bezpieczenstwo”: premium co 6 h, reszta co 24 h (tier 1–3), co 9 dni (tier 4) · Dokładny skan. dns_integrity porównuje NS, MX, SPF i DMARC z wzorcem z poprzedniego przebiegu.
Sonda i helpersposób ip_change · CREATO_PING/helpers/ip_change.py
Testy
  1. Tylko przebieg P3: Tier 1–3 codziennie o 03:11, 03:13 i 03:15 UTC, Tier 4 wyzwalaczem „po anomalii” o 07:17 UTC; domena bez rekordu A pominięta na wstępie.
  2. Zapytanie o rekord A przez resolver systemowy serwera monitoringu, do 20 domen naraz; rekordów AAAA nie pytamy.
  3. Wzorzec: plik ip_baseline.json w katalogu stanu serwera monitoringu, per domena posortowana lista adresów (2026-09-16: 282 domeny, 39 z więcej niż jednym adresem).
  4. Pierwszy odczyt domeny tylko zapisuje wzorzec. NXDOMAIN, brak rekordu A, timeout albo inny błąd dają pustą listę: bez ustalenia i bez nadpisania wzorca.
  5. Zbiór inny niż we wzorcu = ip_changed; w tym samym przebiegu wzorzec jest nadpisywany nowym zbiorem.
Typ wyniku0 albo 1 ustalenie ip_changed na stronę w przebiegu; w szczegółach stary i nowy zbiór adresów, w dowodzie obie listy
Jednostkabrak — wynik jakościowy (zbiór adresów IPv4 z rekordów A względem wzorca z poprzedniego przebiegu)
Próg i regułaTimeout zapytania 3,0 s — stała w helperze, poza config.py. Reguła: posortowane listy adresów różne = zmiana; wystarczy jeden adres dodany albo usunięty z puli.
Gdzie leżą pokrętłaCREATO_PING/helpers/ip_change.py → diff_ips, _resolve_a (timeout 3,0 s), check_batch (concurrency 20), _BASELINE_FILENAMECREATO_PING/helpers/security_runner.py → do_writera (bramka gate z polityki; sito powagi zniknęło 18.09)CREATO_PING/config/incident_policy.toml → [finding] ip_changedCREATO_PING/config/wyjatki_falszywych_alarmow.toml → wąskie wyjątki per strona
Retencja odczytówSurowy pomiar jako NIEZMIENNY wiersz tabeli `odczyty` w bazie skanera (wejście, wyjście, dowody, sha karty sondy i helpera, commit kodu) — trigger odrzuca każdą zmianę. Okno retencji z kohorty: 90 dni premium, 30 dni reszta; poza oknem zostają odczyty z werdyktem problemu, akcją albo etykietą, bo replay reguł ich potrzebuje (`skaner/retencja.py`). Do LAB247 ten kanał nie idzie (do bazy serwisu jadą dziś tylko sprawdzenia dostępności), więc poza odczytem zostaje werdykt w tabeli `werdykty` i sprawa w tabeli `sprawy`.
Znane rozbieżności
  1. Katalog mówi o „nieoczekiwanej” zmianie, a kod nie zna zmian oczekiwanych: każda zmiana, także zapowiedziana migracja, daje ustalenie.
  2. Każda różnica zbioru to zmiana: pula CDN albo round-robin podająca inny podzbiór adresów daje fałszywe ustalenie; 39 z 282 domen we wzorcu ma więcej niż jeden adres.
  3. Brak rozpoznania zakresów CDN: nowy przydział adresu anycast wygląda tak samo jak przejęcie.
  4. Za proxy CDN przeprowadzka serwera źródłowego jest niewidoczna — rekord A pokazuje adres CDN.
  5. Wzorzec to ostatnio widziany stan, nie zatwierdzony: nadpisywany w przebiegu, który zgłasza zmianę, więc powrót do starego adresu daje drugie zgłoszenie zamiast zamknięcia.
  6. Brak trzeciego stanu: błąd albo timeout zapytania to pusta lista i cisza, bez „nie dało się sprawdzić”.
  7. Tylko rekordy A: zmiana rekordów AAAA nie jest wykrywana.
  8. Brak automatycznego zamknięcia: sprawa zostaje otwarta także po potwierdzonej migracji.
  9. Dwa niepowiązane źródła prawdy o adresie: oczekiwany adres w odczycie DNS skanu dostępności (ręczny) i wzorzec tego parametru (automatyczny).
  10. Przebiegi P3 Tier 1–3 startują co 2 minuty i każdy czyta oraz zapisuje cały plik wzorca — nakładające się przebiegi mogą nadpisać sobie zmiany (do potwierdzenia).
  11. Ustalenie nie trafia do bazy LAB247 automatycznie: STATS zostaje puste do ręcznego importu z ClickUp.
kandydaci do pętli: kod a opis parametru albo specyfikacja
Karta przepisana zCREATO_PING/helpers/ip_change.py · CREATO_PING/helpers/security_runner.py · CREATO_PING/config/incident_policy.toml · CREATO_PING/skaner/adapter_clickup.py · CREATO_PING/skaner/sprawy.py · CREATO_PING/helpers/tests/test_ip_change.py · CREATO_PING/skaner/usterki.toml · CREATO_PING/skaner/ocena.py · odczyt 22.09.2026
TAB. 3.2Co oznacza failtypów Findingów: 1

ip_changed: bramka polityki otwarta (gate=true) → sprawa w skanerze → Zmiana adresu serwera — waga 3 → ocena 5–6 (żółty), status strony „sredni”, dopóki sprawa jest otwarta. Zmianę serwerów nazw i rekordów poczty zgłasza ta sama sonda integralności DNS jako `dns_ns_changed` i `dns_mx_changed` — obie o wadze 3, obie z bramką otwartą.

KodFindingSeverityPewnośćSkutekFinding / alarmWaga → ocenaCo zrobić
B15.01Zmiana adresu IPip_changedWysokaNiepewnedo weryfikacjitak / niewaga 3 → ocena 5–6 (żółty)Potwierdź migrację i zaktualizuj oczekiwany IP.
TAB. 3.3B15.01 · Zmiana adresu IPwersja 1 · 01.10.2026
Kod i kluczB15.01 · ip_changed · w tabeli typów
Co znaczyIP z DNS różni się od poprzedniego skanu — migracja hostingu albo przejęcie domeny.
Kiedy powstajeTylko p3. Rekordy A domeny (dnspython, timeout 3 s) porównane jako posortowana lista z baseline w {CREATO_PING_STATE_DIR}/ip_baseline.json; finding, gdy nowa lista jest niepusta, baseline dla domeny istnieje i posortowane listy się różnią. Pierwszy skan (brak baseline) albo brak rekordów A = brak findingu.Logika: diff_ips, ip_change.py:65–86. Baseline nadpisywany każdą niepustą odpowiedzią, więc zmiana alarmuje tylko w jednym cyklu.
Severity · pewnośćWysoka · Niepewne
Skutek dla stronydo weryfikacji · zakłada Finding · alarm nie
Waga → ocenawaga 3 → ocena 5–6 (żółty)
KlasyfikacjaMITRE ATT&CK 19.2: T1584.001 Compromise Infrastructure: Domains (ślad)OCSF 1.9.0: Detection Finding (class_uid 2004)
Rekord OCSFfinding_info.analytic.uid = "B15.01" · analytic.name = "ip_changed" · finding_info.types = ["B15 Zmiana adresu IP"]
Co zrobićPotwierdź migrację i zaktualizuj oczekiwany IP.
Wersje typu
  1. v1 · 01.10.2026 — kod B15.01 nadany (finding-codes.ts)
ARK. 4

LOOP

bez pętli
RYS. 4.1Pętla parametru — sześć etapów
TAB. 4.1Trafność, 30 dnialarmy · prawdziwe · fałszywe · bez rozstrzygnięcia

Trafności jeszcze nie liczymy: zamknięcie subtaska nie niesie dziś werdyktu (prawdziwy / fałszywy / nie dało się sprawdzić). Cztery liczby pojawią się, gdy każde zamknięcie dostanie werdykt — to warunek startu pętli 1.

TAB. 4.2Pętle—

Ten parametr nie przeszedł jeszcze żadnej pętli. Kolejność po pierwszych pięciu grupach ustali miara trafności.

Blog 24/7
05.11CISA i FBI wzywają do zabezpieczenia sterowników chłodzenia po atakach w Europietherecord.media05.11Midnight Blizzard atakowała iPhone'y i Androidy przez zainfekowane strony w Europie i USAsecurityweek.com05.11APT29 kradła dane z iPhone'ów i Androidów przez przejęte i podrobione stronytherecord.media05.11Grupa APT29 przejęła skrypt Plerdy i atakowała niezałatane iPhone'y i Androidythehackernews.com05.11Microsoft wykrył 7,3 mld wiadomości phishingowych w III kwartale 2026microsoft.com05.11DigiCert ujawnia wyciek danych klientów i skanów dokumentów tożsamościbleepingcomputer.com05.11CWPdoor podmienia serwer cwpsrv w Control Web Panel i otwiera tylne wejście do Linuksableepingcomputer.com05.11Brytyjskie NCSC ostrzega, że narzędzia AI zwiększyły liczbę wykrywanych luk zero-daythehackernews.com05.11Skaner RootEvidence sprawdza starą lukę w Cisco IOS i dodaje nagłówki Opt-Outisc.sans.edu05.11Włamanie do portalu grantowego Norad, zagrożone dane 20 614 użytkownikówhelpnetsecurity.com