Rabu, 24 Februari 2016

Sejarah Terbitnya Bahasa Pemograman Java

Pada postingan kali ini,kita akan membahas mengenai asal usul terbitnya salahsatu bahasa pemograman yaitu Java.
Java adalah bahasa pemrograman yang dapat dijalankan di berbagai komputer termasuk telepon genggam. Bahasa ini awalnya dibuat oleh James Gosling saat masih bergabung di Sun Microsystems saat ini merupakan bagian dari Oracle dan dirilis tahun 1995. Bahasa ini banyak mengadopsi sintaksis yang terdapat pada C dan C++ namun dengan sintaksis model objek yang lebih sederhana serta dukungan rutin-rutin aras bawah yang minimal. Aplikasi-aplikasi berbasis java umumnya dikompilasi ke dalam p-code (bytecode) dan dapat dijalankan pada berbagai Mesin Virtual Java (JVM). Java merupakan bahasa pemrograman yang bersifat umum/non-spesifik (general purpose), dan secara khusus didisain untuk memanfaatkan dependensi implementasi seminimal mungkin. Karena fungsionalitasnya yang memungkinkan aplikasi java mampu berjalan di beberapa platform sistem operasi yang berbeda, java dikenal pula dengan slogannya, "Tulis sekali, jalankan di mana pun". Saat ini java merupakan bahasa pemrograman yang paling populer digunakan, dan secara luas dimanfaatkan dalam pengembangan berbagai jenis perangkat lunak aplikasi ataupun aplikasi.

Versi awal Java pada tahun 1996 sudah merupakan versi release sehingga dinamakan Java Versi 1.0. Java versi ini menyertakan banyak paket standar awal yang terus dikembangkan pada versi selanjutnya:

java.lang: Peruntukan kelas elemen-elemen dasar.
java.io: Peruntukan kelas input dan output, termasuk penggunaan berkas.
java.util: Peruntukan kelas pelengkap seperti kelas struktur data dan kelas kelas penanggalan.
java.net: Peruntukan kelas TCP/IP, yang memungkinkan berkomunikasi dengan komputer lain menggunakan jaringan TCP/IP.
java.awt: Kelas dasar untuk aplikasi antarmuka dengan pengguna (GUI)
java.applet: Kelas dasar aplikasi antar muka untuk diterapkan pada penjelajah web.

Java sendiri memiliki beberapa kelebihan yaitu 
  • Multiplatform Kelebihan utama dari Java ialah dapat dijalankan di beberapa platform / sistem operasi komputer, sesuai dengan prinsip tulis sekali, jalankan di mana saja. Dengan kelebihan ini pemrogram cukup menulis sebuah program Java dan dikompilasi (diubah, dari bahasa yang dimengerti manusia menjadi bahasa mesin / bytecode) sekali lalu hasilnya dapat dijalankan di atas beberapa platform tanpa perubahan. Kelebihan ini memungkinkan sebuah program berbasis java dikerjakan di atas operating system Linux tetapi dijalankan dengan baik di atas Microsoft Windows. Platform yang didukung sampai saat ini adalah Microsoft Windows, Linux, Mac OS dan Sun Solaris. Penyebabnya adalah setiap sistem operasi menggunakan programnya sendiri-sendiri (yang dapat diunduh dari situs Java) untuk meninterpretasikan bytecode tersebut.
  • OOP (Object Oriented Programming - Pemrogram Berorientasi Objek)
  • Perpustakaan Kelas Yang Lengkap, Java terkenal dengan kelengkapan library/perpustakaan (kumpulan program program yang disertakan dalam pemrograman java) yang sangat memudahkan dalam penggunaan oleh para pemrogram untuk membangun aplikasinya. Kelengkapan perpustakaan ini ditambah dengan keberadaan komunitas Java yang besar yang terus menerus membuat perpustakaan-perpustakaan baru untuk melingkupi seluruh kebutuhan pembangunan aplikasi.
  • Bergaya C++, memiliki sintaks seperti bahasa pemrograman C++ sehingga menarik banyak pemrogram C++ untuk pindah ke Java. Saat ini pengguna Java sangat banyak, sebagian besar adalah pemrogram C++ yang pindah ke Java. Universitas-universitas di Amerika Serikat juga mulai berpindah dengan mengajarkan Java kepada murid-murid yang baru karena lebih mudah dipahami oleh murid dan dapat berguna juga bagi mereka yang bukan mengambil jurusan komputer.
  • Pengumpulan sampah otomatis, memiliki fasilitas pengaturan penggunaan memori sehingga para pemrogram tidak perlu melakukan pengaturan memori secara langsung (seperti halnya dalam bahasa C++ yang dipakai secara luas).

Pengimplementasian Class di Java

Di bawah ini merupakan contoh sintax sederhana pengimplementasian Class di bahasa java.

class KPLBO {

public static void main(String[] args) {
       System.out.println("Mahasiswa");
       System.out.println("=========");
                  Mahasiswa a = new Mahasiswa();
                  a.setNama("Yuhsyar");
                  a.setNrp("123040036");
                  a.setKegiatan("Belajar KPLBO");
       System.out.println("NRP    : " + a.getNrp());
       System.out.println("Nama     : " + a.getNama());
       System.out.println("Kegiatan : " + a.getKegiatan() + "\n");

     }
 }

Penjelasan Fungsi Package di Java
Package adalah sarana/cara pengelompokkan dan pengorganisasian kelas-kelas dan interface yang sekelompok menjadi suatu unit tunggal dalam library.
Package juga mempengaruhi mekanisme hak akses ke kelas-kelas di dalamnya.
Ada tiga langkah untuk membuat package :
1. Mendeklarasikan dan memberi nama package.
2. Membuat struktur dan nama direktori yang sesuai dengan struktur dan nama package.
3. Mengkompilasi kelas-kelas sesuai dengan packagenya masing-masing.

- Mendeklarasikan dan Memberi Nama Package
Deklarasi package harus diletakkan pada bagian paling awal (sebelum deklarasi import) dari source code setiap kelas yang dibungkus package tersebut.
Bentuk umum deklarasi package :
         "package namaPackage;" 
