Minggu, 22 Mei 2016

My Profile

Beny Wijaya
Namaku lengkapku adalah Beny Wijaya. Teman dan Kerabatku biasa memanggilku dengan sebutan Ben. Sekarang aku berumur 19 tahun dan masih berstatus lajang. Tentang pendidikanku, aku adalah mahasiswa semester V dari Universitas Prima Indonesia, salah satu universitas di Medan yang cukup terkenal. Alasan kenapa aku masuk ke Uiversitas ini karena awalnya ingin menjadi seorang Ahli tentang komputer. Awal masuk kuliah tahun 2014 lalu, aku sangat bersemangat untuk belajar dan berniat mencari pekerjaan yang berhubungan dengan IT,  bahkan mempelajari materi kuliah yang belum diajarkan sama sekali. Hal ini kulakukan karena keinginanku yang kuat dengan komputer, terutama pada Pemrograman. Pada akhirnya, pekerjaan yang kudapatkan sekarang tak pernah kubayangkan sebelumnya sama sekali dari awal aku masuk kuliah, yaitu menjadi seorang Banker di salah satu bank di Medan yang terkenal nomor satu di Indonesia. Gak perlu tau yah di bank apa, pokoknya banker deh hihih..

Nah, sekarang aku bakal curcol tentang mata kuliah yang aku sukai dari SMA, yaitu Pemrograman Web ! Mata kuliah ini baru ada di kelasku saat semester V ini. Dan membuat postingan di blog ini adalah salah satu alasan kenapa aku bahas ini semua. Dosen yang nyuruh gua posting tugas ini namanya Pak Wirhan. Beliau baru ini mengajar di kelas gua saat semester V ini. Kesanku sama pak dosen ini yaitu keliatannya pinter banget masalah komputer. Munculnya kesan gua ini karena pas beliau ngajar, Pak Wirhan ini menerangkan dengan PD nya dan kelihatan sangat lihai masalah komputer, apapun masalahnya. Mau itu masalah coding, aplikasi, dan yang berhubungan dengan Web.

Materi yang paling aku sukai itu pas belajar buat tabel. Pembelajaran ini membuatku menjadi suka melihat tabel yang berisi tulisan dengan tersusun rapi dibatasi oleh garis border dari tabel, apalagi kalau coding sendiri, malah ingin buat serapi-rapinya (teringat pas disuruh buat tampilan seperti Faceb**K), aku begitu terfokus saat membuatnya dan merasa puas saat menyelasaikannya.

Sekian Postingan hari ini,
_/Beny_/


Selasa, 10 Mei 2016

Buffer Overflows




1.           Eksploitasi Buffer Overflow
Dari sekian banyak penyebab masalah keamanan pada komputer, baik yang bersifat lokal maupun jaringan, buffer overflow termasuk salah satu penyebab yang paling banyak dilakukan. Menurut laporan CERT/CC, buffer overflow  merupakan penyebab  dari 50% semua bug keamanan yang dilaporkan dan dijadikan advisori oleh CERT/CC. Lebih jauh lagi, riset yang dilakukan oleh Crispin Cowan dan kawan-kawan, menganggap buffer overflow sebagai vulnerability of the Decade.
Buffer overflow merupakan sebuah kelemahan yang mudah untuk ditemukan dan dimanfaatkan oleh penyerang  dalam sebuah sistem. Aplikasi dan Operating System (OS) menyimpan untuk sementara perintah yang mereka dapat di memori tertentu yang biasa disebut buffer memory. Kalau OS atau program tidak bisa dikode secara sempurna maka penyerang bisa membuat komputer korban jadi terganggu dengan mengirimkan perintah yang dibuat khusus,  membuat gangguan jadi berlangsung lebih lama. Windows 95 paling rentan kalau sudah berhadapan dengan serangan seperti “buffer overflow” yang banyak dilancarkan lewat internet ini. Saat ini serangan serupa sudah jarang dilancarkan pada sebuah komputer. Namun terkadang penyerang masih sering melakukannya untuk memperlambat kinerja sebuah situs.

a.         Deskripsi Buffer Overflow
               Untuk mengetahui apakah sebenarnya buffer overflow dan bagaimana cara kerja untuk mengekploitasinya, maka diperlukan pemahaman tentang cara kerja sistem processor di level bawah, seperti pemrograman assembly, manajemen memory text, stack, data dan sebagainya. Selain itu bagi pengguna sistem operasi Linux, pengalaman program debug gdb akan sangat membantu.

Manajemen memori pada proses
         Sebuah proses jika dilihat dari sudut manajemen memori, dapat dibedakan menjadi tiga bagian .
