Rabu, 08 Mei 2013

Event Driven System


Peristiwa Memandu Sistem
desain Event driven menggunakan waktu nyata I/O untuk melengkapi atau pengatur waktu sebagai pemicu penjadwalan tugas. Banyak waktu nyata pada sistem Linux yang mengikuti model ini.

Tugas yang dapat dijalankan lebih dulu adalah sebagai berikut:
·         Prioritas harus ditentukan oleh batasan waktu (misalnya., ratemonotonic atau tugas prioritas monoton pada kebijakan batas waktu).
·         Prioritas tugas juga dapat bergantung kepada kepentingan ilmu semantik (tapi pendekatan ini akan menyebabkan masalah schedulability).

Untuk menghsilkan concurrency diperlukan sinkronisasi (misalnya., mutex, semaphor, dsb.).
·          Untuk tanggapan yang dapat diramalkan, mekanisme sinkronisasi harus menghindari prioritas balikan yang tak terhingga.
·         Untuk memelihara tanggapan yang dapat diramalkan, peristiwa aperiodik harus memelihara batas pemanfaatan.
Semua ilmu pengetahuan tentang teknik analisa monoton rate didiskusikan di pedoman ini
berlaku bagi peristiwa memandu sistem tanpa modifikasi apapun.
PENGANTAR
Pengertian Sistem event driven menurut [ Berson, 1992 ] adalah satu sistem objek yang saling berinteraksi satu dengan yang lain dengan menggunakan mekanisme pesan. Mekanisme ini dikontrol oleh satu komponen berbeda yang biasanya disebut event dispatcher.
Data yang dikomunikasikan disebut event dan data tersebut dapat dimulai dari masukan yang tidak diproses di raw event (peristiwa mentah) atau data tersebut mendapatkan hasil komunikasi di antara objek.
Objek dapat menerima event yang berbentuk  pesan event, secara khusus panjang ditetapkan yang disusun dari jenis event dan parameter event.



