Khamis, 19 Februari 2009

[Sekuriti] Return Oriented Programming

Tarikh Keluaran Artikel: 17022009

Aritkel ini mengambil idea asal daripada Megahacker - Final Revolution: [NEWS] Good Code, Bad Computations

Bila tongkat si buta menjadi ular
Apakah cara yang paling ditakuti oleh orang untuk penyebaran virus? Jika dahulu menggunakan cakera liut (disket), berubah kepada email dan kini dalam bentuk UFD (USB Flash Drive) mahupun lain lain jenis storan luaran. Tetapi itu semua tidak menjadi masalah kepada mereka yang tahu bagaimana mengesan kehadiran anasir tersebut dan yang tidak tahu boleh menggunakan sistem sekuriti. Masalahnya kini, sistem sekuriti anda sukar untuk mengesan kesemua perkara yang datang dan tambahan pula kini terdapat satu cara untuk mengelakkan daripada dikesan oleh sistem sekuriti. Cara tersebut digelarkan dengan nama, Return Oriented Programming - Pengaturcaraan Berorientasikan Pengembalian (Shacham, 2007).

PBP
Pengaturcaraan Berorientasikan Pengembalian (PBP) boleh dinyatakan sebagai satu methodologi yang menggunakan kelemahan yang terdapat di dalam, program, "return-to-libc" (ret2libc) dan "overflow buffer" hingga membolehkan penyerang menguasai dan membentuk komputasi arbitrari, membolehkan terjalannya program yang merbahaya tanpa memerlukan sebarang suntikkan (Buchanan, Roemer, Shacham & Savage, 2008) tetapi lebih kepada aplikasi kepada bahasa pengaturcaraan C yang digerakkan bersama dengan bahasa himpunan (assembly language). Walaupun pada awalnya sememangnya tidak boleh menggunakan cara ini tetapi diatas kekurangan yang terdapat didalam kawalam aliran intergriti sesuatu proses itu, menyebabkan aliran tersebut dapat digunakan sebagai satu cara untuk memasukkan program yang lain dengan sukar dikesan oleh sistem sekuriti.

Bacaan Lanjut
Untuk lebih memahami kepada mereka yang berminat dengan perkara ini, anda boleh melanjutkan pembacaan anda dengan memuat turun fail kertas kerja mereka di sini

Rujukkan
E. Buchanan, R. Roemer, H. Shacham & S. Savage: When Good Instructions Go Bad: Generalizing Return-Oriented Programming to RISC. In Proceedings of CCS 2008, ACM Press, Aug. 2008
H. Shacham. The geometry of innocent flesh on the bone: Return-into-libc without function calls (on the x86). In Proceedings of CCS 2007, ACM Press, Oct. 2007.

Glosari
Arbitrari - himpunan beberapa cara yang saling bersangkut paut untuk membolehkan sesuatu yang tidak boleh diselesaikan pada awalnya dapat diseleaikan.
Intergriti - sesuatu pernyataan berkaitan dengan kualiti proses yang dianggap telah sempurna dari segi perjalanan proses.

Technorati Tags: , , ,

Tiada ulasan: