f r e e b s d -...

32
F r e e B S D System Hardening Jim Geovedi [email protected]

Upload: others

Post on 10-Aug-2020

17 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: F r e e B S D - openstorage.gunadarma.ac.idopenstorage.gunadarma.ac.id/idkf/geovedi/freebsd-system-hardenin… · • Non-aktifkan telnet, dan r* commands, gunakan SSH atau OpenSSH

F r e e B S DSystem Hardening

Jim [email protected]

Page 2: F r e e B S D - openstorage.gunadarma.ac.idopenstorage.gunadarma.ac.id/idkf/geovedi/freebsd-system-hardenin… · • Non-aktifkan telnet, dan r* commands, gunakan SSH atau OpenSSH

hello, humans!

Page 3: F r e e B S D - openstorage.gunadarma.ac.idopenstorage.gunadarma.ac.id/idkf/geovedi/freebsd-system-hardenin… · • Non-aktifkan telnet, dan r* commands, gunakan SSH atau OpenSSH

FOKUS PRESENTASI

• System Hardening FreeBSD OS untuk digunakan dalam lingkungan produksi.

• Tips dan trik seputar FreeBSD Security.

Page 4: F r e e B S D - openstorage.gunadarma.ac.idopenstorage.gunadarma.ac.id/idkf/geovedi/freebsd-system-hardenin… · • Non-aktifkan telnet, dan r* commands, gunakan SSH atau OpenSSH

• Selalu membuat BACKUP sebelum melakukan segala sesuatunya.

PERLU DIINGAT!

Page 5: F r e e B S D - openstorage.gunadarma.ac.idopenstorage.gunadarma.ac.id/idkf/geovedi/freebsd-system-hardenin… · • Non-aktifkan telnet, dan r* commands, gunakan SSH atau OpenSSH

BASIC SYSTEM HARDENING

Page 6: F r e e B S D - openstorage.gunadarma.ac.idopenstorage.gunadarma.ac.id/idkf/geovedi/freebsd-system-hardenin… · • Non-aktifkan telnet, dan r* commands, gunakan SSH atau OpenSSH

BASIC SYSTEM HARDENING

• Gunakan selalu FreeBSD versi STABLE

• Jangan menjalankan services yang tidak perlu.lihat /etc/inetd.conf, /etc/rc.conf

Page 7: F r e e B S D - openstorage.gunadarma.ac.idopenstorage.gunadarma.ac.id/idkf/geovedi/freebsd-system-hardenin… · • Non-aktifkan telnet, dan r* commands, gunakan SSH atau OpenSSH

SERVICES PROTECTION

Page 8: F r e e B S D - openstorage.gunadarma.ac.idopenstorage.gunadarma.ac.id/idkf/geovedi/freebsd-system-hardenin… · • Non-aktifkan telnet, dan r* commands, gunakan SSH atau OpenSSH

SERVICES PROTECTION

• Gunakan chroot(8) atau jail(8) untuk menjalankan program-program yang berisiko vulnerable.

• Memfilter setiap akses terhadap services menggunakan Firewall atau Packet Filtering software seperti ipfw atau IPF (ipfilter).

• Aktifkan option log_in_vain="YES" untuk melihat koneksi ke port-port TCP/UDP yang tidak menjalankan services.

Page 9: F r e e B S D - openstorage.gunadarma.ac.idopenstorage.gunadarma.ac.id/idkf/geovedi/freebsd-system-hardenin… · • Non-aktifkan telnet, dan r* commands, gunakan SSH atau OpenSSH

SECURE LOGGING

Page 10: F r e e B S D - openstorage.gunadarma.ac.idopenstorage.gunadarma.ac.id/idkf/geovedi/freebsd-system-hardenin… · • Non-aktifkan telnet, dan r* commands, gunakan SSH atau OpenSSH

SECURE LOGGING

• Non-aktifkan syslogd logging ke mesin remote.gunakan option “-s -s”

• Pastikan pada /etc/syslog.conf terdapat: security.* /var/log/security ftp.* /var/log/ftpd.log auth.* /var/log/auth.log

• Aktifkan ipfw atau IPF logging pada /etc/syslog.conf

Page 11: F r e e B S D - openstorage.gunadarma.ac.idopenstorage.gunadarma.ac.id/idkf/geovedi/freebsd-system-hardenin… · • Non-aktifkan telnet, dan r* commands, gunakan SSH atau OpenSSH

B O F H(bastard operator from hell)

Page 12: F r e e B S D - openstorage.gunadarma.ac.idopenstorage.gunadarma.ac.id/idkf/geovedi/freebsd-system-hardenin… · • Non-aktifkan telnet, dan r* commands, gunakan SSH atau OpenSSH

B O F H(bastard operator from hell)

•• Gunakan AllowUsers/AllowGroups pada konfigurasi

SSH untuk menentukan siapa saja user yang dapat loginmenggunakan SSH.

