Evaluasi Keamanan Sistem Informasi

Sebab masalah keamanan harus selalu dimonitor :

  • 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.
  • 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.
  • 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)

  • 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:
    • 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).
    • 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.

4. Salah menggunakan program atau sistem

Contoh :

  • Kesalahan menggunakan program yang dijalankan dengan menggunakan account root (super user) dapat berakibat fatal.

Penguji keamanan sistem

Untuk memudahkan administrator dari sistem informasi membutuhkan “automated tools”, perangkat pembantu otomatis, yang dapat membantu menguji atau meng-evaluasi keamanan sistem yang dikelola.

Contoh Tools Terintegrasi:

Perangkat lunak bantu Sistem Operasi
Cops UNIX
Tripwire UNIX
Satan/Saint UNIX
SBScan: localhost security scanner UNIX
Ballista <http://www.secnet.com&gt; Windows NT
Dan sebagainya… 

Contoh Tools Pengujian yang dibuat para hacker :

Tools Kegunaan
Crack program untuk menduga atau memecahkan  passworddengan 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 passwordyang ingin dipecahkan.
land dan latierra 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
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
Dan sebagainya… 

Probing Services

  • Defenisi Probing : “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.
  • 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
    • POP3, untuk mengambil e-mail, TCP, port 110

Contoh di atas hanya sebagian dari servis yang tersedia. Di system UNIX, lihat berkas /etc/services dan /etc/inetd.conf untuk melihat servis apa saja yang dijalankan oleh server atau komputer yang bersangkutan.

  • 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
  • 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 dan port 110.

unix% telnet target.host.com 25

unix% telnet localhost 110

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 system

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

Keamanan Database

Penyerangan Database

  • Informasi sensitif yang tersimpan di dalam database dapat terbuka (disclosed) bagi orang-orang yang tidak diizinkan (unauthorized ).
  • Informasi sensitif yang tersimpan di dalam database dapat altered in an unacceptable manner
  • Informasi sensitif yang tersimpan di dalam database dapat inaccessible bagi orang-orang yang diizinkan.
  • the underlying operating system may be attacked — most difficult problem

Database Inference Problem

  • Malicious attacker may infer sensitive information (that is hidden) from information on a database that is deemed not sensitive (made public)
  • More difficult problem: attacker may infer information combining what’s on the database with what is already known

Database Aggregation Problem

  • Bagian-bagian informasi tidak sensitive, dan menjadi sensitive ketika digabungkan secara bersamaan.
  • Controls for the aggregation problem
    • Honeywell LOCK Data Views (LDV) database system ; pieces of data labeled as nonsensitive, aggregates labeled as sensitive
    • SRI SeaView database system ; pieces of data labeled as sensitive, aggregates may then be labeled as non sensitive

Polyinstantiation, a Control Against Disclosure

  • This approach involves different views of a database object existing for users with different security attributes
  • Addresses the aggregation problem by providing different security labels to different aggregates separately
  • Addresses the inference problem by providing a means for hiding information that may be used to make inferences

Database Applications on Secure Bases

  • Most database applications rely on underlying services of an operating system
  • Exporting these services from a TCB would enhance the security of the database
    • database keys implemented using security labels from underlying TCB
    • TCB keeps audit records of operations on database
    • OS file system protection extended to database

 

 
Review https://ruswandar.wordpress.com on alexa.com

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s