Apa yang ada dalam tulisan ini adalah hasil rangkuman dari tulisan salah satu hacker yang ada dalam daftar 6 hacker top sedunia, yaitu Eric S Raymond.
- Berpikirlah Seperti Seorang Hacker
Bagaimana seorang hacker berpikir? Apa yang ada di otak seorang hacker? Seorang hacker
selalu memikirkan bagaimana caranya menyelesaikan suatu masalah dan
bagaimana caranya membuat sesuatu. Seorang hacker juga sangat menghargai
kebebasan dan mau menolong dengan sukarela. Kalau ingin menjadi hacker, seseorang harus memiliki attitude ini.
Dunia ini
dipenuhi berbagai permasalahan yang sangat menarik untuk diselesaikan.
Dengan mencoba menyelesaikan permasalahan-permasalahan ini, seseorang
akan mempertajam kemampuan dan melatih kecerdasannya. Ingat juga bahwa
suatu permasalahan tidak perlu diselesaikan lebih dari sekali. Oleh
karena itu jangan pernah merasa enggan untuk membagikan informasi dan
solusi terhadap suatu permasalahan. Ini adalah tanggung jawab moral
seorang hacker.
Budaya hacker adalah suatu budaya tentang pengakuan. Seseorang tidak dapat menyebut dirinya sendiri sebagai hacker. Seseorang tidak akan pernah benar-benar menjadi hacker sampai orang lain (para hacker) menyebutnya sebagai hacker.
Untuk mendapatkan pengakuan ini tentu saja butuh usaha, kerja keras,
dan kontribusi kepada komunitas. Beberapa hal yang dapat dilakukan untuk
berkontribusi kepada komunitas:
- Buatlah perangkat lunak (program) open source.
- Investasikan waktu luang untuk membantu memperbaiki perangkat lunak open source dengan melakukan debugging.
- Publikasikan informasi yang berguna.
- Berikan bantuan untuk menjaga infratstruktur tetap berjalan.
- Pelajari Pemrograman
Pelajarilah bagaimana caranya menulis program. Untuk benar-benar menjadi seorang hacker kemampuan pemrograman sangatlah penting. Para hacker
menyelesaikan berbagai permasalahan yang mereka temui dengan menulis
program. Cara paling mudah untuk mempelajari cara menulis program adalah
dengan membaca dokumentasi yang ditulis oleh para masternya. Kemudian
cobalah menulis program sedikit demi sedikit. Teruslah berlatih untuk
mencapai suatu level kemampuan pemrograman yang cukup baik. Jika sudah
cukup percaya diri dengan suatu bahasa pemrograman, cobalah untuk
mempelajari bahasa pemrograman lainnya. Mempelajari beberapa bahasa pemrograman akan mengajarkan kita memandang suatu permasalahan dari sisi lain.
- Kenali dan Gunakan Unix/Linux
UNIX dan sistem operasi yang mengadopsi konsep yang sama seperti Linux dan BSD adalah sistem operasi utama Internet. Namun untuk menggunakan UNIX
seseorang mungkin harus mengeluarkan uang dalam jumlah yang cukup
besar. Solusinya adalah menggunakan sistem operasi yang open source
seperti GNU/Linux (dengan berbagai pilihan distribusi) dan FreeBSD (dan turunan BSD lainnya). Pelajarilah Linux, gunakan distro yang mudah dan ramah untuk pemula seperti Ubuntu. Pasanglah sistem operasi ini di PC atau laptop dan gunakan untuk bekerja/bermain sehari-hari.
Mungkin sebagian orang akan berpikir mengapa harus menggunakan Unix/Linux/FreeBSD? Apakah tidak bisa menggunakan sistem operasi lain? Sistem operasi tertutup seperti Microsoft Windows dan Mac OS tidak akan mengizinkan seseorang untuk mempelajari kode sumbernya apalagi melakukan modifikasi. Belajar menjadi hacker menggunakan sistem operasi seperti itu ibarat belajar menari dengan tubuh dicor.
- Pelajari HTML
HTML adalah mainan hacker yang telah mengubah dunia. Belajarlah bagaimana cara menggunakan World Wide Web dan menulis kode HTML. Menggunakan Word Wide Web bukan berarti sekedar menggunakan browser dan berselancar di dunia maya melainkan bagaimana caranya membangun suatu situs menggunakan bahasa penanda web (web markup language). Cobalah membangun home page menggunakan sintaks-sintaks HTML.
Bagaimana Cara Menjadi Hacker. Caranya adalah sebagai berikut :
- Persiapkan Jiwa
Persiapan jiwa ini adalah hal yang paling utama dalam menjadi seorang hacker, adapun hal yang perlu dipersiapkan adalah:
- Mental dan psikologi: hal ini dibutuhkan karena seorang hacker akan mendapatkan banyak cobaan yang sering kali membuat down dan kadang membuat lupa diri. Seperti caci maki, hinaan, sanjungan dan perkataan manis.
- Kesabaran, ketabahan dan keikhlasan: hal ini merupakan kunci kesuksesan seorang hacker dimana dengan hal ini akan membuat seorang hacker tidak akan pernah menyesali setiap tindakan yang diperbuat.
- Semangat, usaha, kemauan, pantang menyerah dan kerja keras: hal ini dibutuhkan seorang hacker untuk berjuang menggapai yang terbaik didalam kehidupan yang dijalani, karena menjadi seorang hacker tidak mudah dan butuh waktu yang cukup untuk memahami setiap seluk beluk ilmu pengetahuan.
- Percaya dan berserah diri hanya kepada Tuhan Yang Maha Esa: hal ini menjadi pondasi paling penting dan salah satu motto yang digunakan oleh BinusHacker Family yaitu “Tuhan Hanya Engkau Yang Esa” dimana dengan hal ini semua akan dikembalikan kepada Sang Pencipta dan menyatakan bahwa Ilmu Pengetahuan itu Tanpa Batas.
- Persiapkan Raga
Persiapan
raga merupakan langkah kedua yang perlu dilakukan oleh seorang hacker,
dimana raga harus dibangun sedemikian rupa agar bisa mencapai target
yang diingikan. Hal yang perlu dipersiapkan adalah:
- Kesehatan dan kebugaran: hal ini diperlukan agar seorang hacker tetap fit dalam menghadapi setiap tantangan dan perjuangan dalam mempelajari dan mencapai target yang sudah ditetapkan serta kemampuan memory, daya pikir otak, nurani, panca indra bisa dimaksimalkan.
- Aktif Olahraga: hal ini diperlukan untuk menunjang latihan tubuh agar terhindar dari berbagai ancaman. Misalkan olahraga beladiri untuk melindungi diri ketika ada ancaman, fitness agar tubuh tetap aktif dan sehat terjaga.
- Persiapkan Perbuatan
Persiapan
perbuatan adalah langkah ketiga untuk menjadi seorang hacker, dimana
langkah yang perlu dijalani adalah langkah positif dalam kehidupan,
senantiasa beramal dan beribadah. Mengurangi, menghindari dan
meninggalkan hal-hal negatif adalah perjuangan panjang dan paling berat
untuk seorang hacker.
- Belajar, Berbagi, Senantiasa Update dan Meningkatkan Kemampuan: hal ini menjadi pondasi paling penting dan salah satu motto yang digunakan oleh BinusHacker Family untuk bersama-sama meningkatkan kualitas dan kuantitas kemampuan yang dimiliki.
- Saling Tolong Menolong, Persahabatan, Hindarkan SARA: hal ini diperlukan agar seorang hacker bisa berkontribusi dalam kehidupan yang global dimana semua sangat universal. Dengan menjadi seorang hacker maka diharuskan memiliki pandangan yang luas sehingga bisa bertindak dengan netral, baik, adil dan bijaksana.
Ada 5 hal penting yang perlu dipelajari oleh seorang Hacker :
- Logika (Logic)
Seorang
hacker harus senantiasa menggunakan logika dimana hal ini menjadi sebuah
pertimbangan akal untuk menghasilkan sesuatu yang baik, benar dan
tepat. Manusia diberikan kelebihan oleh YME untuk hal ini, maka
manfaatkan secara maksimal.
Logika yang sering digunakan dalam bahasa pemrograman adalah OR, AND, NOT, XOR, NAND, dll. Beberapa program tersusun atas komponen program IF..THEN…ELSE, FOR..TO..DO, WHILE , CASE..OF dan lain-lainnya. Logika ini kemudian akan dikolaborasikan dengan matematika untuk menghasilkan sesuatu yang bernilai Benar (True) atau Salah (False) seperti (<, >, =, +, -, dll).
- Perangkat Keras (Hardware)
Seorang
hacker harus mengetahui seluk beluk perangkat keras, karena perangkat
keras merupakan dasar dari pembentukan teknologi. Perangkat keras disini
adalah mengerti seluk beluk pengkabelan, chip, mainboard, switch, hub, elektronika, dll.
Apabila seorang hacker sudah memahami perangkat keras, maka akan lebih
mudah dalam membuat instruksi untuk perangkat lunaknya. Pernah melihat
James Bond & Mission Impossible? Nah, diluarsana banyak orang
luarbiasa yang memahami hardware sangat dalam.
Yang perlu dipelajari lebih dalam dari perangkat kerasa adalah komponen pada bagian-bagian berikut:
- Input Device (Unit Masukan: Keyboard, Mouse): media untuk memasukkan data dari luar ke dalam suatu memori dan processor.
- Process Device (Unit Pemrosesan: CPU, Microchip,RAM): media untuk mengolah inputan guna menghasilkan informasi yang diperlukan.
- Output Device (Unit Keluaran: Monitor, Scanner, Speaker): media untuk mengeluarkan hasil informasi.
- Backing Storage ( Unit Penyimpanan: Harddisk, Disk): media untuk melakukan penyimpanan data dan informasi.
- Periferal ( Unit Tambahan: USB, Modem): media tambahan yang digunakan untuk mendukung proses kerja perangkat keras.
- Perangkat Lunak (Software)
Seorang
hacker akan mempelajari software sebagai instruksi kepada hardware untuk
melakukan perintah-perintah yang diinginkan. Software ini dibangun dari
berbagai bahasa, dimana bahasa yang perlu dipelajari dalam bahasa mesin
adalah 0, 1 dan analog. Sebagai dasar adalah bahasa pemrograman adalah
assembly. Urutan yang tepat sebagai berikut saya kutip dari wikipedia:
- Bahasa Mesin, yaitu memberikan perintah kepada komputer dengan memakai kode bahasa biner, contohnya 01100101100110.
- Bahasa Tingkat Rendah (ASM) atau dikenal dengan istilah bahasa rakitan (bah.Inggris Assembly), yaitu memberikan perintah kepada komputer dengan memakai kode-kode singkat (kode mnemonic), contohnya MOV, SUB, CMP, JMP, JGE, JL, LOOP, dsb.
- Bahasa Tingkat Menengah (C), yaitu bahasa komputer yang memakai campuran instruksi dalam kata-kata bahasa manusia (lihat contoh Bahasa Tingkat Tinggi di bawah) dan instruksi yang bersifat simbolik, contohnya {, }, ?, <<, >>, &&, ||, dsb.
- Bahasa Tingkat Tinggi (HTML, XML, JSP, JAVA, VB, PASCAL, DELPHI, C#, F#, PHP, ASP, SQL, ORACLE, PYTHON, PERL, dll) yaitu bahasa komputer yang memakai instruksi berasal dari unsur kata-kata bahasa manusia, contohnya begin, end, if, for, while, and, or, dsb.
Sebagai seorang hacker,
semakin kompleks mengetahui bahasa pemrograman maka akan semakin mudah
dalam memolak balikkan software, mencari celah, memperbaiki, memberikan
solusi untuk memecahkan masalah dan bahkan membangun sebuah aplikasi
baru.
Kuncinya adalah semakin dalam mengetahui bahasa mesin, akan lebih mudah dalam berkomunikasi dengan mesin.
Selain
mengenal bahasa pemrograman, yang perlu dipelajari adalah sistem yang
dibangun dari software yang sudah ada saat ini, sebagai salah satu
contoh yaitu Sistem Operasi: *Nix, Linux, FreeBSD, SunOS, Windows, dll.
- Jaringan (Networking)
Seorang
hacker perlu mengetahui dan mendalami jaringan elektronik dan komputer
yang merupakan bagian penting untuk dipelajari, karena jaringan inilah
yang menghubungkan antara satu dengan yang lainnya seperti sebuah jaring
laba-laba yang tidak terputus.
Ketika kita
sudah memahami jaringan maka akan cukup mudah dalam melakukan setting,
konfigurasi dan dapat memegang kendali terhadap jaringan. Didalam
jaringan inilah alur komunikasi bergerak antara satu perangkat ke
perangkat yang lainnya. Pada jaringan inilah banyak protokol komunikasi
yang digunakan sehingga perlu juga untuk dipelajari seperti TCP, HTTP/S, FTP/S,
dll. Apabila jaringan berada didalam kendali, maka seluruh informasi
yang mengalir didalamnya akan sangat mudah untuk didapat, ditambah,
diubah, bahkan untuk dihapus sekalipun.
- Kriptografi (Cryptography)
Seorang hacker memiliki tantangan dalam hal kriptografi, karena saat ini hampir seluruh transaksi komunikasi sudah menggunakan cryptography sebagai jembatan pelindung.
Dengan modal logika yang matang maka cryptography dapat lebih mudah
untuk dipelajari walaupun dalam struktur yang sulit. Seorang hacker
memerlukan pengetahuan kriptografi untuk menjaga aspek keamanan
informasi seperti kerahasiaan informasi, keabsahan informasi, integritas
informasi, serta autentikasi informasi dan bahkan untuk mendapatkan dan
menerjemahkan informasi itu sendiri.
Ada banyak model kriptografi yang saat ini sudah banyak berkembang yaitu MD5, SHA, DES, AES, Base64, IDEA, BLOWFISH, RSA, Dll. Kriptografi ini banyak digunakan untuk konfigurasi, penyimpanan data dalam database, dan komunikasi transaksi pada jaringan.
Yang paling penting dilakukan jika ingin menjadi seorang hacker sejati :
- Niat baik, berdoa, beretika, tekad yang kuat, selalu optimis dan ketekunan yang tak pernah berakhir.
- Banyak bertanya dan terus menyimak, terutama kepada ahlinya, kemudian ambil hikmah untuk dipelajari dan dikerjakan.
- Banyak begadang untuk belajar, mengoprek alat elektronik, komputer dan hal-hal mengasyikkan lainnya.
- Cari referensi ilmu pengetahuan sebanyak-banyaknya baik dari buku, jurnal, ebook, dll.
- Lakukan dengan sengaja merusak gadget dimulai dari dengan yang sederhana, kemudian memulai untuk memperbaiki gadget tersebut.
- Belajar teknik sosial engineering untuk mengetahui dan memanfaatkan manusia, belajar reverse engineering untuk mengetahui dan memanfaatkan komputer.
- Memiliki modal, kemauan yang kuat, berani gagal dan berani bertindak untuk melakukan penelitian.
- Jangan pernah malas untuk membaca artikel teknologi, berjalan-jalan mengelilingi blog (blogwalking), belajar jangan terpaku pada salah satu forum saja.
- Berani melakukan instalasi beberapa OS pada komputer pribadi, misal Linux, Windows, VWWare, FreeBSD, dll. Kemudian belajar bahasa pemrograman dan scripting yang non-formal (Perl, Python, Ruby, dll).
- Persiapkan peralatan pribadi, dan peralatan lainnya yang didapat dari sumber lain untuk memulai proses hacking.
- Rajin berdoa kepada Tuhan YME dan berimajinasi yang penuh dengan ilusi agar mendapatkan inspirasi.
- KISS: Keep IT Simple Stupid, menjadikan IT sebagai sesuatu yang mudah seperti kegiatan sehari-hari.
- Wajib untuk mengenali batasan dan kemampuan diri, agar bisa mengukur apa yang perlu untuk dilakukan dan tidak memaksakan sesuatu.
- Jangan bermimpi terlalu tinggi, karena saat jatuh akan terasa parah sakitnya.
- Jangan terlalu berdiam diri, tetapi tetap terus berinteraksi dengan rendah hati.
- Belajar berbicara dan berinteraksi dengan komputer dengan mempelajari bahasa yang digunakan untuk instruksi komputer.
- Jangan mudah menyerah saat dihina, dipermainkan, dibohongi, terus percaya diri dan selalu semangat.
- Persiapkan otak yang fun, agar tidak terlalu penat, selalu ceria dan bahagia dalam beraktifitas.
- Belajar IT basic merupakan hal yang penting, daripada sekedar menggunakan software yang sudah ada saat ini untuk kegiatan hacking.
- Jangan lupa istirahat, jangan lupa makan, jangan lupa minum, jangan lupa cemilan dan jangan lupa olah raga.
- Belajar untuk memahami concept, jangan copy paste sembarangan dan mulai dari hal yang paling kecil terlebih dahulu.
- Mengerti cara kerja hardware dan software sehingga menjadi selaras sejalan, berani merubah nya bisa juga mengembalikan nya.
- Sukai dan cintai dulu komputer, masuk keseluk-beluknya kemudian terus berlatih, perbanyak teman dan memecahkah masalah bersama-sama.
- Belajar tidak bergantung kepada yang hanya disekolah saja, belajarlah dari dunia diluar sekolah dan ulangi hal-hal yang sama untuk mempermudah dan menjadi kebiasaan.
Ada beberapa tips yang perlu bahkan sangat perlu untuk dipertimbangkan jika Anda ingin menjadi Hacker Sejati diantaranya :
- Dedikasi: Dedikasi adalah kunci utama untuk menjadi seorang hacker. Jangan berencana untuk menjadi hacker karena uang. Jika Anda benar-benar memiliki minat, lakukan demi aktualisasi dan dedikasi Anda pada dunia hacker.
- Reading: Jadilah seorang kutu buku. Cobalah untuk membaca buku-buku yang berkaitan dengan komputer dan arsitekturnya. Beli buku yang terkait dengan sistem Keamanan dan hacking.
- Tahu bagaimana hacker bekerja: Anda tidak dapat memecahkan masalah sampai Anda tahu apa yang ada di balik masalah. Jadi, Anda harus mempelajari metode atau cara kerja para hacker top dunia.
- Pemrograman dan Scripting: Pelajari Beberapa bahasa pemrograman atau scripting karena sebagian besar waktu Anda akan tersedot untuk menulis kode agar dapat menjebol sistem. Anda harus juga tahu coding untuk memahami bagaimana sistem bekerja. Saran saya gunakan bahasa pemrograman C. Bahasa pemrograman ini adalah salah satu yang terbaik di dunia. Beberapa Hacker memang ada yang lebih memilih python. tetapi bagi saya, lebih menyukai menggunakan C.
- Linux: Ok, sekarang saatnya untuk beralih dari Windows ke Linux. Belajarlah untuk bekerja dengan Linux.
- Pelajari BackTrack Linux: Backtrack Linux adalah salah satu yang terkenal untuk Penetrasi Pengujian distribusi Linux. Backtrack ini memiliki hampir semua alat pengujian penetrasi yang diperlukan untuk profesional keamanan.
- Bergabunglah pada forum-forum Hacker: Berpartisipasi dalam forum terkait Hacking adalah sangat signifikan pengaruhnya bagi perkembangan informasi tentang dunia Hacking. Disana banyak pengetahuan yang sulit didapatkan dan tidak pernah ditulis pada buku manapun.