5. KEAMANAN SISTEM OPERASI
Komponen Arsitektur Keamanan Linux :
1. Account Pemakai (user account)
Macam User :—
Root : Kontrol system file, user, sumber daya (devices) dan akses jaringan.
— User : Account dengan kekuasaan yang diatur oleh root dalam melakukan aktifitas dalam
system.
Group : Kumpulan user yang memiliki hak sharing yang sejenis terhadap suatu devices tertentu.
2. Kontrol Akses secara Diskresi(Discretionary Access control)
Discretionary Access control (DAC) adalah metode pembatasan yang ketat, yang meliputi :
—
Setiap account memiliki username dan password sendiri.
—Setiap file/device memiliki atribut(read/write/execution) kepemilikan, group, dan user umum.
Perintah-perintah penting pada DAC :—
Mengubah izin akses
Mengubah
Mengubah kepemilikan
Menggunakan account root untuk sementara.
3. Kontrol akses jaringan (Network Access Control)
Firewall linux :
— alat pengontrolan akses antar jaringan yang membuat linux dapat memilih host yang berhak / tidak berhak mengaksesnya.
Fungsi Firewall linux :
— Analisa dan filtering paket
— Blocking content dan protocol
— Bloking isi paket seperti applet java, activeX, Vbscript, Cookies
— Autentikasi koneksi dan enkripsi
4. Enkripsi (encryption)
Penerapan Enkripsi di linux :
1. Enkripsi password
Menggunakan DES ( Data Encryption Standard )
2. Enkripsi komunikasi data
— Secure Shell (SSH)
— Secure socket Layer (SSL)
5. Logging
Prosedur dari Sistem Operasi atau aplikasi merekam setiap kejadian dan menyimpan rekaman tersebut untuk dapat dianalisa.
Semua file log linux disimpan di directory /var/log, antara lain :
— Lastlog
— last
— Xferlog
— Access_log
— Error_log
— Messages
6. Deteksi Penyusupan (Intrusion Detection)
Definisi : aktivitas mendeteksi penyusupan secara cepat dengan menggunakan program khusus secara otomatis yang disebut Intrusion Detection System.
Tipe dasar IDS :
— Ruled based system
— Adaptive system
Program IDS :
— Chkwtmp
— Tcplogd
— Host entry
Komponen Arsitektur Keamanan NT :
1) Adminisrasi User dan Group
· Jenis Account User :
o Administrator
o Guest
o User
· Jenis Account Group :
o Administrator
o Guest
o User
o Operator back-up
o Power user
o Operator server
o Operator account
o Operator printer
2) Keamanan untuk system File
A. NTFS :
— Cepat dalam operasi standar file (read – write – search)
— Terdapat system file recovery, access control dan permission.
— Memandang obyek sebagai kumpulan atribut, termasuk permission access.
B. Proteksi untuk integritas data
— Transaction logging : merupakan system file yang dapat di-recovery untuk dapat mencatat semua perubahan terakhir pada directory dan file secara otomatis.
— Sector sparing : Teknik dynamic data recovery yang hanya terdapat pada disk SCSI dengan cara memanfaatkan teknologi fault-tolerant volume untuk membuat duplikat data dari sector yang mengalami error.
— Cluster remapping : Jika ada kegagalan dalam transaksi I/O pada disk , secara otomatis akan mencari cluster baru yang tidak rusak, lalu menandai alamat cluster yang mengandung bad sector tersebut.
— Fault tolerance : Kemampuan untuk menyediakan redudansi data secara realtime yang akan memberikan tindakan penyelamatan bila terjadi kegagalan perangkat keras, korupsi perangkat lunak dan kemungkinan masalah lainnya.
3) Model Keamanan Windows NT
Dibuat dari beberapa komponen yang bekerja secara bersama-sama untuk memberikan keamanan logon dan access control list (ACL) dalam NT :
— LSA (Local security Authority) : menjamin user memiliki hak untuk mengakses system. Inti keamanan yang menciptakan akses token, mengadministrasi kebijakan keamanan local dan memberikan layanan otentikasi user.
— Proses logon : menerima permintaan logon dari user (logon interaktif dan logon remote), menanti masukan username dan password yang benar. Dibantu oleh Netlogon service.
— Security Account Manager (SAM) : dikenal juga sebagai directory service database, yang memelihara database untuk account user dan memberikan layan validasi untuk proses LSA.
— Security Reference Monitor (SRM) : memeriksa status izin user dalam mengakses, dan hak user untuk memanipulasi obyek serta membuat pesan-pesan audit.
4) Keamanan Sumber daya lokal
Obyek dalam NT [file, folder (directory), proses, thread, share dan device], masing-masing akan dilengkapi dengan Obyek Security Descriptor yang terdiri dari :
— Security ID Owner
— Security ID group
— Discretionary ACL (Access Control List)
— System ACL
5) Keamanan Jaringan
Jenis Keamanan Jaringan Windows NT :
— Model keamanan user level : account user akan mendapatkan akses untuk pemakaian bersama dengan menciptakan share atas directory atau printer.
— Model keamanan Share level : dikaitkan dengan jaringan peer to peer, dimana user manapun membagi sumber daya dan memutuskan apakaha diperlukan password untuk suatu akses tertentu.
6) Keamanan pada printer
— Dilakukan dengan mensetting properties printer :
— Menentukan permission : full control, Manage document, print
— Biasanya susunan permission pada NT defaulut :
o Adminstrator – full control
o Owner – Manage document
o Semua user – print
— Mengontrol print job, terdiri dari :
— Setting waktu cetak
— Prioritas
— Notifikasi (orang yang perlu diberi peringatan)
— Set auditing information
7) Keamanan Registry
— Tools yang disediakan dalam pengaksesan registry :
— System policy editor : mengontrol akses terhadap registry editor, memungkinkan administrator mengedit dan memodifikasi value tertentu dalam registry dengan berbasis grafis.
— Registry editor (regedit32.exe) : tools untuk melakukan edit dan modifikasi value dalam registry.
— Windows NT Diagnostics (winmsd.exe) : memungkinkan user melihat setting isi registry dan valuenya tanpa harus masuk ke registry editor sendiri.
8) Audit dan Pencatatan Log
— Pencatatan logon dan logoff termasuk pencatatan dalam multi entry login
— Object access (pencatatan akses obyek dan file)
— Privilege Use (paencatatan pemakaian hak user)
— Account Management (manajemen user dan group)
— Policy change (Pencatatan perubahan kebijakan keamanan)
— System event (pencatatan proses restart, shutdown dan pesan system)
— Detailed tracking (pencatatan proses dalam system secara detail)
Pertanyaan yang diajukan pada saat presentasi keamanan sistem operasi :
1. Pengertian ssh dan ssl pada linux (ilham)
Jawab :
Secure Shell (SSH) Ã Program yang melakukan loging terhadap komputer lain dalam jaringan, mengeksekusi perintah lewat mesin secara remote dan memindahkan file dari satu mesin ke mesin lainnya. Enkripsi dalam bentuk Blowfish, IDEA, RSA, Triple DES.
Secure socket Layer (SSL) Ã mengenkripsi data yang dikirimkan lewat port http.
2. Bedanya root di linux dan hak akses di windows (irvan)
Jawab :
— Hak akses pada linux :
Kontrol system file, user, sumber daya (devices) dan akses jaringan.
— Hak akses pada windows
Hak basic : acces computer from network, back-up files/directory, change system time, logon locally, manage auditing and security, log (event viewer), restore files and directory, shutdown system, take ownership files or other object, dll.
Hak advance : access service and kernel untuk kebutuhan pengembangan system.
6. Keamanan Database
1. Basis Data (Database)
Basis data adalah suatu koleksi data computer yang terintegrasi, diorganisasikan dan disimpan dengan suatu cara yang memudahkan pengambilan kembali. Integrasi logis dari record-record dalam banyak file ini disebut konsep database yang bertujuan untuk meminimumkan pengulangan data (duplikasi data artinya data yang sama disimpan dalam beberapa file) dan mencapai independensi data (kemampuan untuk membuat perubahan dalam struktur data tanpa membuat perubahan pada program yang memproses data).
Basis data dapat juga diartikan sebagai kumpulan informasi yang disimpan didalam computer secara sistematik sehingga dapat diperiksa menggunakan suatu program computer untuk memperoleh informasi dari basis data tersebut. Perangkat lunak yang digunakan untuk mengelola dan memanggil query basis data disebut system management basis data (DBMS). Hirarki data dalam konsep system database yaitu database, file, record dan eleman data.
2. Keamanan Database
Keamanan merupakan suatu proteksi terhadap pengerusakan data dan pemakaian data oleh pemakai yang tidak punya kewenangan.
Untuk menjaga keaman an Basis Data dapat dengan: (1) Penentuan perangkat lunak database server yang handal (2) Pemberian otoritas kepada user mana saja yang berhak mengakses, serta memanipulasi data-data yang ada.
a. Tujuan Keamanan Basis Data
· Secrecy/Confidentiality: Informasi tidak boleh diungkapkan kepada pengguna yang tidak sah. Sebagai contoh, mahasiswa seharusnya tidak diperbolehkan untuk memeriksa nilai siswa lainnya.
· Integrity: Hanya pengguna yang berwenang harus diizinkan untuk memodifikasi data. Sebagai contoh, siswa mungkin diperbolehkan untuk melihat nilai mereka, namun tidak diperbolehkan (jelas) untuk memodifikasi mereka.
· Availability: Pengguna yang terdaftar tidak boleh ditolak akses. Sebagai contoh, seorang instruktur yang ingin mengubah kelas harus diizinkan untuk melakukannya
b. Ancaman terhadap Keamanan Database
· Interuption: Sumber daya basis data dirusak atau menjadi tidak dapat dipakai (ancaman terhadap availability).
· Interception: Pemakai atau bagian yang tidak berhak mengakses sumber daya basis data (ancaman secrecy).
· Modification: Pemakai atau bagian yang tidak berhak tidak hanya mengakses tapi juga merusak sumber daya sistem komputer (ancaman integrity).
· Fabrication: Pemakai atau bagian yang tidak berhak menyisipkan objek palsu kedalam sistem (ancaman integrity).
c. Penyalahgunaan Database
1. Tidak disengaja, jenisnya :
• Kerusakan selama proses transaksi
• Anomali yang disebabkan oleh akses database yang konkuren
• Anomali yang disebabkan oleh pendistribuasian data pada beberapa komputer
• Logika error yang mengancam kemampuan transaksi untuk mempertahankan konsistensi database
2. Disengaja, jenisnya :
• Pengambilan data / pembacaan data oleh pihak yang tidak berwenang
• Pengubahan data oleh pihak yang tidak berwenang
• Penghapusan data oleh pihak yang tidak berwenang
d. Tingkatan Penyalahgunaan Database
· Fisikal à lokasi-lokasi dimana terdapat sistem komputer haruslah aman secara fisik terhadap serangan perusak.
· Manusia à wewenang pemakai harus dilakukan dengan berhati-hati untuk mengurangi kemungkinan adanya manipulasi oleh pemakai yang berwenang
· Sistem Operasi à Kelemahan pada SO ini memungkinkan pengaksesan data oleh pihak tak berwenang, karena hampir seluruh jaringan sistem database menggunakan akses jarak jauh.
· Sistem Database à Pengaturan hak pemakai yang baik.
3. Pengaturan Keamanan Database
a. Otorisasi :
· Pemberian Wewenang atau hak istimewa (priviledge) untuk mengakses sistem atau obyek database
· Kendali otorisasi (=kontrol akses) dapat dibangun pada perangkat lunak dengan 2 fungsi :
· Mengendalikan sistem atau obyek yang dapat diakses
· Mengendalikan bagaimana pengguna menggunakannya
· Sistem administrasi yang bertanggungjawab untuk memberikan hak akses dengan membuat account pengguna.
b. Tabel View :
· Merupakan metode pembatasan bagi pengguna untuk mendapatkan model database yang sesuai dengan kebutuhan perorangan. Metode ini dapat menyembunyikan data yang tidak digunakan atau tidak perlu dilihat oleh pengguna.
· Contoh pada Database relasional,untuk pengamanan dilakukan beberapa level:
1. Relasi à pengguna diperbolehkan atau tidak diperbolehkan mengakses langsung suatu relasi
2. View à pengguna diperbolehkan atau tidak diperbolehkan mengakses data yang terapat pada view
3. Read Authorization à pengguna diperbolehkan membaca data, tetapi tidak dapat memodifikasi.
4. Insert Authorization à pengguna diperbolehkan menambah data baru, tetapi tidak dapat memodifikasi data yang sudah ada.
5. Update Authorization à pengguna diperbolehkan memodifikasi data, tetapi tidak dapat menghapus data.
6. Delete Authorization à pengguna diperbolehkan menghapus data.
· Untuk Modifikasi data terdapat otorisasi tambahan :
1. Index Authorization à pengguna diperbolehkan membuat dan menghapus index data.
2. Resource Authorization à pengguna diperbolehkan membuat relasi-relasi baru.
3. Alteration Authorization à pengguna diperbolehkan menambah/menghapus atribut suatu relasi.
4. Drop Authorization à pengguna diperbolehkan menghapus relasi yang sudah ada.
· Contoh perintah menggunakan SQL :
GRANT : memberikan wewenang kepada pemakai
Syntax : GRANT <priviledge list> ON <nama relasi/view> TO <pemakai>
Contoh :
GRANT SELECT ON S TO BUDI
GRANT SELECT,UPDATE (STATUS,KOTA) ON S TO ALI,BUDI
REVOKE : mencabut wewenang yang dimiliki oleh pemakai
Syntax : REVOKE <priviledge list> ON <nama relasi/view> FROM <pemakai>
Contoh :
REVOKE SELECT ON S TO BUDI
REVOKE SELECT,UPDATE (STATUS,KOTA) ON S TO ALI,BUDI
Priviledge list : READ, INSERT, DROP, DELETE, INEX, ALTERATION, RESOURCE
c. Backup data dan recovery :
Backup : proses secara periodik untuk mebuat duplikat ari database dan melakukan logging file (atau program) ke media penyimpanan eksternal.
Jurnaling : proses menyimpan dan mengatur log file dari semua perubahan yang dibuat di database untuk proses recovery yang efektif jika terjadi kesalahan.
Isi Jurnal :
· Record transaksi
1. Identifikasi dari record
2. Tipe record jurnal (transaksi start, insert, update, delete, abort, commit)
3. Item data sebelum perubahan (operasi update dan delete)
4. Item data setelah perubahan (operasi insert dan update)
5. Informasi manajemen jurnal (misal : pointer sebelum dan record jurnal selanjutnya untuk semua transaksi
· Record checkpoint : suatu informasi pada jurnal untuk memulihkan database dari kegagalan, kalau sekedar redo, akan sulit penyimpanan sejauh mana jurnal untuk mencarinya kembali, maka untuk membatasi pencarian menggunakan teknik ini.
Recovery : merupakan upaya uantuk mengembalikan basis data ke keadaaan yang dianggap benar setelah terjadinya suatu kegagalan.
Jenis Pemulihan :
1. Pemulihan terhadap kegagalan transaksi : Kesatuan prosedur alam program yang dapat mengubah / memperbarui data pada sejumlah tabel.
2. Pemulihan terhadap kegagalan media : Pemulihan karena kegagalan media dengan cara mengambil atau memuat kembali salinan basis data (backup)
3. Pemulihan terhadap kegagalan sistem : Karena gangguan sistem, hang, listrik terputus alirannya.
e. Kesatuan data dan Enkripsi :
· Enkripsi : keamanan data
· Integritas :metode pemeriksaan dan validasi data (metode integrity constrain), yaitu berisi aturan-aturan atau batasan-batasan untuk tujuan terlaksananya integritas data.
· Konkuren : mekanisme untuk menjamin bahwa transaksi yang konkuren pada database multi user tidak saling menganggu operasinya masing-masing. Adanya penjadwalan proses yang akurat (time stamping).
4. Teknik Pemulihan Database
Teknik Pemulihan :
1. defered upate / perubahan yang ditunda : perubahan pada DB tidak akan berlangsung sampai transaksi ada pada poin disetujui (COMMIT). Jika terjadi kegagalan maka tidak akan terjadi perubahan, tetapi diperlukan operasi redo untuk mencegah akibat dari kegagalan tersebut.
2. Immediate Upadate / perubahan langsung : perubahan pada DB akan segera tanpa harus menunggu sebuah transaksi tersebut disetujui. Jika terjadi kegagalan diperlukan operasi UNDO untuk melihat apakah ada transaksi yang telah disetujui sebelum terjadi kegagalan.
3. Shadow Paging : menggunakan page bayangan imana paa prosesnya terdiri dari 2 tabel yang sama, yang satu menjadi tabel transaksi dan yang lain digunakan sebagai cadangan. Ketika transaksi mulai berlangsung kedua tabel ini sama dan selama berlangsung tabel transaksi yang menyimpan semua perubahan ke database, tabel bayangan akan digunakan jika terjadi kesalahan. Keuntungannya adalah tidak membutuhkan REDO atau UNDO, kelemahannya membuat terjadinya fragmentasi.
Pertanyaan yang diajukan pada saat presentasi Keamanan Database :
1. Salah satu contoh kasus penyalahgunaan database secara tidak sengaja dan secara di sengaja? (Fathul)
Jawab = contoh kasus penyalahgunaan database secara tidak sengaja. Input data dengan informasi yang tidak benar misalnya menggunakan e-banking via internet kita memasukan no rek atau token yang salah dalam melakukan transaksi.
Contoh kasus yang di sengaja. Carding adalah penyusun data informasi pada database untuk mendapatkan hak guna yang bukan miliknya misalkan dengan menggunakan uang cairan secara digital dalam melakukan sebuah transaksi.
7. EVALUASI KEAMANAN SISTEM INFORMASI
1. KEAMANAN SISTEM INFORMASI
1.1 Pengertian Keamanan Sistem Informasi
Berikut beberapa pengertian dari kemanan sistem informasi:
John D. Howard, Computer Security is preventing attackers from achieving objectives through unauthorized access or unauthorized use of computers and networks.
G. J. Simons, keamanan sistem informasi adalah bagaimana kita dapat mencegah penipuan (cheating) atau, paling tidak, mendeteksi adanya penipuan di sebuah sistem yang berbasis informasi, dimana informasinya sendiri tidak memiliki arti fisik.
Wikipedia, keamanan komputer atau sering diistilahkan keamanan sistem informasi adalah cabang dari teknologi komputer yang diterapkan untuk komputer dan jaringan. Tujuan keamanan komputer meliputi perlindungan informasi dan properti dari pencurian, kerusakan, atau bencana alam, sehingga memungkinkan informasi dan aset informasi tetap diakses dan produktif bagi penggunanya. Istilah keamanan sistem informasi merujuk pada proses dan mekanisme kolektif terhadap informasi yang sensitif dan berharga serta pelayann publikasi yang terlindungi dari gangguan atau kerusakan akibat aktivitas yang tidak sah, akses individu yang tidak bisa dipercaya dan kejadian tidak terencana.
1.2 Tujuan Keamanan Sistem Informasi
Keperluan pengembangan Keamanan Sistem Informasi memiliki tujuan sebagai berikut (Rahmat M. Samik-Ibrahim, 2005):
penjaminan INTEGRITAS informasi.
pengamanan KERAHASIAN data.
pemastian KESIAGAAN sistem informasi.
pemastian MEMENUHI peraturan, hukum, dan bakuan yang berlaku.
2. EVALUASI KEAMANAN SYSTEM INFORMASI
SEBAB MASALAH KEAMANAN HARUS SELALU DIMONITOR :
A. Ditemukannya lubang keamanan (security hole) yang baru. Perangkat lunak dan perangkat keras biasanya sangat kompleks sehingga tidak mungkin untuk diuji seratus persen. Kadang-kadang ada lubang keamanan yang ditimbulkan oleh kecerobohan implementasi.
B. Kesalahan konfigurasi. Kadang-kadang karena lalai atau alpa, konfigurasi sebuah sistem kurang benar sehingga menimbulkan lubang keamanan. Misalnya mode (permission atau kepemilikan) dari berkas yang menyimpan password (/etc/passwd di sistem UNIX) secara tidak sengaja diubah sehingga dapat diubah atau ditulis oleh orang-orang yang tidak berhak.
C. Penambahan perangkat baru (hardware dan/atau software) yang menyebabkan menurunnya tingkat security atau berubahnya metoda untuk mengoperasikan sistem. Operator dan administrator harus belajar lagi. Dalam masa belajar ini banyak hal yang jauh dari sempurna, misalnya server atau software masih menggunakan konfigurasi awal dari vendor (dengan password yang sama).
SUMBER LUBANG KEAMANAN
1. Salah Disain (design flaw)
A. Umumnya jarang terjadi. Akan tetapi apabila terjadi sangat sulit untuk diperbaiki. Akibat disain yang salah, maka biarpun dia diimplementasikan dengan baik, kelemahan dari sistem akan tetap ada.
Contoh :
· Lemah disainnya algoritma enkripsi ROT13 atau Caesar cipher, dimana karakter digeser 13 huruf atau 3 huruf. Meskipun diimplementasikan dengan programming yang sangat teliti, siapapun yang mengetahui algoritmanya dapat memecahkan enkripsi tersebut.
· Kesalahan disain urutan nomor (sequence numbering) dari paket TCP/IP. Kesalahan ini dapat dieksploitasi sehingga timbul masalah yang dikenal dengan nama “IP spoofing” (sebuah host memalsukan diri seolah-olah menjadi host lain dengan membuat paket palsu setelah engamati urutan paket dari host yang hendak diserang).
2. Implementasi kurang baik
· Banyak program yang diimplementasikan secara terburu-buru sehingga kurang cermat dalam pengkodean.
· Akibat tidak adanya cek atau testing implementasi suatu program yang baru dibuat.
Contoh:
A Tidak memperhatikan batas (“bound”) dari sebuah “array” tidak dicek sehingga terjadi yang disebut out-of-bound array atau buffer overflow yang dapat dieksploitasi (misalnya overwrite ke variable berikutnya).
B. Kealpaan memfilter karakter-karakter yang aneh-aneh yang dimasukkan sebagai input dari sebuah program sehingga sang program dapat mengakses berkas atau informasi yang semestinya tidak boleh diakses.
3. Salah konfigurasi
Contoh :
· Berkas yang semestinya tidak dapat diubah oleh pemakai secara tidak sengaja menjadi “writeable”. Apabila berkas tersebut merupakan berkas yang penting, seperti berkas yang digunakan untuk menyimpan password, maka efeknya menjadi lubang keamanan. Kadangkala sebuah komputer dijual dengan konfigurasi yang sangat lemah.
· Adanya program yang secara tidak sengaja diset menjadi “setuid root” sehingga ketika dijalankan pemakai memiliki akses seperti super user (root) yang dapat melakukan apa saja.
3. PENGUJIAN KEAMANAN SISTEM
Dikarenakan banyaknya hal yang harus dimonitor, administrator dari sistem informasi membutuhkan “automated tools”, perangkat pembantu otomatis, yang dapat membantu menguji atau meng-evaluasi keamanan sistem yang dikelola. Untuk sistem yang berbasis UNIX ada beberapa tools yang dapat digunakan, antara lain:
• Cops
• Tripwire
• Satan/Saint
• SBScan: localhost security scanner
Untuk sistem yang berbasis Windows NT ada juga program semacam, misalnya program Ballista yang dapat diperoleh dari: Selain program-program (tools) yang terpadu (integrated) seperti yang terdapat pada daftar di atas, ada banyak program yang dibuat oleh hackers untuk melakukan “coba-coba”. Program-program seperti ini, yang cepat sekali bermunculuan, biasanya dapat diperoleh (download) dari Internet melalui tempat-tempat yang berhubungan dengan keamanan, seperti misalnya “Rootshell”. (Lihat “Sumber informasi dan organisasi yang berhubungan dengan keamanan sistem informasi” on page 153.) Contoh program coba-coba ini antara lain:
• crack: program untuk menduga atau memecahkan password dengan menggunakan sebuah atau beberapa kamus (dictionary). Program crack ini melakukan brute force cracking dengan mencoba mengenkripsikan sebuah kata yang diambil dari kamus, dan kemudian membandingkan hasil enkripsi dengan password yang ingin dipecahkan. Bila belum sesuai, maka ia akan mengambil kata selanjutnya, mengenkripsikan, dan membandingkan kembali. Hal ini dijalankan terus menerus sampai semua kata di kamus dicoba. Selain menggunakan kata langsung dari kamus, crack juga memiliki program heuristic dimana bolak balik kata (dan beberapa modifikasi lain) juga dicoba. Jadi, jangan sekali-kali menggunakan password yang terdapat dalam kamus (bahasa apapun).
• land dan latierra: program yang dapat membuat sistem Windows 95/NT menjadi macet (hang, lock up). Program ini mengirimkan sebuah paket yang sudah di”spoofed” sehingga seolah-olah paket tersebut berasal dari mesin yang sama dengan menggunakan port yang terbuka (misalnya port 113 atau 139).
• ping-o-death: sebuah program (ping) yang dapat meng-crash-kan Windows 95/NT dan beberapa versi Unix.
• winuke: program untuk memacetkan sistem berbasis Windows
Probing Services
Servis di Internet umumnya dilakukan dengan menggunakan protokol TCP atau UDP. Setiap servis dijalankan dengan menggunakan port yang berbeda, misalnya:
• SMTP, untuk mengirim dan menerima e-mail, TCP, port 25
• DNS, untuk domain, UDP dan TCP, port 53
• HTTP, web server, TCP, port 80
• POP3, untuk mengambil e-mail, TCP, port 110
Contoh di atas hanya sebagian dari servis yang tersedia. Di sistem UNIX, lihat berkas /etc/services dan /etc/inetd.conf untuk melihat servis apa saja yang dijalankan oleh server atau komputer yang bersangkutan. Berkas /etc/services berisi daftar servis dan portnya, sementara berkas /etc/inetd.conf berisi servis-servis yang di jalan di server UNIX tersebut. Jadi tidak semua servis dijalankan, hanya servis yang dibuka di /etc/inetd.conf saja yang dijalankan. Selain itu ada juga servis yang dijalankan tidak melalui inetd.conf melainkan dijalankan sebagai daemon yang berjalan di belakang layar.
Pemilihan servis apa saja tergantung kepada kebutuhan dan tingkat keamanan yang diinginkan. Sayangnya seringkali sistem yang dibeli atau dirakit menjalankan beberapa servis utama sebagai “default”. Kadang-kadang beberapa servis harus dimatikan karena ada kemungkinan dapat dieksploitasi oleh cracker. Untuk itu ada beberapa program yang dapat digunakan untuk melakukan “probe” (meraba) servis apa saja yang tersedia. Program ini juga dapat digunakan oleh kriminal untuk melihat servis apa saja yang tersedia di sistem yang akan diserang dan berdasarkan data-data yang diperoleh dapat melancarkan serangan. Untuk beberapa servis yang berbasis TCP/IP, proses probe dapat dilakukan dengan menggunakan program telnet. Misalnya untuk melihat apakah ada servis e-mail dengan menggunakan SMTP digunakan telnet ke port 25.
Program penguji probing (penguji semua port otomatis) :
Paket probe untuk sistem UNIX
• nmap
• strobe
• tcpprobe
Probe untuk sistem Window 95/98/NT
• NetLab
• Cyberkit
• Ogre
Program yang memonitor adanya probing ke sistem Probing biasanya meninggalkan jejak di berkas log di system anda. Dengan mengamati entry di dalam berkas log dapat diketahui adanya probing. Selain itu, ada juga program untuk memonitor probe seperti paket program courtney, portsentry dan tcplogd.
OS FINGERPRINTING
- Fingerprinting : Analisa OS sistem yang ditujua agar dapat melihat database kelemahan sistem yang dituju.
- Metode Fingerprinting :
Cara yang paling konvensional :
- Service telnet ke server yang dituju, jika server tersebut kebetulan menyediakan servis telnet, seringkali ada banner yang menunjukkan nama OS beserta versinya.
- Service FTP di port 21. Dengan melakukan telnet ke port tersebut dan memberikan perintah “SYST” anda dapat mengetahui versi dari OS yang digunakan.
- Melakukan finger ke Web server, dengan menggunakan program netcat (nc).
Cara fingerprinting yang lebih canggih adalah dengan menganalisa respon sistem terhadap permintaan (request) tertentu. Misalnya dengan menganalisa nomor urut packet TCP/IP yang dikeluarkan oleh server tersebut dapat dipersempit ruang jenis dari OS yang digunakan. Ada beberapa tools untuk melakukan deteksi OS ini antara lain:
- nmap
- queso
PENGGUNAAN PROGRAM PENYERANG
- Untuk mengetahui kelemahan sistem informasi adalah dengan menyerang diri sendiri dengan paket-paket program penyerang (attack) yang dapat diperoleh di Internet.
- Selain program penyerang yang sifatnya agresif melumpuhkan sistem yang dituju, ada juga program penyerang yang sifatnya melakukan pencurian atau penyadapan data.
- Untuk penyadapan data, biasanya dikenal dengan istilah “sniffer”. Meskipun data tidak dicuri secara fisik (dalam artian menjadi hilang), sniffer ini sangat berbahaya karena dia dapat digunakan untuk menyadap password dan informasi yang sensitif. Ini merupakan serangan terhadap aspek privacy.
Contoh program penyadap (sniffer) antara lain:
· pcapture (Unix)
· sniffit (Unix)
· tcpdump (Unix)
· WebXRay (Windows)
PENGGUNAAN SISTEM PEMANTAU JARINGAN
Sistem pemantau jaringan (network monitoring) dapat digunakan untuk mengetahui adanya lubang keamaman. Misalnya apabila anda memiliki sebuah server yang semetinya hanya dapat diakses oleh orang dari dalam, akan tetapi dari pemantau jaringan dapat terlihat bahwa ada yang mencoba mengakses
melalui tempat lain. Selain itu dengan pemantau jaringan dapat juga dilihat usaha-usaha untuk melumpuhkan sistem dengan melalui denial of service attack (DoS) dengan mengirimkan packet yang jumlahnya berlebihan. Network monitoring biasanya dilakukan dengan menggunakan protokol SNMP (Simple Network Management Protocol).
Program network monitoring / management :
- Etherboy (Windows), Etherman (Unix)
- HP Openview (Windows)
- Packetboy (Windows), Packetman (Unix)
- SNMP Collector (Windows)
- Webboy (Windows)
Program pemantau jaringan yang tidak menggunakan SNMP :
- iplog, icmplog, updlog, yang merupakan bagian dari paket iplog untuk memantau paket IP, ICMP, UDP.
- iptraf, sudah termasuk dalam paket Linux Debian netdiag
- netwatch, sudah termasuk dalam paket Linux Debian netdiag
- ntop, memantau jaringan seperti program top yang memantau proses di sistem Unix
- trafshow, menunjukkan traffic antar hosts dalam bentuk text-mode
Pertanyaan yang diajukan pada saat presentasi Evaluasi Keamanan Sistem Informasi :
Apa penyebab dari celah/lubang keamanan ( security hole ), dan apa dampaknya ( positif dan negatif ) ? (Sandi)
• penyebab : Bisa disebabkan oleh 3 hal, yaitu kesalahan pada desain sistem ataupun algoritma yang digunakan, implementasi algoritma yang kurang baik, dan kesalahan konfigurasi.
• dampak :
- positif : dapat mengetahui kesalahan atau celah keamanan dari sistem yang ada, sehingga tingkat keamanannya dapat ditingkatkan.
- negatif : adanya pihak-pihak yang dianggap merugikan yang dapat masuk, mengakses, ataupun merusak sistem atau keamanan sistem yang ada.
Komponen Arsitektur Keamanan Linux :
1. Account Pemakai (user account)
Macam User :—
Root : Kontrol system file, user, sumber daya (devices) dan akses jaringan.
— User : Account dengan kekuasaan yang diatur oleh root dalam melakukan aktifitas dalam
system.
Group : Kumpulan user yang memiliki hak sharing yang sejenis terhadap suatu devices tertentu.
2. Kontrol Akses secara Diskresi(Discretionary Access control)
Discretionary Access control (DAC) adalah metode pembatasan yang ketat, yang meliputi :
—
Setiap account memiliki username dan password sendiri.
—Setiap file/device memiliki atribut(read/write/execution) kepemilikan, group, dan user umum.
Perintah-perintah penting pada DAC :—
Mengubah izin akses
Mengubah
Mengubah kepemilikan
Menggunakan account root untuk sementara.
3. Kontrol akses jaringan (Network Access Control)
Firewall linux :
— alat pengontrolan akses antar jaringan yang membuat linux dapat memilih host yang berhak / tidak berhak mengaksesnya.
Fungsi Firewall linux :
— Analisa dan filtering paket
— Blocking content dan protocol
— Bloking isi paket seperti applet java, activeX, Vbscript, Cookies
— Autentikasi koneksi dan enkripsi
4. Enkripsi (encryption)
Penerapan Enkripsi di linux :
1. Enkripsi password
Menggunakan DES ( Data Encryption Standard )
2. Enkripsi komunikasi data
— Secure Shell (SSH)
— Secure socket Layer (SSL)
5. Logging
Prosedur dari Sistem Operasi atau aplikasi merekam setiap kejadian dan menyimpan rekaman tersebut untuk dapat dianalisa.
Semua file log linux disimpan di directory /var/log, antara lain :
— Lastlog
— last
— Xferlog
— Access_log
— Error_log
— Messages
6. Deteksi Penyusupan (Intrusion Detection)
Definisi : aktivitas mendeteksi penyusupan secara cepat dengan menggunakan program khusus secara otomatis yang disebut Intrusion Detection System.
Tipe dasar IDS :
— Ruled based system
— Adaptive system
Program IDS :
— Chkwtmp
— Tcplogd
— Host entry
Komponen Arsitektur Keamanan NT :
1) Adminisrasi User dan Group
· Jenis Account User :
o Administrator
o Guest
o User
· Jenis Account Group :
o Administrator
o Guest
o User
o Operator back-up
o Power user
o Operator server
o Operator account
o Operator printer
2) Keamanan untuk system File
A. NTFS :
— Cepat dalam operasi standar file (read – write – search)
— Terdapat system file recovery, access control dan permission.
— Memandang obyek sebagai kumpulan atribut, termasuk permission access.
B. Proteksi untuk integritas data
— Transaction logging : merupakan system file yang dapat di-recovery untuk dapat mencatat semua perubahan terakhir pada directory dan file secara otomatis.
— Sector sparing : Teknik dynamic data recovery yang hanya terdapat pada disk SCSI dengan cara memanfaatkan teknologi fault-tolerant volume untuk membuat duplikat data dari sector yang mengalami error.
— Cluster remapping : Jika ada kegagalan dalam transaksi I/O pada disk , secara otomatis akan mencari cluster baru yang tidak rusak, lalu menandai alamat cluster yang mengandung bad sector tersebut.
— Fault tolerance : Kemampuan untuk menyediakan redudansi data secara realtime yang akan memberikan tindakan penyelamatan bila terjadi kegagalan perangkat keras, korupsi perangkat lunak dan kemungkinan masalah lainnya.
3) Model Keamanan Windows NT
Dibuat dari beberapa komponen yang bekerja secara bersama-sama untuk memberikan keamanan logon dan access control list (ACL) dalam NT :
— LSA (Local security Authority) : menjamin user memiliki hak untuk mengakses system. Inti keamanan yang menciptakan akses token, mengadministrasi kebijakan keamanan local dan memberikan layanan otentikasi user.
— Proses logon : menerima permintaan logon dari user (logon interaktif dan logon remote), menanti masukan username dan password yang benar. Dibantu oleh Netlogon service.
— Security Account Manager (SAM) : dikenal juga sebagai directory service database, yang memelihara database untuk account user dan memberikan layan validasi untuk proses LSA.
— Security Reference Monitor (SRM) : memeriksa status izin user dalam mengakses, dan hak user untuk memanipulasi obyek serta membuat pesan-pesan audit.
4) Keamanan Sumber daya lokal
Obyek dalam NT [file, folder (directory), proses, thread, share dan device], masing-masing akan dilengkapi dengan Obyek Security Descriptor yang terdiri dari :
— Security ID Owner
— Security ID group
— Discretionary ACL (Access Control List)
— System ACL
5) Keamanan Jaringan
Jenis Keamanan Jaringan Windows NT :
— Model keamanan user level : account user akan mendapatkan akses untuk pemakaian bersama dengan menciptakan share atas directory atau printer.
— Model keamanan Share level : dikaitkan dengan jaringan peer to peer, dimana user manapun membagi sumber daya dan memutuskan apakaha diperlukan password untuk suatu akses tertentu.
6) Keamanan pada printer
— Dilakukan dengan mensetting properties printer :
— Menentukan permission : full control, Manage document, print
— Biasanya susunan permission pada NT defaulut :
o Adminstrator – full control
o Owner – Manage document
o Semua user – print
— Mengontrol print job, terdiri dari :
— Setting waktu cetak
— Prioritas
— Notifikasi (orang yang perlu diberi peringatan)
— Set auditing information
7) Keamanan Registry
— Tools yang disediakan dalam pengaksesan registry :
— System policy editor : mengontrol akses terhadap registry editor, memungkinkan administrator mengedit dan memodifikasi value tertentu dalam registry dengan berbasis grafis.
— Registry editor (regedit32.exe) : tools untuk melakukan edit dan modifikasi value dalam registry.
— Windows NT Diagnostics (winmsd.exe) : memungkinkan user melihat setting isi registry dan valuenya tanpa harus masuk ke registry editor sendiri.
8) Audit dan Pencatatan Log
— Pencatatan logon dan logoff termasuk pencatatan dalam multi entry login
— Object access (pencatatan akses obyek dan file)
— Privilege Use (paencatatan pemakaian hak user)
— Account Management (manajemen user dan group)
— Policy change (Pencatatan perubahan kebijakan keamanan)
— System event (pencatatan proses restart, shutdown dan pesan system)
— Detailed tracking (pencatatan proses dalam system secara detail)
Pertanyaan yang diajukan pada saat presentasi keamanan sistem operasi :
1. Pengertian ssh dan ssl pada linux (ilham)
Jawab :
Secure Shell (SSH) Ã Program yang melakukan loging terhadap komputer lain dalam jaringan, mengeksekusi perintah lewat mesin secara remote dan memindahkan file dari satu mesin ke mesin lainnya. Enkripsi dalam bentuk Blowfish, IDEA, RSA, Triple DES.
Secure socket Layer (SSL) Ã mengenkripsi data yang dikirimkan lewat port http.
2. Bedanya root di linux dan hak akses di windows (irvan)
Jawab :
— Hak akses pada linux :
Kontrol system file, user, sumber daya (devices) dan akses jaringan.
— Hak akses pada windows
Hak basic : acces computer from network, back-up files/directory, change system time, logon locally, manage auditing and security, log (event viewer), restore files and directory, shutdown system, take ownership files or other object, dll.
Hak advance : access service and kernel untuk kebutuhan pengembangan system.
6. Keamanan Database
1. Basis Data (Database)
Basis data adalah suatu koleksi data computer yang terintegrasi, diorganisasikan dan disimpan dengan suatu cara yang memudahkan pengambilan kembali. Integrasi logis dari record-record dalam banyak file ini disebut konsep database yang bertujuan untuk meminimumkan pengulangan data (duplikasi data artinya data yang sama disimpan dalam beberapa file) dan mencapai independensi data (kemampuan untuk membuat perubahan dalam struktur data tanpa membuat perubahan pada program yang memproses data).
Basis data dapat juga diartikan sebagai kumpulan informasi yang disimpan didalam computer secara sistematik sehingga dapat diperiksa menggunakan suatu program computer untuk memperoleh informasi dari basis data tersebut. Perangkat lunak yang digunakan untuk mengelola dan memanggil query basis data disebut system management basis data (DBMS). Hirarki data dalam konsep system database yaitu database, file, record dan eleman data.
2. Keamanan Database
Keamanan merupakan suatu proteksi terhadap pengerusakan data dan pemakaian data oleh pemakai yang tidak punya kewenangan.
Untuk menjaga keaman an Basis Data dapat dengan: (1) Penentuan perangkat lunak database server yang handal (2) Pemberian otoritas kepada user mana saja yang berhak mengakses, serta memanipulasi data-data yang ada.
a. Tujuan Keamanan Basis Data
· Secrecy/Confidentiality: Informasi tidak boleh diungkapkan kepada pengguna yang tidak sah. Sebagai contoh, mahasiswa seharusnya tidak diperbolehkan untuk memeriksa nilai siswa lainnya.
· Integrity: Hanya pengguna yang berwenang harus diizinkan untuk memodifikasi data. Sebagai contoh, siswa mungkin diperbolehkan untuk melihat nilai mereka, namun tidak diperbolehkan (jelas) untuk memodifikasi mereka.
· Availability: Pengguna yang terdaftar tidak boleh ditolak akses. Sebagai contoh, seorang instruktur yang ingin mengubah kelas harus diizinkan untuk melakukannya
b. Ancaman terhadap Keamanan Database
· Interuption: Sumber daya basis data dirusak atau menjadi tidak dapat dipakai (ancaman terhadap availability).
· Interception: Pemakai atau bagian yang tidak berhak mengakses sumber daya basis data (ancaman secrecy).
· Modification: Pemakai atau bagian yang tidak berhak tidak hanya mengakses tapi juga merusak sumber daya sistem komputer (ancaman integrity).
· Fabrication: Pemakai atau bagian yang tidak berhak menyisipkan objek palsu kedalam sistem (ancaman integrity).
c. Penyalahgunaan Database
1. Tidak disengaja, jenisnya :
• Kerusakan selama proses transaksi
• Anomali yang disebabkan oleh akses database yang konkuren
• Anomali yang disebabkan oleh pendistribuasian data pada beberapa komputer
• Logika error yang mengancam kemampuan transaksi untuk mempertahankan konsistensi database
2. Disengaja, jenisnya :
• Pengambilan data / pembacaan data oleh pihak yang tidak berwenang
• Pengubahan data oleh pihak yang tidak berwenang
• Penghapusan data oleh pihak yang tidak berwenang
d. Tingkatan Penyalahgunaan Database
· Fisikal à lokasi-lokasi dimana terdapat sistem komputer haruslah aman secara fisik terhadap serangan perusak.
· Manusia à wewenang pemakai harus dilakukan dengan berhati-hati untuk mengurangi kemungkinan adanya manipulasi oleh pemakai yang berwenang
· Sistem Operasi à Kelemahan pada SO ini memungkinkan pengaksesan data oleh pihak tak berwenang, karena hampir seluruh jaringan sistem database menggunakan akses jarak jauh.
· Sistem Database à Pengaturan hak pemakai yang baik.
3. Pengaturan Keamanan Database
a. Otorisasi :
· Pemberian Wewenang atau hak istimewa (priviledge) untuk mengakses sistem atau obyek database
· Kendali otorisasi (=kontrol akses) dapat dibangun pada perangkat lunak dengan 2 fungsi :
· Mengendalikan sistem atau obyek yang dapat diakses
· Mengendalikan bagaimana pengguna menggunakannya
· Sistem administrasi yang bertanggungjawab untuk memberikan hak akses dengan membuat account pengguna.
b. Tabel View :
· Merupakan metode pembatasan bagi pengguna untuk mendapatkan model database yang sesuai dengan kebutuhan perorangan. Metode ini dapat menyembunyikan data yang tidak digunakan atau tidak perlu dilihat oleh pengguna.
· Contoh pada Database relasional,untuk pengamanan dilakukan beberapa level:
1. Relasi à pengguna diperbolehkan atau tidak diperbolehkan mengakses langsung suatu relasi
2. View à pengguna diperbolehkan atau tidak diperbolehkan mengakses data yang terapat pada view
3. Read Authorization à pengguna diperbolehkan membaca data, tetapi tidak dapat memodifikasi.
4. Insert Authorization à pengguna diperbolehkan menambah data baru, tetapi tidak dapat memodifikasi data yang sudah ada.
5. Update Authorization à pengguna diperbolehkan memodifikasi data, tetapi tidak dapat menghapus data.
6. Delete Authorization à pengguna diperbolehkan menghapus data.
· Untuk Modifikasi data terdapat otorisasi tambahan :
1. Index Authorization à pengguna diperbolehkan membuat dan menghapus index data.
2. Resource Authorization à pengguna diperbolehkan membuat relasi-relasi baru.
3. Alteration Authorization à pengguna diperbolehkan menambah/menghapus atribut suatu relasi.
4. Drop Authorization à pengguna diperbolehkan menghapus relasi yang sudah ada.
· Contoh perintah menggunakan SQL :
GRANT : memberikan wewenang kepada pemakai
Syntax : GRANT <priviledge list> ON <nama relasi/view> TO <pemakai>
Contoh :
GRANT SELECT ON S TO BUDI
GRANT SELECT,UPDATE (STATUS,KOTA) ON S TO ALI,BUDI
REVOKE : mencabut wewenang yang dimiliki oleh pemakai
Syntax : REVOKE <priviledge list> ON <nama relasi/view> FROM <pemakai>
Contoh :
REVOKE SELECT ON S TO BUDI
REVOKE SELECT,UPDATE (STATUS,KOTA) ON S TO ALI,BUDI
Priviledge list : READ, INSERT, DROP, DELETE, INEX, ALTERATION, RESOURCE
c. Backup data dan recovery :
Backup : proses secara periodik untuk mebuat duplikat ari database dan melakukan logging file (atau program) ke media penyimpanan eksternal.
Jurnaling : proses menyimpan dan mengatur log file dari semua perubahan yang dibuat di database untuk proses recovery yang efektif jika terjadi kesalahan.
Isi Jurnal :
· Record transaksi
1. Identifikasi dari record
2. Tipe record jurnal (transaksi start, insert, update, delete, abort, commit)
3. Item data sebelum perubahan (operasi update dan delete)
4. Item data setelah perubahan (operasi insert dan update)
5. Informasi manajemen jurnal (misal : pointer sebelum dan record jurnal selanjutnya untuk semua transaksi
· Record checkpoint : suatu informasi pada jurnal untuk memulihkan database dari kegagalan, kalau sekedar redo, akan sulit penyimpanan sejauh mana jurnal untuk mencarinya kembali, maka untuk membatasi pencarian menggunakan teknik ini.
Recovery : merupakan upaya uantuk mengembalikan basis data ke keadaaan yang dianggap benar setelah terjadinya suatu kegagalan.
Jenis Pemulihan :
1. Pemulihan terhadap kegagalan transaksi : Kesatuan prosedur alam program yang dapat mengubah / memperbarui data pada sejumlah tabel.
2. Pemulihan terhadap kegagalan media : Pemulihan karena kegagalan media dengan cara mengambil atau memuat kembali salinan basis data (backup)
3. Pemulihan terhadap kegagalan sistem : Karena gangguan sistem, hang, listrik terputus alirannya.
e. Kesatuan data dan Enkripsi :
· Enkripsi : keamanan data
· Integritas :metode pemeriksaan dan validasi data (metode integrity constrain), yaitu berisi aturan-aturan atau batasan-batasan untuk tujuan terlaksananya integritas data.
· Konkuren : mekanisme untuk menjamin bahwa transaksi yang konkuren pada database multi user tidak saling menganggu operasinya masing-masing. Adanya penjadwalan proses yang akurat (time stamping).
4. Teknik Pemulihan Database
Teknik Pemulihan :
1. defered upate / perubahan yang ditunda : perubahan pada DB tidak akan berlangsung sampai transaksi ada pada poin disetujui (COMMIT). Jika terjadi kegagalan maka tidak akan terjadi perubahan, tetapi diperlukan operasi redo untuk mencegah akibat dari kegagalan tersebut.
2. Immediate Upadate / perubahan langsung : perubahan pada DB akan segera tanpa harus menunggu sebuah transaksi tersebut disetujui. Jika terjadi kegagalan diperlukan operasi UNDO untuk melihat apakah ada transaksi yang telah disetujui sebelum terjadi kegagalan.
3. Shadow Paging : menggunakan page bayangan imana paa prosesnya terdiri dari 2 tabel yang sama, yang satu menjadi tabel transaksi dan yang lain digunakan sebagai cadangan. Ketika transaksi mulai berlangsung kedua tabel ini sama dan selama berlangsung tabel transaksi yang menyimpan semua perubahan ke database, tabel bayangan akan digunakan jika terjadi kesalahan. Keuntungannya adalah tidak membutuhkan REDO atau UNDO, kelemahannya membuat terjadinya fragmentasi.
Pertanyaan yang diajukan pada saat presentasi Keamanan Database :
1. Salah satu contoh kasus penyalahgunaan database secara tidak sengaja dan secara di sengaja? (Fathul)
Jawab = contoh kasus penyalahgunaan database secara tidak sengaja. Input data dengan informasi yang tidak benar misalnya menggunakan e-banking via internet kita memasukan no rek atau token yang salah dalam melakukan transaksi.
Contoh kasus yang di sengaja. Carding adalah penyusun data informasi pada database untuk mendapatkan hak guna yang bukan miliknya misalkan dengan menggunakan uang cairan secara digital dalam melakukan sebuah transaksi.
7. EVALUASI KEAMANAN SISTEM INFORMASI
1. KEAMANAN SISTEM INFORMASI
1.1 Pengertian Keamanan Sistem Informasi
Berikut beberapa pengertian dari kemanan sistem informasi:
John D. Howard, Computer Security is preventing attackers from achieving objectives through unauthorized access or unauthorized use of computers and networks.
G. J. Simons, keamanan sistem informasi adalah bagaimana kita dapat mencegah penipuan (cheating) atau, paling tidak, mendeteksi adanya penipuan di sebuah sistem yang berbasis informasi, dimana informasinya sendiri tidak memiliki arti fisik.
Wikipedia, keamanan komputer atau sering diistilahkan keamanan sistem informasi adalah cabang dari teknologi komputer yang diterapkan untuk komputer dan jaringan. Tujuan keamanan komputer meliputi perlindungan informasi dan properti dari pencurian, kerusakan, atau bencana alam, sehingga memungkinkan informasi dan aset informasi tetap diakses dan produktif bagi penggunanya. Istilah keamanan sistem informasi merujuk pada proses dan mekanisme kolektif terhadap informasi yang sensitif dan berharga serta pelayann publikasi yang terlindungi dari gangguan atau kerusakan akibat aktivitas yang tidak sah, akses individu yang tidak bisa dipercaya dan kejadian tidak terencana.
1.2 Tujuan Keamanan Sistem Informasi
Keperluan pengembangan Keamanan Sistem Informasi memiliki tujuan sebagai berikut (Rahmat M. Samik-Ibrahim, 2005):
penjaminan INTEGRITAS informasi.
pengamanan KERAHASIAN data.
pemastian KESIAGAAN sistem informasi.
pemastian MEMENUHI peraturan, hukum, dan bakuan yang berlaku.
2. EVALUASI KEAMANAN SYSTEM INFORMASI
SEBAB MASALAH KEAMANAN HARUS SELALU DIMONITOR :
A. Ditemukannya lubang keamanan (security hole) yang baru. Perangkat lunak dan perangkat keras biasanya sangat kompleks sehingga tidak mungkin untuk diuji seratus persen. Kadang-kadang ada lubang keamanan yang ditimbulkan oleh kecerobohan implementasi.
B. Kesalahan konfigurasi. Kadang-kadang karena lalai atau alpa, konfigurasi sebuah sistem kurang benar sehingga menimbulkan lubang keamanan. Misalnya mode (permission atau kepemilikan) dari berkas yang menyimpan password (/etc/passwd di sistem UNIX) secara tidak sengaja diubah sehingga dapat diubah atau ditulis oleh orang-orang yang tidak berhak.
C. Penambahan perangkat baru (hardware dan/atau software) yang menyebabkan menurunnya tingkat security atau berubahnya metoda untuk mengoperasikan sistem. Operator dan administrator harus belajar lagi. Dalam masa belajar ini banyak hal yang jauh dari sempurna, misalnya server atau software masih menggunakan konfigurasi awal dari vendor (dengan password yang sama).
SUMBER LUBANG KEAMANAN
1. Salah Disain (design flaw)
A. Umumnya jarang terjadi. Akan tetapi apabila terjadi sangat sulit untuk diperbaiki. Akibat disain yang salah, maka biarpun dia diimplementasikan dengan baik, kelemahan dari sistem akan tetap ada.
Contoh :
· Lemah disainnya algoritma enkripsi ROT13 atau Caesar cipher, dimana karakter digeser 13 huruf atau 3 huruf. Meskipun diimplementasikan dengan programming yang sangat teliti, siapapun yang mengetahui algoritmanya dapat memecahkan enkripsi tersebut.
· Kesalahan disain urutan nomor (sequence numbering) dari paket TCP/IP. Kesalahan ini dapat dieksploitasi sehingga timbul masalah yang dikenal dengan nama “IP spoofing” (sebuah host memalsukan diri seolah-olah menjadi host lain dengan membuat paket palsu setelah engamati urutan paket dari host yang hendak diserang).
2. Implementasi kurang baik
· Banyak program yang diimplementasikan secara terburu-buru sehingga kurang cermat dalam pengkodean.
· Akibat tidak adanya cek atau testing implementasi suatu program yang baru dibuat.
Contoh:
A Tidak memperhatikan batas (“bound”) dari sebuah “array” tidak dicek sehingga terjadi yang disebut out-of-bound array atau buffer overflow yang dapat dieksploitasi (misalnya overwrite ke variable berikutnya).
B. Kealpaan memfilter karakter-karakter yang aneh-aneh yang dimasukkan sebagai input dari sebuah program sehingga sang program dapat mengakses berkas atau informasi yang semestinya tidak boleh diakses.
3. Salah konfigurasi
Contoh :
· Berkas yang semestinya tidak dapat diubah oleh pemakai secara tidak sengaja menjadi “writeable”. Apabila berkas tersebut merupakan berkas yang penting, seperti berkas yang digunakan untuk menyimpan password, maka efeknya menjadi lubang keamanan. Kadangkala sebuah komputer dijual dengan konfigurasi yang sangat lemah.
· Adanya program yang secara tidak sengaja diset menjadi “setuid root” sehingga ketika dijalankan pemakai memiliki akses seperti super user (root) yang dapat melakukan apa saja.
3. PENGUJIAN KEAMANAN SISTEM
Dikarenakan banyaknya hal yang harus dimonitor, administrator dari sistem informasi membutuhkan “automated tools”, perangkat pembantu otomatis, yang dapat membantu menguji atau meng-evaluasi keamanan sistem yang dikelola. Untuk sistem yang berbasis UNIX ada beberapa tools yang dapat digunakan, antara lain:
• Cops
• Tripwire
• Satan/Saint
• SBScan: localhost security scanner
Untuk sistem yang berbasis Windows NT ada juga program semacam, misalnya program Ballista yang dapat diperoleh dari: Selain program-program (tools) yang terpadu (integrated) seperti yang terdapat pada daftar di atas, ada banyak program yang dibuat oleh hackers untuk melakukan “coba-coba”. Program-program seperti ini, yang cepat sekali bermunculuan, biasanya dapat diperoleh (download) dari Internet melalui tempat-tempat yang berhubungan dengan keamanan, seperti misalnya “Rootshell”. (Lihat “Sumber informasi dan organisasi yang berhubungan dengan keamanan sistem informasi” on page 153.) Contoh program coba-coba ini antara lain:
• crack: program untuk menduga atau memecahkan password dengan menggunakan sebuah atau beberapa kamus (dictionary). Program crack ini melakukan brute force cracking dengan mencoba mengenkripsikan sebuah kata yang diambil dari kamus, dan kemudian membandingkan hasil enkripsi dengan password yang ingin dipecahkan. Bila belum sesuai, maka ia akan mengambil kata selanjutnya, mengenkripsikan, dan membandingkan kembali. Hal ini dijalankan terus menerus sampai semua kata di kamus dicoba. Selain menggunakan kata langsung dari kamus, crack juga memiliki program heuristic dimana bolak balik kata (dan beberapa modifikasi lain) juga dicoba. Jadi, jangan sekali-kali menggunakan password yang terdapat dalam kamus (bahasa apapun).
• land dan latierra: program yang dapat membuat sistem Windows 95/NT menjadi macet (hang, lock up). Program ini mengirimkan sebuah paket yang sudah di”spoofed” sehingga seolah-olah paket tersebut berasal dari mesin yang sama dengan menggunakan port yang terbuka (misalnya port 113 atau 139).
• ping-o-death: sebuah program (ping) yang dapat meng-crash-kan Windows 95/NT dan beberapa versi Unix.
• winuke: program untuk memacetkan sistem berbasis Windows
Probing Services
Servis di Internet umumnya dilakukan dengan menggunakan protokol TCP atau UDP. Setiap servis dijalankan dengan menggunakan port yang berbeda, misalnya:
• SMTP, untuk mengirim dan menerima e-mail, TCP, port 25
• DNS, untuk domain, UDP dan TCP, port 53
• HTTP, web server, TCP, port 80
• POP3, untuk mengambil e-mail, TCP, port 110
Contoh di atas hanya sebagian dari servis yang tersedia. Di sistem UNIX, lihat berkas /etc/services dan /etc/inetd.conf untuk melihat servis apa saja yang dijalankan oleh server atau komputer yang bersangkutan. Berkas /etc/services berisi daftar servis dan portnya, sementara berkas /etc/inetd.conf berisi servis-servis yang di jalan di server UNIX tersebut. Jadi tidak semua servis dijalankan, hanya servis yang dibuka di /etc/inetd.conf saja yang dijalankan. Selain itu ada juga servis yang dijalankan tidak melalui inetd.conf melainkan dijalankan sebagai daemon yang berjalan di belakang layar.
Pemilihan servis apa saja tergantung kepada kebutuhan dan tingkat keamanan yang diinginkan. Sayangnya seringkali sistem yang dibeli atau dirakit menjalankan beberapa servis utama sebagai “default”. Kadang-kadang beberapa servis harus dimatikan karena ada kemungkinan dapat dieksploitasi oleh cracker. Untuk itu ada beberapa program yang dapat digunakan untuk melakukan “probe” (meraba) servis apa saja yang tersedia. Program ini juga dapat digunakan oleh kriminal untuk melihat servis apa saja yang tersedia di sistem yang akan diserang dan berdasarkan data-data yang diperoleh dapat melancarkan serangan. Untuk beberapa servis yang berbasis TCP/IP, proses probe dapat dilakukan dengan menggunakan program telnet. Misalnya untuk melihat apakah ada servis e-mail dengan menggunakan SMTP digunakan telnet ke port 25.
Program penguji probing (penguji semua port otomatis) :
Paket probe untuk sistem UNIX
• nmap
• strobe
• tcpprobe
Probe untuk sistem Window 95/98/NT
• NetLab
• Cyberkit
• Ogre
Program yang memonitor adanya probing ke sistem Probing biasanya meninggalkan jejak di berkas log di system anda. Dengan mengamati entry di dalam berkas log dapat diketahui adanya probing. Selain itu, ada juga program untuk memonitor probe seperti paket program courtney, portsentry dan tcplogd.
OS FINGERPRINTING
- Fingerprinting : Analisa OS sistem yang ditujua agar dapat melihat database kelemahan sistem yang dituju.
- Metode Fingerprinting :
Cara yang paling konvensional :
- Service telnet ke server yang dituju, jika server tersebut kebetulan menyediakan servis telnet, seringkali ada banner yang menunjukkan nama OS beserta versinya.
- Service FTP di port 21. Dengan melakukan telnet ke port tersebut dan memberikan perintah “SYST” anda dapat mengetahui versi dari OS yang digunakan.
- Melakukan finger ke Web server, dengan menggunakan program netcat (nc).
Cara fingerprinting yang lebih canggih adalah dengan menganalisa respon sistem terhadap permintaan (request) tertentu. Misalnya dengan menganalisa nomor urut packet TCP/IP yang dikeluarkan oleh server tersebut dapat dipersempit ruang jenis dari OS yang digunakan. Ada beberapa tools untuk melakukan deteksi OS ini antara lain:
- nmap
- queso
PENGGUNAAN PROGRAM PENYERANG
- Untuk mengetahui kelemahan sistem informasi adalah dengan menyerang diri sendiri dengan paket-paket program penyerang (attack) yang dapat diperoleh di Internet.
- Selain program penyerang yang sifatnya agresif melumpuhkan sistem yang dituju, ada juga program penyerang yang sifatnya melakukan pencurian atau penyadapan data.
- Untuk penyadapan data, biasanya dikenal dengan istilah “sniffer”. Meskipun data tidak dicuri secara fisik (dalam artian menjadi hilang), sniffer ini sangat berbahaya karena dia dapat digunakan untuk menyadap password dan informasi yang sensitif. Ini merupakan serangan terhadap aspek privacy.
Contoh program penyadap (sniffer) antara lain:
· pcapture (Unix)
· sniffit (Unix)
· tcpdump (Unix)
· WebXRay (Windows)
PENGGUNAAN SISTEM PEMANTAU JARINGAN
Sistem pemantau jaringan (network monitoring) dapat digunakan untuk mengetahui adanya lubang keamaman. Misalnya apabila anda memiliki sebuah server yang semetinya hanya dapat diakses oleh orang dari dalam, akan tetapi dari pemantau jaringan dapat terlihat bahwa ada yang mencoba mengakses
melalui tempat lain. Selain itu dengan pemantau jaringan dapat juga dilihat usaha-usaha untuk melumpuhkan sistem dengan melalui denial of service attack (DoS) dengan mengirimkan packet yang jumlahnya berlebihan. Network monitoring biasanya dilakukan dengan menggunakan protokol SNMP (Simple Network Management Protocol).
Program network monitoring / management :
- Etherboy (Windows), Etherman (Unix)
- HP Openview (Windows)
- Packetboy (Windows), Packetman (Unix)
- SNMP Collector (Windows)
- Webboy (Windows)
Program pemantau jaringan yang tidak menggunakan SNMP :
- iplog, icmplog, updlog, yang merupakan bagian dari paket iplog untuk memantau paket IP, ICMP, UDP.
- iptraf, sudah termasuk dalam paket Linux Debian netdiag
- netwatch, sudah termasuk dalam paket Linux Debian netdiag
- ntop, memantau jaringan seperti program top yang memantau proses di sistem Unix
- trafshow, menunjukkan traffic antar hosts dalam bentuk text-mode
Pertanyaan yang diajukan pada saat presentasi Evaluasi Keamanan Sistem Informasi :
Apa penyebab dari celah/lubang keamanan ( security hole ), dan apa dampaknya ( positif dan negatif ) ? (Sandi)
• penyebab : Bisa disebabkan oleh 3 hal, yaitu kesalahan pada desain sistem ataupun algoritma yang digunakan, implementasi algoritma yang kurang baik, dan kesalahan konfigurasi.
• dampak :
- positif : dapat mengetahui kesalahan atau celah keamanan dari sistem yang ada, sehingga tingkat keamanannya dapat ditingkatkan.
- negatif : adanya pihak-pihak yang dianggap merugikan yang dapat masuk, mengakses, ataupun merusak sistem atau keamanan sistem yang ada.