Deklarasi tersebut akan memberitahukan kompilator, ke library manakah suatu kelas dikompilasi.
Syarat nama package :
1. Diawali huruf kecil
2. Menggambarkan kelas-kelas yang dibungkusnya
3. Harus unik (berbeda dengan nama package standard)
4. Merepresentasikan path dari package tersebut.
5. Harus sama dengan nama direktorinya.
Contoh package standard :
    java.lang (berisi kelas-kelas fundamental yang sering digunakan).
    java.awt dan javax.swing (berisi kelas-kelas untuk membangun aplikasi GUI)
    java.io (berisi kelas-kelas untuk proses input output)
    javax.swing (Berisi kelas kelas interface untuk komponen grafis)
    java.net (Berisi kode program untuk berkomunikasi melalui jaringan internet)
    java.text. (Berisi kelas yangg memperbolehkan untuk memanupulasi angka)
    jave.applet (berisi kelas-kelas Applet dan juga beberapa interfes yang memperbolehkan interaksi   applet dan browser serta untuk memainkan klip audio. Kelas javax.swing.JApplet digunakan untuk menetapkan applet yang menggunakan komponen GUI swing.)

Selasa, 24 November 2015

Mobile Security "Ancaman,Pola Serangan dan Solusi"



Pesatnya perkembangan teknologi saat ini membuat internet mudah di akses dan semakin umum, karena
harga perangkat dan tarif internet yang mudah di jangkau, ditambah lagi budaya masyarakat yang senang mengobrol dengan aplikasi chat dan sosial media. Namun kurangnya pengetahuan masyarakat tentang internet dan penggunaan smartphone dapat berdampak buruk bagi sebagian pihak.
Disisi lain aplikasi mobile terus bermunculan mulai dari aplikasi informasional hingga transaksional.
Pengertian keamanan pada sistem mobile
Sistem operasi mobile
Jenis gangguan / ancaman pada MobileSistem keamanan pada MobileKeamanan sistem adalah sebuah sistem yang di gunakan untuk mengamankan sebuah smartphone atau mobilephone dari segala gangguan dan ancaman yang tidak di inginkan (keamanan data, informasi dan hardware)Sedangkan mobile adalah sebuah benda yang berteknologi tinggi dan dapat bergerak tanpa menggunakan kabel.Yaitu software utaman yang melakukan manajemen dan control terhadap hardware secara langsung serta mengontrol software2 lain sehingga dapat berkerja dengan baik. Macam2 sistem operasi mobile :
  • IOS
  • Android
  • Windows Mobile
  • Blackberry
  • Symbian OS
  1. Jenis Gangguan / Ancaman pada Sistem Operasi
  • Heartbleed
  • Software Error
  • Human Error
  • Malware
  • Keamanan dalam sistem operasi
  • Detektor Rootkit
  • Proses isolasi
  • Hak akses file
  • Perlindungan memori
  • Pembangunan melalui lingkungan runtime
  • Software keamanan
  • Antivirus dan firewall
  • Visual Pemberitahuan
  • Tes Turing
  • Identifikasi biometrik
  • Pemantauan sumber daya di smartphone
  • Baterai
  • Penggunaan memori
  • Lalu lintas jaringan
  • Layanan
  • Jaringan surveilans
  • Spam filter
  • Enkripsi informasi yang disimpan atau dikirimkan
  • Monitoring jaringan telekomunikasi
  • Produsen surveilans
  • Hapus mode debug
  • Pengaturan default
  • Audit keamanan aplikasi
  • Mendeteksi aplikasi mencurigakan menuntut hak
  • Prosedur pencabutan

