Keamanan Jaringan Komputer

Posted in Labels:

HACKING

Hacking adalah setiap usaha atau kegiatan di luar izin atau sepengetahuan pemilik jaringan untuk memasuki sebuah jaringan serta mencoba mencuri file password dan sebagainya.

Menurut R. Kresno Aji, hacking adalah suatu seni dalam memahami sistem operasi dan sekaligus salah satu cara dalam mendalami sistem keamanan jaringan, sehingga kita bisa menemukan cara yang lebih baik dalam mengamankan sistem dan jaringan.

Pelakunya disebut hacker. Hacker adalah sebutan untuk mereka yang memberikan sumbangan yang bermanfaat kepada jaringan komputer, membuat program kecil dan membagikannya dengan orang – orang di internet. Hacker muncul pada awal tahun 1960-an diantara para anggota organisasi mahasiswa Tech Model Railroad Club di Laboratorium Kecerdasan Artifisial Massachusetts Institute of Technology (MIT).

Kata hacker pertama kali muncul dengan arti positif untuk menyebut seorang anggota yang memiliki keahlian dalam bidang komputer dan mampu membuat program komputer yang lebih baik dari yang telah dirancang bersama. Kemudian pada tahun 1983, analogi hacker semakin berkembang untuk menyebut seseorang yang memiliki obsesi untuk memahami dan menguasai sistem komputer.

VULNERABILITY

Sering kali kita menemukan kerawanan (vulnerability) ataupun missconfiguration pada sistem sendiri, kita akan menganggap hal itu adalah hal yang kecil karena menanggapinya bukan sebagai lubang keamanan.

TROJAN

Trojan Horse atau lebih dikenal dengan Trojan dalam sistem komputer adalah bagian dari infeksi digital yang kehadirannya tidak diharapkan oleh pemilik komputer. Trojan terdiri dari fungsi – fungsi yang tidak diketahui tujuannya, tetapi secara garis besar mempunyai sifat merusak. Trojan masuk ke suatu komputer melalui jaringan dengan cara disisipkan pada saat berinternet dengan media fisik.

Trojan tidak berpengaruh secara langsung seperti halnya virus komputer, tetapi potensi bahayanya dapat jauh lebih besar dari virus komputer. Trojan dapat diaktifkan dan dikendalikan secara jarak jauh atau menggunakan timer. Pengendalian jarak jauh seperti halnya Remote Administration Tools, yaitu versi server akan dikendalikan oleh penyerang lewat versi client-nya. Banyak hal yang dapat dilakukan oleh penyerang jika komputer korban telah dikendalikan. Port tertentu yang tidak lazim terbuka mengindikasikan adanya kegiatan aktif Trojan.

Penanganan Trojan dapat dilakukan dengan dua cara, yaitu pencegahan (preventif) atau pengobatan (recovery). Usaha pencegahan dilakukan sebelum terjadinya infeksi, yaitu usaha agar sistem tidak mempunyai lubang keamanan. Usaha pengobatan dilakukan setelah sistem terinfeksi, yaitu usaha untuk menutup lubang keamanan yang telah diekploitasi dan menghilangkan penyebab infeksi.

THREAT

Threat merupakan salah satu dari tiga komponen yang memberikan kontribusi kepada Risk Management Model, yang digunakan untuk menghadapi ancaman (managing threats).

ATTACK

Denial of Service adalah aktifitas menghambat kerja sebuah layanan (servis) atau mematikan-nya, sehingga user yang berhak / berkepentingan tidak dapat menggunakan layanan tersebut. Serangan Denial of Service (DOS) ini terjadi apabila penyerang atau yang sering terdengar dengan istilah hacker ini merusak host atau sevice yang ada sehingga host atau service itu tidak dapat lagi berkomunikasi secara lancar di dalam network neighborhood-nya. Perkembangan dari serangan DOS adalah DDOS. Serangan DDoS adalah jenis serangan dengan cara memenuhi trafik server situs tersebut hingga situs menjadi lambat dan susah diakses. Pengertian lain tentang DDOS adalah mengirimkan data secara terus menerus dengan menggunakan satu komputer tidak begitu efektif karena biasanya sumber daya server yang diserang lebih besar dari komputer penyerang.

Dari beberapa pengertian di atas dapat disimpulkan bahwa serangan DDOS (Denial Distribute Of Service) sangat merugikan bagi yang diserang, karena serangan ini dapat menghambat kerja pengguna dari komputer korban.Dimana komputer korban menjadi lambat dan sulit untuk diakses akibat dari penuhnya trafik dalam komputer tersebut.

EXPLOIT

Exploit adalah sebuah perangkat lunak (software) yang menyerang kerapuhan keamanan (security vulnerability) yang spesifik namun tidak selalu bertujuan untuk melancarkan aksi yang tidak diinginkan. Banyak peneliti keamanan komputer menggunakan exploit untuk mendemonstrasikan bahwa suatu sistem memiliki kerapuhan. Ada badan peneliti yang bekerja sama dengan produsen perangkat lunak. Peneliti itu bertugas mencari kerapuhan dari sebuah perangkat lunak dan kalau mereka menemukannya, mereka melaporkan hasil temuan ke produsen agar produsen dapat mengambil tindakan. Meskipun demikian, exploit kadang menjadi bagian dari suatu malware yang bertugas menyerang kerapuhan keamanan.

CRACKERS

Cracker adalah sebutan untuk mereka yang masuk ke sistem orang lain dan cracker lebih bersifat destruktif, biasanya dijaringan komputer, mem-bypass password atau lisensi program komputer, secara sengaja melawan keamanan komputer, men-defaced (merusak halaman muka web) milik orang lain, bahkan hingga men-delete data orang lain, mencuri data dan umumnya melakukan cracking untuk keuntungan sendiri.

Cracker tidak mempunya kode etik ataupun aturan main, karena cracker sifatnya merusak. Cracker mempunyai situs ataupun cenel dalam IRC yang tersembunyi, yang hanya orang – orang tertentu yang bisa mengaksesnya. Cracker juga mempunyai IP yang tidak bisa dilacak. Kasus yang paling sering dilakukan oleh cracker ialah Carding yaitu Pencurian Kartu Kredit, kemudian pembobolan situs dan mengubah segala isinya menjadi berantakan.

BANDWIDTH

Bandwidth atau lebar pita adalah luas atau lebar cakupan frekuensi yang digunakan oleh sinyal dalam medium transmisi. Dalam kerangka ini, bandwidth dapat diartikan sebagai perbedaan antara komponen sinyal frekuensi tinggi dan sinyal frekuensi rendah. Frekuensi sinyal diukur dalam satuan Hertz. Bandwidth diartikan juga sebagai takaran jarak frekuensi. Dalam bahasa mudahnya, sebuah takaran lalu lintas data yang masuk dan yang keluar. Dalam dunia hosting, kita diberikan jatah bandwidth setiap bulan tergantung seberapa dalam kita merogoh kocek. Habisnya bandwidth ditentukan seberapa banyak kita meng-upload atau men-download. Makin banyak melakukan aktivitas upload, ditambah makin banyak pengunjung yang mengakses, maka makin berkurang jatah bandwidth yang diberikan.

Bandwidth komputer didalam jaringan komputer, sering digunakan sebagai suatu sinonim untuk data transfer rate yaitu jumlah data yang dapat dibawa dari suatu titik ke titik lain dalam jangka waktu tertentu (pada umumnya dalam detik). Jenis bandwidth ini diukur dalam bps (bits per second). Adakalanya juga dinyatakan dalam Bps (bytes per second). Suatu modem yang bekerja pada 57.600 bps mempunyai bandwidth dua kali lebih besar dari modem yang bekerja pada 28.800 bps. Secara umum, koneksi dengan bandwidth yang besar / tinggi memungkinkan pengiriman informasi yang besar seperti pengiriman gambar atau images dalam video presentation.

DIGITAL SIGNATURE

Digital signature merupakan sistem keamanan kriptografi simetris (symmetric crypthography / secret key crypthography) yang menggunakan kunci yang sama dalam melakukan enkripsi dan dekripsi terhadap suatu pesan (message). Disini pengirim dan penerima menggunakan kunci yang sama sehingga mereka harus menjaga kerahasiaan terhadap kunci tersebut.

Pada digital signature suatu data / pesan akan di enkripsi dengan kunci simetris yang diciptakan secara acak (randomly generated symmetric key) yang kemudian akan di enkripsi dengan menggunakan kunci publik dari penerima. Hasil dari ekripsi ini kemudian dikenal sebagai digital envelope yang akan dikirimkan bersama pesan / data yang telah di enkripsi.

DEFACED

