Blog 24/7

bastion host

TAB. 1Hasłopo angielsku
Po angielskubastion host
Którą formą pisaćpo angielsku Polski odpowiednik istnieje, ale w praktyce nikt tak nie pisze. Zostaw angielski, polski trzymaj jako synonim.
Inne formystacja przesiadkowa (właśc. jump host — pojęcie pokrewne, NIE synonim) · serwer przesiadkowy (jw.) · host bastionowy (niezaświadczony w sprawdzonych źródłach)
KategoriaSieć i infrastruktura obronna

Bastion host to mocno utwardzony serwer wystawiony na styku sieci niezaufanej, który jest jedynym dozwolonym punktem wejścia do zasobów sieci chronionej. Słownik NIST, za instrukcją CNSSI 4009-2022, definiuje go jako komputer specjalnego przeznaczenia w sieci, zaprojektowany i skonfigurowany specjalnie po to, by wytrzymać ataki [1]. Administrator nie łączy się bezpośrednio z serwerami produkcyjnymi, tylko najpierw z bastion hostem, a stamtąd dalej. Pojęciem pokrewnym jest jump host, po polsku stacja przesiadkowa.

Jak działa

Serwery produkcyjne, na przykład serwer WWW i serwer bazy danych, nie przyjmują połączeń administracyjnych z internetu. Port SSH albo RDP jest otwarty tylko na bastion hoście, a serwery wewnętrzne akceptują sesje administracyjne wyłącznie z jego adresu. Bastion host jest przy tym maksymalnie okrojony: działa na nim tylko to, co niezbędne do przekazania sesji, co zmniejsza powierzchnię ataku. Takie utwardzanie jest istotą pojęcia [1].

Drogę administratora do serwera pokazuje schemat poniżej.

RYS. 1Dostęp administracyjny przez bastion host

W OpenSSH przejście przez bastion obsługuje opcja ProxyJump (w wierszu poleceń -J). Wskazuje ona jeden lub kilka pośrednich hostów, odwiedzanych kolejno; klient łączy się najpierw z pośrednikiem, a stamtąd zestawia przekierowanie TCP do celu [2]. Przykładowy wpis w ~/.ssh/config:

Host bastion
    HostName bastion.example.com
    User admin

Host www-prod
    HostName 10.0.1.20
    User deploy
    ProxyJump bastion

Odmiany

OdmianaGdzie działaCechy
Własny bastion hostmaszyna w strefie DMZpełna kontrola, własne utwardzanie i aktualizacje
Stacja przesiadkowa (jump host)sieć przemysłowa, OTminimum oprogramowania i dostępów [4]
Usługa zarządzana w chmurzenp. Azure Bastionmaszyny wirtualne bez publicznego adresu IP [3]

W środowiskach przemysłowych CERT Polska zaleca, by dostęp zdalny był realizowany przez dedykowane stacje przesiadkowe z niezbędnym oprogramowaniem i dostępami ograniczonymi do minimum [4]. Microsoft opisuje Azure Bastion jako w pełni zarządzaną usługę, która daje połączenia RDP i SSH do maszyn wirtualnych przez TLS, bez wystawiania portów RDP i SSH na zewnątrz [3]. Maszyny wirtualne nie potrzebują wtedy publicznego adresu IP, agenta ani specjalnego klienta [3], a Microsoft wymienia wśród korzyści ochronę przed skanowaniem portów [3]. Usługa występuje w czterech wariantach: Developer, Basic, Standard i Premium; nagrywanie sesji na potrzeby zgodności daje dopiero wariant Premium [3].

W WordPressie

Na typowym hostingu współdzielonym administrator nie projektuje sieci, więc bastion host pojawia się dopiero na serwerze VPS, dedykowanym albo w chmurze. Tam strona WordPress ma zwykle serwer WWW, bazę danych i czasem osobny serwer plików. Bastion host pozwala zamknąć SSH i SFTP na wszystkich tych maszynach poza jedną.

Narzędzie WP-CLI potrafi uruchamiać polecenia na zdalnej instalacji WordPressa parametrem --ssh, w formacie z użytkownikiem, hostem, portem i ścieżką [6]. WP-CLI przekazuje polecenie do programu ssh, który uruchamia WP-CLI na zdalnej maszynie, i przyjmuje alias zapisany w ~/.ssh/config [6]. Wpis hosta z opcją ProxyJump [2] pozwala więc wykonywać polecenia WP-CLI na serwerze produkcyjnym przez bastion, bez otwierania mu SSH na świat.

