Upload
security-session
View
201
Download
0
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/