18
MAKALAH ANALIS RPC PADA WINDOWS 2000 SERVER Disusun utuk memenuhi tusag mata kuliah Sistem Terdistribusi Oleh : Alfi Wahyudi [20106098] Dahron [20106324] Danang Subariyanto [20106326] Faris Septiawan [20106523] M. Fatihurrizqi [20106829] Wandes Hansen P [21106459] Kelas 4KB01 Universitas Gunadarma 2010

Tugas Mk Istem Terdistibusi_Makalah RPC

Embed Size (px)

Citation preview

Page 1: Tugas Mk Istem Terdistibusi_Makalah RPC

MAKALAH ANALIS RPC PADA WINDOWS 2000 SERVER

Disusun utuk memenuhi tusag mata kuliah Sistem Terdistribusi

Oleh :

Alfi Wahyudi [20106098]

Dahron [20106324]

Danang Subariyanto [20106326]

Faris Septiawan [20106523]

M. Fatihurrizqi [20106829]

Wandes Hansen P [21106459]

Kelas 4KB01

Universitas Gunadarma

2010

Page 2: Tugas Mk Istem Terdistibusi_Makalah RPC

Makalah Sistem Terdistribusi 2010

2

RPC Pada Windows Server 2000

1. Pendahuluan

Windows 2000 Server merupakan Network Operating System (NOS)

untuk melakukan konfigurasi dan manajemen jaringan baik skala kecil,

menengah, maupun besar. Teknologi sistem operasi Windows 2000 sebenarnya

merupakan kelanjutan teknologi Windows NT yang telah cukup lama digunakan

secara luas di pasaran. Keluarga Windows 2000 terdiri dari 4 jenis sistem operasi,

3 diantaranya merupakan sistem operasi untuk server dan 1 untuk workstation

yaitu Windows 2000 Professional, Windows 2000 Server, Windows 2000

Advance Server, dan Windows 2000 Data Center Server.

Sebuah server dapat menjalankan berbagai fungsi sesuai kebutuhan bisnis.

Pada organisasi skala kecil fungsi – fungsi tersebut dapat digabungkan dalam

satu server dan satu komputer. Untuk organisasi besar, sebaiknya setiap fungsi

dijalankan pada server terpisah sesuai dengan beban kerjanya. Sehingga dapat di

sederhanakan bahwa fungsi Windows 2000 Server adalah sebagai berikut :

a. File Server

Dengan sistem ini sistem file akan lebih terintegrasi sehingga

memudahkan manajemen dan pencarian file. Windows 2000 Server memiliki

fasilitas Distributed File System untuk memudah kan pengelolaan file dalam

jaringan. Dengan sistem ini pengguna jaringan dapat dengan mudah

menggunakan dan menyimpan file tanpa perlu mengetahui letak sebenarnya

dari suatu file.

b. Aplication Server

Apabila server digunakan untuk menyimpan dan menjalankan suatu

program aplikasi, maka server tersebut bertindak sebagai application server.

Aplikasi diinstal di server dan dijalankan atau diakses oleh klien. Dengan

demikian aplikasi tidak perlu diinstal di klien sehingga memudahkan proses

implementasi dan maintenance sistem. Windows Terminal Services

Page 3: Tugas Mk Istem Terdistibusi_Makalah RPC

Makalah Sistem Terdistribusi 2010

3

merupakan fasilitas untuk memudahkan penggunaan Windows 2000 Server

sebagai application server.

c. Web Server

Web Server merupakan komputer yang digunakan sebagai host berbagai

aplikasi web baik dalam lingkungan internet maupun intranet. Internet

Information Service 5.0 merupakan komponen Windows 2000 Server untuk

memudahkan konfigurasi dan manajemen web site

d. E-Mail Server

Windows 2000 Server dapat juga digunakan sebagai E-Mail server dengan

menggunakan berbagai software tambahan antara lain Microsoft Exchange

Lotus Notes, maupun MDaemon. Fungsi E-Mail server dapat dianalogikan

dengan kantor pos dalam sistem surat menyurat konvensional.

e. Member Server

Apabila Windows 2000 Server digunakan sebagai member server maka

hanya dapat bertindak sebagai klien dalam jaringan dan tidak dapat