Pengertian sederhana dari deface / defacing atau bahasa umumnya cyber grafity adalah suatu aktivitas yang mengotori atau mencoret – coret / menodai dan merubah inti dari isi halaman suatu website dengan tulisan / kalimat, gambar / image, atau link tertentu yang membuat suatu link menjadi melenceng dari perintah yang kita berikan atau kita buat. Biasanya tujuan pelaku ( biasa disebut hacker) adalah supaya dia mendapat sebuah nama dan menjadi perhatian orang banyak, menjadi perbincangan karena ulah isengnya yang bisa membuat dia merasa sedikit bangga karena telah berhasil menyusup.

Para sasaran hacker mempunyai kesamaan yaitu server web tersebut berjalan di Operating System Windows 2000 dan servernya adalah IIS 5.0 / 6.0.

PATCH

Dalam dunia komputer, patch adalah bagian kecil dari program yang dirancang untuk meng-update atau memperbaiki masalah yang terjadi pada sebuah program. Patch dapat berupa perbaikan bug, penggantian GUI, penambahan fitur atau peningkatan performa. Meskipun memiliki maksud untuk memperbaiki, tidak semua proses patching selalu menghasilkan efek positif.

Sistem operasi sebagai bagian paling vital dari keseluruhan kerja komputer Anda, juga sering mengalami penambahan patch. Berbagai ancaman pada sistem operasi dapat datang dari bugs sistem operasi itu sendiri, virus, malware, trojan, ataupun worm. Sistem operasi seperti Microsoft Windows juga menerapkan live update, seperti pada software Antivirus untuk melakukan update tanpa campur tangan pengguna. Microsoft Windows menyebutnya dengan Automatic Update. Sedemikian rumit dan luasnya sebuah sistem operasi, hingga tidak mustahil pengguna melakukan eksplorasi melakukan “patch” sendiri, seperti melakukan perubahan registry atau memanipulasi file-file sistem operasi.

IP ADDRESS

Protokol yang menjadi standar dan dipakai hampir oleh seluruh komunitas Internet adalah TCP / IP (Transmission Control Protocol / Internet Protocol). Agar komputer bisa berkomunikasi dengan komputer lainnya, maka menurut aturan TCP / IP, komputer tersebut harus memiliki suatu address yang unik. Alamat tersebut dinamakan IP Address. IP Address memiliki format aaa.bbb.ccc.ddd, contohnya : 167.205.19.33.

Yang penting adalah bahwa untuk berkomunikasi di internet, komputer harus memiliki IP Address yang legal. Legal dalam hal ini artinya adalah bahwa alamat tersebut dikenali oleh semua router di dunia dan diketahui bahwa alamat tersebut tidak ada duplikatnya di tempat lain. IP Address legal biasanya diperoleh dengan menghubungi InterNIC.

Suatu jaringan internal bisa saja menggunakan IP Address sembarang. Namun untuk tersambung ke internet, jaringan itu tetap harus menggunakan IP Address legal. Jika masalah routing tidak dibereskan (tidak menggunakan IP Address legal), maka saat sistem kita mengirim paket data ke sistem lain, sistem tujuan itu tidak akan bisa mengembalikan paket data tersebut, sehingga komunikasi tidak akan terjadi.

TELNET

Telnet (Tele Network) adalah suatu terminal yang dapat digunakan untuk mengakses resource yang ada di komputer server. Adapun untuk mengakses komputer server tersebut kita dapat menggunakan beberapa tools yang sudah disediakan (missal : putty, winscp, winftp dan lain – lain), atau dapat juga menggunakan terminal yang sudah disediakan oleh Windows.

Telnet artinya Remote Login yang dapat terjadi di internet karena ada service dari protocol telnet. Dengan telnet memungkinkan kita untuk mengakses komputer lain secara remote melalui internet. Dalam bahasa yang mudah, kita dapat memberikan perintah kepada komputer lain baik dalam membuat file, mengedit, menghapus dan menjalankan suatu perintah hanya melalui komputer didepan meja kita.

Cara penggunaan telnet sangat mudah, kita ketik telnet diikuti dengan alamat yang ingin anda hubungi bila menggunakan UNIX atau klik icon Telnet di Windows kemudian pilih menu connect kemudian remote system. Jika sudah tersambung berarti sudah berada diterminal pada komputer jarak jauh tersebut sehingga bisa berinteraksi dengan program yang tersedia. Untuk mengakhiri Telnet ketik Quit atau Exit, pada beberapa system menggunakan bye atau off. Bila menggunakan Windows tergantung program yang digunakan.

FTP

FTP (File Transfer Protocol) adalah sebuah protocol internet yang berjalan di dalam lapisan aplikasi yang merupakan standar untuk pen-transfer-an berkas (file) komputer antar mesin – mesin dalam sebuah internetwork. FTP hanya menggunakan metode autentikasi standar, yakni menggunakan user name dan password yang dikirim dalam bentuk yang tidak terenkripsi. Pengguna terdaftar dapat menggunakan user name dan password-nya untuk mengakses, men-download dan meng-upload berkas – berkas yang ia kehendaki. Umumnya, para pengguna daftar memiliki akses penuh terdapat berapa direkotri , sehingga mereka dapat berkas , memuat dikotri dan bahkan menghapus berkas. Pengguna yang belum terdaftar dapat juga menggunakan metode anonymous login,yakni dengan menggunakan nama pengguna anonymous & password yang diisi dengan menggunakan alamat e-mail. Sebuah server FTP diakses dengan menggunakan Universal Resource Identifier (URI) dengan menggunakan format ftp://namaserver. Klien FTP dapat menghubungi server FTP dengan membuka URI tersebut.

Tujuan FTP server adalah sebagai beikut :

1. Untuk men-sharing data.

2. Untuk menyediakan indirect atau implicit remote computer.

3. Untuk menyediakan tempat penyimpanan bagi User.

4. Untuk menyediakan tranper data yang reliable dan efisien.

FTP sebenarnya cara yang tidak aman untuk mentransfer file karena file tersebut ditransfesfer tanpa melalui enkripsi terlebih dahulu tapi melalui clear text. Metode text yang dipakai transfer data adalah format ASCII atau format binary. Secara Default, FTP menggunakan metode ASCII untuk transfer data. Karena Pengirimannya tanpa enkripsi, maka username,password,data yang ditransfer maupun perintah yang dikirim dapat dniffing oleh orang dengan menggunakan protocol analyzer (Sniffer). Solusi yang digunakan adalah dengan menggunakan SFTP (SSH FTP) yaitu FTP yang berbasis pada SSH atau menggunakan FTPS (FTP over SSL) sehingga data yang dikirim terlebih dahulu disana.

WORM

Worm adalah lubang keamanan atau celah kelemahan pada komputer kita yang memungkinkan komputer kita terinfeksi virus tanpa harus eksekusi suatu file yang umumnya terjadi pada jaringan.

Virus komputer adalah suatu program komputer yang menduplikasi atau menggandakan diri dengan menyisipkan kopian atau salinan dirinya ke dalam media penyimpanan / dokumen serta ke dalam jaringan secara diam – diam tanpa sepengetahuan pengguna komputer tersebut. Efek dari virus komputer sangat beragam mulai dari hanya muncul pesan – pesan aneh hingga merusak komputer serta menghapus file atau dokumen kita.

Jika kita melihat kejanggalan pada media penyimpanan seperti file bernama aneh yang tidak pernah kita buat atau file bukan jenis aplikasi tetapi mengaku sebagai aplikasi maka jangan kita klik, kita buka atau kita jalankan agar virus komputer tersebut tidak menular ke komputer yang kita gunakan.

Tanda – tanda komputer kita terkena virus :

* Komputer berjalan lambat dari normal
* Perubahan tampilan pada komputer
* Komputer sering restart sendiri atau crash ketika sedang berjalan
* Komputer hang atau berhenti merespon kita
* Harddisk tidak bisa diakses
* Dan lain – lain.


Untuk menghindari komputer kita diinfeksi atau terserang virus maka kita harus waspada dalam berinteraksi dengan file dari komputer lain, file dari media penyimpanan dari orang lain, attachment email, pertukaran file jaringan, lubang keamanan komputer kita dan lain – lain. Pasang antivirus yang bagus, yang di update secara berkala serta program firewall untuk jaringan dan anti spyware dan adware untuk menanggulangi jenis gangguan komputer lain.

Apa itu RTP (Realtime Trasport Protocol) ?

Posted in Labels:

RTP Singkatan dari (Real Time Transport Protocol). Umumnya digunakan dalam jaringan IP. RTP dirancang untuk menyediakan fungsi transport jaringan ujung ke ujung untuk aplikasi yang mengirimkan data real time, misalnya audio atau video, melalui layanan jaringan multicast atau unicast.



Gambar 1.0 RTP Architecture.

Fungsi dari Protocol RTP diantaranya:

· Segmentasi / reassembly dilakukan oleh UDP (atau serupa)
· Resequencing (jika diperlukan)
· Deteksi kehilangan kualitas estimasi, pemulihan
· Intra-media sinkronisasi: menghapus delay jitter melalui playout penyangga
· Intra-media sinkronisasi: Drifting sampling jam
· Sinkronisasi antar-media (lip sync antara audio dan video)
· Kualitas pelayanan dari umpan balik dan tingkat adaptasi
· Identifikasi sumber


Keunggulan dari Protocol RTP diataranya:

· Ringan: spesifikasi dan implementasi .
· Fleksibel: menyediakan mekanisme, jangan mendikte algoritma .
· Protokol-netral: UDP / IP, ST-II, IPX, ATM-AALx, dll.
· Scalable: unicast, multicast dari 2 menjadi O (107)
· Kontrol terpisah / data: beberapa fungsi dapat diambil alih oleh konferensi
kontrol protokol .
· Aman: dukungan untuk enkripsi, mungkin otentikasi.


Implementasi Protocol RTP di dunia nyata:

· Streaming Audio & Video
· Teleconferense
· Video Conferencing

Other, Another, The Other

Posted in Labels:

Bahasa Inggris Bisnis 1


Other
  • with count nouns
1. an + other +singular noun (one more)
another pencil => one more pencil
2. the + other + singular noun (last of the set)
the other pencil => the last pencil present
3. the other + plural noun (the rest of the set)
the other pencils => all remaining pencils
  • with non-count nouns
1. other + noun count nouns (more of the set)
other water => some more water
2. the other water => the remaining water
Exercise
1. This pen isn’t working. Please give me another (singular).
2. If you’re still thirsty. I’ll make the other pet of coffee.
3. This dictionary has a page missing. Please give me the other one (the last one).
4. He doesn’t need those books. He needs the other ones call the remaining.
5. There are thirty people in the room. Twenty are form Latin America and the other are form other countries.
6. Six people were in the store. Two were buying meat the other was looking at magazines.
7. This glass of milk is sour. Another glass of milk is sour too.
8. The army was practicing its drill. One group was doing artillery practise other was marching; another was at attention; and the other was practicing combat tactics.
9. There are seven students from Japan other are form iran and the other are from other places.
10. We looked at four cars today. The first two were far too expensive, but the other ones was reasonably priced.
Notes : Another and other are non specific while the other is specific if the subsect is understood, one can omit the noun and keep the determiner and other so that other functions as a pronoun. If it is a plural count noun that is omitted, other becomes others. The word other can never be plural if it is followed by a noun.

Microsoft Buka Detail Kelemahan Windows

Posted in Labels:

foto berita artikel
Microsoft pada Selasa (09/09) lalu telah meluncurkan summary bulletin keamanan bulan September 2008. Empat bulletin tersebut antara lain, Windows GDI+, Windows Media Player, dan Microsoft Office OneNote, dan keempatnya telah mendapat perhatian penuh Microsoft dan pihaknya akan memberikan hasil patch dari kelemahan IE pada bulan ini. Mulai bulan depan, Microsoft berencana untuk share detail teknisnya dari kelemahan yang ada di software milik Microsoft, yang sekaligus mengupdate produk yang terkena imbasnya, sebelum software tersebut diumumkan ke public.
Selain itu, pada bulan Oktober, Microsoft juga akan mulai menyediakan setiap bulletin dengan sebuah Exploitability Index untuk membantu administrator system memasukan patch dalam bulletin. Semua patch keamanan Microsoft, baik untuk Windows ataupun Office dapat diperoleh dari Microsoft Update atau keterangan di bawah ini :
MS08-052, dengan judul "Vulnerabilities in GDI+ Could Allow Remote Code Execution (954593)”. Kelemahan tersebut ada pada software Windows XP, Windows Server 2003, Windows Vista, and Windows Server 2008, Microsoft Internet Explorer 6 Service Pack 1 ketika diinstal di Microsoft Windows 2000 Service Pack 4. Selain itu juga ada Microsoft Digital Image Suite 2006, SQL Server 2000 Reporting Services Service Pack 2, semua SQL Server 2005, Microsoft Report Viewer 2005 Service Pack 1, dan Microsoft Report Viewer 2008. Microsoft mengungkapkan kelemahan dalam semua software tersebut dapat menyebabkan eksekusi kode tertentu, jika user melihat file gambar terentu menggunakan software di atas atau browsing ke website yang mengandung content yang ‘jahat’.
MS08-053, dengan judul "Vulnerability in Windows Media Encoder 9 Could Allow Remote Code Execution (954156)”. Kelemahan tersebut dapat berimbas pada Microsoft Windows 2000, Windows XP, dan Windows Vista, Windows Server 2003 dan Windows Server 2008. Microsoft mengunkapkan kelemahannya yakni menyebabkan adanya eksekusi kode yang ‘jahat’, jika user melihat website yang ‘jahat’. Attacker yang sukses mengeksploitasi kelemahan dalam software tersebut, kemudian akan mengambil alih control system secara penuh.
MS08-054, dengan judul "Vulnerability in Windows Media Player Could Allow Remote Code Execution (954154)". Kelemahan tersebut akan memberikan efek ke Windows Media Player 11. Microsoft menjelaskan bahwa kelemahan dalam Windows Media Player 11 dapat memudahkan eksekusi kode dari jarak jauh oleh attacker, ketika file audio ‘jahat’ masuk ke server Windows Media. Jika user log on dengan menggunakan kunci adiministratif milik user, maka attacker yang sukses mengeksploitasi kelemahan ini dapat mengambil seluruh control ke system computer.
MS08-055, dengan judul "Vulnerability in Microsoft Office Could Allow Remote Code Execution (955047)". Kelemahan terjadi pada Microsoft Office OneNote 2007 dan Microsoft Office XP, Microsoft Office 2003, dan 2007 Microsoft Office System. Microsoft menjelaskan, jika user meng-click URL OneNote yang ‘jahat’, maka attacker kemudian akan mudah mengontrol system computer user.

Bug Processor Intel

Posted in Labels:


foto berita artikel Seorang pakar keamanan bernama Kris Kaspersky berencana untuk mendemonstrasikan bagaimana seorang penyerang dapat melakukan remote ke sebuah komputer dengan menggunakan JavaScript atau paket TCP/IP. Serangan tersebut dapat dilakukan melalui kelemahan yang ada pada microprocessor Intel

Kaspersky akan mendemonstrasikan bagaimana cara penyerangan tersebut pada acara Hack In The Box (HITB) Security Conference di Kuala Lumpur, Malaysia, Oktober mendatang. Konsep serangannya akan menunjukkan bagaimana kelemahan prosesor yang disebut errata, dapat dieksploitasi dengan menggunakan beberapa instruksi dan sedikit pengetahuan bagaimana compiler Java bekerja, yang memungkinkan seorang penyerang dapat mengambil alih kendali kompiler tersebut.

“Saya akan menunjukkan bagaimana kode tersebut bekerja dan membuatnya tersedia untuk umum” ujar Kaspersky.

Permasalahan berbeda memungkinkan hacker melakukan hal lain pada komputer yang diserangnya. “Beberapa permasalahan hanya membuat sistem crash, beberapa (permasalahan) lagi memungkinkan hacker dapat mengambil alih kendali secara penuh dalam level kernel. Dan beberapa lagi menyerang Vista, dimana menonaktifkan proteksi keamanan” Ujarnya.

Demo serangan akan dibuat pada beberapa komputer yang mempunyai sistem operasi yang berbeda, termasuk Windows XP, Vista, Windows Server 2003, Windows Server 2008, Linux dan BSD. Kemungkinan Mac juga akan disertakan dalam demo tersebut.

Tipe Serangan Hacker Terbaru

Posted in Labels:

foto berita artikel
Menurut hasil konferensi hacker Last Hope, menyatakan, dengan menggunakan laptop, headset ponsel, kartu kredit, atau bahkan paspor, dapat membuat user menjadi target pencurian data dan criminal lainnya. Dalam ketakutan namun sesi yang menyenangkan, yang berjudul "How do I Pwn Thee? Let me Count the Ways" (pwn di sini berbicara mengenai kepunyaan atau control), seorang hacker yang memiliki alias “RenderMan” menjelaskan bagaimana user berada dalam resiko keamanan dan mereka tidak mengetahuinya.
Serangan hacker menurut sebagian besar orang mungkin telah mengetahui bahwa mereka harus berhati-hati menggunakan jaringan Wi-Fi, khususnya public hotspot yang tidak mengenkripsi data yang ditransmisikan dan access point jaringan dapat disalahgunakan oleh orang lain. Akibatnya user dapat kehilangan data-data, menerima halaman web yang menipu, dan informasi lainnya, yang menyebabkan computer mereka telah diambil alih.
Ketika penumpang pesawat telah mengabaikan peringatan pramugrari untuk men-disable Wi-Fi atau mereka yang tidak mengetahui bagaimana cara mematikannya, akan mudah terkena penyerangan pihak lain di pesawat. RenderMan menyarankan user agar men-disable Wi-Fi ketika tidak digunakan dan menggunakan VPN, juga software firewall. Headset Bluetooth user juga dapat beresiko terhadap keamanan karena celah keamanan dalam teknologi tersebut dan default PIN yang tidak berubah. Dengan mengeksploitasi kelemahan teknologi tertentu, seseorang dapat masuk dan mencuri data, lalu menyusup dalam conversation, atau bahkan memata-matai user dengan memasukkan bug ke dalamnya. RenderMan menyarankan user untuk mengubah password, men-disable Bluetooth pada telepon, mematikan headset bila tidak digunakan, dan membatasi akses ke data dan fitur ketika berkomunikasi dengan alat Bluetooth lainnya.
Banyak orang tidak menyadari bahwa paspor U.S yang baru mempunyai teknologi RFID (Radio-Frequency Identification) dengan enkripsi yang lemah, yang membuat data pada chip mudah dibaca dengan reader device tertentu. Untuk itu, pemerintah U.S telah memasang metal foil di bagian belakang dan depan paspor, namun foil tersebut masih kaku dan masih lebar sehingga RFID reader masih dapat membacanya. (h_n)

