Senin, 31 Januari 2011

Bagaimana Fiber Optic Bekerja

Kira-kira lebih dari 20 tahun yang lalu, kabel serat optik (Fiber Optic) telah memngambil alih dan mengubah wajah teknologi industri telepon jarak jauh maupun industri automasi dengan pengontrolan jarak jauh. Serat optik juga memberikan peranan besar membuat Internet dapat digunakan di seluruh dunia.
Ketika serat optik menggantikan tembaga (copper) sebagai long distance calls maupun internet traffic yang secara tidak langsung berdampak pd penurunan biaya produksi. Untuk memahami bagaimana sebuah kabel serat optik bekerja, sebagai contoh coba bayangkan sebuah sedotan plastik atau pipa plastik panjang fleksible berukuran besar. Bayangkan pipa tersebut mempunyai panjang seratus meter dan anda melihat kedalam dari salah satu sisi pipa. Seratus meter di sebelah sana seorang teman menghidupkan lampu senter dan diarahkan kedalam pipa. dikarenakan
bagian dalam pipa terbuat dari bahan kaca sempurna, maka cahaya senter akan di refleksikan pada sisi yang lain meskipun bentuk pipa bengkok atau terpilin masih dapat terlihatpantulan cahaya tersebut pada sisi ujungnya. Jika misalnya seorang teman anda menyalakan cahaya senter hidup dan mati seperti kode morse, maka anda dan teman anda dapat berkomunikasi melalui pipa tersebut. Seperti itulah prinsip dasar dari serat optik atau yang biasa dikenal dengan nama fiber optic cable.

Sebuah kabel fiber optik terbuat dari serat kaca murni, sehingga meskipun kabel mempunyai panjang sampai beratus2 meter, cahaya masih dapat dipancarkan dari ujung ke ujung lainnya. Helai serat kaca tersebut didesain sangat halus,ketebalannya kira-kira sama dengan tebal rambut manusia. Helai serat kaca dilapisi oleh 2 lapisan plastik (2 layers plastic coating) dengan melapisi serat kaca dengan plastik, akan didapatkan equivalen sebuah cermin disekitar serat kaca.
Cermin ini menghasilkan total internal reflection (refleksi total pada bagian dalam serat kaca).
sama seperti jika kita berada pada ruangan gelap dengan sebuah jendela kaca, kemudian anda mengarahkan cahaya senter 90 derajat tegak lurus dengan kaca , maka cahaya senter akan tembus ke luar ruangan. Akan tetapi jika cahaya senter tersebut diarahkan (ke jendela berkaca) dengan sudut yang rendah (hampir paralel dengan cahaya aslinya), maka kaca tersebut akan berfungsi menjadi cermin yg akan memantulkan cahaya senter ke dalam ruangan. demikian pada serat optik, cahaya berjalan melalui serat kaca pada sudut yang rendah.

Untuk mengirimkan percakapan2 telepon melalui serat optik, suara analog di rubah menjadi sinyal digital. Sebuah laser transmitter pada salah satu ujung kabel on/off untuk mengirimkan setiap bit sinyal. System fiber optik Modern dengan single laser bisa mentransmitkan jutaan bit/second. Atau bisa dikatakan laser transmitter on dan off jutaan kali /second.
System terbaru laser transmitter dapat mentransmitkan warna2 yang berbeda untuk mengirimkan beragam sinyal digital dalam fiber optik yang sama.

Kabel fiber optik modern dapat membawa sinyal digital dengan jarak kurang lebih 60 mil (sekitar 100 Km). Pada jalur distribusi jarak jauh biasanya terdapat peralatan tambahan (equipment hut) setiap 40-60 mil,yang berfungsi pick-up equipment yang akan menampung, menguatkan sinyal, dan kemudian me- retransmit-kan sinyal ke equipment selanjutnya.
Read more » Share

Pengertian Informasi

Informasi adalah data yang telah diproses menjadi bentuk yang memiliki arti bagi penerima dan dapat berupa fakta, suatu nilai yang bermanfaat. Jadi ada suatu proses transformasi data menjadi suatu informasi == input - proses – output .

Data merupakan raw material untuk suatu informasi. Perbedaan informasi dan data sangat relatif tergantung pada nilai gunanya bagi manajemen yang memerlukan. Suatu informasi bagi level manajemen tertentu bisa menjadi data bagi manajemen level di atasnya, atau sebaliknya