Bastion host nie zastępuje ochrony samego panelu wp-admin. Panel jest dostępny przez HTTP i wymaga osobnych zabezpieczeń, na przykład uwierzytelniania wieloskładnikowego albo białej listy adresów IP.

Zagrożenia i skutki

Bastion host skupia cały dostęp administracyjny w jednym miejscu. To zaleta, bo łatwiej go pilnować, ale też ryzyko: przejęcie bastionu otwiera drogę do lateral movement w całej sieci. Dlatego oprogramowanie na nim musi być aktualne.

Przykładem jest luka regreSSHion w OpenSSH (CVE-2024-6387), opisana przez Sekurak 1 lipca 2024 roku [5]. Pozwalała ona bez uwierzytelnienia na zdalne wykonanie kodu z uprawnieniami roota na systemach Linux z biblioteką glibc; podatne były wersje poniżej 4.4p1 oraz od 8.5p1 do 9.7p1 [5]. Wśród tymczasowych środków zaradczych Sekurak wymienił ograniczenie dostępu do portu zaporą albo użycie bastion hosta z załataną wersją SSH, by ograniczyć bezpośredni dostęp do podatnych systemów [5]. Według cytowanych przez Sekurak badaczy wygranie wyścigu wymagało średnio około 10 000 prób, a uzyskanie zdalnej powłoki roota średnio 6–8 godzin [5]. Podatnych mogło być ponad 14 milionów instancji dostępnych w internecie [5]. Bastion z nieaktualnym OpenSSH byłby w tej sytuacji najsłabszym punktem, ale jeden załatany bastion chroni wiele serwerów, których port SSH nie jest widoczny z zewnątrz.

Drugim ryzykiem jest przekazywanie agenta SSH. Dokumentacja OpenSSH ostrzega, że użytkownik zdolny obejść uprawnienia plików na zdalnym hoście może przez przekazane połączenie użyć lokalnego agenta: nie wydobędzie kluczy, ale może się nimi uwierzytelniać [2]. ProxyJump zestawia przez pośrednika jedynie przekierowanie TCP [2], więc do serwera docelowego uwierzytelnia się klucz ze stacji administratora, a przekazywanie agenta nie jest potrzebne.

Dobre praktyki

  • Logowanie wyłącznie kluczem, bez haseł; zob. logowanie kluczem SSH.
  • Drugi składnik uwierzytelniania. CERT Polska dla środowisk przemysłowych zaleca VPN z dwuskładnikowym uwierzytelnianiem, najlepiej fizycznym tokenem, niezależnym od kontrolera domeny [4].
  • Nagrywanie i rejestrowanie sesji; CERT Polska zaleca nagrywanie sesji zdalnych [4]. Logi warto wysyłać poza bastion, zgodnie z przyjętą retencją logów.
  • Minimalny system, szybkie łatanie, brak innych usług i danych.
  • ProxyJump zamiast kopiowania kluczy na bastion i zamiast ForwardAgent [2].
  • Powiązanie z procesem zarządzania dostępem uprzywilejowanym (PAM): kto, kiedy i do czego ma dostęp.

W architekturze Zero Trust podobną rolę pełnią bramy dostępu weryfikujące tożsamość przy każdej sesji; zasada jednego, kontrolowanego wejścia pozostaje ta sama.

TAB. 2

Przypisy

6
  1. [1] Glossary: bastion host (CNSSI 4009-2022) · NIST CSRC
  2. [2] ssh_config(5) — OpenSSH client configuration file · OpenBSD
  3. [3] What is Azure Bastion? · Microsoft Learn
  4. [4] Bezpieczna architektura ICS · CERT Polska
  5. [5] Poważna luka z przeszłości znów niebezpieczna – regreSSHion (CVE-2024-6387) · Sekurak
  6. [6] Running commands remotely — WP-CLI Handbook · WordPress.org
TAB. 3

Hasła w tym artykule

13
TAB. 4

Linkują tutaj

5

Wszystkie kategorie → · Hasło w słowniku →

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