menjalankan fungsi server untuk mengatur jaringan. Ketika Windows 2000

Server diinstal pertama kali, maka secara otomatis akan berfungsi sebagai

member server. Untuk merubahnya sebagai domain controller digunakan

perintah dcpromo dari command prompt

f. Domain Controller

Domain Controller (DC) merupakan server yang berfungsi sebagai

pengatur jaringan. Manajemen sumber daya dan obyek jaringan dilakukan

dari DC, karena akses secara penuh terhadap Active Directory hanya dapat

dilakukan dengan melakukan login ke DC. Apabila anda pernah mengelola

jaringan berbasis Windows NT maka terdapat istilah Primary Domain

Controller (PDC) dan Backup Domain Controller (BDC).

Dalam sistem jaringan Windows 2000 dua istilah tersebut sudah tidak

dikenal lagi. Setiap DC dalam jaringan adalah peer (setara) yang masing-

masing dapat dikonfigurasi untuk melakukan replikasi obyek Active

Directory, sehingga apabila salah satu DC tidak berfungsi maka dapat segera

digantikan oleh DC yang lain. Sanga disarankan dalam suatu organisasi untuk

memiliki minimal 2 DC sehingga menjamin fault tolerance.

Page 4: Tugas Mk Istem Terdistibusi_Makalah RPC

Makalah Sistem Terdistribusi 2010

4

Windows 2000 Server merupakan pengembangan dari Windows NT

sehingga memiliki fitur-fitur yang mirip dan merupakan dari pengembangan dari

windows NT tersebut. Berikut fitur-fitur yang dimilliki oleh Windows Server 2000 :

a. Active Directory Service

Directory Service dapat diumpamakan sebagai buku direktori telepon yang

menyimpan berbagai informasi : nama, alamat dan nomor telepon yang disusun

berdasarkan abjad sehingga memudahkan proses pencarian. Peranan Directory

Service dalam sebuah jaringan adalah sebagai database yang menyimpan berbagai

informasi sumber daya dan obyek jaringan secara terpadu sehingga dapat dikelola

dan dikonfigurasi dengan mudah.

Istilah Active Directory Service digunakan dalam lingkungan Windows

2000 untuk memberikan penekanan pada kemampuannya untuk melakukan

berbagai fungsi manajemen secara dinamis dan terotomasi dengan mudah dan

cepat. Informasi yang disimpan dalam Active Directory antara lain meliputi user

dan group account, printer, file server, serta berbagai policy menyangkut user dan

group. User sebagai pengguna jaringan berkepentingan untuk dapat mengakses

berbagai sumber daya dengan cepat dan mudah, sedangkan administrator

berkepentingan untuk mengelola berbagai obyek jaringan secara efisien. Active

Directory memungkinkan pengelolaan jaringan menjadi lebih mudah karena

berbagai sumber daya dan obyek dapat disimpan secara terpusat untuk

dikonfigurasi secara terpadu.

Active Directory adalah pengganti teknoogi NT SAM database yang berisi

konfigurasi security, user, group, dan komputer, dengan banyak kelebihan lain

yang dimiliki AD.

b. Group Policy

Group Policy merupakan media untuk mengatur profil user terutama yang

berkaitan dengan desktop setting. Pengaturan yang dilakukan antara lain

menentukan jenis aplikasi yang tersedia bagi user, konfigurasi start menu, serta

akses terhadap berbagai icon seperti Control Panel dan MyComputer. Fasilitas ini

sangat berguna untuk menyesuaikan lingkungan tampilan desktop dengan tingkat

keahlian seorang user, serta memberikan tingkat keamanan sistem sehingga

Page 5: Tugas Mk Istem Terdistibusi_Makalah RPC

Makalah Sistem Terdistribusi 2010

5

berbagai konfigurasi sensitif tidak akan dapat dirubah user. Group Policy dapat

dikonfigurasi secara terpusat dengan menggunakan fasilitas Active Directory.

c. Distributed File System

Ketika jaringan anda semakin besar dan jumlah user bertambah maka

sering terjadi penyimpanan file menjadi tidak rapi lagi. File - file kerja dapat

tersimpan di server maupun lokal di komputer masing – masing dengan

memberikan hak sharing bagi pemakai lain. Proses pencarian file sering menjadi

pekerjaan yang membingungkan karena peletakan file oleh user dilakukan dengan

tidak konsisten. Distributed File System (Dfs) merupakan solusi masalah

penyimpanan file dalam jaringan. Administrator menyediakan folder sesuai

dengan kebutuhan, sedangkan folder pada Dfs tersebut dihubungkan dengan letak

file secara fisik.

Dengan demikian seorang user dapat dengan mudah menyimpan dan

mencari file pada folder yang telah disediakan tanpa perlu mengetahui di mana

sebenarnya letak fisik suatu file. File pada Dfs juga dapat disimpan secara offline

di komputer lokal dan dilakukan proses sinkronisasi berkala dengan file di

jaringan.

d. Terminal Services

Terminal Services merupakan fasilitas yang dapat digunakan untuk

memanfaatkan komputer dengan hardware lama untuk dapat menjalankan

berbagai aplikasi terbaru. Terminal Services Server diinstal pada komputer server

dengan spesifikasi hardware yang mampu menjalankan Windows 2000 Server,

sedangkan Terminal Services Client diinstal pada komputer lama misalkan

sekelas 486 atau Pentium klasik. Komputer klien mengakses berbagai aplikasi di

server dengan menggunakan processing power komputer server. Fasilitas ini

sangat berguna untuk memudahkan administrasi dan maintenance berbagai

aplikasi secara terpusat karena instalasi aplikasi hanya dilakukan di server.

Namun demikian berbagai aplikasi berat seperti AutoCad dan Corel Draw

tidak akan berjalan maksimal dengan tools ini. Aplikasi yang cocok digunakan

antara lain berbagai suite aplikasi office seperti MS Office dan internet sharing.

Terminal Services juga dapat digunakan untuk melakukan remote administration

terhadap suatu server.

Page 6: Tugas Mk Istem Terdistibusi_Makalah RPC

Makalah Sistem Terdistribusi 2010

6

2. 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 matchmaker pada sebuah RPC port yang tetap. Matchmaker 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 didalam 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

Page 7: Tugas Mk Istem Terdistibusi_Makalah RPC

Makalah Sistem Terdistribusi 2010

7

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. Pembahasan lebih lanjut akan diterangkan pada bab berikutnya mengenai

implementasi RPC. 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

Page 8: Tugas Mk Istem Terdistibusi_Makalah RPC

Makalah Sistem Terdistribusi 2010

8

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

mengimplementasikan fungsinya.

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.

Page 9: Tugas Mk Istem Terdistibusi_Makalah RPC

Makalah Sistem Terdistribusi 2010

9

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.

Page 10: Tugas Mk Istem Terdistibusi_Makalah RPC

Makalah Sistem Terdistribusi 2010

10

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.

Page 11: Tugas Mk Istem Terdistibusi_Makalah RPC

Makalah Sistem Terdistribusi 2010

11

Proses RPC

Proses diatas akan dilakukan berulang-ulang ( rekursif ) dalam pengeksekusian

RPC dalam suatu remote sistem.

3. 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.

3.1. 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.

Page 12: Tugas Mk Istem Terdistibusi_Makalah RPC

Makalah Sistem Terdistribusi 2010

12

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

Page 13: Tugas Mk Istem Terdistibusi_Makalah RPC

Makalah Sistem Terdistribusi 2010

13

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.

3.2. 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.

3.3. Deteksi Sistem

Page 14: Tugas Mk Istem Terdistibusi_Makalah RPC

Makalah Sistem Terdistribusi 2010

14

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.

3.4. 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

Page 15: Tugas Mk Istem Terdistibusi_Makalah RPC

Makalah Sistem Terdistribusi 2010

15

( 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 diserang

adalah 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.

Page 16: Tugas Mk Istem Terdistibusi_Makalah RPC

Makalah Sistem Terdistribusi 2010

16

Sebelum dan Sesudah Eksploitasi

3.5. 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.

Page 17: Tugas Mk Istem Terdistibusi_Makalah RPC

Makalah Sistem Terdistribusi 2010

17

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.

3.6. 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

Page 18: Tugas Mk Istem Terdistibusi_Makalah RPC

Makalah Sistem Terdistribusi 2010

18

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.