VPN (Virtual Private Network)

Posted in Labels:

foto berita artikel
Yang dimaksud dengan VPN atau Virtual Private Network adalah suatu jaringan private yang mempergunakan sarana jaringan komunikasi publik (dalam hal ini Internet) dengan memakai tunnelling protocol dan prosedur pengamanan. Dengan memakai jaringan publik yang ada, dalam hal ini Internet, maka biaya pengembangan yang dikeluarkan akan jauh relatif lebih murah daripada harus membangun sebuah jaringan internasional tertutup sendiri.
Namun pemakaian Internet sebagai sarana jaringan publik juga mengandung resiko, karena Internet terbuka untuk umum, maka masalah kerahasiaan dan authentifikasi atas data yang dikirim pun juga terbuka. Oleh karenanya VPN menjaminnya dengan penerapan enkripsi data. Sebelum dikirimkan, terlebih dahulu data akan dienkripsikan untuk mengurangi resiko pembacaan dan pembajakan data di jalan oleh pihak yang tidak terkait. Setelah sampai ke alamat tujuan, maka data tersebut akan di-deskripsikan ulang sehingga bentuk informasi dapat kembali menjadi seperti sedia kala. Selain memakai metode pengamanan enkripsi-deskripsi, VPN masih memakai kriptografi lainnya untuk mendukung pengamanan data.
VPN saat ini banyak digunakan untuk diterapkan pada jaringan extranet ataupun intranet perusahaan-perusahaan besar. VPN harus dapat mendukung paling tidak 3 mode pemakaian :
  • Koneksi client untuk akses jarak jauh
  • LAN-to-LAN internetworking
  • Pengontrolan akses dalam suatu intranet
Oleh karena infrastruktur VPN menggunakan infrastruktur telekomunikasi umum, maka dalam VPN harus menyediakan beberapa komponen, antara lain :
  • Konfigurasi, harus mendukung skalabilitas platform yang digunakan, mulai dari konfigurasi untuk kantor kecil sampai tingkat enterprise (perusahaan besar).
  • Keamanan, antara lain dengan tunneling (pembungkusan paket data), enkripsi, autentikasi paket, autentikasi pemakai dan kontrol akses
  • Layanan-layanan VPN, antara lain fungsi Quality of Services (QoS), layanan routing VPN yang menggunakan BGP, OSPF dan EIGRP
  • Peralatan, antara lain Firewall, pendeteksi pengganggu, dan auditing keamanan
  • Manajemen, untuk memonitor jaringan VPN

Duh, Antivirus Aplikasi Facebook Fan Check Bawa Virus

Posted in Labels:

foto berita artikel

Hacker telah mengatur malware di website jejaring social Facebook yang pura-pura mengklaim dapat menghapus virus dari aplikasi Facebok yang baru, Fan Check. Peringatan tersebut disampaikan oleh Sophos, yang menjelaskan bahwa hacker mencoba untuk menguasai apa yang sering dilakukan member Facebook untuk aplikasi Facebook. Ketika member Facebook menggunakan search engine populer untuk mencari informasi antivirus mengenai Fan Check, maka mereka akan mendapatkan hasil yang mengarah ke sebuah situs yang dapat menginfeksi komputer dengan malware.
“Frase 'Facebook Fan Check Virus' telah menjadi populer dalam keyword pencarian di Google. Namun bagaimanapun, hacker telah mengatur sebuah website untuk berpura-pura menjadi sumber informasikomputer user dalam usaha untuk mendorong user meng-instal software berbahaya dan akhirnya menangkap semua detail kartu kredit user.” jelas Graham Cluley, konsultan teknologi senior di Sophos, Senin (07/09).
Sophos belum bisa memutuskan apakah Fan Check juga berbahaya secara alami, karena ketika di-instal, tertampil pesan bahwa aplikasi tersebut telah di-upgrade dan tidak online saat ini. Hal tersebut menurut IDG News Service, status offline Fan Check disebabkan karena larangan Facebook sendiri. Sebagai contoh, member Facebook telah di-tag ke album Fan Check tanpa izin user dan bahkan tanpa user meng-instal aplikasi tersebut.

Halaman Fan Check di Facebook telah di-review hampir 6,000 kali, menerima 1.7 bintang dari 5 bintang, atau memiliki 12.5 juta pengguna aktif per bulannya. Fan Check didesain untuk menghitung berapa banyak friends Facebook dan yang aktif berinteraksi dengan satu profile, untuk menemukan berapa banyak fans dari teman berbeda.(h_n)

Static ARP Untuk Mencegah ARP Poisoning

Posted in Labels:

Apa itu ARP ?

ARP merupakan kependekan dari Address Resolution Protocol yang dalam istilah komputer networking nya adalah sebuah metode untuk menemukan suatu host pada sebuah jaringan yang menterjemahkan sebuah logical address ( IP = internet Protocol ) kedalam sebuah Hardware Address atau lebih dikenal dengan MAC ( Media Access Control ) Address untuk mendukung komunikasi di dalam sebuah jaringan. Dengan adanya protocol tersebut setiap Hardware yang ada dalam sebuah jaringan ( biasanya dikenal dengan Network Interface Card ) dapat berkomunikasi satu sama lain.

Apa itu ARP Poisoning ?
ARP poisoning atau lebih populer di kenal ARP spoofing merupakan sebuah teknik penyerangan jaringan yang digunakan untuk mengacaukan jaringan atau sebuah routing didalam jaringan. Seorang yang melakukan ARP spoofing dapat mengintip data frame dalam sebuah jaringan , memanipulasi traffic , atau memberhentikan traffic atau routing.
secara simple dapat di ilustrasikan sebagai berikut :
ilustrasi-copy
dari gambar ilustrasi di atas dapat kita lihat bahwa ada 3 buah komputer dalam sebuah jaringan, masing masing komputer A B dan C. Komputer A dan B awal nya bisa saling berkomunikasi dengan baik satu sama lain , lalu muncullah Komputer C masuk dalam jaringan melakukan poisoning ARP dan mengelabui jaringan dan seolah olah ip 192.168.0.1 berada Di mac Address 00:01:02:AA:09:3B . Dengan teknik poisoning komputer C bisa mengelabui komputer B bahwa sebenarnya pemiliki ip address 192.168.0.1 yang benar adalah komputer C . Hebat bukan ? dengan mengacaukan jaringan menggunakan posoning ARP attack sebuah sistem jaringan yang baik bisa di bodohi dengan sempurna. Lalu Bagai mana caranya mencegah atau usaha apa yang bisa dilakukan agar tidak terpengaruh racun arp ini ? salah satu caranya adalah dengan men set arp static pada komputer, misal pada windows dengan cara mengetikan perintah berikut pada command prompt :
arp -s 192.168.0.1 00-1e-58-3f-c5-de
atau pada linux juga sama
arp -s ipnya macnya
jika banyak host yang mau di set di linux bisa dengan cara membuat file list ether dan ip
contoh :
/etc/ethers
192.168.0.1 00-1e-58-3f-c5-de
192.168.0.2 00-1e-58-3f-c5-da
192.168.0.1 00-1e-58-3f-c5-d1
kemudia bisa di eksekusi dengan cara mengetikan perintah berikut :
arp -f /etc/ethers
gitu aja sih buat cegah , selama ini cukup ampuh , cuman berabe kalo brubah brubah ip nya dan hardware nya :))
udah sih gitu aja caranya, belom ada cara lain yang gw tau.
ada beberapa tools pendukung :
1. arpwatch
2. tcpdump
3.wireshark

PRIORITAS DALAM MENGETES SISTEM

Posted in Labels:

PRIORITAS DALAM MENGETES SISTEM