·         Text, memuat instruksi kode program. Bagian ini biasanya hanya bisa dibaca dan setiap usaha untuk menuliskan data ke bagian ini akan menyebabkan kesalahan segmentation violation.
·         Data,  memuat data, baik yang telah diinisialisasikan maupun yang belum. Selain dapat dibaca, biasanya bagian ini juga dimanipulasi suatu instruksi untuk melakukan penulisan padanya.
·         Stack, yang dapat dialokasikansecara dinamis, biasanya dimanfaatkan untuk menyimpan
variabel lokal maupun untuk melewatkan parameter fungsi. Pengaksesan data kebagian ini
menggunakan metode yang disebut LIFO (Last In First Out) seperti yang nanti akan
diterangkan secara lebih rinci. Jenis data yang juga patut diketahui adalah sebagai buffer
yang pada bahasa C diimplementasikan sebagai array. Array dapat dibedakan ke dalam dua
jenis berdasarkan metode pengalokasiannya, yaitu array statis dan array dinamis.  Array
statis dialokasikan dibagian data saat program dimuat ke memory, sedangkan array dinamis
dialokasikan di dalam stacj saat run time.

Stack
         Stack dapat dibayangkan sebagai sebuah blok dan memori yang dapat memuat data secara dinamis. Beberapa hal yang patut diketahui pada processor Intel sehubungan dengan stack adalah sebagai berikut.
q  Penggunaan metode Big Endian dalam mengorganisasikan sistem memori. Disini MSB (Most Significant Bit) terletak pada alamat memori yang lebih kecil dibandingkan LSB (Low Significant Bit).
q  Penambahan besar stack dilakukan ke arah alamat memori yang lebih kecil. Disini posisi bawah dari stack mempunyai alamat yang tetap. Posisi atas stack yang alamat memorinya lebih kecil dari posisi bawah selalu berubah.
q  Register stack pointer (SP) selalu menunjuk keposisi atas dari stack.
q  Untuk memindahkan data ke stack digunakan instruksi PUSH yang secara otomatis akan menurunkan nilai SP sebesar 4 byte. Sedangkan untuk mengambil data dari stack digunakan instruksi POP yang secara otomatis juga akan menaikkan nilai SP sebesar 4 byte.


         Blok memori dari stack ini biasanya dibagi lagi menjadi apa yang disebut dengan register stack frame. Setiap register stack frame  berisi data yang berhubungan dengan pemanggilan suatu fungsi. Biasanya posisi awal dari frame ini ditunjukkan oleh frame pointer (FT).
         Dengan bantuan FP ini, maka pengaksesan ke variabel lokal maupun parameter fungsi dapat dilakukan menggunakan sistem pengalamatanm relatif. Pada CPU Intel, register EBP berfungsi sebagai frame pointer.
         Setelah bahasan di atas, sekarang akan dijelaskan pengertian buffer overflow. Buffer overflow  memiliki arti suatu keadaan di mana data yang diisikan ke suatu buffer mempunyai ukuran yang lebih besar dari dibandingkan ukuran buffer  itu sendiri. Untuk lebih memahami buffer overflow,  mungkin dapat kita temukan padanannya dalam kehidupan sehari-hari, yaitu saat ember diisi  dengan air, sehingga air yang dituangkan sampai meluap ( overflow).
         Sedangkan pada eksploitasi buffer overflow, secara prinsip ada dua hal penting yang harus dilakukan dalam proses eksploitasi buffer overflow, yaitu sebagai berikut.
1.      Pertama harus membuat instruksi yang kita kehendaki agar dijalankan setelah buffer ter overflow. Instruksi ini biasanya berupa kode assembly ini harus dikonversi ke data heksadesimal.
2.      Kedua, harus memperhitungkan alamat posisi RET dalam stack dan alamat kode instruksi tersebut. Kemudian alamat kode instruksi ini harus dimasukkan ke dalam nilai RET, sehingga jika buffer ter overflow instruksi tersebut dijalankan .

a.      Bahaya Buffer Overflow
Dari deskripsi di atas dapat disimpulkan bahaya yang bisa ditimbulkan oleh eksploitasi buffer overflow adalah sebagai berikut.
·         Pemanipulasian dan pengrusakan data stack dimemori sehingga suatu program yang memerlukan data tersebut akan mengalami gangguan dalam prosesnya.
·         apabila suatu program atau aplikasi dijalankan maka instruksi-insruksi dari program tersebut akan disimpan dalam memori. Dengan memanfaatkan eksploitasi buffer overflow seorang pengganggu dapat memanipulasi instruksi-instruksi pada memori dengan instruksi yang diinginkannya.


d.      Cara Penanggulangan
         Berikut adalah tindakan yang bisa dilakukan untuk menghindari terjadinya eksploitasi buffer overflow. Dari sisi seorang pemrogram.
