Hacking atau biasa yang dikenal peretasan adalah sebuah aktivitas percobaan ekploitasi celah kemanan yang ada pada sebuah sistem. Tujuan dari hacking adalah bypass security control yang ada sebuah sistem sehingga hacker atau peretas bisa mendapatkan akses atas resource yang dilindungi oleh security control tersebut. Akhir-akhir ini aktivitas hacking atau peretasan semakin marak dilakukan, baik itu hacking yang dilakukan untuk tujuan yang jahat, maupun untuk tujuan yang baik. Pada proses hacking ada banyak proses dan metode yang bisa dilakukan. Kita harus menggunakan metode dan proses yang benar sesuai dengan target agar sebuah aktivitas hacking berhasil dilakukan. Salah memilih metode atau salah melakukan proses hacking akan menyebabkan aktivitas hacking tidak menghasilkan apa-apa. Oleh karena itu penting diawal untuk mempelajari meotde dan target hacking sebelum dilakukan.
Salah satu yang mungkin menjadi kendala di awal untuk pemula mempelajari hacking adalah banyak istilah-istilah yang yang asing. Ketidak pahaman tersebut akan menyebabkan susah untuk mempelajari metode hacking. Berikut ini adalah istilah-istilah yang mungkin akan sering kita dapat ketika belajar mengenai hacking:
1. Malware
Malware merupakan singkatan dari Malicious Software yang merupakan istilah umum untuk software yang dibuat untuk menganggu operasi dari sebuah komputer sistem. Saat ini gangguan yang disebabkan oleh malware tidak asal mengganggu, namun pembuat malware membuat gangguan dengan tujuan tertentu. Seperti membuka port tertentu pada suatu server, mengirim informasi tertentu atau membuat suatu sistem sibuk sehingga tidak dapat menjalankan servicenya secara normal. Contoh dari malware seperti virus, trojan, worm,dll. Malware biasanya diinstall dengan teknik tertentu dengan memanipulasi atau menipu pengguna suatu perangkat atau jika attacker dapat mengakses perangkat target akan melakukan installasi malware secara manual.
2. Exploit
Exploit adalah program yang dibuat untuk menyerang kerentanan tertentu pada suatu sistem komputer (perangkat keras dan perangkat lunak). Dengan exploit ini, attacker bisa memanfaatkan kelemahan suatu sistem untuk melakukan hacking.
3. Payload
Payload adalah sebuah istilah untuk script yang digunakan oleah hacker untuk melakukan interaksi dengan sistem yang sedang diserang. Jadi pada payload ini akan berisi instruksi apa saja yang ingin dilakukan oleh hacker sehingga hacker dapat berinteraksi dengan target. Berbeda dengan exploit, jika exploit program yang digunakan untuk melakukan exploitasi calah keamanan tertentu, payload lebih ke arah untuk kebutuhan interaksi hacker dengan targetnya.
4. Vulnerability
Vulnerability adalah kelemahan atau kerentanan pada suatu sistem yang dapat menjadi titik lemah untuk diserang. Vulnerability biasanya akan dimanfaatkan oleh attacker/hacker untuk melakukan exploitasi sistem untuk mendapatkan tujuannya. Contoh vulnerability adalah sql injection, dimana vulnerability ini terdapat pada sistem yang tidak melakukan sanitasi dan validasi input yang benar sehingga attacker bisa memasukkan input berupa sql statement dan eksekusi oleh sistem. Contoh lain adalah remote code execution, cross site scripting, server-side request forgery, dll.
5. Zero-day
Zero-day adalah sebuah vulnerability pada perangkat lunak atau keras yang masih belum diketahui/tersedia mitigasinya. Sampai mitigasi dari vulnerability ini tersedia, attacker dapat memanfaatkannya untuk melakukan penyerangan terhadap target serangannya. Jika zero-day terjadi pada perangkat lunak/keras yang banyak dipakai oleh orang-orang, maka dampak yang dihasikan juga akan sangat besar. Exploitasi yang diarahkan pada Zero-day ini disebut Zero-day attack.
6. Brute force
Bruteforce adalah sebuah teknik serangan dimana attacker akan mencoba berbagai macam input secara simultan sampai semua kombinasi inputan tersebut sudah dicek semua. Biasanya teknik bruteforce ini dipakai untuk mencari kombinasi yang benar untuk login info, key untuk enkipsi atau juga untuk menemukan halaman pada sebuah website. Attacker biasanya telah memiliki dictionary atau list dari kata-kata yang akan dicoba menebak informasi yang ada pada target. Kemudian secara simultan attacker akan mencoba satu memasukkan dictionary kata-kata tersebut menggunakan script. Ketika ada informasi yang berhasil ditebak, maka attacker akan menggunakan informasi tersebut untuk serangan selanjutnya.
7. Denial of Service (DoS)
Denial of Service adalah sebuah serangan kepada sistem komputer yang membuat suatu sistem menjadi sangat sibuk sehingga tidak dapat melayani user atau bahkan untuk beberapa kasus sistem yang diserang dengan teknik DoS ini menjadi mati. Metode yang paling umum digunakan untuk serangan DoS ini adalah attacker akan membanjiri request jaringan suatu sistem. Hal ini berdampak kanal jaringan yang dimiliki oleh sistem menjadi sangat penuh sehingga user yang sebenarnya dari sistem tersebut tidak dapat mengakses sistem. Selain itu, bisa juga dilakukan dengan cara attacker mengindetifikasi aktivitas yang berat pada sistem tersebut, lalu selanjutnya attacker mengirim request secara terus menerus pada aktivitas pada sistem yang berat tadi sehingga kerja sistem sangat berat hingga tidak dapat memproses request yang lain. Serangan DoS yang dilakukan bersama-sama dan dilakukan dalam jumlah besar dan terdistribusi dinamakan Distributed Denial of Service (DDoS).
8. Social Engineering
Social Engineering adalah sebuah metode attack yang menargetkan orang pada sistem tersebut sehingga dapat memberikan informasi yang dibutuhkan oleh attacker. Jadi jika pada penjelasan dia atas berbicara mengenai serangan ke sistem komputer, maka social engineering adalah serangan yang menargetkan usernya langsung. Dalam banyak kesempatan teknik ini sangat efektif dalam melakukan serangan sehingga user dari sistem harus memiliki security awareness untuk mencegah dari serangan social engineering.
9. Ransomware
Ransomware adalah salah jenis malware yang akan melakukan enkripsi semua file yang ada perangkat korbannya. Setelah file-file pada perangkat korban ter-enkrip maka attacker akan mengirimkan pesan untuk meminta tebusan agar korban bisa mengembalikain file yang ter-enkrip. Untuk beberapa case ransomware, ketika korban menolak untuk memberikan tebusan, maka attacker mengancam akan membocorkan file yang telah di enkrip tersebut. Jika terdapat data confidential, maka korban mau tidak mau harus membayar agar informasi confidential tersebut tidak dipublikasikan.
10. Phishing
Phishing merupakan salah satu teknik social engineering yang bertujuan mendapatkan informasi sensitive dari korbannya. Biasanya pada phishing attacker akan berpura-pura menjadi pihak tertentu yang dipercayai oleh korban dan meminta korban untuk melakukan sesuatu yang pada akhirnya hal tersebut akan merugikan korban. Phishing biasa dilakukan melalui email, chatting atau telepon. Motifnya jika bukan untuk mendapatkan informasi tertentu, biasanya attacker melakukan penipuan untuk mendapatkan uang atau harta dari korban.
11. Encryption
Enkripsi adalah proses yang mengacak teks yang dapat dibaca sehingga hanya dapat dibaca oleh orang yang memiliki kode rahasia, atau kunci dekripsi. Enkripsi dapat digunakan untuk mengamankan data ketika sedang dikirim, diteriman, dan disimpan pada suatu perangkat. Pada umumnya teknik enkripsi ada 2 macam, yaitu Symmetric encryption dan Asymmetric encryption atau public key cryptography. Perbedaannya terdapat pada key yang digunakan. Lebih jelasnya mengenai Symmetric encryption dan Asymmetric encryption, dapat dilihat pada link berikut
12. Botnet
Botnet atau Robot Network adalah perangkat komputer pada suatu jaringan yang telah ter-infeksi oleh malware yang menyebabkan perangkat komputer tersebut berada dibawah kontrol seseorang yang biasa dikenal dengan istilah bot-header. Dari satu titik tertentu, bot-header dapat memerintah semua botnet untuk melakukan terkoordinasi dan secara simultan melakukan aksi-aksi kriminal. Email spam, DDoS attack atau kebocoran finansial adalah salah satu penggunaan botnet untuk aktivitas kriminal.
13. Command and Control
Command and Control atau yang biasa disingkat juga dengan C2 adalah sebuah server atau sistem yang dikendalikan oleh attacker atau pelaku cybercrime untuk mengirim perintah ke sistem yang telah disusupi oleh malware dan menerima data-data yang telah dicuri dari target serangan.
14. Rootkit
Rootkit meruapakan salah satu bentuk malware yang dimana ketika rootkit telah terinstall pada target maka akan memberikan remote access atau control terhadap perangkat target kepada threat actor. Kenapa malware ini bernama rootkit? rootkit berasal dari 2 kata, yaitu root dan kit. kit meruapakan tools atau seperangkat tools yang dapat memberikan akses root/admin pada suatu sistem dan menggunakan hak akses tersebut untuk menyembunyikan keberadaan dari attacker. Untuk mendeteksi rootkit biasanya akan sulit dilakukan karena ketika rootkit berhasil mendapatkan akses sebagai root/administrator dari suatu sistem maka mereka akan menyembunyikan keberadaannya. Untuk mendeteksi rootkit dibutuhkan berbagai macam pendekatan seperti file integrity monitoring, behaviour analysis, signature-scanning, memory dump analysis, dll.
15. Threat Actor
Threat actor adalah orang atau entitas yang memiliki kemampuan atau niat untuk mempengaruhi keamanan individu atau perusahaan lain. Dalam cybersecurity dan threat intelijen, threat actor adalah istilah luas untuk setiap individu atau kelompok individu yang mencoba atau berhasil melakukan aktivitas jahat terhadap perusahaan, baik sengaja maupun tidak sengaja. Threat actor dapat berasal dari internal atau eksternal organisasi, dan ada kemungkinan mereka memiliki/tidak memiliki keahlian teknis yang diperlukan untuk menyusup dan membahayakan jaringan dan data perusahaan.
16. Blackbox
Blackbox merupaakan salah satu metode menguji kemanan suatu sistem dengan informasi yang sangat terbatas. Biasanya penguji kemanan hanya diberikan informasi terkait url atau IP address dari target yang akan diuji. Hal ini akan mengkondisikan penguji sebagai attacker luar dengan informasi yang sangat terbatas. Dengan begitu kita akan mengetahui dengan informasi terbatas seperti apa impact dari serangan yang dilakukan. Jadi bisa dibilang metode blackbox ini akan mengemulasi serangan real attacker dari luar organisasi.
17. Red Team
Red team merupakan suatu tim pada organisasi yang akan mengemulasi dan simulasi serangan dari threat actor yang sebenarnya diluar. Red Team akan berfikir dan bertindak sebagai ancaman bagi organisasi dan sistem untuk mengidentifikasi risiko yang mungkin terjadi. Dengan ditemukannya risiko oleh red team, maka organisasi bisa melakukan mitigasi terhadap risiko tersebut sehingga dapat meningkatkan security posture dari organisasi.
18. Advance Persistence Threat (APT)
APT adalah istilah luas yang digunakan untuk menggambarkan kampanye serangan di mana attacker, atau tim attacker, melakukan penyusupan pada sistem korban kemudian menyembunyikan keberadaan dari attacker dalam jangka panjang lalu mencuri informasi berharga milik korban selama attacker menyusup pada sistem korban. APT ini dilakukan secara hati dan biasanya korbannya merupakan sudah ditargetkan dan proses penyerangannya sudah direncanakan dengan matang. Targetnya biasanya adalah pemerintah atau perusahaan besar. Beberapa perusahaan kemanan informasi yang melakukan penilitan terkait APT ini sudah mengumpulkan informasi dan mengelompokkan serangan terkait APT ini. Salah satunya yang dikeluarkan oleh Fireeye. Setidaknya Fireeye sudah mengindetifikasi sekitar 40an APT. Untuk lebih jelasnya terkait APT group yang sudah diidentifikasi oleh Fireeya, bisa lihat disini
19. Linux
Linux adalah satu operating system komputer yang dibangun Linus Travolds pada tahun 1991. Linux merupakan operating system yang open source sehingga linux saat ini memiliki banyak versi dan paling banyak digunakan dingunakan. Linux digunakan mulai dari PC/Laptop, Server, perangkat mobile dan bahkan sampai perangkat IoT.
20. Access Control
Access control adalah sebuah mekanisme kemanan yang mengatur siapa atau apa yang dapat melihat, merubah atau menggunakan sumber daya yang ada pada sistem komputer. Dengan adanya access control ini, maka kita akan membatasi akses terhadap suatu sumber daya, terutama untuk sumber daya yang sifatnya confidential dan penting.
21. Code/Sourcode
Source code adalah koleksi dari code yang ditulis dengan menggunakan program yang dapat dibaca oleh manusia (bukan hanya mesin) dan biasanya menggunakan plain text. source code dari sebuah program didesain untuk memberikan instruksi ke sistem komputer agar melakukan instruksi yang diperintahkan.
22. Operating System
Operating system adalah perangkat lunak yang mengatur kerja dari perangkat keras komputer, sumber daya dari perangkat lunak dan menyedikan layanan yang umum untuk program komputer. Operating sistem merupakan penghubung atau interface antara perangkat keras komputer dan penggunanya. Setiap sistem komputer harus memiliki operating sistem, seperti laptop, PC, server, handphone atau perangkat IoT. Detail mengenai apa itu operating sistem dapat dilihat pada link berikut
Masih banyak lagi istilah-istilah yang bisa kita temui ketika mulai belajar mengenai hacking selain istilah-istilah di atas. Makin dalam mempelajari mengenai hacking, maka kita akan makin menemukan istilah-istilah yang aneh dan spesifik pada hal-hal tertentu. Semoga artikel ini bisa memberikan sedikit pencerahan terkait hacking.