Apa yang bisa kita lakukan supaya pengetesan bisa dilakukan secara efektif dan menyeluruh? Gunung Sarjono

ORANG-ORANG bagian TI mengeluh sulitnya pe rencanaan tes dan skenario, tapi kenyataannya testing untuk sistem yang kritikal harus dilakukan. Berikut adalah poin yang perlu diper-hatikan dalam lingkungan pengetesan Anda untuk mendapat-kan hasil yang kredibel.
Buat Lingkungan Pengetesan yang Sama dengan Lingkungan Riil
Mempunyai lingkungan pengetesan yang berbeda (meskipun sedikit) de ngan lingkungan riil tidaklah efektif. Salah satu contoh adalah domain Windows Active Directory – yang mempu nyai konfigurasi Group Policy yang sangat unik, konfigurasi DNS yang kompleks, beberapa domain trust, banyak keanggotaan grup, dan banyak account internal. Virtualisasi merupakan solusi yang cocok untuk ini: Anda bisa mem-promote domain controller pada virtual machine, memindahkannya ke jaringan terpisah untuk pengetesan, dan kemudian menghapusnya dari domain yang sebenarnya.
Lakukan Pengetesan dengan Beberapa Cara
Pengetesan tidak cukup hanya dilakukan satu kali. Lakukan dengan dua cara yang berbeda, dan lihat apakah hasilnya sama. Sebagai contoh, pada waktu pengetesan Windows Active Directory itu sendiri dan restore dari back-up sistem untuk memastikan keduanya bisa mengembalikan sistem ke keadaan. Metode ini berguna jika salah satu cara gagal. Cara lain adalah dengan menugaskan satu orang untuk mempersiapkan skema pengetesan dan satu orang lagi buat mengimplementasikan-nya untuk mengimplementasikan skema tersebut untuk memastikan semuanya sudah pasti dan tidak ada lagi asumsi.
Tes Proses Pengembalian Sistem
Untuk pengetesan yang berhubungan dengan upgrade atau peningkatan sistem eksisting, Anda harus mengetes proses pengembalian sistem. Anda juga bisa mengetes ini dalam beberapa cara bergantung pada konteks upgrade yang dilakukan. Beberapa di antaranya adalah mencakup menghapus hard disk pada konfi gurasi RAID 1 (harddisk yang dicabut tidak diubah), restore semua dari backup, uninstall fungsi upgrade, back-up database, atau cukup menggunakan perangkat baru saja, degan sistem eksis ting dimatikan ketika upgrade.
Jangan Lanjutkan Tanpa Pengetesan
Jika timbul suatu hal ketika proses pengetesan, tetap teruskan. Perlu ditekankan bahwa pengetesan merupakan hal pen ting. Ber-gantung situasinya, ini mungkin sulit dilakukan atau mempunyai dampak politik. Jika keputusan dilanjutkan atau tidaknya pengetesan ada di tangan orang lain tapi Anda yang bertanggung jawab jika sistem tidak berfungsi, tolak saja mentah-mentah!
Ingat Tujuan Pengetesan: Tidak Ada Kejutan Ketika Go-Live
Kejutan adalah hal terakhir yang Anda inginkan ketika go-live. Pengetesan yang menyeluruh bisa mencegah “proses belajar” ketika sistem baru digunakan. Memang pengetesan tidakbisa 100% sama dengan lingkungan riil, jadi selalu ada risikotimbul suatu hal. Sebagai contoh, jika pada waktu mengetessuatu software Anda menggunakan sekuriti lebih dari yang dibutuhkan maka ketika go-live, sekuritinya perlu disesuai-kan dengan kebutuhan operasional. Ini bisa memakan waktuAnda yang berharga dan menimbulkan risiko. Oleh karena itu, dalam melakukan pengetesan kita perlu dokumentasi tentangsekuriti atau script yang perlu dijalankan supaya lingkunganpengetesan sama dengan lingkungan riil.
Gunakan Resource dan Standar Pengetesan yang Sudah Ada
Tidak semua kita mempunyai sertifikasi, tapi kita bisa menggunakan resource eksisting untuk mengdapatkan tes yangkredibel. Beberapa yang bisa menjadi titik awal adalah Standard Performance Evaluation Corporation dan pencarian diInternet tentang contoh skema pengetesan. Jika tidak mem-punyai komponen pengetesan yang pasti, Anda bisa membuat skema sendiri. Pastikan Anda membuatnya secara saksama dan komprehensif. Blog Sara Ford di MSDN bisa jadi sumber yangbagus dalam membuat spesifikasi pengetesan.
Jangan Membuat Asumsi Apapun
Pengetesan memang bisa menjadi salah satu bentuk training pekerjaan yang berhubungan dengan lingkungan Anda tapi beberapa bagian kecil mungkin terpengaruh ketika proses upgrade. Bergantung pada upgrade yang dilakukan, ini bisa mencakup adanya opsi tambahan, perubahan permission, dan perubahan file log (ini berlaku jika Anda memonitoring file log sistem). Jika ada sedikit perubahan dalam penulisan log setelah upgrade, sistem monitoring perlu ditinjau ulang. Dengan melakukan langkah menyeluruh, meskipun untuk pekerjaan sederhana, risiko timbulnya hal-hal kecil yang tidak diinginkan bisa dikurangi.
Gunakan Manajemen Proyek untuk Mengatur Pengetesan
Mempunyai manajemen proyek dan dukungan manajemen akan membuat pengetesan Anda kredibel. Dengan demikian bagian lain mengerti bahwa pe ngetesan tersebut perlu dilaku-kan dan manajemen Anda akan mempunyai rencana langkah pengetesan yang lebih baik. Hanya mengatakan secara lisan bahwa Anda sedang mengetes software XYZ baru tidak efektif untuk mengikutsertakan manajemen dalam rencana pengetesan. Beritahukan status rencana pengetesan, danlakukan pengetesan dengan beberapa pihak. Pastikan rencana pengetesan terdokumentasi untuk melihat kemajuannya; supaya manajemen bisa melihat pekerjaan dan tantangan yang berhubungan dengan pengetesan yang Anda lakukan.
Pastikan Kegagalan Tes Bisa Disimulasikan
Hampir setiap model pengetesan pada bagian tertentu akan mengalami kegagalan. Ketika mengetes sistem, banyak administrator yang mengetes hanya sebentar atau mengubah konfi gu rasi yang hanya mempengaruhi pengetesan saja. Ketika kegagalan muncul, catat dan simulasikan. Lebih lanjut, cari pengetes lain untuk melihat apakah mereka juga mengalami kegagalan yang sama. Jika kegagalan atau isu tersebut mempengaruhi keberhasilan keseluruhan pekerjaan, ikut sertakan staf support produk yang bersangkutan (jika memungkinkan) untuk mengidentifikasi masalah yang terjadi. Bergantung pada tingkat kegagalannya, keseluruhan pekerjaan mungkin tidak perlu dihentikan, dan proses identifi kasi bisa dilakukan secara paralel sampai akhir pengetesan.
Tes dengan Lingkungan yang Berbeda
Jika Anda ingin melakukan pengetesan yang berkualitas, pikirkan beberapa tantangan yang mungkin akan dihadapi. Ini bisa mencakup sistem yang lebih sedikit tapi dengan fungsi yang lebih banyak, menggandakan atau membagi beban kerja Anda, mengintegrasikan bagian lain, atau mengubah bagian inti dari lingkungan TI Anda. Jika memungkinkan, alokasikan waktu dan resource untuk melakukan pengetesan dengan lingkungan (skenario) yang berbeda.
Gunakan Lingkungan Tes Anda
Jika Anda telah bersusah payah membuat lingkungan pengetesan lengkap, mengapa tidak menggunakannya untuk pengetesan yang hendak Anda lakukan? Ini bisa lingkungan pengetesan yang sebelumnya digunakan untuk mengetes update atau lingkungan pengetesan yang dibuat sebagai pelatihan. Jangan lupa masalah lisensi dalam lingkungan pengetesan jika Anda ingin tetap menggunakannya.
MENGATUR WORKSATION DARI JAUH
Mengatur workstation dari jauh dengan menggunakan teknologi bisa menghemat waktu dan biaya secara signifikan. Berikut adalah beberapa poin untuk memaksimalkan tool dan pengaturan Anda.
Kenali Hardware-nya
Anda mungkin merasa konfi gurasi workstation sudah tertanam di dalam pikiran Anda—tapi apakah Anda benar-benar mengetahuinya? Untuk mengatur workstation dari jauh, Anda harus punya informasi mengenai sistem tersebut, seperti misalnya: Apakah ada USB 2.0? Apakah yang terpasang drive DVD atau CD? Bisakah untuk menulis? Bagaimana urutan boot-nya—dan bagaimana Anda menggantinya? Koneksi apa yang digunakan ke back office? Mengetahui jawaban dari pertanyaan tersebut akan membuat perbedaan besar dalam mengatur workstation dari jauh.
Identifikasi Client Firewall dan Konfigurasinya
Jika ada client firewall, pastikan Anda tahu apa yang bisa dan tidak bisa dilakukan. Tentukan di mana dan oleh siapa task bisa dilaku-kan (dan bagaimana men-disable-nya). Contoh yang bisa dilakukan adalah dengan mencoba men-download file atau update aplikasi dari auto update atau beberapa sumber nonstandar. Meskipun cara ini sederhana, apakah semua sistem bisa mengakses update sesuai dengan yang diharapkan?
Kenali Jaringannya
Banyak perusahaan menerapkan aturan untuk kantor cabang yang jauh mulai dari membatasi jumlah traffic untuk setiap lokasi, sampai membatasi alamat MAC yang bisa terhubung ke lokasitersebut. Supaya bisa melakukan task yang diperlukan dalam mengatur workstation dari jauh, pastikan Anda tahu traffic jaringan yang diperbolehkan. Jika memungkinkan, ketahui juga prosedur atau parameter untuk mengubah traffic yang diperlukan.
Hafal Tool Command-line
Bagi mereka yang koneksi bandwidth-nya kecil, menghafal task administratif dari command line bisa menghemat waktu. Pada sistem Windows XP, hafalkan perintah berikut: (i) Compmgmt.msc
– Computer Management MMC snap-in, berbagai jenis informasi termasuk Event Log, Device Manager, dan Services.
(ii)Ipconfig—utiliti konfigurasi TCP/IP. Beberapa parameter yang biasa digunakan diantaranya /release, /renew, /fl ushdns, dan /reg-isterdns. (iii) Shutdown.exe—tool untuk me-reboot atau mematikan komputer. Dengan permission yang sesuai, sistem juga bisa di-reboot dari jauh. (iv) Net Use—bisa digunakan untuk memetakan (map) drive, otentikasi, atau menghentikan pemetaan.
Pusatkan dan Satukan Semua Jika Bisa
Jika memungkinkan, kumpulkan semua elemen infrastruktur workstation pada satu tempat. Hal terakhir yang Anda inginkan adalah banyaknya file server kecil yang tersebar di perusahaan Anda. Jadi untuk penyimpanan file, mempunyai resource yang terpusat bagi user cabang (remote) sangatlah penting. Dengan demikian, back-up dan aturan sekuriti untuk user cabang sama dengan user pusat. Biaya TI Anda akan lebih rendah dan administrasi dan akses dikontrol dengan satu prosedur, di manapun lokasinya. Namun, harus ada pengecualian untuk cabang dengan banyak user karena mereka bisa memenuhi koneksi antarkedua tempat. Jika Anda mempunyai kantor cabang, dengan user 40 orang misal-nya, file server lokal akan lebih cocok, dan back-up melalui jaringan dilakukan jika waktu dan traffic memungkinkan. Sebaliknya, jika itu adalah toko, dengan user kurang dari 10 orang dan hanya sedikit komputer, Anda bisa memusatkan dan menyatukannya.
Distribusi Melalui Internet
Untuk lokasi cabang, langsung saja ke Internet daripada menggunakan VPN atau koneksi wide area. Sebagai contoh, misalkan Anda harus menginstalasi service pack besar buat operating system cabang. Jika Anda mencari download sebesar 300 MB, instalasi tidak mungkin dilakukan pada sebagian besar koneksi remote. Tool administrasi tertentu bisa mendistribusi paket melalui Internet untuk membantu lokasi yang jauh dan user laptop ketika waktu mereka tidak berada di pusat. Sebagai contoh, pada waktu remote workstation (termasuk laptop) hendak menerima paket melalui Internet, iPass bisa menyediakan download yang cepat.
Siapkan Tool Altenatif
Kita semua biasa menggunakan tool yang ada dan kita sukai. Untuk Windows XP, kita biasanya menggunakan Remote Desktop. Namun pada situasi di mana kita tidak bisa menggunakan Remote Desktop apa yang Anda lakukan? Siapkan tool alternatif untuk mengakses sistem client, jika dibutuhkan. Beberapa contoh adalah DameWare—menawarkan push install dan remove melalui koneksi TCP/IP. (ii) VNC—remote client. Bisa digunakan sebagai koneksi alternatif dan menjalankan service VNC jika dibutuhkan. (iii) LogMeIn.com—menyediakan banyak bantuan dalam koneksi Internet ke client; bisa bekerja pada se-bagian besar konfi gurasi proxy.
Pastikan OS Konsisten
Untuk mengatur workstation dari jauh secara efektif tanpa memperbesar biaya, mempunyai platform yang sama merupakan suatu keharusan. Tidak ada salahnya menunda implementasi platform baru untuk menjaga kekonsistenan administrasi dan support. Jika ada dua platform yang digunakan, setiap platform harus diker-jakan secara tuntas. Oleh karena itu, mempunyai daftar inventaris hardware workstation juga berperan dalam mendapatkan TI yang lebih efisien.
Batasi Ruang Lingkup
Ini memang bukan tindakan yang bersifat teknis, tapi untuk workstation yang jauh, Anda harus menentukan apa yang harus dilakukan sebagai administrator. Misalkan Anda punya sejumlah kantor cabang yang dilengkapi dengan perangkat standar. Inventaris perangkat ini meliputi workstation atau laptop, printer laser untuk semua sistem lokal, dan koneksi jaringan untuk ke kantor pusat. Suatu hari, Anda mendapat pertanyaan dari kantor cabang, “Bisakah kami mendapatkan printer yang bisa scan dan faks?”
Ini merupakan isu kritikal karena mereka melewati ruang lingkup yang “biasa”—dan mereka akan menderita karena Anda, sebagai administrator yang bertanggung jawab untuk driver perangkat tersebut berada jauh dari lokasi. Perangkat yang digunakan juga mulai tidak konsisten. Mempunyai kemampuan untuk scan dan faks bukanlah hal yang buruk—tapi cabang harus mengerti bahwa meminta fungsi di luar yang biasanya membutuhkan biaya—dan biayanya bisa lebih dari harga perangkat yang diminta.
LEBIH LANJUT