3. PEKERJAAN TERKAIT
Di[ Forrester dan Pengilang, 2000 ,  et al. pengilang, 1995 ] ini terlihat itu ketika
peristiwa memandu aplikasi diberi makan dengan urutan acak dari peristiwa, mereka cenderung
ke kegagalan pemakaian. Pada kenyataan, semua aplikasi yang diuji di[ Forrester dan Pengilang,
2000 ] ditemukan rentan ke pesan peristiwa acak. Antara aplikasi
diuji, mereka mengatur untuk menemukan kode membagi-bagi dimana parameter
dari pesan peristiwa diandalkan cukup biasanya tongkat penunjuk dereference
yaitu satu sangat jaminan sekuritas berbahaya berlatih. Pada keadaan lain, identifikasi
dari satu aplikasi yang didapat pada satu pesan diandalkan ke derajat
bahwa ini dipergunakan secara langsung tanpa meverifikasi ketepatan dari nilai.
Perbedaan di antara[ Forrester dan Pengilang, 2000 ,  et al. pengilang, 1995 ] dan
kertas ini adalah itu terdahulu menguji sebagian besar masalah di peristiwa memandu sistem
sebagai satu emisi keandalan perangkat lunak. Di kertas ini kita menguji mereka pada
perspektif jaminan sekuritas.
Di[ Ghosh dan Voas, 1999 , 38–44 halaman], masalah dari keandalan perangkat lunak
dengan hormat ke batal yang komersil kulit (RANJANG) perangkat lunak diuji
dan satu cara inokulasi perangkat lunak disajikan. Mempergunakan satu inokulasi demikian
ilmu pengetahuan tentang teknik, satu lapisan penapisan diletakkan pada tempatnya yang melindungi sistem operasi
panggil sistem dari doa dengan parameter cacat.
4. PERISTIWA MEMANDU KETIDAK-KEBALAN SISTEM
Kita menyajikan konvensi spesifik untuk membantu pada analisa dari satu peristiwa memandu
ketidak-kebalannya sistem. Selain itu, dimana ini adalah sesuai, kita menyediakan contoh
mempergunakan peristiwa GUI memandu sistem.
4.1. Konvensi
Penggunaan dari peristiwa yang memandu sistem adalah untuk mengatur secara efisien objek kelipatan
yang melaksanakan pada waktu yang sama dan saling berinteraksi dengan satu sama lain dan dengan
lingkungan. Korban dan penyerang dapat objek dari event5 yang sama
memandu banyak tugas sistem. Bagaimanapun, dengan kedatangan dengan sistem terdistribusi,
ini adalah kemungkinan untuk ini dua kesatuan objek dengan peristiwa berbeda memandu banyak tugas
sistem. Sepanjang sistem terdistribusi mendukung hantaran dari
peristiwa di antara membagikan objek, statis bahasan ini terapkan. Penyerang
juga dapat satu alat perangkat keras mampu dari pesan peristiwa kirim untuk tolak.
Ini dapat dicapai dengan memanipulasi alat masukan.
Satu pesan peristiwa adat didefinisikan sebagai satu pesan peristiwa itu mungkin punyai
dari bidang ini mulai apapun nilai. Lebih dari itu, seperti tolak penghitungan kita mendeskripsikan
perolehan kembali dengan data deskriptif dari objek tersedia pada satu peristiwa memandu sistem.
Data ini harus menjadi cukup untuk mengidentifikasi aplikasi yang adalah berlari. Selain itu,
mereka harus berisi keterangan sesuai untuk mengijinkan objek lain
untuk mengirimkan peristiwa untuknya.
Korban dapat satu aplikasi telah berlari atau sesuatu memulai oleh
penyerang dan terkontrol oleh kirim menyesuaikan pesan peristiwa.
Sistem operasi modern menyediakan seperangkat hak istimewa yang mungkin diberikan ke
pengguna. Secara khas, pengurus menggenggam beberapa hak istimewa sementara pengguna lain punya
jauh kurang. Objek, di proses skenario ini, yang dilaksanakan di bawah masing-masing pengguna
secara normal mewariskan hak istimewa mereka. Dengan demikian sesuatu dapat membuat perbandingan di antara
memproses seperti menjadi kurang lebih istimewa dibandingkan yang lain bergantung kepada apakah
mereka menguasai atau kekurangan satu hak istimewa. Satu pelanggaran jaminan sekuritas dapat mengambil tempat kalau satu serang
objek dapat mengambil keuntungan dari hak istimewa yang dimiliki oleh objek korban.
Ini dapat dilakukan oleh pemanfaatan satu ketidak-kebalan jaminan sekuritas.
4.2. Kondisi
Peristiwa berbeda memandu sistem mempunyai karakteristik berbeda dengan hormat ke
penanganan dari peristiwa. Karena kami tidak dapat menangkap semua sistem di group tunggal,
kita memikirkan seperangkat kondisi atau kebutuhan dari keberadaan dari karakteristik.
Sementara mendeskripsikan ketidak-kebalan di bagian 4.4 , kita menyajikan kondisi yang mana
harus dijumpai sangat bahwa mereka dapat mulai berpengaruh.
Penghitungan kondisi perlukan objek itu harus mampu untuk sebut satu persatu
objek dari peristiwa yang memandu sistem dan mendapat kembali keterangan deskriptif
itu dapat tolong untuk menaiki satu gempuran.
Penghitungan dari objek adalah satu fasilitas umum dan di situ umumnya
tidak ada pembatasan memaksakan seperti kemana objek dapat disebut satu persatu.
Kirim kondisi perlukan objek itu harus mampu untuk mengirimkan pesan peristiwa,
mungkin sesuatu kebiasaan, ke objek lain. Ini liputi, tapi bukan
dibatasi ke, tidak peristiwa istimewa kirim objek untuk paling tidak jenis sesuatu dari
objek dari hak istimewa lebih tinggi.
Kemampuan untuk mengirimkan peristiwa untuk apapun penerima tanpa apapun kontrol akses adalah
umum di peristiwa memandu sistem dan secara khas sehubungan dengan architec6 mereka
ture. Ini diamati ketika pengarang yang terapkan satu multithreaded sederhana
peristiwa memandu sistem. Terperinci, untuk mengirimkan satu peristiwa ke lain
objek, satu aplikasi memohon satu prosedur diekspor dari dispatcher peristiwa
itu tempat peristiwa pada peristiwa di mana antri dari sistem. Peristiwa
dispatcher mencek antri ini untuk tidak pesan kirimkan dan membagikan
mereka ke individu menolak antri. Cara untuk menempatkan pesan
pada antri pesan dari peristiwa dispatcher tidak mempertimbangkan satu
efisien dan mekanisme foolproof untuk mengidentifikasi sumber.
Pintasan kondisi perlukan objek itu harus mampu untuk jegal
pesan peristiwa dari objek lain. Ini meliputi tidak objek istimewa
menginterupsi peristiwa dari objek dengan hak istimewa lebih tinggi.
Fasilitas pintasan secara normal terpakai untuk penggunaan debugging dan ke
bantu perangkat lunak otomoatis menguji.
4.3. Referensi praktis
Sebagai satu contoh, kita mendeskripsikan kondisi yang mana dideskripsikan di 4.2 ada tersedia
pada peristiwa khas memandu sistem. Kita mendaftarkan Windows9x / NT / 2000 beroperasi
Java sistem dan umum implementasi Mesin Maya.
Tabel 1. Acuan Kondisi dan Peristiwa memandu alam lingkungan
Windows kondisi 9x Window NT / 2K Fitur Tambahan Java 3
Ya penghitungan Ya Tidak Ada 2 Tidak ada 3
Mengirimkan Ya Tidak Ada 2 Tidak ada 3
Ya pintasan Tidak Ada 1 Tidak ada 2 Tidak ada 3
Di Windows 9x tidak ada mekanisme kontrol akses terpaksa dan alhasil
ada tidak ada ketetapan untuk perlindungan dari hantaran dari peristiwa di antara
proses. Di Window NT / 2000 di situ adalah satu mekanisme kontrol akses dan
proses tidak dapat menginterupsi pesan yang diperuntukkan ke satu proses dengan lain
pengguna.
Kita menyediakan kode contoh untuk tiga kondisi menyajikan di 4.2 penggunaan
Sistem operasi Windows sebagai satu referensi.
Penghitungan kondisi
EnumWindows( (WNDENUMPROC)lpMyEnumFunc, (LPARAM)myarray);
1 Ini ada tersedia ketika penyerang dan korban berjalan kepunyaan pengguna yang sama.
2 Ini ada tersedia ke applets memulai dari basis kode yang sama.
3 Karena masing-masing applet dilaksanakan pada satu JVM terpisah.
7
Perintah ini membuat satu callback berfungsi dipanggil lpEnumFunc dan lewati
ini ke sistem untuk melaksanakan iteratively ini untuk masing-masing jendela tersedia. Ini
fungsi dapat mempergunakan argumen detik untuk mengembalikan kembali program utama
keterangan identifikasi dari tunjangan Windows.
Kirim kondisi
PostMessage (hWnd_victim, WM_CLOSE, 0, MEMASUKI );
Perintah ini mengirimkan satu pesan peristiwa ke proses korban itu di sini
contoh memaksa ini untuk akhiri.
Pintasan kondisi
g_hExistingHook = SetWindowsHookEx( WH_KEYBOARD,
 (HOOKPROC)g_HookProc, g_hInstance, MEMASUKI );