Sistem Keamanan pada OS :
Samsung Knox
Sebuah solusi keamanan end-to-end yang dirancang khusus oleh Samsung dari aplikasi hingga hardware.
Lockout
Sebuah anti maleware, data backup dan aplikasi remote manajemen untuk smartphone dan tablet
Keamanan merupakan suatu isu yang sangat penting, baik itu keamanan fisik, keamanan data maupun Keamanan aplikasi.
Untuk menjaga agar sistem mobile kita aman dari gangguan virus ataupun gangguan lainya, kita harus melakukan pengecekan dengan aplikasi security atau aplikasi pengaman.
Ketika smartphone terinfeksi oleh penyerang, penyerang dapat mencoba beberapa hal:Penyerang dapat memanipulasi smartphone sebagai mesin zombie , yaitu mesin dengan yang penyerang dapat berkomunikasi dan mengirim perintah yang akan digunakan untuk mengirim pesan yang tidak diinginkan ( Spam ) melalui sms atau email. Penyerang dapat dengan mudah memaksa smartphone untuk membuat panggilan telepon. Sebagai contoh, seseorang dapat menggunakan API (perpustakaan yang berisi fungsi dasar tidak hadir dalam smartphone) PhoneMakeCall oleh Microsoft , yang mengumpulkan nomor telepon dari sumber manapun seperti halaman kuning, dan kemudian memanggil mereka. Namun penyerang juga bisa menggunakan metode ini untuk memanggil layanan dibayar, sehingga biaya untuk pemilik smartphone. Hal ini juga sangat berbahaya karena smartphone bisa menelepon layanan darurat sehingga mengganggu layanan tersebut.Sebuah smartphone dikompromikan dapat merekam percakapan antara pengguna dan lain-lain dan mengirimkannya ke pihak ketiga. Hal ini dapat menyebabkan privasi pengguna dan keamanan industri masalah. Seorang penyerang juga dapat mencuri identitas pengguna, merebut identitas mereka (dengan salinan pengguna sim card atau bahkan telepon itu sendiri), dan dengan demikian meniru pemilik. Hal ini menimbulkan masalah keamanan di negara-negara di mana smartphone dapat digunakan untuk menempatkan pesanan, melihat rekening bank atau digunakan sebagai kartu identitas.
Penyerang dapat mengurangi kegunaan smartphone, dengan pemakaian baterai. Sebagai contoh, mereka dapat menjalankan aplikasi yang akan terus berjalan pada prosesor smartphone, membutuhkan banyak energi dan menguras baterai. Salah satu faktor yang membedakan komputasi mobile dari PC desktop tradisional adalah kinerja yang terbatas. Frank Stajano dan Ross Anderson pertama kali dijelaskan bentuk serangan, menyebutnya serangan “kelelahan baterai” atau “kurang tidur penyiksaan”. Penyerang dapat mencegah operasi dan / atau mulai dari smartphone dengan membuatnya tidak dapat digunakan. Serangan ini dapat menghapus script boot, sehingga telepon tanpa berfungsi OS , atau memodifikasi file tertentu untuk membuatnya tidak dapat digunakan (misalnya script yang meluncurkan pada startup yang memaksa smartphone untuk restart) atau bahkan menanamkan aplikasi startup yang akan mengosongkan baterai. Penyerang dapat menghapus pribadi (foto, musik, video, dll) atau profesional data (kontak, kalender, catatan) dari pengguna.
1.Serangan berdasarkan komunikasi
Serangan berbasis SMS dan MMS
Beberapa serangan berasal dari kelemahan dalam pengelolaan SMS dan MMS . Beberapa model ponsel mengalami masalah dalam mengelola pesan SMS biner. Hal ini dimungkinkan, dengan mengirim blok sakit-terbentuk, menyebabkan ponsel restart, menyebabkan serangan denial of service. Jika pengguna dengan Siemens S55 menerima pesan teks yang berisi karakter Cina, hal itu akan menyebabkan penolakan layanan. Dalam kasus lain, sementara standar mensyaratkan bahwa ukuran maksimum alamat Nokia Mail adalah 32 karakter, beberapa Nokia tidak memverifikasi standar ini, jadi jika pengguna memasukkan alamat email lebih dari 32 karakter, yang mengarah untuk menyelesaikan disfungsi handler e-mail dan menempatkan keluar dari komisi. Serangan ini disebut “kutukan diam”. Sebuah studi tentang keamanan dari infrastruktur SMS mengungkapkan bahwa SMS yang dikirim dari internet dapat digunakan untuk melakukan distributed denial of service (DDoS) serangan terhadap infrastruktur telekomunikasi seluler kota besar. Serangan memanfaatkan keterlambatan penyampaian pesan membebani jaringan.
Serangan lain yang potensial bisa dimulai dengan telepon yang mengirimkan MMS ke ponsel lain, dengan lampiran. Lampiran ini terinfeksi virus. Setelah menerima MMS, pengguna dapat memilih untuk membuka lampiran. Jika dibuka, ponsel terinfeksi, dan virus mengirimkan MMS dengan lampiran yang terinfeksi ke semua kontak di buku alamat. Ada contoh dunia nyata serangan ini: virus Commwarrior menggunakan buku alamat dan mengirim pesan MMS termasuk file yang terinfeksi ke penerima. Seorang pengguna menginstal perangkat lunak, seperti yang diterima melalui pesan MMS. Kemudian, virus mulai mengirim pesan ke penerima yang diambil dari buku alamat.
2. Serangan berdasarkan jaringan komunikasi
Serangan berdasarkan jaringan GSM
Penyerang dapat mencoba untuk memecahkan enkripsi jaringan selular. The GSM algoritma enkripsi jaringan milik keluarga algoritma yang disebut A5 . Karena kebijakan keamanan melalui ketidakjelasan itu belum mungkin untuk secara terbuka menguji kekokohan algoritma ini. Ada dua varian utama dari algoritma yang digunakan saat ini: A5 / 1 dan A5 / 2 (stream cipher), yang terakhir versi yang lebih lemah dari enkripsi untuk negara-negara dengan pembatasan hukum atas penggunaan skema kriptografi. Karena algoritma enkripsi dibuat publik, itu terbukti adalah mungkin untuk memecahkan enkripsi dalam waktu sekitar 6 jam. Kedua algoritma di akhir hidup mereka dan akan digantikan oleh algoritma publik yang lebih kuat: A5 / 3 dan A5 / 4 ( Blok cipher ), atau dikenal sebagai KASUMI atau UEA1 yang diterbitkan oleh ETSI . Namun perlu untuk membawa peralatan GSM menggunakan A5 / 1 atau A5 / 2 algoritma untuk produsen sehingga mereka dapat menggabungkan algoritma enkripsi baru, dan dengan demikian akan membutuhkan waktu untuk menggantikan A5 / 1 dan A5 / 2 dalam praktek.
Sejak tanggal 1 Juli 2006, GSMA (GSM Association) mengamanatkan bahwa GSM Mobile Phones tidak akan mendukung A5 / 2 Cipher lagi, karena kelemahannya, dan fakta bahwa A5 / 1 dianggap wajib oleh asosiasi 3GPP. Pada bulan Juli 2007, 3GPP telah menyetujui permintaan perubahan untuk melarang pelaksanaan A5 / 2 di setiap ponsel baru. Jika jaringan tidak mendukung A5 / 1, atau algoritma A5 lain yang diterapkan oleh telepon, maka koneksi tidak terenkripsi dapat digunakan. Selain itu, menelusuri terminal mobile sulit karena setiap kali terminal mobile mengakses atau diakses oleh jaringan, identitas sementara yang baru (TMSI) dialokasikan untuk terminal mobile. The TSMI digunakan sebagai identitas terminal mobile pada saat ia mengakses jaringan. The TMSI dikirim ke terminal mobile dalam pesan terenkripsi. Setelah algoritma enkripsi GSM rusak, penyerang dapat mencegat semua komunikasi terenkripsi yang dibuat oleh smartphone korban.
3.Serangan berdasarkan Wi-Fi
Access Point kembar
Seorang penyerang dapat mencoba untuk menguping Wi-Fi komunikasi untuk memperoleh informasi (misalnya username, password). Jenis serangan ini tidak unik untuk smartphone, tetapi mereka sangat rentan terhadap serangan ini karena sangat sering Wi-Fi adalah satu-satunya alat komunikasi mereka harus mengakses internet. Keamanan jaringan nirkabel (WLAN) dengan demikian merupakan subjek penting. Awalnya jaringan nirkabel yang dijamin dengan WEP kunci. Kelemahan WEP adalah kunci enkripsi singkat yang sama untuk semua klien yang terhubung. Selain itu, beberapa pengurangan ruang pencarian kunci telah ditemukan oleh para peneliti. Sekarang, sebagian besar jaringan nirkabel dilindungi oleh WPA protokol keamanan. WPA didasarkan pada ” Temporal Key Integrity Protocol (TKIP) “yang dirancang untuk memungkinkan migrasi dari WEP ke WPA pada peralatan sudah dikerahkan. Perbaikan utama dalam keamanan adalah kunci enkripsi dinamis. Untuk jaringan kecil, WPA adalah “kunci pre-shared” yang didasarkan pada kunci bersama. Enkripsi dapat rentan jika panjang kunci bersama pendek. Dengan kesempatan terbatas untuk input (yaitu hanya keypad numerik) pengguna ponsel mungkin mendefinisikan kunci enkripsi pendek yang hanya berisi angka. Hal ini meningkatkan kemungkinan bahwa penyerang berhasil dengan serangan brute-force. Penerus WPA, disebut WPA2 , seharusnya cukup aman untuk menahan serangan brute force. Seperti GSM, jika penyerang berhasil memecahkan kunci identifikasi, maka akan mungkin untuk menyerang tidak hanya ponsel tetapi juga seluruh jaringan terhubung ke.
Banyak smartphone LAN nirkabel ingat mereka sudah terhubung, dan mekanisme ini mencegah pengguna dari keharusan untuk mengidentifikasi-ulang dengan setiap koneksi. Namun, penyerang bisa membuat jalur akses WIFI kembar dengan parameter yang sama dan karakteristik sebagai jaringan nyata. Menggunakan fakta bahwa beberapa smartphone mengingat jaringan, mereka bisa membingungkan dua jaringan dan terhubung ke jaringan penyerang yang bisa mencegat data jika tidak mengirimkan data dalam bentuk terenkripsi.
Lasco adalah cacing yang menginfeksi awalnya perangkat remote menggunakan format file SIS. format file SIS (Instalasi Software Script) adalah file script yang dapat dieksekusi oleh sistem tanpa interaksi pengguna. The smartphone sehingga percaya file berasal dari sumber yang terpercaya dan download itu, menginfeksi mesin.
4.Prinsip berbasis Bluetooth serangan
Masalah keamanan yang berkaitan dengan Bluetooth pada perangkat mobile telah dipelajari dan telah menunjukkan berbagai masalah pada ponsel yang berbeda. Satu mudah untuk mengeksploitasi kerentanan : jasa tidak terdaftar tidak memerlukan otentikasi, dan aplikasi rentan memiliki port serial virtual yang digunakan untuk mengontrol telepon. Seorang penyerang hanya perlu terhubung ke port untuk mengambil kontrol penuh dari perangkat. Contoh lain: telepon harus berada dalam jangkauan dan Bluetooth dalam mode penemuan. Penyerang mengirimkan file melalui Bluetooth. Jika penerima menerima, virus ditularkan. Sebagai contoh: Cabir adalah worm yang menyebar melalui koneksi Bluetooth. Para pencarian worm untuk ponsel dengan Bluetooth terdekat dalam mode dapat terdeteksi dan mengirimkan dirinya ke perangkat target. Pengguna harus menerima file yang masuk dan menginstal program. Setelah menginstal, worm menginfeksi mesin.
5. Serangan berdasarkan kerentanan dalam aplikasi perangkat lunak
Serangan lain didasarkan pada kelemahan di OS atau aplikasi pada ponsel.
Web browser
Web browser mobile serangan vektor muncul untuk perangkat mobile. Sama seperti web browser umum, mobile web browser yang diperpanjang dari navigasi web murni dengan widget dan plug-in, atau browser ponsel benar-benar asli.
Jailbreaking yang iPhone dengan firmware 1.1.1 didasarkan sepenuhnya pada kerentanan pada browser web. Akibatnya, eksploitasi kerentanan yang dijelaskan di sini menggarisbawahi pentingnya browser Web sebagai vektor serangan untuk perangkat mobile. Dalam hal ini, ada kerentanan berdasarkan buffer overflow berbasis stack dalam perpustakaan yang digunakan oleh web browser ( Libtiff ).
Sebuah kerentanan dalam browser web untuk Android ditemukan pada bulan Oktober 2008. Sebagai kerentanan iPhone di atas, itu karena adanya usang dan rentan perpustakaan . Sebuah perbedaan yang signifikan dengan kerentanan iPhone adalah Android sandboxing arsitektur yang membatasi efek dari celah ini untuk proses browser Web. Smartphone juga menjadi korban pembajakan klasik terkait dengan web: phishing , situs-situs berbahaya, dll Perbedaan besar adalah bahwa smartphone belum memiliki kuat antivirus . perangkat lunak yang tersedia.
Sistem operasi
Kadang-kadang adalah mungkin untuk mengatasi perlindungan keamanan dengan memodifikasi sistem operasi itu sendiri. Sebagai contoh-contoh nyata, bagian ini meliputi manipulasi firmware dan sertifikat tanda tangan berbahaya. Serangan ini sulit.
Pada tahun 2004, kerentanan dalam mesin virtual yang berjalan pada perangkat tertentu yang terungkap. Itu mungkin untuk memotong bytecode verifier dan mengakses sistem operasi yang mendasari asli. Hasil penelitian ini tidak dipublikasikan secara rinci. Keamanan firmware Nokia Symbian platform Keamanan Arsitektur (PSA) didasarkan pada file konfigurasi pusat yang disebut SWIPolicy. Pada tahun 2008 itu mungkin untuk memanipulasi firmware Nokia sebelum diinstal, dan bahkan dalam beberapa versi download dari itu, file ini adalah dibaca manusia, jadi itu mungkin untuk memodifikasi dan mengubah citra firmware. Kerentanan ini telah diselesaikan dengan update dari Nokia.
Dalam teori smartphone memiliki keuntungan lebih hard drive karena OS file dalam ROM , dan tidak dapat diubah oleh malware . Namun dalam beberapa sistem itu mungkin untuk menghindari hal ini. Di OS Symbian itu mungkin untuk menimpa file dengan file dengan nama yang sama pada OS Windows, hal itu mungkin untuk mengubah pointer dari file konfigurasi umum ke file yang dapat diedit. Ketika aplikasi diinstal, penandatanganan aplikasi ini diverifikasi oleh serangkaian sertifikat . Satu dapat membuat valid tanda tangan tanpa menggunakan sertifikat yang sah dan menambahkannya ke dalam daftar. Dalam OS Symbian semua sertifikat berada di direktori: c: \ resource \ swicertstore \ dat . Dengan perubahan firmware dijelaskan di atas sangat mudah untuk memasukkan sertifikat yang tampaknya valid tapi berbahaya.
Perangkat lunak berbahaya (malware)
Sebagai smartphone adalah titik permanen akses ke internet (terutama pada), mereka dapat dikompromikan semudah komputer dengan malware. Sebuah malware adalah program komputer yang bertujuan untuk merusak sistem di mana ia berada. Trojan , worm dan virus semua dianggap malware. Sebuah Trojan adalah program yang ada di smartphone dan memungkinkan pengguna eksternal untuk terhubung diam-diam. Sebuah worm adalah program yang mereproduksi pada beberapa komputer di dalam jaringan. Virus adalah perangkat lunak berbahaya yang dirancang untuk menyebar ke komputer lain dengan memasukkan dirinya ke dalam program yang sah dan menjalankan program secara paralel. Namun, harus dikatakan bahwa malware jauh lebih banyak dan penting untuk smartphone karena mereka adalah untuk komputer. Jenis malware berdasarkan jumlah mereka smartphone pada tahun 2009. Meskipun demikian, studi terbaru menunjukkan bahwa evolusi malware di smartphone telah meroket dalam beberapa tahun terakhir berpose ancaman bagi analisis dan deteksi.
Tiga fase malware serangan
Biasanya serangan terhadap sebuah smartphone yang dibuat oleh malware berlangsung dalam 3 tahap: infeksi host, pemenuhan tujuannya, dan penyebaran malware ke sistem lain. Malware sering menggunakan sumber daya yang ditawarkan oleh smartphone yang terinfeksi. Ini akan menggunakan perangkat output seperti Bluetooth atau inframerah, tetapi juga dapat menggunakan buku alamat atau alamat email dari orang yang menginfeksi kenalan pengguna. Memanfaatkan malware kepercayaan yang diberikan kepada data yang dikirim oleh seorang kenalan.
Infeksi
Infeksi adalah cara yang digunakan oleh malware untuk masuk ke smartphone, itu bisa menggunakan salah satu kesalahan yang disajikan sebelumnya atau mungkin menggunakan mudah tertipu pengguna. Infeksi diklasifikasikan menjadi empat kelas menurut tingkat interaksi pengguna:
Izin eksplisit
interaksi yang paling jinak adalah untuk meminta pengguna jika diperbolehkan untuk menginfeksi mesin, jelas menunjukkan perilaku berbahaya potensinya. Ini adalah perilaku khas dari bukti konsep malware.
Izin Tersirat
Infeksi ini didasarkan pada kenyataan bahwa pengguna memiliki kebiasaan menginstal perangkat lunak. Kebanyakan trojan mencoba merayu pengguna untuk menginstal aplikasi yang menarik (game, aplikasi yang berguna dll) yang benar-benar mengandung malware.
Interaksi umum
Infeksi ini berhubungan dengan perilaku umum, seperti membuka MMS atau email.
Tidak ada interaksi
kelas terakhir dari infeksi yang paling berbahaya. Memang, cacing yang dapat menginfeksi smartphone dan bisa menginfeksi smartphone lain tanpa interaksi apapun akan menjadi bencana. Untungnya, saat ini belum ada contoh.
Malware
Berikut adalah berbagai malware yang ada dalam dunia smartphone dengan penjelasan singkat masing-masing.
- Virus dan trojan
Cabir (juga dikenal sebagai Caribe , SybmOS / Cabir , Symbian / Cabir dan EPOC.cabir ) adalah nama dari sebuah worm komputer yang dikembangkan pada tahun 2004 yang dirancang untuk menginfeksi ponsel menjalankan Symbian OS. Hal ini diyakini sebagai worm komputer pertama yang dapat menginfeksi ponsel. Commwarrior , ditemukan 7 Maret 2005, adalah worm pertama yang dapat menginfeksi banyak mesin dari MMS. Hal ini dikirim dalam bentuk file COMMWARRIOR.ZIP arsip yang berisi COMMWARRIOR.SISberkas. Ketika file ini dijalankan, Commwarrior mencoba untuk terhubung ke perangkat terdekat dengan Bluetooth atau inframerah dengan nama acak. Kemudian mencoba untuk mengirim pesan MMS ke kontak di smartphone dengan pesan sundulan yang berbeda untuk setiap orang, yang menerima MMS dan sering membukanya tanpa verifikasi lebih lanjut.
- Fag
Fag adalah yang pertama Palm OS virus yang ditemukan. Ini transfer ke Palm dari PC melalui sinkronisasi. Menginfeksi semua aplikasi yang ada di smartphone dan embeds kode sendiri berfungsi tanpa pengguna dan sistem mendeteksi itu. Semua bahwa sistem akan mendeteksi bahwa aplikasi yang biasa berfungsi.
- RedBrowser
RedBrowser adalah Trojan yang didasarkan pada java. The Trojan menyamar sebagai program yang disebut “RedBrowser” yang memungkinkan pengguna untuk mengunjungi situs WAP tanpa sambungan WAP. Selama instalasi aplikasi, pengguna melihat permintaan di ponsel mereka bahwa aplikasi memerlukan izin untuk mengirim pesan. Oleh karena itu, jika pengguna menerima, RedBrowser dapat mengirim sms ke call center dibayar. Program ini menggunakan koneksi smartphone untuk jaringan sosial ( Facebook , Twitter , dll) untuk mendapatkan informasi kontak untuk kenalan pengguna (disediakan izin yang diperlukan telah diberikan) dan akan mengirim pesan.
WinCE.PmCryptic.A adalah perangkat lunak berbahaya pada Windows Mobile yang bertujuan untuk mendapatkan uang untuk penulisnya. Ia menggunakan kutu kartu memori yang dimasukkan dalam smartphone untuk menyebarkan lebih efektif.