Kualitas informasi;
Tergantung dari 3 hal, yaitu informasi harus :
• Akurat, berarti informasi harus bebas dari kesalahan-kesalahan dan tidak bias atau menyesatkan. Akurat juga berarti informasi harus jelas mencerminkan masudnya.
• Tetap pada waktunya, berarti informasi yang datang pada penerima tidak boleh terlambat.
• Relevan, berarti informasi tersebut menpunyai manfaat untuk pemakainya. Relevansi informasi untuk tiap-tiap orang satu dengan yang lainnya berbeda.

Metode pengumpulan data / Informasi
1. Pengamatan langsung
2. Wawancara
3. Perkiraan koserponden
4. Daftar pertanyaan
Read more » Share

Pengertian Sistem

Artikel Pengertian Sistem - Definisi Sistem dikutip dari blog berita - kisaranku. Anda bebas mempublikasikan ulang artikel ini asalkan dengan selalu mencantumkan nama sumber, dan link orisinal ke blog kisaranku.blogspot.com. Dapatkan juga berita lowongan cpns terbaru dan tulisan menarik lainnya. Trims.

Kata Sistem awalnya berasal dari bahasa Yunani (sustēma) dan bahasa Latin (systēma). Berikut ini ada beberapa pengertian sistem yang diambil dari berbagai sumber.

  1. Pengertian dan definisi sistem adalah suatu kesatuan yang terdiri atas komponen atau elemen yang saling berinteraksi, saling terkait, atau saling bergantung membentuk keseluruhan yang kompleks.
  2. Kesatuan gagasan yang terorganisir dan saling terikat satu sama lain.
  3. Kumpulan dari objek atau fenomena yang disatukan bersama untuk tujuan klasifikasi atau analisis.
  4. Adanya suatu kondisi harmonis dan interaksi yang teratur.


Dalam definisi yang paling umum, sebuah sistem adalah sekumpulan objek/benda yang memiliki hubungan diantara mereka. Biar lebih jelas, mari kita lihat contoh berikut ini.

Contoh konkret dari sebuah sistem diantaranya:
  • Organ tubuh manusia yang membentuk beragam sistem. Sistem pernafasan, sistem pencernaan, sistem eksresi, sistem saraf, sistem kerangka, dll.
  • Komponen elektronik komputer yang membentuk sistem komunikasi, sistem perangkat lunak, sistem perangkat keras, sistem jaringan, dll.
  • Rakyat Indonesia yang membentuk beragam sistem di Negara kita. Sistem pemerintahan, sistem keamanan, sistem hukum, sistem kebudayaan, dll.
  • ..... dan seterusnya..... (silakan ditambah sendiri)


Sekian saja artikel pendek kali ini mengenai pengertian sistem dan definisi sistem. Mudah mudahan bisa membantu kawan semuanya. Jangan segan untuk memberikan pendapat, komentar anda dengan berkomentar pada kolom dibawah. Sukses selalu.
Read more » Share

Artificial intelligent

