12
Zabezpečení nejen SSH na serveru pomocí Fail2Ban a jednoduchého honeypotu Jan Lipovský, Security Session '16 Brno, 02.04.2016

Zabezpečení nejen SSH na serveru pomocí Fail2Ban a jednoduchého honeypotu. / JAN LIPOVSKÝ [CYAN RESEARCH & DEVELOPMENT S.R.O.]

Embed Size (px)

Citation preview

Zabezpečení nejen SSH na serveru pomocí Fail2Ban a jednoduchého honeypotu

Jan Lipovský, Security Session '16Brno, 02.04.2016

2

Zabezpečení serveru

● silná hesla● používání certifikátu pro přihlášení na SSH (délka klíče 4096 bitů)● povolení specifických portů - iptables● nastavení Failt2Ban● nastavení honeypotu● udržovat systém aktuální

3

Zabezpečení serveru – hesla

● instalace systému (vytvoření VPS)– nastavení hesla superuživatele

● 0-9, A-Z, a-z, specialní znaky● nepoužívat online generátory hesel● správce hesel

– generování hesla pomocí openssl

$ openssl rand -base64 24

$ openssl rand -base64 37 | cut -c1-37

4

Zabezpečení serveru – hesla (TOP 25 - 2015)

1. 1234562. password3. 123456784. qwerty5. 123456. 1234567897. football8. 12349. 123456710. baseball11. welcome12. 1234567890

13. abc12314. 11111115. 1qaz2wsx16. dragon17. master18. monkey19. letmein20. login21. princess22. qwertyuiop23. solo24. passw0rd25. starwars

5

Zabezpečení serveru – SSH a iptables

● SSH– změna portu pro SSH (port 22 -> 2222)

– sledování neoprávněných přístupů v logu a odepření přístupu na server (Fail2Ban)

● nastavení firewallu – iptables– povolení přístupu pouze z určitých IP (ne vždy vhodné řešení)

6

Zabezpečení serveru – Fail2Ban

● scanuje logy● hledá neúspěšná přihlášení● blokuje přístup dle nastavených pravidel

– využívá iptables

● apache, courier, ssh, php, asterisk, ...● pouze IPv4

7

Zabezpečení serveru – Honeypot

● účelem je přitahovat potenciální útočníky

a zaznamenat jejich činnost● míra interakce

– nízká míra interakce

● simuluje pouze malou množinu funkcí dané služby

● vhodný především pro detekci známých útoků

– vysoká míra interakce

● simuluje realný systém (službu)

● umožňuje detailně analyzovat útok (i dosud neznámý)

● náchylnější na napadení samotného honeypotu

8

Zabezpečení serveru – Honeypot

● směr interakce– serverové

● detekce útoků hrubou silou, slovníkové útoky, zneužití služeb,

detekci červů či exploitů

– klientské

● rozpoznávání malware

● simuluje chování uživatele a testuje změnu integrity systému

9

Zabezpečení serveru – Honeypot

● SSH Honeypot– nízko-interaktivní

● Tinyhoneypot

● Kojoney / Kojoney2 (středně interaktivní)

● sshlowpot

– vysoko-interaktivní

● Kippo

● Cowrie (vychází z projektu Kippo)

● Kippo + Cowrie - https://gitlab.labs.nic.cz/honeynet/kippo

10

Abuse tracker

● www.blocklist.de – Fail2Ban reporting service– poskytuje seznam IP adres, ze kterých byl veden útok na jejich nebo

partnerský server (48 hodin)

– můžete se stát partnery

– několik typů seznamů

● ssh, mail, apache, imap, ftp, sip, ...

11

Zabezpečení serveru – tipy

● Přesměrování přístupu na ssh z nepovoleného IP rozsahu na honeypot– -A PREROUTING -p tcp -m tcp --dport 22 -s iprozsah -j ACCEPT

– -A PREROUTING -p tcp -m tcp --dport 22 -j REDIRECT -toports 2222

● Změna portu na kterém naslouchá SSH– sed -i.bak 's/Port 22/Port 2222/m' /etc/ssh/sshd_config

● Vypnutí přihlášeni přes SSH pomocí hesla– sed -i.bak 's/PasswordAuthentication yes/PasswordAuthentication

no/m' /etc/ssh/sshd_config

12

Použité zdroje a užitečné odkazy

● https://www.howtoforge.com/tutorial/increase-ipv4-security-with-fail2ban-and-tinyhoneypot-on-debian-jessie/

● https://github.com/paralax/awesome-honeypots

● http://www.digitaltrends.com/web/splashdata-worst-passwords/

● https://dip.felk.cvut.cz/browse/pdfcache/heroutom_2013dipl.pdf

● https://gitlab.labs.nic.cz/honeynet/kippo

● http://blog.cyanrd.cz/2015/08/ssh-i-zaklady-prihlasovani.html

● https://help.ubuntu.com/community/SSH/OpenSSH/Configuring

● http://www.tech-recipes.com/rx/1264/generate-passwords-with-openssl/

● http://www.blocklist.de/