CardTrap merupakan virus yang tersedia pada berbagai jenis smartphone, yang bertujuan untuk menonaktifkan sistem dan aplikasi pihak ketiga. Ia bekerja dengan mengganti file yang digunakan untuk memulai smartphone dan aplikasi untuk mencegah mereka dari mengeksekusi. [ 31 ] Ada berbagai varian virus ini seperti Cardtrap.A untuk perangkat SymbOS. Hal ini juga menginfeksi kartu memori dengan malware yang mampu menginfeksi Windows .
    
Solusi dan Penanggulangan
Mekanisme keamanan untuk melawan ancaman tersebut di atas disajikan dalam bagian ini. Mereka dibagi ke dalam kategori yang berbeda, karena semua tidak bertindak pada tingkat yang sama, dan mereka berkisar dari pengelolaan keamanan dengan sistem operasi untuk pendidikan perilaku pengguna. Ancaman dicegah dengan berbagai tindakan yang tidak sama tergantung pada kasusnya. Mengingat dua kasus yang disebutkan di atas, dalam kasus pertama yang akan melindungi sistem dari korupsi oleh aplikasi, dan dalam kasus kedua instalasi perangkat lunak yang mencurigakan akan dicegah.
Lapisan pertama keamanan dalam smartphone adalah pada tingkat sistem operasi (OS) . Di luar peran yang biasa dari sebuah sistem operasi (misalnya manajemen sumber daya, proses penjadwalan) pada smartphone, juga harus menetapkan protokol untuk memperkenalkan aplikasi eksternal dan data tanpa memperkenalkan risiko.
Ide sentral ditemukan di sistem operasi mobile adalah ide sandbox . Karena smartphone saat ini sedang dirancang untuk mengakomodasi berbagai aplikasi, mereka harus menempatkan mekanisme untuk memastikan fasilitas ini aman bagi diri mereka sendiri, untuk aplikasi lain dan data pada sistem, dan pengguna. Jika sebuah program berbahaya berhasil mencapai perangkat, perlu bahwa daerah rawan disajikan oleh sistem sekecil mungkin. Sandboxing memperluas ide ini untuk memilah-milah proses yang berbeda, mencegah mereka dari berinteraksi dan merusak satu sama lain. Berdasarkan sejarah sistem operasi, sandboxing memiliki implementasi yang berbeda. Sebagai contoh, di mana iOS akan fokus pada membatasi akses ke API publik untuk aplikasi dari App Store secara default, Managed Terbuka Dalam memungkinkan Anda untuk membatasi aplikasi dapat mengakses jenis data. Android mendasarkan sandboxing pada warisan dari Linux dan TrustedBSD .
Mekanisme hal berikut sorot diimplementasikan dalam sistem operasi, terutama Android.
Intrusi sebuah rootkit dalam sistem adalah bahaya besar dalam cara yang sama seperti pada komputer. Hal ini penting untuk mencegah gangguan tersebut, dan untuk dapat mendeteksi mereka sesering mungkin. Memang, ada kekhawatiran bahwa dengan jenis program jahat, hasilnya bisa menjadi bypass sebagian atau lengkap dari keamanan perangkat, dan akuisisi hak administrator oleh penyerang. Jika ini terjadi, maka tidak ada yang mencegah penyerang dari belajar atau menonaktifkan fitur keselamatan yang dielakkan, penggelaran aplikasi yang mereka inginkan, atau menyebarkan metode penyusupan oleh rootkit untuk khalayak yang lebih luas. Kita bisa mengutip, sebagai mekanisme pertahanan, Rantai kepercayaan di iOS. Mekanisme ini bergantung pada tanda tangan dari aplikasi yang berbeda yang dibutuhkan untuk memulai sistem operasi, dan sertifikat yang ditandatangani oleh Apple. Dalam hal pemeriksaan tanda tangan tidak dapat disimpulkan, perangkat mendeteksi ini dan menghentikan boot-up. Jika Sistem Operasi terganggu karena Jailbreaking , deteksi kit akar mungkin tidak bekerja jika dinonaktifkan dengan metode Jailbreak atau perangkat lunak dimuat setelah Jailbreak menonaktifkan Rootkit Detection.
Android menggunakan mekanisme proses pengguna isolasi diwarisi dari Linux. Setiap aplikasi memiliki pengguna yang terkait dengan itu, dan tuple ( UID , GID ). Pendekatan ini berfungsi sebagai sandbox. Sementara aplikasi dapat berbahaya, mereka tidak bisa keluar dari sandbox disediakan untuk mereka dengan pengidentifikasi mereka, dan dengan demikian tidak dapat mengganggu berfungsinya sistem. Misalnya, karena tidak mungkin untuk proses untuk mengakhiri proses pengguna lain, aplikasi dapat dengan demikian tidak menghentikan eksekusi yang lain.
Dari warisan Linux, ada juga izin filesystem mekanisme. Mereka membantu dengan sandboxing: proses tidak dapat mengedit file yang diinginkan. Oleh karena itu tidak mungkin untuk file korup bebas diperlukan untuk pengoperasian aplikasi lain atau sistem. Selanjutnya, di Android ada metode penguncian izin memori. Hal ini tidak mungkin untuk mengubah hak akses dari file yang diinstal pada kartu SD dari telepon, dan akibatnya tidak mungkin untuk menginstal aplikasi.
Dengan cara yang sama seperti pada komputer, perlindungan memori mencegah eskalasi hak istimewa . Memang, jika suatu proses berhasil mencapai area yang dialokasikan untuk proses lainnya, bisa menulis dalam memori dari sebuah proses dengan hak unggul sendiri, dengan akar dalam kasus terburuk, dan melakukan tindakan yang berada di luar izin pada sistem. Ini akan cukup untuk memasukkan fungsi panggilan yang disahkan oleh hak istimewa dari aplikasi berbahaya.
Software ini sering dikembangkan dalam bahasa tingkat tinggi, yang dapat mengontrol apa yang sedang dilakukan oleh program yang berjalan. Sebagai contoh, Java Virtual Machines terus memantau tindakan benang eksekusi mereka mengelola, memantau dan menetapkan sumber daya, dan mencegah tindakan jahat. Buffer overflows dapat dicegah dengan kontrol ini.
Di atas sistem keamanan operasi, ada lapisan perangkat lunak keamanan. Lapisan ini terdiri dari komponen individu untuk memperkuat berbagai kerentanan: mencegah malware, intrusi, identifikasi pengguna sebagai manusia, dan otentikasi pengguna. Ini berisi komponen perangkat lunak yang telah belajar dari pengalaman mereka dengan keamanan komputer; Namun, pada smartphone, perangkat lunak ini harus berurusan dengan kendala yang lebih besar (lihat keterbatasan ).
Sebuah perangkat lunak antivirus dapat digunakan pada perangkat untuk memverifikasi bahwa itu tidak terinfeksi oleh ancaman dikenal, biasanya dengan tanda tangan perangkat lunak pendeteksi yang dapat mendeteksi file executable berbahaya. Sebuah firewall , sementara itu, dapat mengawasi lalu lintas yang ada pada jaringan dan memastikan bahwa aplikasi berbahaya tidak berusaha untuk berkomunikasi melalui itu. Mungkin sama memverifikasi bahwa aplikasi yang sudah diinstal tidak berusaha untuk menjalin komunikasi yang mencurigakan, yang dapat mencegah upaya penyusupan.
Agar pengguna mengetahui adanya tindakan abnormal, seperti panggilan mereka tidak memulai, seseorang dapat menghubungkan beberapa fungsi untuk pemberitahuan visual yang tidak mungkin untuk menghindari. Sebagai contoh, ketika panggilan dipicu, nomor yang dipanggil harus selalu ditampilkan. Jadi, jika panggilan dipicu oleh aplikasi berbahaya, pengguna dapat melihat, dan mengambil tindakan yang tepat.
Dalam nada yang sama seperti di atas, penting untuk mengkonfirmasi tindakan tertentu dengan keputusan pengguna. The Turing Uji digunakan untuk membedakan antara manusia dan pengguna virtual, dan sering datang sebagai captcha . Hal ini secara teoritis mungkin bagi komputer untuk menyelesaikan tes tersebut, dan oleh karena itu kegiatan yang mencurigakan dapat dikenakan persetujuan atau penolakan oleh pengguna.
Cara lain untuk digunakan adalah biometrik. Biometrics adalah teknik untuk mengidentifikasi seseorang dengan cara mereka morfologi (oleh pengakuan mata atau wajah, misalnya) atau perilaku mereka (tanda tangan atau cara menulis misalnya mereka). Salah satu keuntungan menggunakan keamanan biometrik adalah bahwa pengguna dapat menghindari harus mengingat password atau kombinasi rahasia lain untuk mengotentikasi dan mencegah pengguna berbahaya dari mengakses perangkat mereka. Dalam sistem dengan keamanan biometrik yang kuat, hanya pengguna utama dapat mengakses smartphone.
Ketika sebuah aplikasi melewati berbagai hambatan keamanan, dapat mengambil tindakan untuk yang dirancang. Ketika tindakan tersebut dipicu, aktivitas aplikasi berbahaya dapat kadang-kadang terdeteksi jika memonitor berbagai sumber daya yang digunakan di telepon. Tergantung pada tujuan malware, konsekuensi dari infeksi tidak selalu sama; semua aplikasi berbahaya tidak dimaksudkan untuk menyakiti perangkat yang mereka dikerahkan. Bagian berikut menjelaskan cara untuk mendeteksi aktivitas yang mencurigakan.
Beberapa malware ditujukan melelahkan sumber energi ponsel. Pemantauan konsumsi energi pada ponsel dapat menjadi cara untuk mendeteksi aplikasi malware tertentu.
Penggunaan memori yang melekat dalam aplikasi apapun. Namun, jika orang menemukan bahwa sebagian besar memori yang digunakan oleh aplikasi, mungkin ditandai sebagai mencurigakan.
Pada smartphone, banyak aplikasi terikat untuk terhubung melalui jaringan, sebagai bagian dari operasi normal mereka. Namun, aplikasi yang menggunakan banyak bandwidth dapat diduga kuat berusaha untuk berkomunikasi banyak informasi, dan menyebarkan data ke perangkat lainnya. Pengamatan ini hanya memungkinkan kecurigaan, karena beberapa aplikasi yang sah bisa sangat sumber daya intensif dalam hal komunikasi jaringan, contoh terbaik menjadi video streaming .
Satu dapat memonitor aktivitas berbagai layanan dari smartphone. Selama saat-saat tertentu, beberapa layanan tidak harus aktif, dan jika ada yang terdeteksi, aplikasi harus dicurigai. Sebagai contoh, pengiriman SMS ketika pengguna adalah syuting video yang: komunikasi ini tidak masuk akal dan mencurigakan; malware mungkin mencoba untuk mengirim SMS saat aktivitasnya bertopeng.
Berbagai titik yang disebutkan di atas hanya indikasi dan tidak memberikan kepastian tentang legitimasi aktivitas aplikasi. Namun, kriteria ini dapat membantu menargetkan aplikasi yang mencurigakan, terutama jika beberapa kriteria digabungkan.
Jaringan lalu lintas ditukar dengan ponsel dapat dipantau. Satu dapat menempatkan pengamanan di titik-titik jaringan routing untuk mendeteksi perilaku abnormal. Sebagai penggunaan mobile protokol jaringan jauh lebih dibatasi daripada komputer, diharapkan aliran data jaringan dapat diprediksi (misalnya protokol untuk mengirim SMS), yang memungkinkan deteksi anomali dalam jaringan mobile.
Seperti halnya dengan pertukaran email, kita dapat mendeteksi kampanye spam melalui sarana komunikasi mobile (SMS, MMS). Oleh karena itu mungkin untuk mendeteksi dan meminimalkan semacam ini upaya filter digunakan pada infrastruktur jaringan yang menyampaikan pesan-pesan ini.
Karena selalu ada kemungkinan bahwa data yang dipertukarkan dapat dicegat, komunikasi, atau bahkan penyimpanan informasi, dapat mengandalkan enkripsi untuk mencegah entitas berbahaya dari menggunakan data yang diperoleh selama komunikasi. Namun, hal ini menimbulkan masalah kunci pertukaran untuk algoritma enkripsi, yang membutuhkan saluran aman.
Jaringan untuk SMS dan MMS menunjukkan perilaku diprediksi, dan tidak ada banyak kebebasan dibandingkan dengan apa yang bisa dilakukan dengan protokol seperti TCP atau UDP. Ini berarti bahwa seseorang tidak bisa memprediksi penggunaan terbuat dari protokol umum web; satu mungkin menghasilkan sangat sedikit lalu lintas dengan konsultasi halaman sederhana, jarang, atau menghasilkan lalu lintas yang padat dengan menggunakan video streaming. Di sisi lain, pertukaran pesan melalui telepon selular memiliki kerangka dan model tertentu, dan pengguna tidak, dalam kasus normal, memiliki kebebasan untuk campur tangan dalam rincian komunikasi ini. Oleh karena itu, jika suatu kelainan yang ditemukan dalam fluks data jaringan dalam jaringan mobile, potensi ancaman dapat cepat terdeteksi.
Dalam rantai produksi dan distribusi untuk perangkat mobile, itu adalah tanggung jawab produsen untuk memastikan bahwa perangkat yang disampaikan dalam konfigurasi dasar tanpa kerentanan. Sebagian besar pengguna tidak ahli dan banyak dari mereka tidak menyadari adanya kerentanan keamanan, sehingga konfigurasi perangkat yang disediakan oleh produsen akan disimpan oleh banyak pengguna. Dibawah ini adalah beberapa poin yang produsen harus mempertimbangkan.
Telepon kadang-kadang diatur dalam mode debug selama manufaktur, tetapi mode ini harus dinonaktifkan sebelum ponsel tersebut dijual. Mode ini memungkinkan akses ke fitur yang berbeda, tidak dimaksudkan untuk penggunaan rutin oleh pengguna. Karena kecepatan pengembangan dan produksi, gangguan terjadi dan beberapa perangkat yang dijual dalam mode debug. Jenis penyebaran menghadapkan perangkat mobile untuk eksploitasi yang memanfaatkan pengawasan ini.
Ketika smartphone dijual, pengaturan default harus benar, dan tidak meninggalkan celah keamanan. Konfigurasi default tidak selalu berubah, sehingga pengaturan awal yang baik sangat penting bagi pengguna. Ada, misalnya, konfigurasi default yang rentan terhadap serangan denial of service.
Seiring dengan ponsel pintar, appstores telah muncul. Seorang pengguna menemukan diri mereka menghadapi sejumlah besar aplikasi. Hal ini terutama berlaku bagi penyedia yang mengelola appstores karena mereka bertugas memeriksa aplikasi yang disediakan, dari sudut pandang yang berbeda (misalnya keamanan, konten). Audit keamanan harus sangat berhati-hati, karena jika kesalahan tidak terdeteksi, aplikasi dapat menyebar sangat cepat dalam beberapa hari, dan menginfeksi sejumlah besar perangkat.
Ketika menginstal aplikasi, itu baik untuk memperingatkan pengguna terhadap set izin itu, dikelompokkan bersama-sama, tampaknya berpotensi berbahaya, atau setidaknya mencurigakan. Kerangka seperti seperti Kirin, pada Android, mencoba untuk mendeteksi dan melarang set tertentu izin.
Seiring dengan appstores muncul fitur baru untuk aplikasi mobile: pencabutan terpencil. Pertama kali dikembangkan oleh Android, prosedur ini dari jauh dan global dapat menghapus aplikasi, pada setiap perangkat yang memiliki itu. Ini berarti penyebaran aplikasi berbahaya yang berhasil menghindari pemeriksaan keamanan dapat segera berhenti ketika ancaman ditemukan.