MENJAGA KEAMANAN APLIKASI WEB

Posted in Labels:

MENJAGA KEAMANAN APLIKASI WEB







Apakah Anda sudah menonton film “I Am Legend” di tahun 2007 lalu, yang dibintangi oleh Will Smith? Di akhir film, sang jagoan yang bernama Robert Neville terperangkap dalam sebuah ruangan tertutup. Joko Nurjadi
SEMENTARA itu di luar ruangan, sekumpulan zombie ganas berusaha mendobrak masuk. Apakah Anda mengetahui bagaimana akhirnya?
Situasi yang dialami Robert Neville, mungkin bisa dijadikan analogi sebuah website, yang bisa jadi menghadapi serangan zombie berupa upaya-upaya pembobolan dari pihak luar. Seperti Robert Neville juga, website tersebut tidak bisa ke mana-mana, pilihan satu-satunya adalah mempertahankan diri.
Keamanan Website
Serangan terhadap website secara garis besar dapat dibagi menjadi dua, yaitu serangan terhadap web server dan serangan terhadap aplikasi web, yang memanfaatkan kelemahan aplikasi dan pemrograman. Untuk menghadapi serangan pada web server, Anda memerlukan network/web administrator untuk melakukan konfigurasi, meng-update web server ataupun melakukan monitoring secara berkala.
Sedangkan, serangan yang ditujukan pada aplikasi web lebih merupakan tanggung-jawab programer. Banyak istilah hacking dan turunannya telah dihasilkan dari serangan yang terjadi pada aplikasi web, antara lain Script Injection, Cross Site Scripting (XSS), SQL Injection, Buffer Overfl ows, dan masih banyak lagi.
Artikel ini akan membahas beberapa contoh serangan yang dapat terjadi pada aplikasi web dan bagaimana penanggulangannya agar dapat memaksimalkan keamanan aplikasi web Anda.
Tentu saja, isu keamanan tidak akan beres dengan sekali kerja, seperti halnya siskamling, keamanan terus dilakukan dan tidak akan pernah berhenti.
Login, Jaga Username Anda!
Dimulai dari hal yang terlihat sangat sederhana, tetapi pada praktiknya cukup banyak terjadi kebobolan dari sisi ini, yaitu halaman login yang mengandalkan username dan password. Anda mungkin telah cukup banyak membaca dan mendengar saran-saran mengenai password yang baik, misalnya harus terdiri dari kombinasi huruf dan angka, ataupun secara berkala mengganti password.
Tetapi, tidak banyak yang menyinggung mengenai keamanan username. Padahal pada sebuah halaman login, username bisa dianggap lapis keamanan yang pertama.
Bagi oknum yang sengaja ingin menebak password, jika telah mengetahui dengan tepat username yang digunakan, maka berarti telah melewati pengaman pertama dan mempermudah menebak pengaman berikutnya, yaitu password. Sebaliknya, hal tersebut akan lebih sulit dilakukan jika username tidak diketahui.
Jangankan halaman login untuk masuk sebagai administrator website tertentu, halaman login untuk e-mail saja disarankan tidak memberikan informasi yang dapat mengarahkan pada kesimpulan username atau password telah diisi benar. Contohnya, coba Anda login pada website Yahoo! Mail atau Google Gmail untuk membaca e-mail Anda, anggaplah Anda memiliki username “jokodoyanmie”, tetapi Anda salah mengetikkan password. Perhatikan bahwa Anda tidak mendapatkan pesan “Invalid password”, atau “Invalid username”, pesan yang Anda terima adalah “Invalid ID or Password” (pada Yahoo!), atau “Username and password do not match” (pada Google).
Pesan tersebut tidak menyebutkan secara tepat bagian mana yang salah ketik, apakah username (ID), atau password? “Wah... perusahaan sebesar Yahoo! dan Google tidak bisa membuatscript untuk mendeteksi apakah kesalahan terjadi pada username atau password?” Mungkin demikian pikir Anda dan tentu saja hal tersebut tidak mungkin, dengan kata lain Yahoo!,
Google, dan rata-rata e-mail provider lain umumnya memang sengaja menyamarkan informasi tersebut. Mungkin Anda berpikir hal tersebut bukan sesuatu yang krusial, tetapi kenyataannya kombinasi username dan password telah menjadi hal yang cukup serius, beberapa e-mail provider juga tidak mengizinkan Anda memilih password yang sama atau mengandung kata yang terdapat pada username.
Pencegahannya cukup mudah, tidak perlu membuat script untuk mencari kesalahan login terletak pada username atau password, juga hindari penggunaan username yang umum dan mudah ditebak seperti admin, sa, administrator, dan seterusnya.
Bahaya Input Komentar
Sebuah website biasanya mencoba untuk berinteraksi dengan pengunjung dengan jalan menyediakan fasilitas agar pengguna dapat mengisikan sesuatu, misalnya saja komentar, atau guest-book, atau yang lebih modern lagi, yaitu shoutbox. Sayangnya, jika website Anda dikunjungi oleh seseorang yang iseng, maka bisa jadi sebuah script jahat dapat turut menjadi “komentar” dan ini bukan berita baik bagi website Anda.
Ilustrasinya adalah sebagai berikut, Anda mengisikan guest-book katakanlah pada alamat http://domainsaya.com/guestbook.php dengan komentar berikut:
Website yang aman...
Perhatikan bahwa terdapat JavaScript pada komentar tersebut. Jika komentar tersebut dapat diterima dan dieksekusi oleh website, maka setiap kali ada pengunjung yang mengaksesnya, akan tampil sebuah pesan bertuliskan “tapi bohonggg...”.
Cukup mengganggu, bukan? Tidak hanya sampai di sana, jika sebuah website telah dapat disusupi dengan cara seperti ini, maka banyak sekali kemungkinan script berbahaya yang dapat ditanamkan.
Misalkan script untuk mengalihkan website domainsaya.com ke website lain, script untuk menampilkan gambar porno (yang dapat dilakukan dengan HTML biasa) atau script untuk mengambil informasi seperti cookie. Cukup berbahaya, bukan?
Langkah pencegahannya, antara lain dengan tidak langsung mengizinkan komentar yang masuk tampil pada browser Anda, harus melalui proses approve. Hal ini membutuhkan kerja seorang administrator yang bertugas melakukan filter komentar yang masuk dan berhak menolak komentar yang tidak diinginkan.
Walaupun tidak berarti semua website yang memberlakukan filter seperti ini berarti menyadari akan bahaya kebobolan melalui script injection ini. Karena bisa saja hal ini dilakukan dengan alasan menghindari penggunaan kata-kata tertentu.
Cara pencegahan yang lain adalah dengan menolak penulisan script atau tag HTML, dengan risiko tampilan komentar menjadi datar tanpa aksesoris karena tag-tag HTML untuk melakukan variasi huruf (bold, italic, dan lain-lain) tidak dapat digunakan.
Tetapi jika Anda membutuhkannya, Anda dapat membuat sen-diri aturan dan penulisan tag, misalnya [:bold] untuk membuat huruf menjadi bold, dan seterusnya. Tag buatan Anda tersebut akan disubsitusikan secara otomatis dengan tag HTML sehingga tampilannya sesuai seperti yang diinginkan. Beberapa engine forum telah menggunakan metode ini.
Cara lainnya adalah dengan melakukan encode script, contohnya mengganti karakter “<” dengan < dan karakter “>”dengan > sehingga kata