Technology AI  yang sedang dikembangkan oleh para ahli sampai sekarang untuk masa depan nanti yang entah kapan akan terwujud yang penting para ahli terus-menerus melakukan penelitian dan percobaan.
1. GAME PLAYING (Permainan Game)
Game playing (permainan game) merupakan bidang AI yang sangat populer berupa permainan antara manusia melawan mesin yang memiliki intelektual untuk berpikir. Bermain dengan computer memang menarik bahkan sampai melupakan tugas utama yang lebih penting. Komputer dapat bereaksi dan menjawab tindakan-tindakan yang diberikan oleh lawan mainnya. Ribuan macam permainan computer telah dibuat dan dikembangkan. Yang menarik untuk dibahas disini adalah permainan catur. Betulkah computer dapat berpikir seperti manusia sehingga dapat bermain catur? Bagaimana suatu computer yang hanya mengenal on atau off (0 atau 1) dapat mengerti bermain catur. Papan, biji-biji- catur dan langkah-langkah permainan diterjemahkan kedalam bahasa yang dimengerti oleh computer, sehingga computer dapat menganalisanya. Papan catur dibagi kedalam suatu matrik, terdiri dari baris horizontal dan kolom vertical, sehingga suatu biji catur tertentu dapat diketahui letaknya. Dan masih banyak lagi permainan lainnya yang tidak kalah menarik & banyak berpikir.
2. GENERAL PROBLEM SOLVING (Pemecahan Masalah Secara Umum)
Bidang AI ini berhubungan dengan pemecahan masalah terhadap suatu situasi yang akan dislesaikan oleh computer. Permasalahan diungkapkan dalam suatu cara yang sedemikian rupa sehingga computer dapat mengerti. Semua deskripsi-deskripsi yang diinginkan juga diberikan pada computer. Biasanya permasalahan tersebut akan diselesaikan secara trial and error sampai solusi yang dinginkan didapatkan. Suatu program paket yang cukup populer di computer mikro untuk pemecahan masalah trial and error adalah EUREKA yang ditulis oleh Borland. Karena dasarnya trial and error, maka dapat digunakan untuk menyelesaikan bermacam-macam model apapun.
3. NATURAL LANGUAGE RECOGNITION (Pengenalan Bahasa Alamiah)
Study mengenai AI mencoba supaya computer dapat mengerti bahasa alamiah yang diketikkan lewat keyboard. Bahasa alamiah (natural language) adalah bahasa sehari-hari yang dipergunakan oleh orang-orang untuk berkomunikasi. Komputer dapat menterjemahkan suatu bahasa ke bahasa lainnya merupakan contoh dari penerapan AI di bidang ini. Bahasa computer yang khusus untuk AI & dapat digunakan pada bidang ini diantaranya adalah IPL (Information Processing Language), LISP, INTERLISP, SAIL, PLANNER, KRL , PROLOG. Bidang AI masih sangat sulit dan belum dapat sempurna penerapannya.
4. SPEECH RECOGNITION (Pengenalan Percakapan)
Bidang AI ini juga msih dikembangkan dan terus dilakukan penelitiannya. Kalau bidang ini berhasil dengan baik dan sempurna, alangkah hebatnya computer. Dapatkah Anda membayangkan kalau berkomunikasi dengan computer cukup melalui percakapan saja, tanpa harus mengetikkan lewat keyboard. Alangkah mudahnya menggunakan computer. Anda dan saya akan sangat terbantu sekali. Untuk mengarang suatu artikel, mungkin saya dapat melakukannya dengan tiduran sambil bercakap-cakap dengan computer, tanpa harus mengetikannya lewat keyboard. Akan tetapi bidang ini masih belum sempurna seperti yang diharapkan. Mengenal suara masih sangat sulit bagi computer, karena tiap-tiap orang mempunyai akses pengucapan dan nada suara yang berbeda. Texas Instrument baru berhasil membuat computer yang mengenal ucapan manusia yang sudah dilatihkan ke computer dan masih sedikit saja kata-kata yang dimengertinya.
5. VISUAL RECOGNITION (Pengenalan Penglihatan)
Bidang AI ini merupakan kemampuan suatu computer yang dapat menangkap signal elektronik dari suatu kamera dan dapat memahami apa yang dilihat tersebut. Penerapan AI ini misalnya pada computer yang dipasang di peluru kendali dapat diprogram untuk selalu mengejar sasarannya yang tampak dikamera.
6. ROBOTICS
Robot adalah suatu mesin yang dapat diarahkan untuk mengerjakan bermacam-macam tugas tanpa campur tangan lagi dari manusia. Secara ideal robot diharapkan dapat melihat, mendengar, menganalisa lingkungannya dan dapat melakukan tindakan-tindakan yang terprogram. Dewasa ini robot digunakan untuk maksud-maksud tertentu dan yang paling banyak untuk keperluan industri. Diterapkannya robot untuk industri terutama untuk pekerjaan 3D yaitu Dirty, Dangerous, Difficult (kotor, berbahaya atau pekerjaan yang sulit). Negara yang banyak menggunakan robot untuk industri adalah Jepang, Amerika Serikat dan Jerman Barat.
7. EXPERT SYSTEM (Sistem Ahli)
Tiap-tiap orang mempunyai keahlian masing-masing yang mungkin suatu orang dengan yang lainnya mempunyai keahlian berbeda, tergantung dari pengetahuannya masing-masing, ada yang ahli kimia, fisika, computer, dokter dan lain sebagainya. Komputer dapat diprogram untuk berbuat seperti orang yang ahli dalam bidang tertentu. Komputer yang demikian dapat dijadikan seperti konsultan atau tenaga ahli di bidang tertentu yang dapat menjawab pertanyaan dan memberikan nasehat-nasehat yang dibutuhkan. Sistem demikian disebut Expert System. Sistem ini dapat digunakan untuk bidang yang tertentu seperti misalnya medeteksi penyakit, menganalisis kimia dan sebagainya. Expert System ini sangat berguna disebabkan maih langkanya orang yang berkualifikasi dalam bidang tertentu. Salah satu expert system yang pertama adalah MACSYMA yang diguankan untuk tugas-tugas matematika. Expert System yang lain diantaranya MYCIN untuk mendiagnosa penyakit infeksi pada darah. CADECEUS untuk mendeteksi penyakit, PUFF untuk mengukur fungsi dari paru-paru, PROSPECTOR digunakan untuk memberi nasehat dalam eksplorasi mineral, XCON yang digunakan perusahaan DEC untuk menggambarkan konfigurasi dari system computer bagi para langgannya, DENDRAL untuk mengidentifikasi struktur molekul suatu komposisi kimia dan lain sebagainya. Untuk mengembangkan Expert System , jarus diciptakan terlebih dahulu suatu Knowledge Base yang dibutukan oleh aplikasinya. Suatu knowledge base terdiri dari kumpulan data tertentu untuk permasalahan yang spesifik dan aturan-aturan bagaimana memanipulasi data yang disimpan tersebut. Berbeda dengan database biasa , knowledge base mungkin juga dapat terdiri dari asumsi-asumsi. Kepercayaan-kepercayaan, pendugaan-pendugaan, metode-metode heuristic (heuristic merupakan metode pemecahan masalah yang biasanya dilakukan secara trial and error atau secara rule of thumb). Untuk membuat knowledge base perencanaan system harus bekerja sama atau meminta nasehat dari ahli dibidangnya. Orang yang menciptakan Expert System disebut Knowledge Engineer.
Read more » Share