Senin, 05 Oktober 2015

Konsep dan Penggunaan XML dalam Mobile Computing


Dalam pembahasan kali ini kita akan mempelajari dan lebih mengenal XML dalam mobile computing,pada dasarnya definisi Mobile computing memiliki beberapa definisi yaitu :
  1. Merupakan sejumlah teknologi yang bisa mengakses internet tidak di satu tempat itu saja melainkan bisa dilakukan dimana saja.
  2. Mobile computing merupakan sekumpulan peralatan (hardware), data, perangkat lunak lainnya bisa berpindah tempat atau bisa di bawa kemana saja. Karena bisa menggunakan ponsel standar atau iPhone.
  3. Mobile computing merupakan teknologi (portable) yang dapat berkomunikasi jaringan tanpa kabel (nirkabel), tetapi berbeda dengan wireless computing.

Sebelum sampai ke mobile computing dahulu menggunakan  single-user yang mengacu kepada suatu
sistem operasi,yang hanya bisa digunakan oleh satu pengguna setiap saat. Setelah itu berkembang
nerworking yang merupakan suatu kesatuan komputer yang di hubungkan
melalui kabel sehingga komputer satu dengan komputer lainnya saling berhubungan dengan
cara komunikasi, bertukar informasi, sharing file, printer dll. Kemudian berkembang menjadi bentuk 
Local Area Networking (LAN), Metropolitan Area Networking (MAN), Wide Area Networking
(WAN). Dan sekarang yang lagi berkembang adalah mobile computing.