·         Memvalidasi Data
                  Sebuah program yang berjalan dengan privilge tinggi, mengharuskan untuk melindungi semua data dan harus menganggap semua data yang masuk patut dicurigai. Yang membatasi string nama yang dimaksukkan sebesar 255 karakter.
                  Selain memeriksa ukuran input yang dimasukkan, program juga harus memeriksa bahwa data yang dimasukkan adalah data yang valid. Misalnya, jika program meminta input berupa tipe data interger, maka program harus memastikan bahwa input yang diberikan  oleh user benar-benar bertipe integer, bukan tipe lainnya.

                  Konsepnya adalah membuat segment data sebuah program tidak dapat dieksekusi. Dengan menjadikannya tidak dapat dieksekusi, maka tidaklah mungkin bagi penyerang untuk mengeksekusi kode yang mereka masukkan ke buffer input  program korban.
         Cara ini digunakan pada sistem operasi komputer lama, tetapi pada sistem operasi UNIX dan MS Windowsteknik ini tidak digunakan, karena keduanya tergantung pada kemampuan memasukkan kode dinamis ke dalam segment data program untuk mendukung berbagai optimisasi kinerja.

·         Array Bounds Checking
                  Meskipun memasukkan kode adalah sebuah tindakan pilihan bagi serangan buffer overflow, pengkorupsian aliran kendali merupakan hal yang penting. Dengan menggunakan metode array bound checking akan menghentikan vunerability dan serangan buffer overflow.Jika sebuah array tidak dapat di-overflow, maka array tidak dapat digunakan untuk mengkorupsi program yang terletak di alamat memori berikutnya. Untuk mengimplementasikan metode ini, semua pembacaan dan penulisan ke array yang harus diperiksa untuk memastikan bahwa mereka tidak melampaui batasan array.


·         Code Pointer Integrity Checking
                  Tujuan dar metode ini agak berbeda dengan bounds cheking. Alih-alih berusaha mencegah korupsi kode pointer, ia berusaha mendeteksi bahwa sebuah kode pointer telah terkorupsi sebelum ia dideferensikan. Jadi meskipun penyerang sukses dalam mengkorupsi kode pointer, kode pointer yang terkorupsi tidak akan digunakan karena korupsi terdeteksi setiap saat sebelum digunakan.

·         Memeriksa Index
                  Indeks yang digunakan untuk memanipulasi sebuah array harus diperiksa dengan teliti.

Jumat, 22 April 2016

Metasploit



Pengertian metasploit
   Metasploit merupakan sofware security yang sering digunakan untuk menguji coba ketahanan suatu sistem dengan cara mengeksploitasi kelemahan software suatu sistem.


         Metasploit diciptakan oleh HD Moore pada tahun 2003 sebagai sebuah alat jaringan portabel menggunakan bahasa scripting Perl. Kemudian, Metasploit Framework benar-benar ditulis ulang dalam bahasa pemrograman Ruby. Pada tanggal 21 Oktober 2009, Proyek Metasploit mengumumkan yang telah diakuisisi oleh Rapid7, sebuah perusahaan keamanan yang menyediakan solusi kerentanan manajemen terpadu.
         Seperti produk komersial yang sebanding seperti kanvas Imunitas atau Inti Dampak Core Security Technologies, Metasploit dapat digunakan untuk menguji kerentanan sistem komputer untuk melindungi mereka atau untuk masuk ke sistem remote. Seperti alat-alat keamanan banyak informasi, Metasploit dapat digunakan untuk kegiatan baik yang sah dan tidak sah. Sejak akuisisi dari Metasploit Framework.

       Metasploit biasanya digunakan untuk menyerang application layer dengan 0 day attack yang merupakan metode penyerangan pada software yang belum di patch. Metasploit biasa dikaitkan dengan istilah remote exploitation, maksudnya penyerang berada pada jarak jangkauan yang jauh dapat mengendalikan komputer korban. Metasploit menyerang dengan cara mengirimkan exploit pada komputer korban. Exploit ini berisi payload yang sudah ditentukan oleh penyerang. Exploit adalah software yang berfungsi untuk memanfaatkan kelemahan pada software korban(misal web browser), setelah berhasil mengeksploitasinya exploit tersebut memasukkan payload ke dalam memori korban. Payload merupakan sebuah executable milik penyerang yang akan di run pada komputer korban dengan tujuan dapat mengendalikan komputer tersebut secara remote atau memasang backdoor, trojan, virus, worm, dan lain-lain. Terlepas dari penggunaan metasploit yang disalah gunakan untuk kejahatan, software ini juga membantu System Security untuk memperkuat pertahanan jaringannya dari ulah penyerang dari luar.