RPC

RPC ( Remote Procedure Call )
Remote Procedure Call (RPC) adalah sebuah metode yang memungkinkan kita untuk mengakses sebuah prosedur yang berada di komputer lain. Untuk dapat melakukan ini sebuah server harus menyediakan layanan remote procedure. Pendekatan yang dilakuan adalah sebuah server membuka socket, lalu menunggu client yang meminta prosedur yang disediakan oleh server. Bila client tidak tahu harus menghubungi port yang mana, client bisa me-request kepada sebuah match maker pada sebuah RPC port yang tetap. Match maker akan memberikan port apa yang digunakan oleh prosedur yang diminta client.
RPC masih menggunakan cara primitif dalam pemrograman, yaitu menggunakan paradigma procedural programming. Hal itu membuat kita sulit ketika menyediakan banyak remote procedure. RPC menggunakan socket untuk berkomunikasi dengan proses lainnya. Pada sistem seperti SUN, RPC secara default sudah ter- install kedalam sistemnya, biasanya RPC ini digunakan untuk administrasi sistem. Sehingga seorang administrator jaringan dapat mengakses sistemnya dan mengelola sistemnya dari mana saja, selama sistemnya terhubung ke jaringan.
RPC adalah suatu protokol yang menyediakan suatu mekanisme komunikasi antar proses yang mengijinkan suatu program untuk berjalan pada suatu komputer tanpa terasa adanya eksekusi kode pada sistem yang jauh (remote system). Protokol RPC digunakan untuk membangun aplikasi klien-server yang terdistribusi. Protokol ini didasarkan pada memperluas konsep konvensional dari suatu prosedur dimana nantinya prosedur ini dapat dipanggil dimana pemanggil tidak harus mempunyai alamat yang sama dengan yang lokasi dimana prosedur ini dipanggil. Dimana proses ini dapat dilakukan pada sistem yang sama atau sistem yang berbeda namun terhubung pada jaringan.
Namun terdapat kelemahan di dalam bagian dari RPC yang berhubungan dengan pertukaran message melalui TCP/IP. Kegagalan terjadi dikarenakan karena penanganan kesalahan pada message yang berisi informasi yang salah. Hasil dari kelemahan ini berakibat pada bagian antar-muka RPC, yaitu bagian yang mendengarkan port RPC yang di-enable. Bagian antar-muka ini menangani objek aktivasi dari DCOM ( Distributed Component Object Model ) yang dikirimkan oleh mesin klien ke server. Kelemahan ini umumnya dimanfaatkan oleh seorang penyerang untuk dapat menjalankan suatu kode dengan kewenangan Administrator sistem lokal pada sistem yang terinfeksi. Dengan demikian, maka sistem yang diserang ini dapat diubah-ubah termasuk pengkopian dan penghilangan data sampai pembuatan user baru dengan hak tidak terbatas.
Protokol Message RPC
Protokol Message RPC didefinisikan dengan menggunakan deskripsi data eXternal Data Representation ( XDR ) yang meliputi struktur, enumerasi dan union. Protokol Message ini membutuhkan faktor-faktor pendukung sebagai berikut :
1. Spesifikasi yang unik untuk tiap prosedur call
2. Respon message yang sesuai untuk tiap message yang diminta
3. Otentifikasi klien untuk tiap layanan dan sebaliknya
Protokol Message RPC memiliki dua ( 2 ) struktur yang berbeda, yaitu call message dan reply message. Tiap klien yang akan melakukan RPC pada suatu server di jaringan akan menerima balasan (reply) berupa hasil dari eksekusi prosedur tersebut. Dengan menggunakan spesifikasi yang unik untuk tiap prosedure remote, maka RPC dapat mencocokkan message balasan untuk tiap call message yang diminta klien.
Fitur dalam RPC
RPC memiliki fitur – fitur sebagai berikut : batching calls, broadcasting calls, callback procedures dan using the select subroutine.
-       Batching Calls
Fitur Batching calls mengijinkan klien untuk mengirim message calls ke server dalam jumlah besar secara sequence ( berurutan ). Batching menggunakan protokol streaming byte seperti TCP / IP sebagai mediumnya. Pada saat melakukan batching, klien tidak menunggu server untuk memberikan reply terhadap tiap messages yang dikirim, begitu pula dengan server yang tidak pernah mengirimkan messages reply. Fitur inilah yang banyak digunakan klien, karena arsitektur RPC didesain agar pada tiap call message yang dikirimkan oleh klien harus ada proses menunggu balasan dari server. Oleh karena itu maka pihak klien harus dapat mengatasi error yang kemungkinan terjadi karena pihak klien tidak akan menerima peringatan apabila terjadi error pada message yang dikirim.
-       Broadcasting Calls
Fitur Broadcasting mengijinkan klien untuk mengirimkan paket data ke jaringan dan menunggu balasan dari network. FItur ini menggunakan protokol yang berbasiskan paket data seperti UDP/IP sebagai mediumnya. Broadcast RPC membutuhkan layanan port mapper RPC untuk mengimplementasikanf ung sinya
-       Callback Procedures
Fitur Callback Procedures mengijinkan server untuk bertindak sebagai klien dan melakukan RPC callback ke proses yang dijalankan oleh klien.
-       Menggunakan select Subrutin
Fitur ini akan memeriksa deskripsi dari suatu file dan messages dalam antrian untuk melihat apakah mereka siap untuk dibaca (diterima) atau ditulis (dikirim), atau mereka dalam kondisi ditahan sementara. Prosedur ini mengijinkan server untuk menginterupsi suatu aktivitas, memeriksa datanya, dan kemudian melanjutkan proses aktivitas tersebut.
Model dan Cara Kerja RPC
Prosedur call umumnya berkaitan dengan penggunaan stack, penyimpanan parameter yang diterima dalam stack tersebut dan pengalokasian ruang untuk lokal variabel. Namun selain itu ada yang disebut dengan Prosedur Call remote, yang berarti pelaksanaan proses diatas namun pada suatu sistem lain yang berhubungan melalui suatu jaringan. Sistem prosedur remote ini memiliki cara kerja yang sedikit banyak mirip, namun berbeda dengan prosedur call biasa.
Remote Procedure Call Flow
Tiap prosedur yang dipanggil dalam RPC, maka proses ini harus berkoneksi dengan server remote dengan mengirimkan semua parameter yang dibutuhkan, menunggu balasan dari server dan melakukan proses kemudian selesai. Proses di atas disebut juga dengan stub pada sisi klien.
Sedangkan Stub pada sisi server adalah proses menunggu tiap message yang berisi permintaan mengenai prosedur tertentu. Server harus membaca tiap parameter yang diberikan, kemudian memberikan prosedur lokal yang sesuai dengan permintaan dan parameter. Kemudian setelah eksekusi, server harus mengirimkan hasil kepada pihak pemanggil proses.
Diagram diatas memberikan gambaran mengenai flow dari eksekusi dalam proses RPC. Berikut ini adalah diagram yang akan menjelaskan secara rince mengenai proses yang terjadi pada klien dan server dalam eksekusi suatu prosedur RPC :
Berikut penjelasan dari diagram diatas :
1. Klien memanggil prosedur stub lokal. Prosedur Stub akan memberikan parameter dalam   suatu paket yang akan dikirim ke jaringan. Proses ini disebut sebagai marshalling.
2. Fungsi Network pada O/S (Operating system – Sistem Operasi) akan dipanggil oleh stub untuk mengirim suatu message.
3. Kemudian Kernel ini akan mengirim message ke sistem remote. Kondisi ini dapat berupa connectionless atau connection-oriented.
4. Stub pada sisi server akan melakukan proses unmarshals pada paket yang dikirim pada network.
5. Stub pada server kemudian mengeksekusi prosedur panggilan lokal.
6. Jika eksekusi prosedur ini telah selesai, maka eksekusi diberikan kembali ke stub pada server
7. Stub server akan melakukan proses marshals lagi dan mengirimkan message nilai balikan ( hasilnya ) kembali ke jaringan.
8. Message ini akan dikirim kembali ke klien.
9. Stub klien akan membaca message ini dengan menggunakan fungsi pada jaringan.
10. Proses unmarshalled kemudian dilakukan pada message ini dan nilai balikan akan diambil untuk kemudian diproses pada proses lokal
Preses RPC
Proses diatas akan dilakukan berulang-ulang ( rekursif ) dalam pengeksekusian RPC dalam suatu remote sistem
RPC pada Windows 2000 Server
Tujuan utama penggunaan protokol RPC adalah untuk mempermudah komunikasi dalam pembangunan aplikasi klien – server yang terdistribusi. Namun dalam perkembangannya, seiring dengan perkembangan sistem operasi, protokol ini banyak disalah-gunakan. Hal ini terkait dengan kelemahan protokol ini yang dimanfaatkan oleh pihak-pihak tertentu untuk mendapatkan keuntungan atau sekedar untuk mengacaukan sistem yang berlaku. Tindakan ini disebut juga dengan eksploitasi RPC.
Kelemahan RPC pada Sistem Operasi Windows
Sistem operasi Microsoft Windows adalah salah satu sistem operasi yang mendukung protokol RPC. Sebagai sistem operasi yang paling banyak digunakan di seluruh dunia baik untuk PC Desktop maupun server, sistem operasi Windows menjadi salah satu sistem operasi yang banyak dijadikan target mulai dari serangan virus, worm, sampai trojan. Protokol RPC juga tidak luput menjadi sasaran serangan oleh pihak yang tidak bertanggung jawab.
Alasan penyerangan pada protokol ini disebabkan karena kemudahan ketergantungan sistem operasi Windows pada servis/layanan RPC. Banyak layanan pada sistem operasi ini yang didesain untuk bergantung pada layanan RPC, baik digunakan maupun tidak. Dan sayangnya, pengguna sistem operasi ini tidak dapat mengdisfungsikan layanan RPC.
Pengguna bisa saja menggunakan firewall untuk memblok port RPC, namun karena sistem operasi Windows terlalu bergantung pada mekanisme RPC sebagai fungsi dasarnya maka hal ini kadang-kadang tidak berhasil. Bahkan sebagai studi kasus, pada sistem operasi Windows Server 2003 terdapat kelemahan pada fungsi RPC itu sendiri ( Informasi lengkapnya dapat dilihat pada tabel kelemahan sistem operasi ini pada lampiran ).
Kelemahan protokol RPC pada sistem operasi ini terletak pada fungsi RPC yang berhubungan dengan pertukaran message melalui protokol TCP/IP. Hal ini mempengaruhi bagian antar-muka Distributed Component Object Model (DCOM) yang berhubungan dengan RPC, yang akan mendengarkan ( listen ) port-port RPC yang tersedia.
DCOM adalah protokol yang berfungsi untuk mengaktifkan komponen pada perangkat lunak (software) agar dapat berkomunikasi langsung dengan jaringan. Protokol ini didesain untuk penggunaan jaringan multi tranport termasuk protokol Internet misalnya HTTP. RPC melalui HTTP v1 ( pada sistem operasi WIndows NT 4.0, Windows 2000 ) dan v2 ( Windows XP, Windows Server 2003 ) mempunyai suatu fitur baru yaitu mendukung protokol transportasi RPC yang mengijinkan RPC untuk beroperasi melalui port TCP 80 dan 443. Hal ini menyebabkan komunikasi antara klien dan server dapat dilakukan walaupun dalam pengawasan server proxy dan firewall. COM Internet Services ( COM ) mengijinkan DCOM untuk melakukan RPC melalui HTTP untuk komunikasi DCOM klien dan DCOM server.
Port Portmap 111 adalah nomor port yang paling banyak diakses, namun umumnya nomor port ini telah difilter oleh firewall. Kecenderungan lain berpindah pada nomor port lain yang dapat digunakan untuk mengirim pesan tertentu yang telah dimanipulasi, seperti port 135, 139, 445, 593 pada remote komputer. Melalui port-port ini maka seorang user dapat melakukan permintaan yang dapat mengekploitasi dengan menjalankan kode dengan hak sistem lokal.
Berikut ini tabel protokol yang sering dimanfaatkan pada ekploitasi RPC :
Urutan Protokol yang digunakan oleh Endpoint Mapper 