Setelan perintah ini satu cangkuk, satu prosedur itu akan mampu untuk mendapat semua
papan tombol berhubungan pesan sebelum penerima nyata.
Sebagai satu catatan sisi, di Windows 2000 satu pengguna dapat melaksanakan satu aplikasi dengan
identitas lain dengan memohon runas perintah garis perintah.
Pada kasus dari Java saat ini ada tersedia di software penjelajah, Java applets mampu untuk
berlari pada mesin maya yang sama kejadian dan hubungan dengan satu sama lain.
Bagaimanapun, komunikasi ini adalah sangat terbatas, ancaman minimal bersikap. Untuk
contoh, beberapa software penjelajah memerlukan bahwa applets memulai dari server yang sama
atau mulai selain itu dari direktori yang sama alur pada server. Lebih baru
software penjelajah tidak mempunyai Java internal mendukung dan mereka mengatur jalankan applets Java
dengan membuat penggunaan dari satu plugin memanggil Fitur Tambahan Java. Secara khas, masing-masing applet dari
halaman web yang sama dioperasikan pada satu mesin maya berbeda, membuat inter applet
peristiwa penggunaan komunikasi infeasible.
4.4. Jenis dari ketidak-kebalan
Kita memberikan daftar dari jenis dari ketidak-kebalan itu dapat memunculkan oleh eksploitasi dari
peristiwa di peristiwa memandu sistem. Jenis ini digolongkan oleh jaminan sekuritas akibat
dari eksploitasi, dan seiring dengan uraian yang kita sediakan kondisi
itu kebutuhan dijumpai sangat itu masing-masing gempuran adalah kemungkinan.
4.4. 1 Pengingkaran jasa.  Penghitungan kondisi dan Kirim harus
dijumpai agar melaksanakan satu pengingkaran gempuran jasa. Satu urutan peristiwa adat
pesan dikirimkan ke korban oleh penyerang. Kegagalan pemakaian korban, pimpinan
ke rugi dari availabilitas ke korban sendiri dan mungkin ke peristiwa yang memandu sistem
juga.
Dengan jelas, objek korban harus peka ke roboh satu kali seperti itu
urutan dari pesan peristiwa didapat. Bagaimanapun, seperti[ Forrester dan Pengilang,
2000 ,  et al. pengilang, 1995 ] telah perlihatkan, ini adalah sangat umum.
8
Pada satu aplikasi gambar, pengguna dapat menggambar satu baris dengan menekan
mouse tombol, menyeret mouse kemudian melepaskan mouse tombol. Di sini
tiga prosedur langkah, aplikasi gambar mendapat pesan berikut
dari alat mouse.
WM_LBUTTONDOWN WM_MOUSEMOVE WM_LBUTTONUP WM_MOUSEMOVE
Penyerang dapat mengirimkan satu detik WM LBUTTONDOWN sebelum mouse
tombol penekan sebenarnya diangkat. Keadaan seperti itu melihat sangat mau tidak mau untuk terjadi
dan juru program akan mungkin tidak mencek kebenaran dari program source kalau
ini terjadi. Kalau satu alat cacah (dari pada satu bendera) adalah dipergunakan untuk jejaki apakah
mouse tombol turun atau menaiki, kemudian aplikasi dapat semakin rancu dan
akan mempertimbangkan bahwa mouse tombol ditekan bulu halus sejak semula.
Perangkat lunak mouse dari satu pabrikan populer alat tikus menawarkan hak suara
untuk menirukan mengklik dobel pesan mempergunakan satu klik-tunggal dari pertengahan
mouse tombol. Yang, untuk mengirimkan dua peristiwa WM LBUTTONDOWN, masing-masing pengambilan
menempatkan dengan cepat satu demi satu. Dengan demikian, pengguna dapat menekan tombol kiri
dan klik tombol penekan pertengahan menghasilkan pada tiga pesan pengklikan bawah
sebelum tombol kiri dilepaskan. Lagipula, ini telah teruji itu di semua
versi dari Windows dimana perangkat lunak tikus ini didukung (yang, dari
Windows awal 3.1 sampai Windows 2000), pengguna mampu untuk penggunaan tengah
kancingkan fasilitas untuk mengacaukan komponen scrollbar pada apapun aplikasi. Pengguna
hanya punyai untuk klik yang manapun salah satu tombol penekan panah dan mouse seret berlalu
scrollbar, posisikan mouse pada scrollbar dan akhirnya klik pertengahan
tombol penekan. Hasil adalah satu terlihat scrollbar terubah-bentuk.
4.4. 2 Modifikasi dari aplikasi berlari.  Penghitungan kondisi
dan Kirim harus dijumpai agar memodifikasi satu aplikasi berlari.
Modifikasi ini adalah praktek umum bahkan pada aplikasi sah. Kalau
aplikasi mau mengubah status dari satu kotak teks dari memperbolehkan untuk lumpuhkan
sehingga yang adalah pertunjukan yang ini adalah tidak lagi di penggunaan, ini mengirimkan satu lumpuhkan pesan ke
komponen spesifik. Seyogyanya, mekanisme yang sama biasanya berganti satu
teks bertinju dari hanya dapat dibaca ke satu sesuatu yang dapat diubah dan bolak balik.
Bagaimanapun, terpisah dari kelayakan teknis untuk memodifikasi satu aplikasi berlari,
satu penyerang dapat menemukan penggunaan lain. Antara lain, ketika menginstal satu aplikasi,
pengguna secara khas satu pemakai akhir terlihat kesepakatan lisensi (EULA) bahwa dia
atau dia yang harus menantikan untuk agar berlanjut dengan instalasi. Kesepakatan ini
diperlihatkan pada satu kotak teks yang secara normal hanya baca sangat bahwa ini tidak dapat dimodifikasi.
Agar berlanjut dengan instalasi, pengguna yang punya tak lain hak suara dibandingkan ke
pilih Terima tombol penekan radio, secara implisit menerima lisensi terlihat. Bagaimanapun,
satu penyerang dapat dengan mudah mengirimkan satu peristiwa pesan crafted ke teks EULA bertinju
itu akan mengonversi ini ke satu sesuatu yang dapat diubah. Kemudian, ini dapat teredit sesuka hati sebelum
memilih Terima dan lanjutan. Keberadaan dari modifikasi seperti itu proce9
dure tidak membuat tidak berlaku lisensi sejak penyerang dengan sengaja memodifikasi
materi lisensi. Bagaimanapun, ini sepertinya mudah bagi penyerang peristiwa kebetulan ke
yakini bahwa dia atau dia sedang membypass lisensi. Dalam hal keadaan dari kebingungan,
penjual harus menolak apapun mungkin modifikasi.
4.4. 3 akses tanpa otorisasi untuk tolak.  Ketika Penghitungan Kondisi
dan Kirim dijumpai, apapun objek dapat mengirimkan peristiwa untuk lain objek. Dengan demikian, satu
tidak objek istimewa dapat memanipulasi satu objek istimewa dengan mengirimkan peristiwa.
Pada sistem operasi Windows, satu kuda unpriviledged trojan dapat kirimkan
satu urutan sesuai dari peristiwa untuk menambahkan satu rekening lagi administratif, kalau
Pengurus login. Jika tidak, kuda trojan dapat sebentar lagi melumpuhkan
satu pribadi firewall agar mengomunikasikan dengan Internet.
Sebagai alternatif, penyerang dapat menginterupsi kata sandi dari pengurus
sementara belakangan sedang mencoba untuk membuktikan keaslian sendiri ke satu jasa. Pengesahan
memprosedur umumnya melibatkan masuk dari satu username dan kata sandi pada dua
textboxes. Kata sandi textbox yang punya satu setelan hak milik pertunjukan itu asterik di
tempat dari masing-masing karakter dari kata sandi diketik. Satu hak milik selanjutnya adalah tersebut
tidaklah mungkin untuk melaksanakan satu operasi salinan dan pasta di sini textbox. 
ketidakbecusan untuk melaksanakan satu operasi salinan dan pasta sehubungan dengan yang pertama hak milik tersebut
sembunyikan input pengguna. Kalau di situ adalah tidak ada perlindungan demikian, penyerang dapat kirimkan
pesan
PostMessage (hWnd_victim, EM_SETSEL, 0, -1 );
PostMessage (hWnd_victim, WM_COPY, 0, MEMASUKI );
untuk memilih teks kata sandi dan salinan ke papan tulis kecil lokal.
Bagaimanapun, penyerang dapat membypass perlindungan ini dengan melumpuhkan passwordhiding
hak milik sebentar lagi agar melaksanakan operasi salinan dan pasta
dan sesudah itu pemungkinnya lagi dengan pesan ini
PostMessage (hWnd_victim, EM_SETPASSWORDCHAR, 0, MEMASUKI );
... perforn salin dan lekatkan operasi sebagai di atas...
PostMessage (hWnd_victim, EM_SETPASSWORDCHAR,  '*', MEMASUKI );
PostMessage (hWnd_victim, EM_SETSEL, 0, MEMASUKI );
Operasi ini mengambil tempat dengan cepat cukup sangat itu korban tidak mengamati
satu perubahan visuil.
4.4. 4 Pelaksanaan dengan kode dengki.  Penghitungan kondisi dan Kirim
harus dijumpai agar melaksanakan kode berubah-ubah atau dengki.
Pesan peristiwa adalah satu struktur dengan panjang tetap dan terbatas dan sesuatu akan
harapkan bahwa ini tidak mengijinkan kode dengki disampaikan ke korban. 
penyerang harus meletakkan kode dengki pada ruang alamat dari penggunaan korban
satu metode tak langsung seperti memaksa untuk baca satu file. Dengan demikian, mempergunakan satu peristiwa adat
urutan kode ini dapat dilaksanakan.
10
Skenario lain adalah sebagai kombinasi dengan over produksi penyangga. Penyerang
kirimkan urutan kebiasaan dari pesan peristiwa sangat itu satu over produksi penyangga dapat
oleh penuhi.
Satu contoh dengan sistem operasi Windows adalah sebagai penggunaan dari
PENGATUR WAKTU pesan WM untuk melaksanakan kode adat. Di Windows 2000, satu aplikasi
tidak dapat melaksanakan kode itu tidak bercokol di dalamnya ruang alamat. Dengan demikian, 
penyerang harus menemukan satu telah fungsi tersedia pada aplikasi korban dan
laksanakan ini. Perintah diperlihatkan di bawah.
PostMessage (hwnd_Victim, WM_TIMER, (WPARAM)0, (LPARAM)0x76f7a3);
Ini adalah sangat penting agar mampu menyediakan satu prosedur sah menunjuk sebagai
parameter ke-empat. Ini telah diuji dengan alamat dari PostQuitMessage()
berfungsi tutup itu aplikasi berlari dan dengan alamat dari satu internal
berfungsi pada aplikasi korban.
4.4. 5 Pintasan Peristiwa.  Penghitungan kondisi dan Pintasan
harus dijumpai agar mengidentifikasi objek korban dan menginterupsi peristiwa
diperuntukkan ke ini. Mampu untuk jegal peristiwa yang mengirimkan ke satu objek mengijinkan
penyerang untuk melanggar kerahasiaan dari hanyalah arah sesuatu dari komunikasi objek
dengan sistem.
Pada satu lingkungan GUI, menginterupsi peristiwa papan tombol dapat dengan mudah mengungkapkan
pengesahan memperinci yang telah diketik dengan papan tombol.
Pada satu keadaan lain randomness pada pasangan kunci generasi dari satu umum
mengunci algoritma adalah berlandaskan mouse bergerak pengguna pada arah acak pada
layar. Menginterupsi gerakan mouse dapat pimpin ke hitungan dari
kunci pribadi.
4.4. 6 Satu jalan lebar tambahan dari gempuran.  Ini menunjuk ke Penghitungan Kondisi,
Mengirimkan dan Pintasan dan kemampuan untuk menyerang alat perangkat keras
sukai kartu cerdas atau peristiwa terjamin yang lain memandu alat.
Dalam hal alat, penyerang dapat menghasilkan peristiwa mentah tiruan itu dapat
sesudah itu menjadi disemprot secara elektronis ke dalam peristiwa yang memandu alat. Ini dapat
sebabkan alat perangkat keras ke kegagalan pemakaian, membypass halangan jaminan sekuritas atau bahkan
ungkapkan informasi rahasia. Area ini adalah satu jalan lebar alternatif belum diselidiki
untuk mengarahkan gempuran melawan kartu cerdas atau alat serupa.
Alat perangkat keras lain yang dapat korban dari gempuran ini dapat Titik
Dari Penjualan sistem. Ini secara khas menawarkan berbagai alat masukan seperti touchscreens,
tikus-tikus atau papan tombol. Lagi, ini kemungkinan untuk menyemprot secara elektronis kebiasaan
peristiwa mentah. Antara lain, ini adalah umum di beberapa konfigurasi dari sistem tersebut
buat penggunaan dari mouse untuk melumpuhkan tombol kanan (itu biasanya menyediakan satu
menu dari hak suara) mempergunakan perubahan mekanik ke alat sendiri. Satu penyerang
dapat tentang memperbolehkan kemampuan ini. Tombol kanan biasanya memperlihatkan
11
hak milik dan aksi sah dari komponen layar. Ini biasanya
mohon kulit sistem dan mengijinkan akses penuh ke alat.
Pada bandar udara dari satu kota Orang Eropa utama di situ adalah kios Internet yang memperbolehkan
pengguna untuk melayari Internet untuk bebas dan pembelian perbuatan. Ini kemungkinan ke
restart atau bekukan sistem hanya dengan menyeret dan menjatuhkan satu komponen
dari Windows dari proses yang ditempatkan pada area lebih rendah dari layar ke
jendela dari proses yang menempatkan ada di puncak. Sesudah itu, ini dapat menjadi kemungkinan
untuk campur tangan pada pengebotan proses dan ambil alih sistem. Alasan
aplikasi menyebabkan sistem untuk merestart adalah karena salah satu kedua-duanya aplikasi
mengoperasikan kelihatannya tidak pengkodean dengan benar ketika ini mendapat WM LEKATKAN
pesan.
Akhirnya, di secara elektris alam lingkungan tidak stabil, gangguan elektrik mungkin
jadilah menerjemahkan ke dalam peristiwa mentah adat dan kegagalan pemakaian cetus.
5. ANALISA
Ketidak-kebalan yang disajikan di 4.4 terjadi untuk dua alasan-alasan.
Pertama-tama, ada umumnya tidak ada mekanisme kontrol akses dengan hormat ke
penghitungan dari objek, kirim dari peristiwa dan pintasan dari peristiwa
di peristiwa memandu sistem. Ini sebagian besar sehubungan dengan keaiban kinerja oleh
menambahkan kontrol akses dan kompleksitas penanganan dari ketentuan kontrol akses.
Yang kedua, umumnya disepakati sulit ke kontrol dampak dengan peristiwa berbentuk tidak sempurna
dikirimkan ke satu objek. Satu status perubahan objek melalui interaksi dengan
lingkungan. Kalau jaminan sekuritas ini memperoleh compromised, kemudian ini sehubungan dengan internalnya
logika tidak mampu untuk saring secara efisien input.
Ketidakbecusan untuk mengontrol secara efisien input ke satu objek dijelma
pada over produksi penyangga 2 [ Gollmann, 1999 ,  Sesuatu alif, 1996 ,  Empu, 1997 ] ketidak-kebalan.
Di jenis ini dari ketidak-kebalan, batas tidak pantas pengecekan dari
penyangga internal dapat menyebabkan struktur data lain dari korban ditimpa
dengan data adat, memimpin ke satu berkompromi jaminan sekuritas.
Kita memperlihatkan persamaan di antara penyangga membanjiri dan ketidak-kebalan di
peristiwa memandu sistem.
Kedua mereka umumnya timbul pada tahap implementasi. Sementara mendisain
satu aplikasi, ahli analisa perangkat lunak sedang mengerjakan satu taraf tinggi
dari pengecekan that do not abstrak batas array pada semua input data
atau lindungi peristiwa yang memandu objek dari mendapat peristiwa pada satu adat
urutan. Seperti terlihat di Bagian 3 , emisi ini ditinggalkan ke keterampilan dari
juru program dan bantuan dari bahasa atau mengembangkan lingkungan ke
tangkap mereka. Sementara di aplikasi kekecilan ini secara relatif mudah untuk hindari
kesalahan, di sesuatu besar kompleksitas tampak meliputi.
2 Juga ketahui saat penyangga luapi.
12
Kedua mereka dapat membuat aplikasi ke kegagalan pemakaian. Ini telah
diukur di keduanya penyangga banjiri[ Dawson et al., 1997 ,  Forrester dan
Pengilang, 2000 ,  et al. pengilang, 1995 ,  Shelton et al., 2000 ], dan peristiwa memandu
ketidak-kebalan sistem[ Forrester dan Pengilang, 2000 ,  et al. pengilang, 1995 ].
Kedua mereka harus memanfaatkan beberapa berbagai dengan aplikasi istimewa dalam urutan
yang dipertimbangkan bahwa mereka mengikis jaminan sekuritas. Di keduanya skenario berada
aplikasi mengoperasikan dengan hak istimewa berbeda. Sementara ketidak-kebalan ini
hadir di semua jenis dari aplikasi, mereka terlihat seperti mempertimbangkan
bukan kritis untuk penjual mereka[ et al. pengilang, 1995 ].
Kedua mereka memberikan satu ukuran relatif dari mutu dari perangkat lunak, ketika
dicheck-in rasio besar dari tidak objek istimewa.
Kedua mereka memimpin ke pengingkaran dari jasa itu ketika menyelidiki mungkin ijinkan
pelaksanaan kode dengki.
Sekarang ini, penyangga membanjiri jadilah lebih meneliti dibandingkan ketidak-kebalan di
peristiwa yang memandu sistem.
6. TINDAKAN BALASAN
Apapun tindakan balasan harus memfokuskan pada kedua kelemahan dari eventdriven
sistem. Ketidakbecusan untuk menentukan asal dari satu peristiwa dan kesulitan
untuk memastikan bahwa satu objek akan berfungsi dengan benar bagi seluruh kombinasi dari
diterima peristiwa.
Dalam urutan untuk satu objek dengki untuk menyerang satu peristiwa memandu sistem, ini harus
mampu untuk lakukan satu penghitungan dari objek tersedia kemudian mengirimkan peristiwa ke mereka.
Satu mekanisme pada sistem harus membatasi penghitungan objek dan kirim
dari peristiwa untuk objek yang terperinci meminta ini. Yang, satu objek harus
mampu untuk menjadi secara parsial tak kelihatan ke objek lain. Aplikasi sendiri
harus menjadi tampak untuk menghindari sembunyi dari trojan mengudai objek, bagaimanapun kritis
komponen harus dapat menjadi tersembunyi. Sembunyi ini harus menjadi tidak dapat dibatalkan dan
tersisa semasa seumur hidup dari objek.
Selain itu, di sana harus menjadi satu ulasan keamanan dari jenis tersedia dari
peristiwa dan itu yang berpotensi berbahaya, seperti itu yang referensi kartu tanda lewat
ke ingatan, harus flagged seperti halnya. Kemudian, selama inspeksi jaminan sekuritas
dari program source, jenis peristiwa ini harus dicek apakah mereka
dapat dimanfaatkan.
Lagipula, peristiwa dispatcher harus mengidentifikasi yang peristiwa tersebut
dikirimkan dari menolak berbeda dengan peristiwa yang mengirimkan dari sumber lain menyukai input
alat atau sistem sendiri. Prosedur sistem dipergunakan oleh objek untuk kirimkan
pesan dapat bendera mereka sebagai tidak kuat dan maju mereka ke satu komponen firewalling.
Sebagai alternatif, aplikasi sendiri dapat mengambil pemberitahuan bendera istimewa
dan tangani peristiwa ini bersesuaian.
13
Lebih dari itu, di evaluasi jaminan sekuritas dari alat penghitung, seperti itu otomoatis
machinces tukang cerita (ATMs), di sana harus menguji untuk ancaman untuk menyemprot
peristiwa dengki.
Akhirnya, cara dari inokulasi seperti itu disajikan di[ Ghosh dan Voas,
1999 ] dapat menyediakan taraf suatu dari jaminan sekuritas dengan menyaring pesan peristiwa dengki.
Walau ini menurunkan pangkat kinerja, ini adalah satu solusi ke perangkat lunak RANJANG.
7. KESIMPULAN
Kita menyajikan seperangkat ketidak-kebalan pengaruh itu peristiwa memandu sistem dan mengikis
jaminan sekuritas mereka. Ketidak-kebalan ini disebabkan oleh dua utama alasan.
Pertama-tama, ini sulit untuk menentukan asal dan integritas dari peristiwa
dikirimkan ke satu aplikasi, dengan demikian pemungkin bukan kirim bersifat membatasi dari peristiwa yang mengijinkan
sangat kontrol kuat dari objek korban. Yang kedua, ini adalah sangat sulit
untuk memastikan perilaku benar dari satu objek ketika ini mendapat secara khusus crafted
peristiwa.
Kita menggolongkan ketidak-kebalan berlandaskan dampak mereka yang punya pada korban
objek. Masing-masing ketidak-kebalan memerlukan keberadaan dari primitif spesifik oleh
peristiwa yang memandu sistem. Untuk masing-masing kategori, kita mendaftarkan dibutuhkan yang primitif.
Menyelesaikan ketidak-kebalan di peristiwa memandu sistem memerlukan aksi pada dua arah.
Pertama-tama, mengidentifikasi asal dari kontrol akses peristiwa dan penerapan.
Yang kedua, meverifikasi bahwa objek mengatur untuk berfungsi dengan baik ketika secara khusus
peristiwa crafted dikirimkan.
Kegagalan pemakaian dari aplikasi sehubungan dengan dahan gelap dari peristiwa adat punya
persamaan dengan penyangga membanjiri dan mengikuti prinsip yang sama yang mana mengatakan tersebut
satu objek terjaminnya harus mampu untuk pegangan semua masuki pada satu cara disanitasi.
Jika tidak, penyerang dapat menyebabkan pengingkaran dari jasa, pelaksanaan dengan dengki
kode, modifikasi dari aplikasi berlari, akses tanpa otorisasi untuk menolak dan
pintasan peristiwa.
Lagipula, ketidak-kebalan ini di peristiwa memandu sistem dapat dipertimbangkan
sebagai jalan lebar lain untuk penyerang untuk eksploitasi dan derajat lain dari
kompleksitas untuk pengembang perangkat lunak untuk menyediakan jaminan sekuritas.
Akhirnya, sejak ini sedang menjadi umum lagi untuk mempunyai peristiwa multi-user pandu
sistem dan peristiwa memandu sistem menjadi terdistribusi, kita meyakini bahwa eventdriven
ketidak-kebalan sistem akan mulai mempunyai akibat negatif sangat segera di
jaminan sekuritas perangkat lunak.
PENGAKUAN
Keinginan pengarang untuk mengucapkan terima kasih Chris Mitchell, Burung Martin Keith, Dieter Gollman
dan Robert Carolina untuk input mereka ke kertas ini.

3 komentar:

Unknown mengatakan...

terimakasih...
sangat...sangaaaat...sangaaat bermanfaat... :)

Unknown mengatakan...

terimakasih...
sangat...sangaaaat...sangaaat bermanfaat... :)

Unknown mengatakan...

kembali kasih :)

Posting Komentar

 
Copyright 2009 Dawim Masturo