OPTIMASI TEKNIK PEMROGRAMAN

Posted in Labels:

OPTIMASI TEKNIK PEMROGRAMAN

Menyambung artikel optimasi teknik pemrograman yang telah ditulis pada edisi sebelumnya, mari kita mempelajari teknik selanjutnya! Joko Nurjadi

BAGIAN 2 DARI 2 ARTIKEL
KALAU PADA edisi lalu telah dibahas teknik optimasi untuk kondisi else, perulangan yang bercabang, juga regular expression, maka pada edisi ini kita akan membahas mengenai pemanfaatan memory, rekursif, dan teknik lainnya.
Memory
Membuat program berkaitan erat dengan data, bahkan statement 1 + 2 pun sudah menggunakan data (yaitu angka 1 dan 2) yang menghasilkan output 3 karena diolah dengan operator +.
Contoh di atas menggambarkan input -> proses -> output. Input dapat berupa database relasional, file, ataupun entry pengguna. Jika data berukuran besar, mungkin akan membuat program Anda berpikir keras sampai akhirnya menampilkan output yang diharapkan.
Salah satu cara untuk mempercepat waktu pemrosesan aplikasi adalah dengan menggunakan memory sebagai penampung, karena kecepatan akses memory secara umum melebihi kecepatan akses disk. Contoh sederhana seperti potongan program Visual Basic di bawah ini:
Open “dummy.txt” For Input As #1
Do While Not EOF(1)
Line Input #1, sTemp
Loop
Close #1
Program di atas membuka file dummy.txt, dan melakukan perulangan do while untuk membaca isi file per baris. Sebagai gambaran, proses di atas dilakukan pada sebuah file text dengan ukuran 46 MB.
Pada komputer penulis, program selesai membaca seluruh isi file dalam waktu kurang lebih 4 detik. Memory usage yang terlihat dari Windows Task Manager saat mengeksekusi program ini kurang lebih sebesar 3,6 MB.
Program tersebut dapat dioptimasi untuk mendapatkan kinerja yang lebih cepat, tentu saja waktu 4 detik yang dapat dilakukan program tersebut relatif sudah cukup cepat, tetapi jika proses tersebut dilakukan dengan frekuensi yang tinggi, anggaplah dijalankan 100 kali, maka logikanya waktu yang diperlukan menjadi 100 x 4 detik atau 400 detik.
Proses dapat dioptimasi menjadi lebih cepat secara signifikan dengan melakukan modifikasi sebagai berikut:
Open “dummy.txt” For Binary As #1
sTemp = Space$(LOF(1))
Get #1, , sTemp
Close #1
Perbedaan program ini dengan sebelumnya adalah, file dibuka dalam mode binary, dan seluruh isinya langsung ditampung ke dalam sebuah variabel, tidak dibaca per baris, sehingga konsekuensinya Anda memerlukan memory penampung yang relatif besar.
Lalu, bagaimana hasilnya? Saat dijalankan berkali-kali, range waktu yang dibutuhkan berkisar dari 1,1 detik – 1,8 detik. Jauh lebih cepat, bukan? Efek sampingnya, memory usage pada saat eksekusi tercatat mencapai 98 MB!
Prinsipnya, Anda dapat memanfaatkan memory untuk mempercepat proses, tetapi perhitungkan bahwa program Anda akan menyita memory yang relatif besar yang bisa jadi melewati batas penggunaan memory sehingga menimbulkan error.
Kasus di bawah ini menunjukkan lebih jauh penggunaan memory. Perhatikan potongan program Visual Basic berikut:
For i = 1 To 10000
txt.Text = txt.Text & i
Next
Asumsinya Anda memiliki sebuah control textbox bernama txt, program di atas melakukan perulangan sebanyak 10.000 kali dan menampung isi variabel i ke dalam control txt.
Pengukuran yang dilakukan penulis menunjukkan program tersebut membutuhkan waktu rata-rata sekitar 14 detik sampai dengan 16 detik pada beberapa percobaan.
Modifikasi dengan memanfaatkan memory sebagai buffer seperti di bawah ini akan meningkatkan kecepatan proses:
For i = 1 To 10000
buffer = buffer & i
Next
txt.Text = buffer
Program di atas akan menampung terlebih dahulu isi variabel i pada perulangan for di dalam sebuah variabel yang bertindak sebagai buffer, setelah perulangan berakhir, isi dari buffer diberikan pada control txt. Hasilnya program ini hanya membutuhkan waktu kurang dari 0.5 detik dalam setiap percobaan yang dilakukan.
Jangan lupa untuk selalu membandingkan performa sebelum dan sesudah optimasi, dan apakah output tidak berubah dari yang diharapkan. Karena sering ditemui banyak faktor X yang berpengaruh yang baru dapat kita ketahui setelah mempraktikkannya.
Rekursif
Rekursif merupakan sebuah teknik pemanggilan function yang memanggil dirinya sendiri. Anggaplah Anda memiliki function sederhana menuliskan sebuah kalimat pada layar/console, sebelum function itu berakhir, Anda menyisipkan perintah untuk memanggil function itu sendiri, inilah sebuah contoh rekursif sederhana, yang bahkan dapat dibuat pada batch file sebagai berikut:
@echo off
echo “Selamat pagi”
rekursif.bat
Simpan script di atas pada sebuah fi le bernama rekursif.bat, apa yang terjadi saat Anda menjalankan rekursif.bat?
Tentunya pada layar/console akan tertulis kalimat tersebut secara terus-menerus, yang tidak terbatas banyaknya jika Anda tidak memberikan kondisi kapan program berhenti memanggil dirinya sendiri.
Istilah GNU (GNU’s Not Unix) dan PHP (PHP: Hypertext Pre-processor) juga merupakan contoh rekursif, karena memanggil dirinya sendiri.
Pada banyak kasus, function rekursif yang belum dirilis dari memory saat memanggil dirinya sendiri, akan membuat tumpukan (stack) yang memenuhi memory dan dapat mengakibatkan komputer Anda bengong alias hang.
Apakah teknik rekursif selalu membawa dampak negatif seperti penggunaan memory yang boros?Tidak juga, keuntungan menggunakan rekursif adalah kode program yang singkat, pemecahan masalah yang lebih mudah (untuk beberapa kasus), dan mungkin cocok bagi Anda yang gemarmengasah logika.
Contoh fungsi rekursif yang biasanya selalu ada dalam bahasan rekursif, adalah contoh fungsi menghitung faktorial sebagai berikut:
Function Fakto(ByVal n As Integer) As Long
If n <= 1 then
Fakto = 1
Else
Fakto = n * Fakto(n – 1)
End if
End Function
Walaupun contoh di atas menunjukkan dengan tepat cara kerja rekursif (silakan lakukan debug/trace perbaris untuk mempelajarinya dengan lebih detail), tetapi tidak menunjukkan keunggulan signifikan rekursif dibandingkan nonrekursif atau perulangan/iterasi biasa. Kita dapat membuat program faktorial nonrekursif dengan mudah seperti berikut:
Function Fakto_NonRekursif(ByVal n As Integer) As Long
Dim i As Integer
Dim result As Long
result = 1
For i = n To 1 Step -1
result = i * result
Next
Fakto_NonRekursif = result
End Function
Untuk melihat keunggulan rekursif yang cukup optimal, contoh yang tepat adalah implementasi Quick Sort ataupun permainan Menara Hanoi, yang memungkinkan pemecahan masalah secara rekursif dengan algoritma divide and conquer, artinya membagi problem ke dalam kemungkinan-kemungkinan subproblem dan menyelesaikannya, suatu hal yang relative lebih sulit dilakukan dengan perulangan/iterasi biasa.
Code Refactoring
Berbeda dengan tulisan tangan yang rata-rata masih dapatdibaca (paling tidak oleh penulisnya) walaupun ditulis bertahuntahun yang lalu, kode program bisa jadi sukar dipahami kembali setelah sekian lama, termasuk oleh programernya sendiri!
Bukan hal yang aneh jika kita melihat (atau mengalami sendiri) seorang programer berusaha mempelajari kode program yang baru dibuatnya sekitar dua minggu yang lalu. Karena itu, optimasi juga bisa dilakukan dengan tujuan untuk membuat kode Anda lebih terbaca, salah satu teknik yang dikenal untuk keperluan ini adalah code refactoring. Pada metodologi seperti Extreme Programming, refactoringmerupakan bagian dari siklus pengembangan software.
Mengapa kode program dapat menjadi sulit terbaca? Contoh sederhananya saja, kebiasaan menuliskan nama variable dengan singkat, misalnya i untuk variabel bertipe integer, suntuk variabel bertipe string. Kadang kalau variabel i sudah digunakan, maka dilanjutkan dengan variable j, k, l, m, dan seterusnya.
Semakin panjang kode program Anda, akan semakin sulit untuk didebug dan ditelusuri alurnya, dalam kondisi ini, nama variable yang merepresentasikan fungsinya akan dapat membantu pema- haman, misalnya variabel bernama diskon, total, bunga,pajak, tentunya lebih mudah untuk dipahami.
Program yang sulit dipahami, otomatis akan sulit untuk diperbaiki, dimodifikasi, ataupun diberikan modul tambahan. Di saat seperti inilah, penggunaan code refactoring menjadi salah satu isu penting.
Contoh code refactoring yang lain adalah membuat susunan program menjadi terstruktur, misalnya mengubah kode didalam blok if menjadi subrutin, ataupun menghapus code yang tidak diperlukan (dead code), misalnya menghapus variabel yang dideklarasi tetapi tidak pernah digunakan.
Beberapa IDE bahasa pemrograman memiliki dukungan untuk melakukan refactoring secara otomatis, antara lain adalahVisual Studio 2008, CodeGear Delphi, atau NetBeans.
API
Beberapa bahasa pemrograman high-level memiliki dukungan terhadap API atau Application Programming Interface, yaitu sekumpulan function yang disediakan operating system atau berasal dari sebuah service/library.
API sebagai sebuah function yang siap digunakan (walau tidak selalu mudah untuk diimplementasikan), dapat membantu Anda untuk mempercepat proses development dan mempermudah Anda melakukan eksplorasi lebih jauh. Contohnya, Anda dapat membuat sebuah aplikasi yang mengakses hardware tertentu dengan menggunakan API yang disediakan didalam SDK hardware tersebut.
Di bawah ini merupakan contoh penggunaan function API yang disediakan oleh operating system Windows (Windows API) untuk mendapatkan nama komputer, contoh dalam Visual Basic. Letakkan deklarasi function API berikut pada bagian Declarations:
Private Declare Function GetComputerName Lib “kernel32”
Alias “GetComputerNameA” ( _
ByVal lpBuffer As String, _
nSize As Long) As Long
Contoh pemanggilan function tersebut adalah:
Dim sBuffer As String
Dim nSize As Long
Dim lResult As Long
nSize = 2048
sBuffer = Space(248)
lResult = GetComputerName(sBuffer, nSize)
MsgBox sBuffer
Hal yang perlu diperhatikan dalam menggunakan API adalah apa yang sering diajarkan saat pertama kali kita belajar bahasa pemrograman, yaitu simpan pekerjaan sesering mungkin. Bukan untuk menunjukkan ketidakpercayaan Anda pada PLN, tetapi karena function API dapat saja menyebab-kan crash karena pemanggilan yang salah atau kegagalan pengaksesan.
Right Technique at The Right Time
Optimasi baru dapat dikatakan berhasil jika Anda menggunakan sebuah teknik pemrograman pada saat yang tepat. Jadi tidak berarti kalau kita menguasai suatu teknik pemrograman, maka teknik tersebut selalu tepat jika diimplementasikan pada setiap kasus.
Hal ini dikembalikan lagi pada tujuan utama pembuatan program yang tentu bervariasi, dalam kompetisi pemrograman mungkin tujuan Anda membuat program dengan output yang benar dalam waktu secepat mungkin, dalam bidang pengajaran Anda akan berusaha membuat program yang mudah dibaca dan dimengerti.
Jangan lupakan juga peran pengguna program Anda, yang bisa jadi akan berinteraksi dengan aplikasi buatan Anda lebih lama dibandingkan Anda sendiri. Ambil saja sebuah contoh: mungkin pengguna perlu diberikan splash screen yang bersahabat pada saat program pertama kali dieksekusi.
Tentunya jika dilakukan pengukuran yang presisi, splash screen membutuhkan proses tambahan sehingga memperlambat proses keseluruhan, tetapi bagi pengguna yang memandang tepat di depan monitor, splash screen dapat menyembunyikan proses yang terjadi pada background sehingga pengguna tidak merasa menunggu.
Berhasil menerapkan right techique at the right time, akan memberikan kepuasan tersendiri bagi Anda yang memilih hobi pada bidang pemrograman
LEBIH LANJUT
http://www.codeproject.com/KB/recipes/Iterative_vs_Recursive.aspx
http://en.wikipedia.org/wiki/Dynamic_programming
http://en.wikipedia.org/wiki/Refactoring