Pengertian XML
XML (Extensible Markup Language) adalah bahasa markup untuk keperluan umum yang disarankan
oleh W3C untuk membuat dokumen markup keperluan pertukaran data antar sistem yang beraneka
ragam. XML merupakan kelanjutan dari HTML (HyperText Markup Language) yang merupakan
bahasa standar untuk melacak Internet.
XML didesain untuk mampu menyimpan data secara ringkas dan mudah diatur. Kata
kunci utama XML adalah data (jamak dari datum) yang jika diolah bisa memberikan informasi.
XML menyediakan suatu cara terstandarisasi namun bisa dimodifikasi untuk menggambarkan isi dari
dokumen. Dengan sendirinya, XML dapat digunakan untuk menggambarkan
sembarang view database, tetapi dengan suatu cara yang standar.

Tipe XML
XML memiliki tiga tipe file :
  • XML, merupakan standar format dari struktur berkas (file) yang ada.
  • XSL, merupakan standar untuk memodifikasi data yang diimpor atau diekspor.
  • XSD, merupakan standar yang mendefinisikan struktur database dalam XML.

Keunggulan XML
Keunggulan XML bisa diringkas sebagai berikut :
  • Pintar (Intelligence). XML dapat menangani berbagai tingkat (level) kompleksitas.
  • Dapat beradaptasi. Dapat mengadaptasi untuk membuat bahasa sendiri. Seperti Microsoft membuat bahasa MSXML atau Macromedia mengembangkan MXML.
  • Mudah pemeliharaannya.
  • Sederhana. XML lebih sederhana.
  • Mudah dipindah-pindahkan (Portability). XML mempunyai kemudahan perpindahan (portabilitas) yang lebih bagus.
Sumber disini