• Gunakan tcp wrappers untuk mengijinkan atau melarang akses pada tcp-based services.

• Berikan shell /sbin/nologin pada user yang hanya membutuhkan akses ftp.

• Lakukan user accounting.accounting_enable="YES"

Page 13: F r e e B S D - openstorage.gunadarma.ac.idopenstorage.gunadarma.ac.id/idkf/geovedi/freebsd-system-hardenin… · • Non-aktifkan telnet, dan r* commands, gunakan SSH atau OpenSSH

LOCKING-DOWN FILESYSTEM

Page 14: F r e e B S D - openstorage.gunadarma.ac.idopenstorage.gunadarma.ac.id/idkf/geovedi/freebsd-system-hardenin… · • Non-aktifkan telnet, dan r* commands, gunakan SSH atau OpenSSH

LOCKING-DOWN FILESYSTEM

• Selalu membuat beberapa partisi.

• Mount semua partisi kecuali /usr dengan argument ‘nosuid’

• Hilangkan suid bits pada binary yang tidak digunakan (seperti pada UUCP binary files)

• Gunakan chflags dengan variable sappnd pada logfiles, dan schg pada binary files.# ls -lo /usr/bin/su-r-sr-x--- 1 root wheel schg 8200 May 1 09:37 /usr/bin/su

Page 15: F r e e B S D - openstorage.gunadarma.ac.idopenstorage.gunadarma.ac.id/idkf/geovedi/freebsd-system-hardenin… · • Non-aktifkan telnet, dan r* commands, gunakan SSH atau OpenSSH

KERNEL SECURELEVELS

Page 16: F r e e B S D - openstorage.gunadarma.ac.idopenstorage.gunadarma.ac.id/idkf/geovedi/freebsd-system-hardenin… · • Non-aktifkan telnet, dan r* commands, gunakan SSH atau OpenSSH

KERNEL SECURELEVELS

•• Variable kernel securelevels menunjukkan level security.

• Value antara ‘-1’ sampai ‘3’, dan ‘0’ adalah ‘insecure mode’.

• Securelevel hanya dapat meningkat nilainya, dan tidak dapat turun pada multiuser mode.

• Securelevel dikontrol menggunakan sysctl(8) dansysctl.conf(5).

Page 17: F r e e B S D - openstorage.gunadarma.ac.idopenstorage.gunadarma.ac.id/idkf/geovedi/freebsd-system-hardenin… · • Non-aktifkan telnet, dan r* commands, gunakan SSH atau OpenSSH

KERNEL SECURELEVELS

•• Securelevel 1 = flag sappnd dan schg tidak dapat

diubah, kernel module tidak dapat diload/unload.

• Securelevel 2 = securelevel 1 + tidak dapat menulispada disk kecuali mount(2)

• Securelevel 3 = securelevel 2 + ipfw rules tidak dapatdimodifikasi

Page 18: F r e e B S D - openstorage.gunadarma.ac.idopenstorage.gunadarma.ac.id/idkf/geovedi/freebsd-system-hardenin… · • Non-aktifkan telnet, dan r* commands, gunakan SSH atau OpenSSH

KERNEL STATES CONTROL &

SYSTEM CONFIGURATION

Page 19: F r e e B S D - openstorage.gunadarma.ac.idopenstorage.gunadarma.ac.id/idkf/geovedi/freebsd-system-hardenin… · • Non-aktifkan telnet, dan r* commands, gunakan SSH atau OpenSSH

sysctl & rc.conf

• net.inet.tcp.blackhole=2, net.inet.udp.blackhole=1untuk tidak membuat RST pada portscan

• kern_securelevel_enable="YES",kern_securelevel="?" # range: -1..3;

• icmp_drop_redirect="YES"

• fsck_y_enable="YES"

Page 20: F r e e B S D - openstorage.gunadarma.ac.idopenstorage.gunadarma.ac.id/idkf/geovedi/freebsd-system-hardenin… · • Non-aktifkan telnet, dan r* commands, gunakan SSH atau OpenSSH

SECURE REMOTE CONNECTIONS

Page 21: F r e e B S D - openstorage.gunadarma.ac.idopenstorage.gunadarma.ac.id/idkf/geovedi/freebsd-system-hardenin… · • Non-aktifkan telnet, dan r* commands, gunakan SSH atau OpenSSH

SECURE REMOTE CONNECTIONS

• Non-aktifkan telnet, dan r* commands, gunakanSSH atau OpenSSH sebagai pengganti

• Gunakan sftp sebagai pengganti ftp

• Gunakan otentifikasi pubkey pada SSH

• Pertimbangkan kembali penggunaan OTP (One-Time-Password)

Page 22: F r e e B S D - openstorage.gunadarma.ac.idopenstorage.gunadarma.ac.id/idkf/geovedi/freebsd-system-hardenin… · • Non-aktifkan telnet, dan r* commands, gunakan SSH atau OpenSSH