Tujuan metasploit
Metasploit framework mempunyai banyak kegunaan dalam berbagai bidang diantaranya adalah:
·         Pada bidang keamanan jaringan untuk melakukan tespenetrasi
·         administrator sistem untuk memverifikasi instalasi dan patch sistemnya
·         vendor produk untuk melakukan tes kelemahan dan peneliti-peneliti keamanan lainnya didunia
·         Riset dan penelitian eksploitasi keamanan
·         Memahami cara kerja serangan
·         Tes penetrasi
·         Tes IPS/IDS
·         Demo atau presentasi
·         Legal hacking

Cara dan Teknik Melakukan Serangan
Langkah-langkah dasar untuk mengeksploitasi sebuah sistem dengan menggunakan Framework meliputi:

·         Memilih dan mengkonfigurasi mengeksploitasi (kode yang memasuki sistem target dengan memanfaatkan        salah satu bug nya, sekitar 900 eksploitasi yang berbeda untuk Windows, Unix / Linux dan Mac OS X sistem termasuk);
·         Memeriksa apakah sistem target yang dimaksud adalah rentan terhadap mengeksploitasi dipilih (opsional);
·         Memilih dan mengkonfigurasi payload (kode yang akan dijalankan pada sistem target setelah berhasil masuk, misalnya, shell remote atau server VNC);
·         Memilih teknik pengkodean untuk menyandikan payload sehingga sistem pencegahan intrusi (IPS) tidak akan menangkap encoded payload;
·         Pelaksana mengeksploitasi.

Tools dalam Serangan
·         Metasploit versi berapa saja
·        Komputer dengan koneksi internet karena ini harus ada usahakan dalam satu jaringan
karena kita akan meremote komputer lain, untuk OS-nya terserah kita bisa pakai linux, windows, unix ( pakai backtrack)
·         Nmap tapi buat metasploit framework sudah terinclude langsung Nmapnya
·         Ip dari komputer korban.

Antisipasi dalam Serangan
Dikarenakan bahayanya metasploit ini jika disalah gunakan saya memiliki tips untuk menghindari serangan mertasploit framework ini setidaknya untuk attacker pemula,
1.      Lakukan update secara berkala sistem firewall Anda. Firewall sangat ampuh, bahkan program cain & able atau Netcut yang bisa menyusup secara diam-diam akan kalah melawan firewall yang selalu dioperbarui (update) dengan baik, begitu juga dengan exploit framework. Namun variasi serangan framework mampu meruntuhkan firewall,
2.      Install program anti executable pada komputer anda, dengan program tersebut, maka komputer klien tidak dapat menginstall tool atau aplikasi penyerang, namun hal ini hanya bisa dirterapkan pada jaringan kabel.
3.      Blokir write acces pada sharedoc
4.      Serangan diatas tidak luput dari DOS. untuk itu tutup akses DOr melalui registry dengan cara: HKEY_CURRENT_USER>Software>Microsoft>windows>Current Version>Polices    , Buat key dengan nama WinOldApp, lalu tambahkan DWORD baru denganb values=0. Jika nantinya anda ingin mengaktifkan kembali, maka ubah DWORD menjadi 1. Lakukan pada semua computer dalam jaringan kabel anda.Cara seperti ini akan meminimalisir serangan seorang pemula.
5.      Pantau seluruh aktivitas klien anda(bila di warnet). blokir akses bila ada yang mencoba melakuikan hal-hal yang merugikan(hanya bisa dilakukan pada jaringan kabel)
6.      untuk pengguna hotspot, yang bisa anda lakukan selain beberapa cara diatas, adalah berhati-hati, karena kebanyakan jaringan hotspot gratis, tidak dienskripsi untuk keamanan.
7.      sebaiknya anda gunakan OS opensource seperti Linux, karna hingga saat ini (2016)  linux merupakan salah satu software anti malware dan software terbaik.
 
Kesimpulan dan Saran

Kesimpulan :

Metasploit adalah sebuah software untuk melakukan serangan pada jaringan computer agar dapat mengambil alih kendali computer dengan mengirimkan eksploit pada korban.
Saran :
Banyak penjahat di dunia internet ini, dan mereka selalu berusaha mencari kelengahan kita sewaktu sedang surfing di internet, apalagi pada saat ini bisnis di dunia internet sangat menjanjikan. Oleh karena itu ke hati-hatian sangat diutamakan jangan sampai para penyusup masuk ke system dan mengobrak-abriknya. Untuk itu, gunakan antivirus, aktifkan firewall, menggunakan Internet Browser yang baik, ganti password sesering mungkin, dan jangan terkecoh dengan email palsu, serta lainnya.




Diberdayakan oleh Blogger.

Labels