Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.
Obě strany předchozí revizePředchozí verzeNásledující verze | Předchozí verze | ||
navody:vps:incidenty [2023/08/14 19:11] – [open-portmapper] Aither | navody:vps:incidenty [2024/11/12 21:57] (aktuální) – Opraven překlep - IPv6 adresa vypadá jinak :)) lukastesar | ||
---|---|---|---|
Řádek 5: | Řádek 5: | ||
členům, kteří by měli sjednat nápravu. Upozornění mohou být i preventivního | členům, kteří by měli sjednat nápravu. Upozornění mohou být i preventivního | ||
charakteru, např. když máte veřejně dostupné služby, které jsou zneužitelné. | charakteru, např. když máte veřejně dostupné služby, které jsou zneužitelné. | ||
+ | |||
+ | ===== Accessible-MySQL ===== | ||
+ | Na portu **3306** máš přes **IPv4** veřejně dostupnou MySQL/ | ||
+ | Pokud je to možné, tak nejlepší je nastavit databází tak, aby poslouchala | ||
+ | jen na localhostu, např. v '' | ||
+ | |||
+ | < | ||
+ | [mysqld] | ||
+ | bind-address = 127.0.0.1 | ||
+ | </ | ||
+ | |||
+ | Chceš-li se k databází připojovat odjinud, můžeš povolit přístup konkrétním | ||
+ | IP adresám pomocí firewallu. | ||
+ | |||
+ | ===== Accessible-PostgreSQL ===== | ||
+ | Na portu **5432** máš přes **IPv4** veřejně dostupnou PostgreSQL databází. | ||
+ | Pokud je to možné, tak nejlepší je nastavit databází tak, aby poslouchala | ||
+ | jen na localhostu. V '' | ||
+ | |||
+ | < | ||
+ | listen_addresses = localhost | ||
+ | </ | ||
+ | |||
+ | Chceš-li se k databází připojovat odjinud, můžeš povolit přístup konkrétním | ||
+ | IP adresám pomocí firewallu. | ||
+ | |||
+ | ===== Accessible-SMB ===== | ||
+ | Na VPS máš nainstalovanou službu samba (smbd), která je dostupná z internetu, | ||
+ | což se obecně nedoporučuje. Je vhodné použít buď VPN a povolit přístup jen | ||
+ | přes síť VPN, nebo použít bezpečnější protokol, např. SFTP přes SSH. | ||
+ | |||
+ | ===== DNS-Open-Resolvers ===== | ||
+ | Na portu **53** máš spuštěný DNS resolver, který je po **IPv4** dostupný z internetu. | ||
+ | DNS resolver by měl buď poslouchat jen na localhostu, nebo musí být nastaven tak, aby | ||
+ | odpovídal jen na dotazy z vybraných sítí, např. adresy tvých VPS, síť z tvojí VPN, atp. | ||
+ | |||
+ | Volně dostupné DNS resolvery jsou zneužívány k amplifikačním útokům -- požadavek je mnohem | ||
+ | menší než odpověd, kterou DNS resolver zasílá zpět. Útočník toho využije a nechá odpověď | ||
+ | zaslat na adresu oběti. | ||
+ | |||
+ | ===== IPv6-Accessible-MySQL ===== | ||
+ | Na portu **3306** máš přes **IPv6** veřejně dostupnou MySQL/ | ||
+ | Pokud je to možné, tak nejlepší je nastavit databází tak, aby poslouchala | ||
+ | jen na localhostu, např. v '' | ||
+ | |||
+ | < | ||
+ | [mysqld] | ||
+ | bind-address = ::1 | ||
+ | </ | ||
+ | |||
+ | Chceš-li se k databází připojovat odjinud, můžeš povolit přístup konkrétním | ||
+ | IP adresám pomocí firewallu. | ||
+ | |||
+ | ===== IPv6-Accessible-PostgreSQL ===== | ||
+ | Na portu **5432** máš přes **IPv6** veřejně dostupnou PostgreSQL databází. | ||
+ | Pokud je to možné, tak nejlepší je nastavit databází tak, aby poslouchala | ||
+ | jen na localhostu. V '' | ||
+ | |||
+ | < | ||
+ | listen_addresses = localhost | ||
+ | </ | ||
+ | |||
+ | Chceš-li se k databází připojovat odjinud, můžeš povolit přístup konkrétním | ||
+ | IP adresám pomocí firewallu. | ||
+ | |||
+ | ===== IPv6-DNS-Open-Resolvers ===== | ||
+ | Na portu **53** máš spuštěný DNS resolver, který je po **IPv6** dostupný z internetu. | ||
+ | DNS resolver by měl buď poslouchat jen na localhostu, nebo musí být nastaven tak, aby | ||
+ | odpovídal jen na dotazy z vybraných sítí, např. adresy tvých VPS, síť z tvojí VPN, atp. | ||
+ | |||
+ | Volně dostupné DNS resolvery jsou zneužívány k amplifikačním útokům -- požadavek je mnohem | ||
+ | menší než odpověd, kterou DNS resolver zasílá zpět. Útočník toho využije a nechá odpověď | ||
+ | zaslat na adresu oběti. | ||
+ | |||
+ | ===== malware ===== | ||
+ | Ve VPS ti běží malware. Pravděpodobně máš bezpečností chybu v nějakém webu nebo jiné | ||
+ | veřejně dostupné službě. Možné je taky slabé heslo na SSH. Malware často udělá z VPS | ||
+ | součást botnetu, který pak útočí na jiné systémy, rozesílá spam a nebo těží kryptoměny. | ||
+ | |||
+ | Důležitá indicie je uživatel, pod kterým malware běží, a umístění spustitelného | ||
+ | souboru. Pokud je to třeba uživatel '' | ||
+ | nějaký web. V reportu je dále uvedeno umístění spustitelného souboru -- sám to zjistíš | ||
+ | s '' | ||
+ | proces běží v nějakém docker kontejneru -- porovnej cestu v cgroup s '' | ||
+ | Pozor na to, že ''/ | ||
+ | |||
+ | Jestliže malware běží pod neprivilegovaným uživatelem, | ||
+ | aktualizovat web, systém, změnit heslo uživatele, atp. Počítej s tím, že to mělo přístup | ||
+ | všude v systému, kam se dostane daný uživatel. Malware často používá cron | ||
+ | k opětovnému spuštění, | ||
+ | |||
+ | Pokud malware běží pod rootem, tak máš větší problém, protože pokud s tím dopředu nepočítáš, | ||
+ | tak už s jistotou nezjistíš, | ||
+ | ke všem tvým souborům, včetně konfiguračních souborů s hesly. Balíčkovací | ||
+ | systémy mívají funkci kontroly integrity nainstalovaných souborů, to už ale nezahrne | ||
+ | všemožné konfigurační soubory a tvoje aplikace a data. Nejjistější je VPS přeinstalovat | ||
+ | a nastavit jej znovu. | ||
+ | |||
+ | ===== open-memcached ===== | ||
+ | memcached bývá zneužíván k amplification útokům, kdy útočník využije tvůj memcached | ||
+ | server k útoku na oběť díky tomu, že odpověd serveru je mnohem větší, než původní | ||
+ | požadavek. Pokud memcached používáš jen lokálně, nejlépe ho nastav tak, aby | ||
+ | poslouchal jen na localhostu. Jestliže k memcached přistupuješ z vícero VPS, | ||
+ | nastav si firewall tak, aby nebyl dostupný z veřejného Internetu. | ||
===== open-portmapper ===== | ===== open-portmapper ===== | ||
Řádek 14: | Řádek 118: | ||
a nechat odpovědi z tvého serveru zasílat na adresu oběti. | a nechat odpovědi z tvého serveru zasílat na adresu oběti. | ||
- | Portmapper poslouchá na portu 111. Tento port můžeme uzavřít, avšak je nutné | + | Portmapper poslouchá na portu **111**. Tento port můžeme uzavřít, avšak je nutné |
povolit existující spojení: | povolit existující spojení: | ||
Řádek 30: | Řádek 134: | ||
konfigurace firewallu záleží na použité distribuci. | konfigurace firewallu záleží na použité distribuci. | ||
- | ===== open-memcached ===== | + | ==== Debian |
- | memcached bývá zneužíván k amplification útokům, kdy útočník využije tvůj memcached | + | Jednou z možností je balíček [[https:// |
- | server k útoku na oběť díky tomu, že odpověd serveru je mnohem větší, než původní | + | |
- | požadavek. Pokud memcached používáš jen lokálně, nejlépe ho nastav | + | < |
- | poslouchal jen na localhostu. Jestliže k memcached | + | / |
- | nastav si firewall tak, aby nebyl dostupný z veřejného Internetu. | + | / |
+ | </ | ||
+ | |||
+ | Při instalaci se balíček zeptá, zda si přejete aktuální pravidla uložit. Využívá | ||
+ | < | ||
+ | iptables-save > / | ||
+ | ip6tables-save > / | ||
+ | </ | ||
+ | |||
+ | Příklady a zdroj: https:// | ||
+ | |||
+ | ===== Open-Redis ===== | ||
+ | Ve VPS máš službu redis, která je dostupná z internetu. Ve výchozím stavu běží na portu **6379**. | ||
+ | Je vhodné redis nastavit | ||