FIREWALL / PACKET FILTERING

Page 23: F r e e B S D - openstorage.gunadarma.ac.idopenstorage.gunadarma.ac.id/idkf/geovedi/freebsd-system-hardenin… · • Non-aktifkan telnet, dan r* commands, gunakan SSH atau OpenSSH

FIREWALL / PACKET FILTERING

• Sebuah firewall dapat:

• melakukan deny/permit packets

• membedakan rules setiap interfaces

Page 24: F r e e B S D - openstorage.gunadarma.ac.idopenstorage.gunadarma.ac.id/idkf/geovedi/freebsd-system-hardenin… · • Non-aktifkan telnet, dan r* commands, gunakan SSH atau OpenSSH

FIREWALL / PACKET FILTERING

• Software yang dapat digunakan:

• ipfw (IPFirewall):options IPFIREWALL enable ipfwoptions IPFIREWALL_VERBOSE enable firewall loggingoptions IPFIREWALL_VERBOSE_LIMIT limit firewall loggingoptions IPDIVERT enable divert(4) sockets

• IPF (IPFilter):http://coombs.anu.edu.au/~avalon/

• PF (PacketFilter):http://pf4freebsd.love2party.net/

Page 25: F r e e B S D - openstorage.gunadarma.ac.idopenstorage.gunadarma.ac.id/idkf/geovedi/freebsd-system-hardenin… · • Non-aktifkan telnet, dan r* commands, gunakan SSH atau OpenSSH

SECURITY CHECKS

Page 26: F r e e B S D - openstorage.gunadarma.ac.idopenstorage.gunadarma.ac.id/idkf/geovedi/freebsd-system-hardenin… · • Non-aktifkan telnet, dan r* commands, gunakan SSH atau OpenSSH

SECURITY CHECKS

• nmap, swiss-army knife, err network mapper ;)http://www.insecure.org/nmap/

• snort, Lightweight network intrusion detection systemhttp://www.snort.org/

• tripwire, Filesystem security & verification programhttp://www.tripwire.org/

• chkrootkit, memeriksa apakah terdapat rootkit pada local system.http://www.chkrootkit.org/

• dsniff, monkey watch monkey sniffhttp://www.monkey.org/~dugsong/dsniff/

Page 27: F r e e B S D - openstorage.gunadarma.ac.idopenstorage.gunadarma.ac.id/idkf/geovedi/freebsd-system-hardenin… · • Non-aktifkan telnet, dan r* commands, gunakan SSH atau OpenSSH

WHAT’S NEXT?

Page 28: F r e e B S D - openstorage.gunadarma.ac.idopenstorage.gunadarma.ac.id/idkf/geovedi/freebsd-system-hardenin… · • Non-aktifkan telnet, dan r* commands, gunakan SSH atau OpenSSH

WHAT’S NEXT?

• FreeBSD Security web page:http://www.freebsd.org/security/security.html

• FreeBSD Security How-To:http://people.freebsd.org/~jkb/howto.html

• FreeBSD Security advisories:ftp://ftp.freebsd.org/pub/FreeBSD/CERT/advisories/

• FreeBSD Hardening Project:http://www.watson.org/fbsd-hardening/

Page 29: F r e e B S D - openstorage.gunadarma.ac.idopenstorage.gunadarma.ac.id/idkf/geovedi/freebsd-system-hardenin… · • Non-aktifkan telnet, dan r* commands, gunakan SSH atau OpenSSH

WHAT’S NEXT?

• FreeBSD ipfw howto:http://www.freebsd-howto.com/HOWTO/Ipfw-HOWTO

• IPF (ipfilter) howto:http://www.obfuscation.org/ipf/ipf-howto.html

• Cerb, security kernel module:http://cerber.sourceforge.net/

• Packetstorm Defense Tools:http://packetstormsecurity.nl/defense.html

Page 30: F r e e B S D - openstorage.gunadarma.ac.idopenstorage.gunadarma.ac.id/idkf/geovedi/freebsd-system-hardenin… · • Non-aktifkan telnet, dan r* commands, gunakan SSH atau OpenSSH

acknowledgments• CoreBSD, “will hack for bandwidth”

• BHC Community, “Iblis imut doyan MMX”

• Universitas Katolik Parahyangan

• C2FORCE@Dago374, “we make IT simple”

• #indofreebsd/dalnet, [email protected]

Page 31: F r e e B S D - openstorage.gunadarma.ac.idopenstorage.gunadarma.ac.id/idkf/geovedi/freebsd-system-hardenin… · • Non-aktifkan telnet, dan r* commands, gunakan SSH atau OpenSSH

T H E E N D

Page 32: F r e e B S D - openstorage.gunadarma.ac.idopenstorage.gunadarma.ac.id/idkf/geovedi/freebsd-system-hardenin… · • Non-aktifkan telnet, dan r* commands, gunakan SSH atau OpenSSH

GOT ROOT, err QUESTION ?