Port TCP atau UDP 

ncacn ip tcp
ncacn ip udp
ncacn np pipe emapper 
ncacn http
ncacn http dengan servis COM Internet aktif

TCP/135
UDP/135
TCP/139 dan TCP/445
TCP/593
TCP/180 

Masalah ini semuanya disebabkan oleh kelemahan pada servis RPCSS. Servis ini berhubungan dengan aktivasi DCOM. Kegagalan terjadi pada penanganan messages yang salah sehingga mempengaruhi aktivasi DCOM yang mendengarkan port UDP 135, 137, 138, 445 dan port TCP 135, 139, 445, 593. Ditambah port 80 dan 443 ( CIS atau RPC over HTTP ) jika diaktikan. Dengan kesalahan ini, maka seorang klien dapa menggunakan kegagalan ini untuk mengeksekusi kode yang dapat dijalankan pada server.
Implementasi Eksploitasi RPC
Pada implementasi ini digunakan beberapa tools yang digunakan untuk melakukan eksploitasi pada RPC. Pada contoh kasus ini, implementasi dilakukan pada Local Area Network ( LAN ) dengan host yang menggunakan sistem operasi Microsoft Windows XP. Eksekusi eksploitasi ini dibagi menjadi beberapa tahap. Tahap pertama adalah deteksi sistem yang memiliki kelemahan ( vulnerability ). Tahap kedua adalah penyerangan terhadap sistem tersebut. Biasanya pada tahap ini digunakan program yang didesain khusus untuk mengeksploitasi RPC.
Pada contoh kasus ini digunakan program bernama ”Kaht”. Tahap terakhir adalah tahap eksekusi kode pada sistem yang telah ter-remote. Pada tahap ini, seorang penyerang dapat melakukan apa saja mulai dari pembuatan account user dengan hak administrator sampai pengambilan data pada sistem.
Deteksi Sistem
Tools yang digunakan pada tahap ini adalah RPCScan v.2.03 buatan Foundstone.inc dan digunakan pada sistem operasi Microsoft Windows. Sebetulnya tujuan awal penggunaan perangkat ini adalah untuk mendeteksi sistem yang memiliki kelemahan keamanan bagi para Administrator, namun dapat dipakai untuk tujuan lain. Software ini dapat mendetaksi sistem operasi yang memiliki kelemahan yaitu pada layanan DCOM (Distributed Component Object Model). Sesuai dengan penjelasan pada bagian sebelumnya, layanan DCOM merupakan komponen yang berhubungan dengan servis RPC
Sistem yang memiliki kelemahan
Sistem yang masih mengaktifkan layanan DCOM akan diberi status ”Vulnerable” dan sebaliknya akan diberi status ”DCOM Disabled”( Figure 3.1). Batasan pen-scan-an pada perangkat ini terbatas pada jaringan dengan protokol IP v4. Namun mengingat masih banyaknya sistem yang menganut protokol ini, maka implementasi pengecekan sistem dapat terjadi pada siapa saja. Serangan akan ditujukan pada sistem dengan keterangan Vulnerable.
Eksploitasi Protokol RPC menggunakan Program
Pada tahap ini akan dilakukan eksploitasi protokol RPC, agar terjadi kekeliruan penanganan message dari penyerang ( host1 ) ke sistem yang diserang ( host2 ) sehingga host1 dapat melakukan eksekusi kode pada host2. Tools yang
digunakan pada tahap ini adalah program bernama ”Kaht”. Program ini akan
mengeksploitasi port 135 dari sistem yang terserang. Sistem yang akan diserangadalah sistem dengan IP ”192.168.0.13”. Berikut ini tampilan eksekusi dari program ini :
Penyerangan pada sistem
Gambar diatas menyatakan bahwa host1( IP 192.168.0.87) telah berhasil masuk kedalam sistem remote pada host2 ( IP 192.168.0.13 ). Keberhasilan eksploitasi ini juga dapat dilihat pada kondisi port-port yang terhubung antara host1 dan host2. Sebelum tereksploitasi, tidak ada port TCP pada host1 yang terhubung dengan siapapun. Setelah ekploitasi pada host2 berhasil dilakukan, maka terlihat bahwa pada port 135 terjadi koneksi / koneksi sedang berjalan dan tersambung ( Figure 3.3 ). Dengan demikian maka pengeksekusian kode pada host2 oleh host1 dapat dilakukan. Sampai tahap ini, host1 hanya merupakan user dengan hak biasa saja. Berikutnya adalah implementasi pengeksekusian kode misalnya membuat account user baru dengan hak administrator.
Sesudah dan sebelum eksploitasi
Eksekusi Kode
Tahap ini merupakan tahap eksekusi kode yang diinginkan. Pada tahap ini host1 dapat melakukan melakukan apa saja. Pada contoh kasus ini akan dicoba untuk membuat sebuah account baru dengan hak seorang administrator. Setelah masuk pada sistem host2, maka gunakan perintah berikut untuk mengeksekusi pembuatan user baru :
net user tom2 /add
Kemudian hak user ini diubah menjadi hak Administrator :
net localgroup Administrators tom2 /add
Dengan demikian pada host2 akan didapatkan satu user baru bernama ”tom2” dengan hak seorang administrator.
Pembuatan User
Implementasi ini dapat dilakukan untuk tujuan baik, misalnya pada kasus
hilangnya password seorang user yang memiliki hak sebagai Administrator.
Namun pada dasarnya hal ini sendiri adalah kelemahan utama didalam sistem
keamanan pada sistem operasi. Selain pembuatan user baru, eksekusi kode yang
dapat dilakukan lainnya antara lain upload atau download data dari dan ke host2,
perusakan sistem, dll.
Pencegahan Eksploitasi RPC
Pentingnya nilai informasi yang terkandung dalam suatu server atau sebuah komputer pribadi mengharuskan penggunanya baik user atau administrator harus melakukan tindakan preventif guna menghindari adanya kebocoran informasi ini. RPC sendiri adala suatu layanan yang vital dan ada di dalam setiap sistem operasi, khususnya sistem operasi Microsoft Windows yang bergantung pada jenis layanan ini. Oleh karena itu menghilangkan layanan RPC pada sistem operasi terasa lebih susah ketimbang dilakukan pengawasan ekstra terhadap layanan ini. Berikut ini adalah beberapa cara yang dapat digunakan untuk melakukan hal ini ( dikutip dari buletin keamanan Microsoft MS03-026 ):
-       Memblokir port 135, 137, 138 dan 445 pada UDP dan port 135, 149, 445, dan 593 pada TCP melalui Firewall. Disfungsikan COM Internet Services ( CIS ) dan RPC melalui HTTP yang menggunakan port 80 dan 443 terutama pada jaringan remote yang menggunakan VPN ( Virtual Private Network ) atau sejenisnya.
-       Gunakan personal Firewall seperti Internet Connection Firewall.
-       Blokir semua port sering diekploitasi dengan menggunakan filter IPSEC.
-       Disfungsikan fitur DCOM pada setiap komputer atau server. Disable
DCOM on all affected machines.
-       Khusus Sistem operasi buatan Microsoft, selalu update security Patch
untuk meningkatkan keamanan sistem operasi tersebut.
Read more » Share

 
Powered by virdian@art