file · web viewinformasi mengenai web hacking dapat anda temukan dengan berselancar ke...
TRANSCRIPT
SLIDE 2
WEB HACKING World Wide Web ( www ) merupakan bagian dari Internet yang paling populer, sehingga serangan
paling banyak terjadi lewat port 80 atau yang dikenal sebagai web hacking, berupa deface situs,
SQL injection, serta memanfaatkan kelemahan scripting maupun HTML form.
WHAT: Apa itu Web Hacking?
Web hacking…, bukan hal baru lagi bagi jawara internet ( hacker ) baik aliran putih maupun aliran
hitam ( cracker ). Apakah yang dimaksud dengan web hacking? Untuk mendapatkan definisi kedua
kata tersebut ( web dan hacking ) juga sebenarnya lumayan pusing. Secara semantik, web
didefinisikan menjadi Data yang direpresentasikan di world wide web ( Tim Berners-Lee, James
Hendler, Ora Lassila. Scientific American,May 2001). Adapun hacking didefinisikan menjadi
Tindakan di luar otoritas atau tindakan mematahkan/membobol mekanisme keamanan sebuah
sistem informasi atau sistem jaringan
(Http://www.tsl.state.tx.us/ld/pubs/compsecurity/glossary.html). Jadi, singkatnya web hacking
dapat diartikan Tindakan menerobos mekanisme keamanan dari suatu sistem yang
direpresentasikan dalam world wide web.
WHO: Siapa yang Melakukan Web Hacking?
Menerobos mekanisme keamanan suatu jaringan, bukanlah tindakan yang gampang untuk
dilakukan. Jadi, siapakah pelaku web hacking tersebut? Seiring perkembangan internet yang benar-
benar pesat dan diiringi perkembangan security dan underground, membuat siapa saja dapat
menjadi pelaku. Tidak ada keharusan bahwa pelaku web hacking adalah orang yang pintar
komputer dan internet, atau lain sebagainya.
WHY: Mengapa Melakukan Web Hacking?
Jika semua bisa menjadi pelaku web hacking, tentu Ada alasan jika sampai melakukannya dan
pertanyaan adalah Mengapa? Jika pertanyaannya adalah Mengapa, biasanya jawabannya adalah
Karena. Ada banyak alasan orang melakukan web hacking, diantaranya adalah:
1. Wanna Be A Hacker ( ingin menjadi seorang hacker ).
2. Mendapatkan popularitas.
3. Ingin mendapat pujian.
Alasan-alasan tersebut di atas cukup bisa dicerna logika.
WHEN and WHERE: Kapan dan Dimana?
Internet merebak harum di Indonesia, bisa dikatakan mulai pada hitungan tahun 90-an. Internet yang
sebelumnya merupakan sebagai hal yang mustahil untuk dirasakan oleh rakyat kelas bawah, semakin
terjangkau dengan laris manisnya bermunculan warnet (warung internet). Ada ujaran yang
mengatakan Kejahatan ada karena ada kesempatan. Ujaran tersebut mungkin belum dapat ditujukan
kepada pelaku web hacking. Dengan banyaknya kehadiran warnet bahkan ada yang buka 24 jam,
membuat web hacking dapat dilakukan kapan saja dan dimana saja, tanpa harus menunggu
waktu.
HOW: Bagaimana Web Hacking Dilakukan?
Bagaimana seseorang melakukan web hacking? Internet sudah hampir menjangkau segala sisi
kehidupan yang ada di dunia ini. Informasi mengenai web hacking dapat anda temukan dengan
berselancar ke Google. Google, search engine yang terkenal menjawab pertanyaan Bagaimana.
Dengan memasukkan kata (keyword) pada baris isian pencarian maka anda akan dibawa ke
tempat-tempat yang berhubungan dengan web hacking. Anda tinggal memilih dan menyaringnya.
SLIDE 3
DEFACE
DEFACE [di'feis] yang berdasarkan kamus UMUM Indonesia~english* yang aku miliki berarti
merusakkan; mencemarkan; menggoresi;menghapuskan tetapi arti kata deface disini yang sangat
lekat adalah sebagai salah satu kegiatan Merubah tampilan suatu website baik halaman utama
atau index filenya ataupun halaman lain yang masih terkait dalam satu url dengan website
tersebut (bisa Di folder lain atau di file lainnya) Defacing sering diartikan hacking bagi Sebagian
besar masyarakat, baik pers, awam, bahkan gak sedikit para pencandu IT .
DefaceSitus: melakukan perubahan pada halaman web depan pada situs-situs tertentu, biasanya
aktifitas ini dilakukan oleh para hacker atau cracker dengan gerakan undergroundnya sebagai sebuah
cyber gang fight untuk mengganggu informasi yang dimunculkan pada halaman situs yang dimaksud.
Beberapa deface yang pernah terjadi adalah ketika pada akhir tahun 2002 seiring dengan isu warga
Indonesia di Australia, sehingga beberapa situs Australia mengalami serangan ini. Begitu juga ketika
perebutan Ambalat antara Indonesia dengan Malaysia, beberapa situs Malaysia pun mengalaminya,
peristiwa penyerbuan karena kasus Ambalat ini disebut dengan e-ganyang.
Beberapa Alasan Defacing.
1. Dendam atau perasaan gak puas*
2. Kenikmatan tersendiri, 'defacer' merasa tertantang
3. Intrik politik, Sosial dsb
4. Penyampaian pesan tertentu
5. Iseng karena gak ada kerjaan dan pengen ngetop
6. prestice dalam golongan
Jenis-jenis pen-Deface-an
1. full of page
artinya mendeface Satu halaman penuh tampilan depan alias file index atau file lainnya yang akan
diubah (deface) secara utuh, artinya untuk melakukan ini biasanya seorang 'defacer' umumnya
harus berhubungan secara 'langsung' dengan box (mesin) atau usaha mendapatkan priveleged
terhadap mesin, baik itu root account or sebagainya yang memungkinkan defacer dapat secara
Interaktif mengendalikan file indek dan lainnya secara utuh.umumnya dengan memanfaatkan
kelemahan kelemahan pada services services yang berjalan di mesin, sehingga dapat melakukan
pengaksesan ke mesin.
2. Sebagian atau hanya menambahi
artinya, defacer mendeface suatu situs tidak secara penuh, bisa hanya dengan menampilkan
beberapa kata, gambar atau penambahan script script yang mengganggu, hal ini umumnya hanya
akan memperlihatkan tampilan file yang di deface menjadi kacau dan umumnya cukup
mengganggu, defacer biasanya mencari celah baik dari kelemahan scripting yang digunakan
dengan XSS injection (bisa merefer ke artikel yang di buat oleh theday at http://ezine.echo.or.id) ,
bisa dengan SQL atau database injection dan juga beberapa vulnerabilities yang seringkali
ditemukan pada situs situs yang dibangun dengan menggunakan CMS (content Manajemen System)
berbagai contoh XSS dapat di lihat di berbagai web, atau bisa dilihat di http://forum.echo.or.id
bagian proof of concept disitu terdapat beberapa contoh XSS dan metoda lainnya yang ditujukan
untuk "pendidikan" saja
Defacing umumnya dapat terjadi dikarenakan:
A. <internal>
1. Kesalahan konfigurasi
Apabila tidak di konfigurasikan dengan baik malah akan menjadi 'bumerang' bagi sistem itu
sendiri.bisa jadi sesuai dengan istilah 'pagar makan tanaman'. Perlu adanya ketelitian dan
pengecekan ulang.
cara menanggulanginya : Ada baiknya berhati hati dalam mengkonfigurasi, sesuaikan semua
kebutuhan dengan peripheral + SDM yang dimiliki untuk dapat dihasilkan semua policy yang
dahsyat!
2. kelalaian admin
Apabila Konfigurasi telah sesuai, maka faktor ' man behind the gun' yang akan berbicara banyak;
sehingga faktor internal kedua adalah manusia yang menggelola server tersebut:
adapun jenis kelalaian yang dapat terjadi adalah :
install file & folder
webmaster atau admin biasanya lalai dalam menghapus file yang digunakan untuk
menginstallasi portal web model CMS.
Contoh : folder /install,dan file install.php pada phpnuke, postnuke, phpbb, dsb
untuk menanggulanginnya : ada baiknya seorang administrator membaca manual (kerjaan
admin!!) modul CMS yang di gunakan dan melakukan uji silang (cross check) alias "posisikan
anda sebagai attacker"
file konfigurasi & permision
webmaster atau admin lupa mengatur permisi pada file file konfigurasi yang penting, yang
menyangkut administrasi dan konfigurasi file, khususnya file-file yang mencatat password, baik
password database dsb.
Contoh : file config.txt, config.php, config.inc
untuk menanggulanginya : biasanya di gunakan perintah chmod pada file dan folder chown dan
chattr
run of date
Terlalu lama peng-update-an suatu web atau tidak secara terus-terusan mengupdate webnya
khususnya portal yang dibundel dalam CMS, serta juga packet packet yang terinstalasi di mesin
baik itu web server sendiri , database server dan sebagainya yang bisa menjadi pintu masuk bagi
'defacer'.
untuk menanggulanginya : anda cuma perlu rajin rajin dan rutin menggunjungi situs situs yang
menyediakan update dari packet yang digunain.
run of services
kesalahan konfigurasi terhadap services/layanan yang diberikan khususnya terlalu banyak
menjalankan layanan yang tidak diperlukan pada setiap server.
services ===> port
semakin banyak layanan yang di jalankan maka akan semakin banyak port yang di gunakan untuk
melayani layanan tersebut, sehingga semakin banyak yang perlu diperhatikan. Pengkerucutan
atau minimalisir layanan adalah cara yang dapat di lakukan.
cara menanggulanginya : Audit semua sistem anda sebelum di 'launch' cek semua services
yang berjalan dan sesuaikan dengan kebutuhan!
cannot keep secret
berkaitan dengan "social engineering", maka kepercayaan adalah hal terpenting, "TRusT NO
BODY" mungkin pilihan yang sangat masuk akal dalam menanggulangi hal ini. Pribadi dan mental
seorang webmaster atau admin sangat menentukan!
cara menanggulanginya : keep your own secret alias "inget man!! lo tu admin! bukan tukang
gosip yang EMBERRRR" :P
Kurang berhati-hati saat login ke mesin dsb
Sniffing yang dilakukan dari jaringan lokal sangat berkemungkinan untuk mendapatkan password
yang di pakai oleh r00t, admin, webmaster dsb.
cara menanggulanginya : setting server anda untuk menolak melakukan login baik remote dan
lokal untuk tidak menggunakan, gunakan perintah substitute. untuk login secara remote
upayakan penggunaan SSH dan SSL, beberapa konfigurasi mungkin dapat berguna untuk
menanggulanginya, baik konfigurasi pc yang boleh akses remote baik berdasar ip, konfigurasi
di jaringan, firewall dsb
3. pengkhianatan
Apabila anda sering membaca, mendengar atau berdiskusi tentang berbagai kebocoran akibat 'social
engineering' yang dilakukan, mungkin hal ini sudah menjadi maklum bagi anda semua. Apalagi bagi
anda yang pernah membaca buku 'art of deception' karangan kevin mitnick maka anda akan
memahami betapa besarnya kebocoran yang tercipta dari penggunaan metoda tersebut. Bayangkan
jika hal tersebut terjadi dikarenakan unsur kesengajaan ? .
Mungkin terlalu sangar juga kata kata itu (hehe), tetapi apa boleh buat, hal ini pernah terjadi bahkan
sering terjadi. mungkin juga beberapa intrik politis dan sosial sudah bergabung didalamnya, so sangat
mungkin hal ini terjadi. adapun beberapa individu yang mungkin terkena :
1. Administrator
2. Second Admin /Staff
3. WebMaster
4. User yang terdapat di mesin Server
cara menanggulanginya : Jaga kerahasiaan dan jangan mengumbarnya pada siapapun.
B. <eksternal>
1. sofware vulnerabilities
Software vulnerabilities disini adalah kelemahan, atau kesalahan yang dimiliki oleh
software/program yang dipakai baik secara sengaja atau tidak sengaja.
Khususnya software-software Open source / atau yang berlicensi GPL, maka tidaklah aneh
apabila dalam hitungan hari, atau malah jam dapat diketahui kelemahan suatu software. Banyak
situs yang membahas dan melaporkan vulnerabilities suatu software baik itu situs resmi
software tersebut atau situs situs keamaanan, info ini bisa menjadi 'senjata ampuh bagi para
'defacer' atau bahkan bisa menjadi perisai ampuh bagi webmaster atau admin.
cara menanggulanginya : rajin browsing untuk menggunjungi situs resmi software software
yang anda gunakan , baca berita 'security' buatlah ikatan antara diri anada dengan komunitas
opensource yang kamu pakai secara khusus dan komunitas opensource secara umum. Sehingga
kamu gak merasa di tinggalkan. jangan takut!! bisa jadi kebocoran itu ditemukan tetapi dlam
waktu cepat juga bisa ditemukan 'obatnya'. lakukan semua langkah langkah penting, apakah
menonaktifkan fiture atau fasilitas tertentu yang dijalankan; yang diketahui 'bolong' dan
belum dimiliki atau di temukan patchnya. atau diskusikan!! you have the community now!
2. sistem vulnerabilities
sistem operasi dari server khususnya 'kernel' yang dikembangkan oleh pengembang khusus
kernel (http://kernel.org) sehingga bukannya tidak mungkin kebocoran ini di perbaiki
ahil. kasus seperti ini cukup jarang, umumnya cara yang ditempuh bisa dilakukan secara lokal
/local exsploit (kasus yang terjadi baru baru ini : mremap) kecuali* exploitasi pada 'DCOM RPC'
yang berakibat kesalahan itu bisa di eksploitasi secara remote dan berbahaya sekali bagi mesin
dikarenakan akan memberikan akses administrator (baca eksploitasi pada DCOM RPC win*)
cara menanggulanginya :
a. seperti biasa pergi ke situs penyedia sistem operasi (kernel) untuk info dan patch yang
disediakan
b. ke situs-situs 'security , cari kelemahannya usahakan melakukan penanggulangan
semampunya.
c. Diskusikan di komunitas
3. run of control
suatu kesulitan untuk melakukan Kontrol terhadap beberapa metoda serangan tertentu oleh
administrator , hal ini bisa dikarenakan penggunaan beberapa fasilitas atau metode serangan
yang cukup relatif sulit untuk di elakkan.
serangan-serangan ini sangat umum di ketahui, diantaranya:
1. Brute forcing
Brute force attack adalah jenis serangan yang dilakukan dengan melakukan berbagai
bentuk kombinasi karakter yang akan di cobakan sebagai password detil soal BFA (brute
force attack) dapat di baca pada artikel artikel yang khusus membahas soal bruteforcing .
metode ini mungkin yang paling kekal, alias sudah lama tetapi tetap dipakai dikarenakan
kelebihannya yaitu tidak perlu mengetahui sistem enkripsi, atau metoda pengamanan
khususnya untuk login. tetapi memiliki berbagai 'keterbatasan tersendiri, baik dalam hal
kecepatan khususnya.
Contoh : penggunaan brutus sebagai program yang cukup ampuh untuk membrute
password baik, ftp, http, smtp dsb
2. Dictionarry attack
metode ini menggunakan kamus kata yang sering di gunakan, walau tetap memiliki prinsip
yang sama dengan Brute forcing. target serangan ini adalah password , atau bis
adikatakan attack terhadap authentication
3. DOS attack
Denial of Service adalah aktifitas menghambat kerja sebuah layanan (servis) atau
mematikan-nya, sehingga user yang berhak/berkepentingan tidak dapat menggunakan
layanan tersebut. Dampak akhir dari aktifitas ini menjurus kepada tehambatnya aktifitas
korban yang dapat berakibat sangat fatal (dalam kasus tertentu). salah satu tujuan dari
kegiatan defacing adalah untuk melakukan kegiatan yang mengakibatkan user kesulitan
mendapatkan info dari situs situs yang vital, seperti situs surat kabar, perbankan,
pemerintahan, dsb. apabila terlalu sulit untuk merubah tampilannya (deface) maka tak jarang
situs tersebut di buat ' tidur' (downkan) agar tak bisa beraktivitas dan menghambat interaksi
terhadap user/pelanggan. adapun kelemahan metode ini adalah penggunaan resource secara
'boros' yang secara tidak langsung akan menyulitkan 'attacker' itu sendiri
4. Sniffing.
Kegiatan ini sulit di elakkan, tetapi dapat di tanggulangi dengan beberapa cara di atas.
biasanya di gunakan ettercap, ethereal, dsb
SLIDE 4
Teknik-Teknik Deface Situs Web
Teknik Web Deface dan Cara Pencegahannya
Beberapa minggu lalu, ketika masalah pemukulan warga negara Indonesia oleh polisi Malaysia, dunia
internet Indonesia ramai oleh kelakuan para hacker merusak tampilan situs-situs yang berdomain
Malaysia.
Juga beberapa bulan lalu ketika krisis Ambalat berlangsung, kedua kubu saling serang web deface.
Deface adalah teknik mengganti atau menyisipkan file pada server, teknik ini dapat dilakukan karena
terdapat lubang pada sistem security yang ada di dalam sebuah aplikasi.
Defacer website dapat merubah tampilan sebagian atau seluruhnya tergantung kemauan defacer dan
lubang yang bisa dimasuki, namun jika dia sudah putus asa, defacer akan melakukan denial of servis
(DoS) attack yaitu mengirimkan request palsu pada server yang berlebihan sehingga kerja server
lambat dan lama-kelamaan server akan crash dan down.
Untuk dapat melakukan web deface, defacer melakukan beberapa tahap sebagai berikut :
a. Mencari kelemahan pada sistem security, menemukan celah yang dapat dimasuki untuk melakukan
eksplorasi di server target. Dia akan melakukan scanning tentang sistem operasi, service pack, service
yang enable, port yang terbuka, dan lain sebagainya. Kemudian dianalisa celah mana yang bisa
dimasuki.
b. Melakukan penyusupan ke server korban. Teknik ini dia akan menggunakan beberapa tools, file yang
akan disisipkan, file exploit yang dibuat sengaja untuk di-copy-kan. Setelah berhasil masuk , tangan-
tangan defacer bisa mengobok-obok isi server. Tapi tidak adil kiranya jika hanya sharing tentang
teknik deface web. Maka untuk pengelola situs harus waspada, karena deface bisa jadi bencana yang
sangat merepotkan. Pekerjaan menata ulang dan memperbaiki bagian yang rusak, bukan pekerjaan
yang mudah.
Karena itu sebelum situs anda digerayangi seyogyanya melakukan langkah-langkah preventif sebagai
berikut :
1. Rutin melakukan update, upgrade dan patch pada sistem operasi dan aplikasi-aplikasi yang
dipakai.
2. Memeriksa ulang dan memperbaiki konfigurasi pada sistem operasi, web server dan aplikasi
lainnya.
3. Menganalisa kembali service-service yang aktif, matikan jika tidak perlu.
4. Mengatur jadwal untuk melakukan backup data penting, file konfigurasi sistem, database,
sehingga jika sewaktu-waktu terjadi deface, anda tinggal menggunakan data backup.
5. Melindungi server dengan firewall dan IDS. Kedua tools ini ampuh untuk mengatasi serangan
Denial of service(DoS) attack.
6. Selalu memperhatikan hal-hal yang mencurigakan pada server, baca log system operasi, log web
server ataupun log aplikasi.
7. Melakukan vulnerability scanning secara rutin, juga melakukan private security test.
Demikian beberapa trik, baik melakukan deface (meskipun tak secara detail/teknis) maupun
menangkal deface. Semoga website anda aman dari serangan para hacker
SLIDE 5
NETCATNetcat merupakan tools yang banyak dipakai para hacker. Kepopulerannya terlihat dari hasil survey lebih
dari 1000 pengguna Nmap pada tahun 2000 dan 2003 yang menempatkannya pada urutan 5 besar, yaitu
urutan ke 2 pada tahun 2000 dan urutan ke 4 pada tahun 2003.
Tools ini sering disebut sebagai "TCP/IP Swiss Army Knife"-nya para hacker. Versi orisinalnya ditulis untuk
sistem operasi Unix oleh Hobbit ([email protected]) pada tahun 1995. Versi Windows NT dikerjakan oleh
Weld Pond ([email protected]).
Fitur dari Netcat antara lain adalah:
Dapat mebangun koneksi Outbound dan inbound dengan TCP atau UDP, di dan dari port mana
saja.
Dapat membaca argumen pada command line dari standar input
Full DNS forwarding/reverse checking
Kemampuan untuk menggunakan any local source port
Kemampuan menggunakan any locally-configured network source address
Tersedia port scanning secara built-in
Dan lain-lain
Dengan fitur di atas, banyak para hacker dan pengelola sistem memanfaatkan untuk melakukan hal-
hal sebagai berikut:
Scanning port dan menginventori service-service yang terpasang pada server
File transfer
Pengujian dan simulasi terhadap server
Pengujian terhadap firewall, proxy dan gateway
Pengujian performance network
Pengujian address spoofing
Banner grabbing
SLIDE 6
Mengamankan Server IIS dari Deface
Deface banyak terjadi pada situs e-commerce web yang menggunakan MS IIS. Ini dikarenakan adanya bug pada IIS yang dikenal sebagai unicode bug. Dengan adanya bug ini seseorang dapat mengakses command line shell cmd.exe pada server keluarga Windows NT. Kelemahan IIS ini sempat ramai dibicarakan orang karena banyaknya korban. Mengakses server dengan memanfaatkan Unicode bug itu sendiri dilakukan melalui service http ( port 80 ), port yang pasti dibuka untuk memberikan layanan web.
Pada kasus, setelah berhasil masuk ke sistem, pelaku web hacking menggunakan tool TFTP untuk melakukan transfer terhadap halaman web dengan desain ‘kreatif’ yang dimilikinya untuk mengubah tampilan web target.
Untuk mengamanankan sever IIS dari deface,
1. server harus secara berkala di-update dengan sercvice pack dan hotfix terbaru. 2. Lebih baik lagi kalau situs e-commerce itu juga dilindungi oleh firewall dan IDS ( intrusion detection
system ).
Tapi semua itu ternyata belum menjamin keamanan situs ecommerce dari deface. Seperti pada contoh kasus kita, ternyata setelah semua usaha di atas, ternyata masih terkena deface juga.Walaupun kini deface yang terjadi tidak terlalu mempunyai nilai seni, tetapi tetap efektif
Bagaimana hal ini bisa terjadi?
Hal ini dapat terjadi karena setting pada protokol HTTP 1.0 atau HTTP 1.1 yang merupakan protokol utama untuk web itu sendiri, yaitu adanya opsi untuk dapat membaca dan menulis lewat protokol-protokol ini. HTTP 1.0 RFC 1945 (http://www.ietf.org/rfc/rfc1945.txt) Finalized May 1996 Didukung oleh sebagian besar Web server dan browser HTTP 1.1 RFC 2616 (http://www.ietf.org/rfc/rfc2616.txt) Finalized 2001 Standard Baru Komunikasi Web
Beberapa perintah HTTP 1.0
a. GET Untuk mengambil informasi dari sistem, seperti halaman html GET /default.htm HTTP/1.0b. HEAD Untuk mengambil informasi mengenai system HEAD HTTP/1.0 (untuk menentukan OS/WEB)
c. POST Mengirimkan Informasi ke sistem
d. Perintah-perintah yang didukung HTTP 1.1.
e. CONNECT*, DELETE*, GET, HEAD, OPTIONS, POST,
f. PUT,TRACE
Dengan memanfaatkan hanya perintah-perintah dasar dari HTTP, seorang hacker dapat men-deface suatu situs web. Berikut ini adalah perintah-perintah yang dijalankannya:
a. OPTIONS * HTTP/1.1b. PUT /file.ext HTTP/1.1
c. Host: hostname
d. Content-Length: jumlahkarakter data yang dikirim
Terlihat bahwa hal ini terjadi karena setting server yang tidak sempurna. Untuk itu perlu dilakukan beberapa hal:
• Setting untuk menulis dari HTTP dihilangkan• Menggunakan security template dari Microsoft, NSA, dan lain sebagainya.• Menggunakan berbagai dokument setting server agar aman
SLIDE 7
SQL Injection
SQL injection adalah sebuah aksi hacking yang dilakukan di aplikasi client dengan cara memodifikasi perintah SQL yang ada di memori aplikasi client.
SQL Injection merupakan teknik mengeksploitasi web aplikasi yang didalamnya menggunakan database untuk penyimpanan data.
Sebab terjadinya SQL Injection adalah tidak adanya penanganan terhadap karakter – karakter tanda petik satu ’ dan juga karakter double minus — yang menyebabkan suatu aplikasi dapat disisipi dengan perintah SQL. Sehingga seorang Hacker menyisipkan perintah SQL kedalam suatu parameter maupun suatu form. Peran logika sangat diperlukan disini.
SQL Injection juga bisa di sisipkan dalam parameter URL. Seperti kasus situs KPU yang di hack dan nama partai nya diubah menjadi nama-nama yang lucu. Pelaku penyerangan menyusupkan perintah SQL:
“UPDATE nama_table SET nama_partai bla..bla..” lewat URL browsernya.
Pertanyaan selanjutnya, bagaimana cara untuk mengetahui nama_table dan nama field pada table tersebut?Ini hanya masalah trial and error. Untuk pertama kali, masukan saja nama table apapun. Kemudian, pelaku bisa memanfaatkan pesan error yang keluar dari DBServer sebagai petunjuk. Sebaiknya fasilitas pesan error hanya dimanfaatkan ketika developing web sedang berjalan. Tapi kemudian dimatikan setelah situs go public/online. Biasanya admin yang telah berpengalaman suka mematikan fitur error message demi alasan keamanan situsnya.
Contoh sintaks SQL dalam PHP
$SQL=“select * from login where username =’$username’ and password = ‘$password’”; {dari GET atau POST variable} isikan password dengan string ’ or ’’ = ’ hasilnya maka SQL akan seperti ini = “select * from login where username = ’$username’ and password=’pass’ or ‘=′”; {dengan SQL ini hasil selection akan selalu TRUE} maka kita bisa inject sintax SQL (dalam hal ini OR) kedalam SQL
SQL Injection
Situs e-commerce yang menggunakan Microsoft IIS juga menggunakan database access dengan Micosoft SQL server dan dibandingkan dengan SQL server yang lain, MS SQL server mempunyai kelemahan yang memungkinkan seseorang tanpa account dapat masuk dan lolos verifikasi dari MS SQL server. Dari segi kerugian, hal ini lebih serius, sebab bisa saja data
sensitif seperti nomor kartu kredit serta lainnya bocor! Pada saat seseorang berusaha masuk ke situs e-commerce, biasanya akan disambut dengan halaman login yang mengharuskan pemakai memasukkan login name dan password. Setelah pemakai memasukkan username dan password, secara umum SQL akan melakukan verfikasi terpadap SQL query sebagai berikut:
SQLQuery = “SELECT Username FROM Users WHERE Username = ‘” & strUsername & “‘ AND Password = ‘” & strPassword & “‘“
Kelemahan verifikasi MS SQL disini mirip dengan kelemahan unicode bug, yaitu tetap memproses (dengan bingung) input-input ilegal pada username dan menghasilkan error page. Pada error page ini akan terbaca struktur database-nya. Jadi kalau username-nya diisikan karakter-karakter ilegal seperti misalnya:
‘ OR ‘ ‘= dan untuk password-nya disikan juga ‘ OR ‘ ‘= maka SQL query akan membacanya sebagai:
SELECT Username FROM Users WHERE Username = ‘ ‘ OR ‘ ‘=‘ ‘ AND Password = ‘ ‘ OR ‘ ‘=‘ ‘
yang artinya SQL query akan memvalidasi username kosong (blank) dan password kosong sebagai user yang sah.
Keberhasilan SQL Injection ditandai dengan adanya ODBC error, internal server error, masalah dalam memproses request, syntax error, dan lain sebagainya.
Untuk mengatasi hal ini, atur agar:• Hanya karakter tertentu yang boleh diinput.• Jika terdeteksi adanya illegal character, langsung tolak permintaan.
Angka Minus dalam Program Bisnis
Pengamanan terhadap kelemahan SQL query bukan berarti suatu situs e-commerce sudah aman. Yang banyak terjadi adalah bahwa suatu situs e-commerce secara desain memang sudah tidak aman. Hal ini terutama pada situs situs yang menggunakan scripting language. Pada kebanyakan program bisnis, tanda minus digunakan untuk menandai pembayaran, sedangkan pemesanan barang tentunya tidak ada yang menggunakan tanda minus.
Tetapi cukup banyak situs e-commerce yang didesain secara ceroboh dan tetap memproses tanda minus pada jumlah barang yang dipesan, misalnya. Hal ini apabila dilakukan dengan kreatif, yaitu mengkombinasikan pesanan dengan jumlah barang negatif dan jumlah barang lain yang positif, dalam prosesnya bisa mengakibatkan pengiriman barang dilakukan tanpa mengharuskan adanya pembayaran.
Cara pencegahan SQL INJECTION
Batasi panjang input box (jika memungkinkan), dengan cara membatasinya di kode program, jadi si cracker pemula akan bingung sejenak melihat input box nya yang tidak bisa diinject dengan perintah yang panjang.
Filter input yang dimasukkan oleh user, terutama penggunaan tanda kutip tunggal (Input Validation).
Matikan atau sembunyikan pesan-pesan error yang keluar dari SQL Server yang berjalan.
Matikan fasilitas-fasilitas standar seperti Stored Procedures, Extended Stored Procedures jika memungkinkan.
Ubah “Startup and run SQL Server” menggunakan low privilege user di SQL Server Security tab.
SLIDE 8
JavaScript: Client Side Scripting
JavaScript sendiri merupakan suatu scripting language yang dieksekusi di sisi client (komputer pengguna), sehingga suatu transaksi yang menggunakan JavaScript sebagai scripting language-nya dapat dipastikan sangat rawan terhadap manipulasi dari sisi pemakai.
Contoh scripting language yang bekerja di sisi client:
• JavaScript• Client side VB Script
Adapun scripting language di sisi server:L
ASP (Active Server Pages)Suatu program yang mengolah script program dalam lingkungan server yang selanjutnya diserahkan ke client. ASP ini digunakan untuk membagun suatu halaman web secara dinamis atau untuk membangun suatu sistem berbasis web. Halaman yang dibuat dengan menggunakan ASP ini, mengandung tag HTML, teks, serta script dari bahasa pemrograman. Halaman dengan ASP ini, dapat memanggil Component Object Model (COM) yang merupakan kumpulan dari komponen untuk melakukan berbagai kegiatan secara elektronik, seperti koneksi ke database, atau untuk melakukan penghitungan dalam bisnis. Dengan menggunakan ASP ini, dapat menambahkan isi dari suatu web, atau membangun seluruh aplikasi web yang menggunakan halaman HTML.
Dikeluarkan oleh Microsoft. Teknologi ini bukanlah bahasa pemrograman, karena ia masih menggunakan instruksi-instruksi dan functions yang ada pada script lain yang juga hasil rekaan Microsoft, VBScript dan JScript.
• JSP (Java Server Pages)Java Server Pages (JSP) merupakan sebuah tenologi servlet-based yang digunakan pada web tier untuk menghadirkan dynamic dan static content. JSP merupakan text-based dan kebanyakan berisi template text HTML yang digabungkan dengan spesifik tags dynamic content.
• PHP (Personal Home Page)PHP adalah suatu bahasa server-side yang didesain khusus dengan aplikasi web.coding PHP dapat disisipkan diantara bahasa HTML dan karna bahasa server side, maka bahasa PHP akan dieksekusi oleh server, sehingga yang dikirimkan kebrowser adalah “hasil jadi” dalam bentuk HTML sehingga kode PHP tidak akan dapat anda lihat.
SLIDE 9
Kelemahan Dasar HTML Form
Setelah semua di atas diatasi, juga masih belum semuanya seratus persen aman. Pasalnya HTML sendiri, bahasa universal yang digunakan oleh web mempunyai karakteristik yang bisa disalah gunakan.
Formulir dalam format HTML (HTML Form) adalah tampilan yang digunakan untuk menampilkan jendela untuk memasukkan username dan password. Setiap HTML form harus menggunakan salah satu metode pengisian formulir, yaitu GET atau POST.
Berikut ini adalah kode HTML dari suatu login form : username: input name=user type=text width=20> password: input name=pass type=password width=20>
Melalui kedua metode HTTP ini (GET atau POST) parameter disampaikan ke aplikasi di sisi server.
Masalahnya dengan menggunakan GET, variabel yang digunakan akan terlihat pada kotak URL, yang memungkinkan pengunjung langsung memasukkan karakter pada form process, selain juga perintah GET dibatasi oleh string sepanjang 2047 karakter. Variabel juga dapat diambil dengan Request.QueryString.
POST biasa digunakan untuk mengirim data dalam jumlah besar ke aplikasi di sisi server, sehingga tidak menggunakan URL query string yang terbatas. POST juga lebih aman sebab variabel tidak terlihat oleh pengunjung, sehingga lebih sulit dimainkan lewat perubahan nama variabel. Namun variabel tetap dapat diambil dengan RequestForm.
Kesimpulan
Hacking meliputi semua unsur dan tidak hanya pada satu sisi sistem operasi. Tidak semua bug di ketahui pembuat software.
Kesalahan konfigurasi adalah masalah umum yang disebabkan penguasaan yang kurang atas suatu sistem.
Menjadi hacker itu mudah; hanya menggunakan tools yang dibuat oleh hacker luar ( script kiddies ).
Tidak diperlukan pengertian akan network, TCP/IP, Assembly, C, dan lain-lain untuk menjadi Hacker.
Programmer handal bisa dengan mudah menjadi hacker juga.
Serangan tidak hanya melalui network layer, tapi juga application layer.
70% serangan melalui port 80/aplikasi.
Kerugian terbesar berasal serangan dari orang dalam, dan 80% serangan dilakukan oleh orang dalam.
Cara yang tercepat dan paling mudah serta yang dulu paling sering dilakukan adalah dengan
menggunakan exploit yang sudah tersedia di internet. Instant sekali. Kita cukup cari target, scanning,
compile exploit, execute exploit dan hapalkan dasar-dasar perintah OS yang digunakan, so anda sudah
memiliki server tersebut.
Secara garis besar exploit yang dipergunakan oleh cracker untuk masuk ke sebuah server dapat dibagi
dalam dua bagian yaitu :
3. Lokal Exploit
Yang dimaksud dengan lokal exploit adalah exploit yang hanya dapat diexecute pada komputer itu
sendiri. Artinya exploit ini tidak dapat diexecute dari komputer pribadi untuk memasuki komputer
lain. Biasanya lokal exploit diexecute dan akan bisa menguasai sistem dengan memanfaatkan
kelemahan yang ada pada sistem operasi ataupun pada aplikasi yang dijalankan oleh server.
4. Remote Exploit
Remote exploit adalah exploit yang dapat diexecute dari jarak jauh. Artinya dengan menggunakan
exploit ini, maka anda dapat masuk ke komputer lain melalui komputer pribadi dengan
memanfaatkan kelemahan aplikasi yang berjalan di komputer lain tersebut. Bagi sebagian orang lebih
menyenangkan untuk menggunakan remote exploit daripada lokal exploit karena biasanya remote
exploit juga bisa menjadi lokal exploit dan tidak berlaku sebaliknya.
Dari contoh di atas, ada beberapa hal yang menjadi catatan penting bagi saya dan (mungkin) ini akan
menjadi pedoman penting bagi SysAdmin untuk tahu tingkat resiko keamanan pada server yang ia kelola.
Misalkan saja informasi server yang dikelola seperti tercantum di bawah ini :
1. Sistem Operasi yang digunakan adalah Redhat Linux 7.0
2. Aplikasi Web Server yang digunakan adalah Apache Web Server (Misalkan saja versi 1.3.20)
3. Database Mysql versi 3.2.23
4. PHP Engine versi 4.1.x
5. Aplikasi web base yang menggunakan PHP dan MySQL.
Jika digambarkan dalam bentuk diagram pohon kurang lebihnya adalah sebagai berikut :
Sistem Operasi [Level 1] :
+ Apache [Level 2]
+ Engine PHP [Level 3]
+ Aplikasi Web Based/Scripting PHP [Level 4]
+ MySQL [Level 2]
Dari informasi spesifikasi diatas maka dapat diketahui tingkat keamanan komputer tersebut :
1. Keamanan pada Sistem Operasi (Versi Kernel yang digunakan) -Tingkat Keamanan Level 1-
Jantung dari sistem operasi linux adalah kernel. Kesalahan pemrograman yang terjadi pada kernel akan
berakibat fatal dengan tidak berjalannya sistem secara maksimal. Untuk hal ini coba cari tahu kernel yang
digunakan versi berapa dan apakah memiliki bug/hole?. Jika memang terbukti memiliki bug/hole, maka
sebaiknya secepatnya di upgrade dengan versi yang lebih tinggi. Biasanya pada level ini lokal exploit yang
paling sering berperan untuk mendapatkan akses ke sebuah sistem, walaupun tidak menutup
kemungkinan bagi remote exploit untuk mendapatkannya.
2. Keamanan pada Aplikasi Web Server (Versi Apache yang digunakan) -Tingkat Keamanan Level 2-
Apache adalah salah satu aplikasi web server yang banyak digunakan di dunia. Pada level ini yang harus
anda perhatikan adalah versi apache yang digunakan. Jika memang terbukti versi ini memiliki bug/hole,
segeralah upgrade apache yang anda miliki. Sesuaikan lagi konfigurasi apache dengan keinginan anda.
Matikan module-module apache yang memang tidak digunakan. Ganti username dan group aplikasi ini ke
user yang tidak memiliki akses shell seperti nobody. Jangan pasrahkan konfigurasi apache dengan
konfigurasi default dari proses instalasi. Pada level ini exploit yang paling sering dipergunakan adalah
remote exploit, karena pada level ini aplikasi apache terbuka pada port 80, sehingga ada kemungkinan
untuk dibobol/disusupi dari jarak jauh.
3. Keamanan pada Aplikasi MySQL (versi MySQL yang digunakan) -Tingkat Keamanan Level 2-
MySQL adalah salah satu database SQL yang cukup populer dan banyak dipergunakan di internet.
Integrasinya yang simple, clean and fast dengan PHP membuktikan salah satu kelebihan PHP untuk
menguasai pasar aplikasi berbasis web based. Tidak berbeda jauh dengan Apache dan PHP, maka hal
terpenting yang harus dilihat disini adalah versi MySQL yang anda gunakan. Pastikan bahwa pada versi ini
tidak memiliki bug/hole. Hal lainnya yang perlu menjadi perhatian adalah segera merubah password
default administrator database MySQL. Default instalasi MySQL memberikan hak akses kepada user root
dengan priveleges penuh dan tanpa password!. Bayangkan jika anda lalai untuk merubahnya?
Jika database ini terkoneksi dengan internet/web, buatlah user MySQL dengan priveleges yang berbeda
dengan priveleges administrator (don’t ask me how to do this, please ask to uncle google . Database
MySQL membuka port 3306. Sehingga ada kemungkinan untuk di exploitasi dengan menggunakan
remote exploit ataupun lokal exploit.
Secara umum pada level 2 yang harus diperhatikan bahwa semua exploit yang beredar di internet sangat
banyak sekali yang memanfaatkan bug/hole pada level aplikasi. Anda dapat mengikuti berita keamanan
aplikasi yang anda gunakan melalui situs-situs resmi aplikasi tersebut. Disini dibutuhkan kecermatan dan
kecepatan anda dalam mengikuti informasi tentang keamanan internet. Jangan pernah lupa untuk
mengupgrade, jika memang situs resmi aplikasi tersebut menyarankannya. Jadi pada level ini salah satu
cara untuk menghindari berperang dengan cracker adalah dengan selalu mengikuti berita/news untuk
aplikasi yang anda jalankan. Lengah sedikit, bisa jadi server anda yang menjadi target .
4. Keamanan pada Aplikasi PHP (Versi PHP yang digunakan) -Tingkat Keamanan Level 3-
PHP adalah sebuah bahasa pemrograman yang saat ini banyak sekali dipergunakan di internet. banyak
sekali situs komersial yang menggunakan PHP agar situsnya terlihat dinamis dan lebih interaktif. Namun
pada level 2, PHP yang dibicarakan disini bukan pada kode pemrograman (scripting) yang telah dilakukan,
namun pada engine PHP yang digunakan. Sama seperti pada apache di level ini harus diperhatikan
apakah versi php yang digunakan memiliki bug/hole. Jika memang terbukti segeralah uprade versi php
tersebut. Selain itu jangan serahkan konfigurasi php pada hasil default instalasi. Rubahlah beberapa
variabelnya sesuai dengan keinginan anda. Beberapa hal yang terpenting pada konfigurasi php antara lain
adalah SAFE_MODE dan REGISTER_GLOBAL. Cobalah bertanya lebih lanjut tentang konfigurasi PHP pada
paman google . AFAIK, engine PHP tidak dapat diexploitasi dengan remote exploit karena engine PHP
tidak pernah membuka diri pada port tertentu. Jadi kalaupun ingin mengexploitasi engine! PHP hanya
dapat menggunakan lokal exploit. CMIIW.
5. Keamanan pada Aplikasi Web Based yang berjalan -Tingkat Keamanan Level 4-
Membangun sebuah aplikasi yang berbasis web adalah hal yang menyenangkan. Bagaimana tidak?,
dengan membangun aplikasi berbasis web, maka aplikasi tersebut akan berjalan pada berbagai platform
sistem operasi, selain itu untuk pengembangan lebih lanjut juga akan mudah sekali. Namun dibalik itu
semua, ternyata aplikasi berbasis web juga menyimpan sebuah bahaya yang sangat besar bagi keamanan
komputer. Tercatat pada memori saya beberapa hal yang dapat dilakukan hanya karena kesalahan
scripting aplikasi web based, antara lain :
1. Mengupload file seperti eggdrop, psybnc, dll.
2. Mendownload backdoor seperti bindtty, yang berakibat cracker akan memiliki akses shell dan
selanjutnya tinggal mencari lokal exploit.
3. Mengacak-acak database MySQL
4. Mengintip nama-nama user yang berada pada /etc/passwd
5. Mendefaced website
Sehebat apapun proteksi sebuah sistem tidak dapat menutupi kelemahan yang ada pada aplikasi web
based. Salah satu contoh konkret yang terlihat sampai dengan saat ini adalah bobolnya Situs KPU karena
bug/hole SQL Injection. Dani Firman Syah a.k.a xnuxer berhasil dengan baik memanfaatkan kesalahan
scripting yang dilakukan oleh Tim IT KPU, sehingga dia berhasil merubah nama-nama partai yang ada
dalam database.
Kelemahan web based biasanya bisa terjadi karena :
1. Kurang mampu dalam menganalis algoritma pemrograman web based.
2. Penggunaan fungsi-fungsi pemrograman web based yang tidak sesuai dengan tempatnya.
3. Ketidakhati-hatian dalam menggunakan CMS yang sudah jadi seperti Php-Nuke, Post-Nuke,
Mambo, dll.
4. Tidak adanya perbedaan method POST dan GET pada aplikasi web based yang digunakan
5. Masih banyak lagi yang lain
Saran saya untuk level ini (jika anda membuat sendiri aplikasi web based). Coba dan cobalah terus
berlatih untuk membuat sebuah algoritma pemrograman web yang ‘bersih’, ‘rapi’, ‘teratur’ dan sesuai
dengan fungsinya. Jangan pernah merasa bahwa aplikasi yang anda buat adalah aplikasi yang handal dan
tidak bisa ditembus orang lain. Kalau perlu mintalah tolong kepada orang lain untuk mengecek algoritma
pemrograman anda dan mengetest kode pemrograman anda. Jangan publish aplikasi web based tersebut
jika anda belum yakin dengan algoritma yang telah anda susun.
Jika menggunakan CMS yang sudah jadi, cobalah ikuti berita bug/hole yang dimilikinya. Sampai dengan
saat ini seperti Php-Nuke sudah sering sekali memiliki kelemahan pada bug/hole SQL injection.
Kelemahan yang ada pada Php-Nuke ini dimanfaatkan beberapa gelintir orang untuk membuat remote
exploitnya yang berbasis pada pemrograman perl ataupun php. Untuk hal ini saya cuma bisa
menyarankan jangan pernah anda lengah dengan menggunakan versi CMS yang ternyata memiliki
bug/hole .
Untuk lebih tahu detail tentang bahayanya aplikasi web based dengan menggunakan PHP, silahkan buka
arsip diskusi milis [email protected] beberapa bulan yang lalu, disitu dibahas
tentang bahayanya beberapa hal seperti GET, POST, INCLUDE, REFERRER (based on PHP), atau kalau
belum puas silahkan cari tutorial di google untuk membuat aplikasi web based yang ‘bersih’.
Teknik Deface
Saat ini mendeface website bukan suatu pekerjaan yang sulit. Bahkan anak kecil pun jika diberitahu cara
mendeface, maka dia dapat mendeface ratusan situs!!! Dan sesungguhnya terdapat banyak cara untuk
mendeface suatu situs !! Namun disini saya akan membahas mengenai cara yang paling mudah,
kebanyaka teknik yang digunakan oleh para hacker, termasuk di Brazil, Arah, USA dan UK serta negara-
negara lainnya. Dan ini bukan sekedar “joke” namun bukti dari konsep. Cukup banyak situs besar yang
telah dihack karena bug ini termasuk situs NASA !!!
Bug
Pertama kali berbicara mengenai bug. OK, Bugnya ada pada ekstensi Frontpage yang ditemukan pada
tahun 2000 namun masih aktif hingga hari ini !!! Ekstensi Frontpage menjadi ‘enabled’ pada Webserver
yang barlainan sehingga admin dapat mengupload file ke server tersebut dari komputer manapun pada
intranet! Saat ini ekstensi Frontpage menjadi ‘enabled’ pada berbagai server yang selanjutnya
didefinisikan menjadi 3 file pada server IIS:
www.site.com/_vti_bin/shtml.dll
www.site.com/_vti_bin/_vti_adm/admin.dll
www.site.com/_vti_bin/_vti_aut/author.dll
Dan jika server tersebut bukan merupakan IIS tapi server jenis lain, seperti Apache maka file tersebut
mempunyai ekstensi file .exe misalnya author.exe
Scanning
Sekarang pertanyaannya adalah bagaimana menemukan situs yang vulnerable! Atau situs yang memiliki
ekstensi Frontpage yang ‘enabled’! OK, sangat mudah membuad suatu program yang dapat mencari situs
yang memiliki author.dll atau author.exe dan jika file tersebut ditemukan maka server tersebut
dikategorikan ‘vulnerable’. Baiklah, sebelumnya saya sudah membuat program scanner untuk keperluan
pribadi tapi saat ini dapat didownload untuk publik. Anda dapat mendownload tool ini yang saya beri
nama “Universal Bug Scanner” dan anda memerlukan Visual Studio yang terinstall pada computer anda
agar dapat menggunakan tool ini. OK? Selanjutnya, kumpulkan daftar situs dengan menggunakan
google/alltheweb/vivisimo/britanica (atau search engine lainnya, meski saya rekomendasikan agar
menggunakan www.alltheweb.com, karena banyak sekali situs yang vulnerable disini J jika dibandingkan
dengan google yang mengutamakan situs-situs yang tergolong secure seperti “asp” , “iis” atau sesuatu
yang seperti itu! Kumpulkan daftar situs dan simpanlah dalam suatu file. Sekarang bukalah Universal Bug
Scanner, upload file tersebut dan mulailah proses scanning untuk mencari situs-situs yang vulnerable.
Dan jika anda ingin menjadi seorang elite hacker, maka sebaiknya anda menggunakan program scanner
buatan anda sendiri OK? Yeah, hal ini tidak hanya meningkatkan pengetahuan tentang pemrograman
anda tapi mendorong anda untuk mengembangkan program scanner yang lebih powerful meliputi jenis
web server, SMTP dan berbagai jenis bug !!!
Deface!!!
1) Nah, sekarang bukalah window My Computer
2) dan double click “Web Folders”!!!
3) double click lagi “Add web folder” dan akan diminta nama situs.
4) Ketiklah nama situs yang tergolong vulnerable
5) click next
6) Setelah request diterima, click Finished.
Tapi jika dikatakan bahwa host not found, cobalah lagi. Dan jika anda mendapatkan warning yang sama,
wah, pasti ada masalah pada sistem windows anda. Install ulang, buddy J dan setelah suatu web folder
dengan nama situs yang vulnerable dibuat
7) Double click dan browse file-file target selayaknya anda menggunakan komputer sendiri!!!
Rename index.html dalam server tersebut dengan nama lain, misalnya indexold.html
9) Copylah index.html karya anda sendiri ke sistem korban. Hmm.. anda sebenarnya dapat mengcopy,
menghapus atau menambahkan sesuatu ke server korban dengan menggunakan web folder sederhana
yang anda buat saat ini dan memperlakukannya selayaknya komputer anda sendiri!!! Keren bukan?
Cracking Password
Oopss… tapi tidak seluruh admin termasuk bodoh yang membiarkan server mereka begitu saja di hacked.
Dari 6 diantara 10 admin memproteksi ekstensi frontpage mereka dengan Password. Jadi saat anda
melakukan double click, web folder tersebut akan meminta suatu username dan password!!! Baiklah, jika
anda tidak ingin mengcrack password maka cobalah cari situs lain saja. Tapi jika ingin meneruskan
hacking web tersebut, maka perlu diperhatikan langkah-langkah berikut ini:
Password untuk ekstensi front page tersimpan dalam file services.pwd dengan format berikut:
username:password
Baiklah, password tersebut tersimpan dalam form yang terenkripsi menggunakan Algorithma DES (jangan
khawatir tutorial mengenai masalah enkripsi-dekripsi/kriptografi akan saya jelaskan nanti J. Ok, sekarang
sama dengan algoritma yang digunakan untuk mengenkripsi password pada sistem operasi Linux. Jadi
kita dapat menggunakan linux passwd cracker untuk mengcrack file services.pwd. Arahkan browser anda
ke situs www.openwall.com dan downloadlah John the Ripper cracker. Sekarang downloadlah file
services.pwd dari mesin korban dan ubahlah file services.pwd sebagaimana file passwd unix dengan tujuh
field sebagai gantir dari dua yang memberikan data acak seperti:
username:password:123:123:something:/home/couldbe_myname:/bin/bash
Ok begitu kita telah memisahkan tujuh field yang terpisah dengan “:” sekarang gunakan JTR cracker untuk
mengcrack password sebagaimana jika kita mengcrack file passwd linux. Dan setelah itu kita akan
mendapatkan password yang sesungguhnya, masukkan dalam web folder dan lakukan proses deface !!
Hei, tunggu dulu ada hal yang berbeda dan harus diperhatikan dalam proses hacking ini!!
Menyembunyikan identitas anda saat hacking adalah seni tersendiri. Anda dapat menuliskan suatu script
asp yang akan menghapus log dan menguplad file asp tersebut ke sistem korban dan bukalah file yang
sama dari browser anda. File log untuk IIS (win2000 server) biasanya tersimpan dalam folder C:\\\\\\\\
WINNT\\\\\\\\SYSTEM32\\\\\\\\LOGFILES\\\\\\\\W3SVC32, dan jika anda tidak mengetahui format file
log ini maka saya rekomendasikan untuk menghapus semua data dalam file ini. Dan jangan khawatir ada
artikel yang membahas cara menghapus log, lengkap dengan source code akan segera kami rilis. Jadi saat
ini saya menganggap anda melakukan deface web site melalui warung internet J keren khan!!! Ingat,
sebaiknya jangan melakukan hal ini dari komputer teman anda yang akan menyeretnya dalam kesulitan
yang anda timbulkan. Dan jika anda melakukannya dari komputer di rumah anda sebaiknya jangan
menghapus segala sesuatu dalam sistem tersebut, agar anda tidak dijerat oleh Undang-Undang Cyber
yang berlaku.
Hmmm… deface pertama anda? Anda benar-benar beruntung. Tapi ingat hal ini tidak akan pernah
menjadikan anda sebagai seorang elite hacker melainkan lamer (pengacau). Artikel ini hanya menjelaskan
teknik populer yang digunakan untuk mendeface. Anda akan terkejut saat mengetahui ada banyak teknik
deface yang ada di internet.
Konsep Jaringan Komputer
Pengantar Jaringan Komputer
Perkembangan Teknologi Informasi (TI) yang sangat pesat saat sekarang ini, tidak terlepas dari peran
teknologi jaringan komputer.
Internet misalnya, merupakan salah satu contoh nyata dari implementasi teknologi jaringan komputer.
Dengan internet, distribusi informasi dapat dilakukan dengan cepat dan mudah tanpa terkendala dengan
jarak, batasan negara dan lain-lain. Orang yang berada di indonesia dapat dengan mudah bertukar
informasi, berkomunikasi, ataupun berbicara dengan orang yang berada di amerika, atau dibelahan dunia
yang lain.
Sebelum teknologi jaringan komputer berkembang seperti sekarang ini, untuk mendistribusikan informasi
dari satu titik ke titik lain, harus dilakukan dengan manual (melalui jasa kurir). Dengan adanya jaringan
komputer, permasalahan tersebut dapat teratasi dengan baik, mudah dan relatif aman.
Sebenarnya, kebutuhan akan jaringan komputer didasari atas perlunya berbabagi data dan sumber daya
komputer antara satu bagian ke bagian lain.
Saat sekarang ini, teknologi jaringan komputer sudah berkembang dengan sangat pesat. Yang awalnya,
kita hanya mengenal jaringan kabel, saat ini kita sudah beri jaringan tanpa kabel (Wi fi), Wimax dan lain-
lain.
Ilustrasi jaringan komputer, bisa dilihat pada gambar berikut:
Prinsip Jaringan Komputer
Prinsip dasar jaringan komputer (computer network) adalah komunikasi antara dua komputer atau lebih,
melalui suatu media tertentu dan dengan aturan tertentu.
Yang dimaksud komunikasi disini meliputi antara lain, proses mengirim data dari pengirim ke penerima,
berbagai sumber daya komputer, mengirim pesan dan lain-lain.
Agar dua komputer dapat saling berkomunikasi, harus ada aturan (protocol) yang mengatur agar
komunikasi dapat saling dimengerti. Kalau ada komunikasi, tapi tidak saling dimengerti artinya sama saja
dengan tidak ada komunikasi.
Dalam melakukan komunikasi, diperlukan suatu media komunikasi yang berguna menghubungkan
beberapa komputer sehingga komunikasi dapat berjalan dengan baik. Media yang umum digunakan
adalah kabel, gelombang radio dan lain-lain.
Secara umum, tujuan dibangunnya jaringan komputer adalah untuk berbagai pakai data, informasi dan
sumber daya komputer (printer, hard disk dll) antara satu pengguna dengan pengguna yang lain.
Jaringan komputer telah terbukti mendatangkan banyak keuntungan dan efisiensi pada semua bidang
kehidupan. Walaupun tidak menutup kelemahan-kelemahan yang terjadi, misalkan masalah keamanan.
Gambar 1.1 Skema Jaringan Komputer
Ilustrasi diatas menggambarkan suatu jaringan komputer yang hanya terdiri dari beberapa komputer.
Masing-masing komputer terhubung ke jaringan (HUB) melalui media kabel. Semua jaringan diatas,
dihubungkan dengan satu server.
Definisi Jaringan Komputer
Definisi jaringan komputer adalah :
“Prosedur beserta berbagai metode teknis untuk saling menghubungkan berbagai alat dan sumber daya
komputer yang ada (interkoneksi), sehingga dapat saling bertukar data dan informasi, dengan
menggunakan sumber daya jaringan yang ada secara bersama-sama”.
Definisi lain tentang jaringan komputer (computer network) adalah :
“Sekumpulan komputer yang terhubung antara satu dengan yang lain melalui suatu media komunikasi
tertentu dan aturan tertentu, sehingga masing-masing komputer dapat saling berkomunikasi”.
Berdasarkan definisi diatas, syarat suatu jaringan adalah :
1.Komputer yang digunakan lebih dari satu (minimal 2).
2.Masing-masing komputer dihubungkan melalui suatu media tertentu (misal: kabel, gelombang dan lain-
lain).
3.Terjadi komunikasi antar masing-masing komputer anggota jaringan komputer.
4.Ada aturan yang mengatur (protocol), sehingga perbedaan hardware, sistem operasi tidak menjadi
penghalang untuk terjadinya komunikasi dalam jaringan komputer.
Yang dimaksud komunikasi dalam jaringan komputer adalah masing-masing komputer dalam jaringan
dapat saling mengirim dan berbagai sumber daya komputer dengan komputer yang lain.
Manfaat Jaringan Komputer
Saat ini, penggunaan jaringan dalam suatu instansi/perusahaan sudah menjadi suatu keharusan. Ada
banyak manfaat yang diperoleh suatu perusahaan dengan diimplementasikannya jaringan komputer.
Berikut ini adalah beberapa manfaat dari penerapan jaringan komputer :
1.Berbagi pakai (Sharing) sumber daya komputer
Jaringan komputer memungkinkan penggunaan bersama suatu sumber daya komputer (resource) seperti
printer, hard disk, CDRom, dan hardware yang lain. Selain itu, dapat juga dilakukan sharing perangkat
lunak (software) seperti: Aplikasi, software database, dan lain-lain.
Dengan dapat dilakukannya sharing sumber daya komputer, akan berakibat penuruan biaya dan
kemudahan dalam berkomunikasi.
2.Berbagi pakai (sharing) file dan informasi.
Selain dapat melakukan sharing sumber daya komputer, dalam jaringan komputer memungkin pengguna
untuk bagi pakai file, data dan informasi dengan cepat dan mudah.
Misal: pengguna A yang bekerja dilantai 1 dapat meminta file yang dikerjakan oleh pengguna B yang
berada di lantai 10, dengan sangat mudah dan cepat tanpa harus beranjak dari tempat duduk. Apa yang
terjadi jika tidak ada jaringan??.
3.Integrasi Data
Jaringan komputer memungkinkan integrasi data dari berbagai komputer yang terpisah, ke dalam pusat
pengolahan data sehingga memudahkan pengambil keputusan untuk memperoleh informasi yang
lengkap, akurat dan tepat.
4.Komunikasi
Jaringan komputer memungkinkan terjadinya komunikasi antar pemakai, baik melalui direct PC, email,
FTP, Telnet, message dan lain-lain. Dalam hal ini, jaringan komputer dapat berfungsi sebagai alat
komunikasi yang efektif baik dalam lingkungan terbatas (private) maupun global (internet).
5.Keamanan data
Jaringan komputer dapat melindungi data yang terpusat pada server dengan baik, karena sistem operasi
jaringan telah didesain secara khusus agar dapat melakukan pengamanan terhadap data dan informasi
dengan berbagai cara dan level.
Pengamanan data dapat dilakukan dengan cara : pengaturan hak akses, penggunaan login dan password,
firewall, enkripsi dan lain-lain.
Dan masih banyak lagi keuntungan, baik secara langsung maupun tidak dengan diterapkan jaringan
komputer.
Tipe Jaringan Komputer
Ada dua tipe jaringan komputer, yakni:
1.Peer to Peer (Workgroup)
Dalam tipe ini, masing-masing komputer dalam jaringan memiliki kedudukan yang sama. Masing-masing
komputer dapat berfungsi sebagai server (penyedia) dan client(pengguna).
Antar komputer dapat saling menggunakan dan menyediakan sumber daya sehingga dapat digunakan
bersama. Jaringa jenis ini, biasanya diaplikasi pada jaringan skala kecil.
Implementasi jaringan peer to peer biasanya menggunakan sistem operasi windows ‘98/Me, walaupun
windows yang lain juga dapat digunakan.
Keuntungan:
Hemat Investasi, karena tidak diperlukan pembelian komputer dan perangat lunak untuk server yang
harganya sangat mahal.
Mudah diimplementasikan
Kekurangan:
Sulit dalam manajemen jaringan, karena data, informasi, user yang disharing tersebar, tidak terpusat.
Masalah keamanan.
2.Client Server
Pada jaringan client server, terdapat satu atau lebih komputer yang berfungsi sebagai server (penyedia
layanan) yang melayani banyak komputer yang berfungsi sebagai client (pengguna layanan).
Pada jaringan tipe ini, ada pembedaan yang jelas mana komputer server dan mana komputer client.
Manajamen jaringan biasanya dilakukan secara terpusat, karena semua data, user dan password,
informasi dan lain-lain tersimpan dalam komputer pusat (server).
Implementasi jaringan client server, untuk server dapat menggunakan sistem operasi windows
2000/2003 server, Unix, Linux. Sedangkan untuk client, dapat menggunakan sistem operasi apa saja.
Keuntungan:
Manajemen terpusat
Kemudahan perawatan
Tingkat keamanan lebih tinggi
Kelemahan:
Butuh investasi yang tidak sedikit untuk pembelian komputer server dan perangkat lunak (Misal: Sistem
Operasi, Server Web dll) beserta lisensinya.
Butuh tenaga ahli (System Administator)
Jaringan client server, dapat juga berfungsi seperti workgroup yakni dapat saling sharing file, informasi
dan sumber daya komputer yang selajutnya dapat digunakan oleh komputer yang lain.
Beberapa Istilah dalam Jaringan Komputer
Berikut ini, ada beberapa istilah yang berkaitan dengan jaringan komputar :
1.Server
2.Client/Workstation
3.Sharing
4.StandAlone computer
5.Network Computer
6.LAN (Local Area Network)
7.WAN (Wide Area Network)
8.Wi Fi
9.Protocol
10.Network Operating System
Silahkan didiskusikan dengan pengajar anda penjelasan dari masing-masing istilah diatas.
Diposkan oleh Ivan Leandy di 10:19 0 komentar
Kamis, 23 April 2009
Mengamankan Sistem Informasi
Authentication, arti basicnya adalah Pemeriksaan terhadap protokol yang didukung oleh browser,
termasuk Internet Explorer, dengan menggunakan suatu metode untuk memeriksa nama user dan
password dengan proses encode dalam transmisi data. Basic authentication kadangkala disebut dengan
clear-text authentication karena proses encode Base-64 dapat didecode oleh siapapun dengan
menggunakan sebuah alat bantu yang bebas digunakan untuk proses decode ini. Yang perlu diketahui
adalah bahwa proses encoding tidak sama dengan encryption.Internet Access Authentication ini berlaku
untuk semua desktop PC, notebook/laptop, mobile handheld dan perangkat jaringan lainnya yang
tergabung kedalam UnpadNet. Oleh karena itu, kami menghimbau pengguna untuk segera :
1. Memiliki account PAuS (Padjadjaran Authentication System)
2. Mendaftarkan desktop PC, notebook/laptop, dan perangkat jaringan lainnya
Aspek security jaringan berkaitan erat dengan servis yang disediakan: inbound atau outbound. Security
pada servis outbound dapat diupayakan sebaik mungkin dengan konfigurasi firewall. Demikian pula
dengan akses anonymous servis inbound, seperti anonymous FTP, HTTP, Gopher dll. Dalam hal ini,
informasi sengaja disediakan bagi semua orang. Lain halnya bila kita ingin menyediakan akses non-
anonymous (atau authenticated services), dimana selain melalui firewall, seseorang yang meminta akses
juga harus mendapat ‘ijin’ server setelah terlebih dahulu membuktikan identitasnya. Inilah
authentication. Untuk selanjutnya, penulis menggunakan istilah autentisasi sebagai sinonim kata
tersebut.
Mengapa perlu autentisasi…..? Internet adalah jaringan publik, dan terbuka bagi setiap orang diseluruh
penjuru dunia untuk menggabungkan diri. Begitu besarnya jaringan ini, telah menimbulkan keuntungan
serta kerugian. Sering kita dengar dan baca tentang bobolnya sistem komputer keuangan bank, informasi
rahasia Pentagon atau basis data transkrip akademik mahasiswa. Kalimat tersebut cukup untuk mewakili
pernyataan bahwa kita harus ‘waspada’ terhadap orang-orang ‘jahat’ dan senantiasa berusaha
memperkecil kemungkinan bagi mereka untuk dapat melakukan niat jahatnya. Memang mudah untuk
meniadakan kemungkinan penyusupan (akses ilegal) dari luar dengan menutup semua kanal trafik servis
inbound ke jaringan internal. Namun ini berarti telah mereduksi keuntungan utama adanya jaringan:
komunikasi dan pemakaian sumber daya bersama (sharing resources). Jadi, konsekuensi alami dengan
jaringan cukup besar, adalah menerima dan berusaha untuk memperkecil resiko ini, bukan
meniadakannya.
Kerahasiaan data dan password juga merupakan topik disain security. Program yang didedikasikan untuk
packet-sniffing dapat secara otomatis menampilkan isi setiap paket data antara client dengan servernya.
Proteksi password dari kejahatan demikian dapat dilakukan dengan implementasi password sekali pakai
(non-reusable password), sehingga walaupun dapat termonitor oleh sniffer, password tersebut tidak
dapat digunakan lagi.
Resiko hijacking dan sniffing data (bukan password) tidak dapat dihindari sama sekali. Artinya NA harus
mempertimbangkan kemungkinan ini dan melakukan optimasi bagi semakin kecil-nya kesempatan
tersebut. Pembatasan jumlah account dengan akses penuh serta waktu akses jarak jauh, merupakan
salah satu bentuk optimasi.
MEKANISME AUTENTISASI
Subyek autentisasi adalah pembuktian. Yang dibuktikan meliputi tiga kategori, yaitu: sesuatu pada diri
kita (something you are SYA), sesuatu yang kita ketahui (something you know SYK), dan sesuatu yang kita
punyai (something you have SYH). SYA berkaitan erat dengan bidang biometrik, seperti pemeriksaan
sidik-jari, pemeriksaan retina mata, analisis suara dll. SYK identik dengan password. Sedangkan bagi SYH
umumnya digunakan kartu identitas seperti smartcard.
Diposkan oleh Ivan Leandy di 11:16 0 komentar
Evaluasi Keaman Sistem Informasi
Seperti yang telah dibahas pada artikel penulis sebelumnya, bahwa kejahatan cyber akan terus
berkembang seiring dengan kemajuan teknologi itu sendiri. Oleh karena itu, adanya evaluasi terhadap
pengamanan sistem informasi yang telah dibangun sangatlah diperlukan. Meski sebuah sistem informasi
sudah dirancang memiliki perangkat pengamanan, dalam operasi masalah keamanan harus selalu
dimonitor. Hal ini disebabkan oleh beberapa hal, antara lain:
Ditemukannya lubang keamanan (security hole) yang baru. Perangkat lunak dan perangkat keras
biasanya sangat kompleks sehingga tidak mungkin untuk diuji seratus persen. Kadang-kadang ada
lubang keamanan yang ditimbulkan oleh kecerobohan implementasi.
Kesalahan konfigurasi. Kadang-kadang karena lalai, konfigurasi sebuah sistem kurang benar
sehingga menimbulkan lubang keamanan. Misalnya mode (permission atau kepemilikan) dari
berkas yang menyimpan password secara tidak sengaja diubah sehingga dapat diubah oleh
orang-orang yang tidak berhak.
Penambahan perangkat baru (hardware dan/atau software) yang menyebabkan menurunnya
tingkat keamanan atau berubanya metode untuk mengoperasikan sistem. Operator dan
administrator harus belajar lagi. Dalam masa belajar ini banyak hal yang jauh dari sempurna,
misalnya server atau software masih menggunakan konfigurasi awal dari vendor (dengan
password yang sama).
Sumber Lubang Keamanan
Lubang keamanan (security hole) dapat terjadi karena beberapa hal:
Salah/kecacatan desain (design flaw).
Biasanya hal ini jarang terjadi, jika iya maka akan sangat sulit untuk diperbaiki. Contoh : kesalahan desain
urutan nomor (sequence numbering) dari paket TCP/IP dapat dieksploitasi sehingga timbul masalah yang
dikenal dengan nama “IP spoofing“, yaitu sebuah host memalsukan diri seolah-olah menjadi host lain
dengan membuat paket palsu setelah mengamati urutan paket dari host yang hendak diserang.
Salah implementasi.
Merupakan kesalahan yang sering terjadi diakibatkan karena peng-implementasian program secara
terburu-buru sehingga kurang cermat dalam pengkodean dan pengujian program tidak dilakukan. Contoh
: programmer lupa untuk memfilter karakter-karakter spesial/aneh hasil dari input sebuah program
sehingga user/client bisa mengakses dan mengubah data/berkas yang seharusnya tidak boleh diubah.
Salah konfigurasi.
Contoh kesalahan yang sering terjadi biasanya administrator lupa untuk mengunci attribut/properti dari
file-file penting yang seharusnya “read-only” menjadi “writeable“. Sehingga pemakai bisa seenaknya
merubah isi dari file/berkas tersebut.
Salah penggunaan.
Contohnya apabila seorang sistem adminstrator masuk ke dalam sistem menggunakan account root
(super user dalam sistem UNIX) dan secara tidak sengaja menghapus direktori maupun berkas penting.
Penguji Keamanan Sistem
Dikarenakan banyaknya hal yang harus dimonitor, administrator dari sistem informasi membutuhkan
perangkat pembantu otomatis yang dapat membantu menguji atau mengevaluasi keamanan sistem yang
dikelola. Untuk sistem yang berbasis UNIX ada beberapa tools yang dapat digunakan, antara lain: Cops,
Tripwire, Satan, SBScan (localhost security scanner). Sedangkan sistem yang berbasis Windows NT
misalnya program Ballista.
Selain program-program/tools seperti yang tersebut di atas, ada banyak program yang dibuat oleh
hackers untuk melakukan uji coba. Contoh program-program tersebut antara lain:
Crack, yaitu program untuk menduga atau memecahkan password dengan menggunakan sebuah
rumus (dictionary).
Land, yaitu sebuah program yang dapat membuat sistem Windows 95/NT menjadi macet (hang,
lock up). Program ini mengirimkan sebuah paket yang sudah di “spoofed” sehingga seolah-olah
paket tersebut berasal dari mesin yang sama dengan menggunakan port yang terbuka (misalnya
port 113 atau 139).
Ping-of-death, sebuah program (ping) yang dapat meng-crash-kan Windows 95/NT dan beberapa
versi UNIX.
Winuke, program untuk memacetkan sistem berbasis Windows.
Probing Services
Servis di internet umumnya dilakukan dengan menggunakan protokol TCP atau UDP. Setiap servis
dijalankan dengan menggunakan port yang berbeda, misalnya:
SMTP (untuk mengirim dan menerima e-mail, TCP, port 25)
POP3 (untuk mengambil e-mail, TCP, port 110)
HTTP (untuk web server, TCP, port 80)
DNS (untuk domain, UDP dan TCP, port 53)
Sebenarnya masih banyak servis-servis lain yang tersedia. Pemilihan servis tergantung kepada kebutuhan
dan tignkat keamanan yang diinginkan. Sayangnya seringkali sistem yang dibeli atau dirakit menjalankan
beberapa servis utama sebagai “default“. Kadang-kadang beberapa servis harus dimatikan karena ada
kemungkinan dapat dieksploitasi oleh cracker. Untuk itu ada beberapa program yang dapat digunakan
untuk melakukan “probe” (meraba) servis apa saja yang tersedia. Program ini juga dapat digunakan oleh
kriminal untuk melihat servis apa saja yang tersedia kemudian melakukan penyerangan.
Untuk beberapa servis yang berbasis TCP/IP, proses probe dapat dilakukan dengan menggunakan
program telnet. Misalnya utnuk melihat apakan ada servis e-mail dengan menggunakan SMTP digunakan
telnet ke port 25. Paket probe untuk sistem UNIX : nmap, strobe, tcpprobe. Untuk sistem Windows
95/98/NT : Netlab, Cyberkit, Ogre.
Mendeteksi Probing
Untuk mendeteksi adanya probing terhadap sistem dapat dipasang suatu program untuk memonitornya.
Probing biasanya meninggalkan jejak di berkas log di sistem. Dengan mengamati entry di dalam berkas
log dapat diketahui adanya probing. Contoh program yang bisa digunakan : courtney, portsentry dan
tcplogd.
OS Fingerprinting
Fingerprinting merupakan istilah yang umum digunakan untuk menganalisa OS (Operating System/sistem
operasi) sistem yang dituju. Fingerprinting dapat dilakukan dengan berbagai cara, yang paling
konvensional adalah:
1. Melakukan telnet ke server yang dituju.
2. Servis FTP yang tersedia di port 21. Dengan melakukan telnet ke port tersebut dan memberikan
perintah “SYST” anda dapat mengetahui versi OS yang digunakan.
3. Menggunakan program Netcat.
Diposkan oleh Ivan Leandy di 11:13 0 komentar
Dasar-dasar Keamanan Sistem Informasi
Keamanan sistem informasi merupakan salah satu aspek yang sangat penting untuk diperhatikan saat ini.
Dimana kemajuan teknologi informasi telah berkembang dengan pesat sehingga menjadikannya sebagai
suatu lahan baru bagi pelaku tindak kriminal untuk menjalankan aksinya. Berbicara mengenai kejahatan
di dunia maya (cyber crime) sepertinya tidak akan ada habisnya mengingat teknik dan modus operandi-
nya akan selalu berkembang seiring dengan kemajuan teknologi informasi itu sendiri. Namun satu hal
yang perlu digarisbawahi, pengetahuan dasar mengenai metode pengamanan informasi merupakan kunci
bagi pelaku IT untuk mengambil tindakan preventive terhadap kemungkinan-kemungkinan terjadinya
kejahatan cyber.
David Khan dalam bukunya “The Code Breakers” membagi masalah pengamanan informasi menjadi dua
kelompok, yaitu:
1. Security : dikaitkan dengan pengamanan data.
2. Intelligence : dikatikan dengan pencarian (pencurian, penyadapan) data.
Metode Pengamanan Data
Dapat dilakukan dengan dua cara, yaitu:
1. Steganography
Steganography/steganografi berasal dari bahasa Yunani yang artinya tulisan tersembunyi (concealed
writing). Atau bisa diartikan juga sebagai seni menyamarkan/menyembunyikan pesan tertulis ke dalam
pesan lainnya. Pengamanan dengan menggunakan steganografi membuat seolah-olah pesan rahasia
tidak ada atau tidak nampak. Padahal pesan tersebut ada. Hanya saja kita tidak sadar bahwa ada pesan
tersebut di sana. Biasanya pesan-pesan rahasia tersebut akan disembunyikan dalam obyek-obyek lain
seperti gambar atau artikel.
Teknik penyembunyian pesan pun bisa bermacam-macam. Jika orang jaman dahulu menggunakan tinta
transparan (invisible ink) atau kayu yang ditulis dan ditutup dengan lilin, dikenal dengan istilah (wax
tablets). Sedangkan di era teknologi canggih saat ini, bisa dilakukan melalui file MP3, video, gambar
digital, ataupun file dokumen dan dikenal dengan istilah digital watermarking.
Ilmu yang mempelajari tentang teknik pendeteksian pesan-pesan tersembunyi tersebut adalah
steganalisis.
2. Cryptography
Berasal dari kata Yunani, kryptos artinya tersembunyi/rahasia dan graphia artinya tulisan. Jadi kriptografi
bisa diartikan sebagai ilmu/seni yang mempelajari tentang teknik mengamankan pesan/informasi.
Perbedaannya dengan steganografi adalah, jika steganografi pesan disembunyikan sedemikian rupa
sehingga seolah tidak nampak. Sedangkan kriptografi mengacak/mengubah pesan asli kedalam bentuk
lain sehingga menjadi tidak bermakna
Pengamanan dengan kriptografi membuat pesan nampak, hanya bentuknya yang sulit dikenali karena
telah diacak sedemikian rupa. Pada kriptografi pengamanan dilakukan dengan dua cara, yaitu:
Transposisi, dengan cara mengubah-ubah posisi huruf.
Substitusi, dengan cara menggantikan huruf tertentu dengan huruf/simbol lain.
Dalam istilah-istilah kriptografi, para pelaku atau praktisi kriptografi disebut cryptographers.
Enkripsi/encryption merupakan teknik penyembunyian informasi asli (plaintext). Ketika informasi asli
tersebut telah dienkripsi, maka disebut sebagai ciphertext (informasi yang seolah tidak bermakna apa-
apa). Teknik untuk mengubah ciphertext menjadi bentuk asalnya (plaintext) disebut decryption.
Sebuah algoritma kriptografik disebut cipher, merupakan persamaan matematik yang digunakan untuk
proses enkripsi dan dekripsi. Cryptanalysis adalah seni/ilmu untuk memecahkan ciphertext tanpa bantuan
kunci. Cryptanalyst adalah pelaku atau praktisi yang menjalankan cryptanalysis.
Dasar-dasar Enkripsi
Enkripsi digunakan untuk menyandikan data-data atau informasi sehingga tidak dapat dibaca oleh orang
yang tidak berhak. Data disandikan (encrypted) dengan menggunakan sebuah kunci (key). Untuk
membuka (decrypt) data tersebut digunakan juga sebuah kunci yang dapat sama dengan kunci untuk
mengenkripsi (private key cryptography) atau dengan kunci yang berbeda (public key cryptography).
Secara matematis, proses enkripsi dapat dituliskan sebagai : E(M) = C. Untuk proses dekripsi rumusnya :
D(C) = M.
ket : M = message/plainttext , C = ciphertext.
Elemen-elemen dari enkripsi :
Algoritma dari enkripsi dan dekripsi.
Kunci yang digunakan dan panjangnya kunci.
Plaintext, adalah pesan atau informasi yang akan dikirimkan dalam format yang mudah dibaca
atau dalam bentuk aslinya.
Ciphertext, adalah informasi yang sudah dienkripsi.
Dua metode untuk menghasilkan ciphertext adalah:
1. Stream Cipher : tiap bit dari data akan dienkripsi secara berurutan dengan menggunakan 1 bit
dari key tersebut (melakukan enkripsi terhadap semua bit). Contoh: vernam cipher.
2. Blok Cipher : melakukan enkripsi data terhadap kelompok-kelompok data yang berukuran
tertentu. Contoh : Data Encryption Standard (DES). DES dikenal sebagai Data Encryption
Algorithm (DEA) oleh ANSI dan DEA-1 oleh ISO, merupakan algoritma kriptografi simetris yang
paling umum digunakan saat ini. Aplikasi yang menggunakan DES antara lain: - enkripsi password
di sistem UNIX.
Enigma Rotor Machine
Merupakan sebuah alat enkripsi dan dekripsi mekanik yang digunakan dalam perang dunia kedua oleh
Jerman.
Aplikasi dari Enkripsi
Contoh penggunaan enkripsi adalah program Pretty Good Privacy (PGP) untuk mengenkripsi dan
menambahkan digital signature dalam email yang dikirim. Dan juga program Secure Shell (SSH) untuk
mengenkripsi sesion telnet ke sebuah host.
Kelemahan enkripsi
Penanganan yang salah atau kesalahan manusia.
Kurangnya manajemen data enkripsi.
Kekurangan dalam cipher itu sendiri.
Serangan brute force.
Diposkan oleh Ivan Leandy di 11:03 0 komentar
Pengenalan Keamanan Jarkom
1. Software bugs, dari istilah lainnya software open source yaitu Pengembangan software berbasiskan
open source, saat ini telah menjadi suatu fenomena tersendiri. Model ini telah berkembang sejak awal
mula perkembangan teknologi komputer, namun kini telah menjadi semakin populer terutama berkat
pemakaian Internet di berbagai bidang. Banyak software-software yang mendukung Internet merupakan
software open source. Gema open source pun telah sampai hingga Indonesia, terbukti dengan mulai
munculnya proyek-proyek yang bersifat open source, berkisar dari proyek pengembangan software
hingga pembuatan dokumentasi. Perkembangan ini tentu saja sangat membanggakan. Namun demikian
pengembangan software berbasiskan open source di Indonesia masih memiliki banyak hambatan yang
sewaktu-waktu dapat mengancam kelangsungannya, oleh karena itu diperlukan langkah-langkah yang
dilakukan oleh berbagai pihak untuk mengatasinya. Saat ini open source telah menjadi suatu tren dan
berita besar di berbagai media massa. Berbagai perusahaan perangkat lunak besar, seperti IBM, Oracle,
Sun, pun berbondong-bondong mengumumkan bahwa produk-produk yang dihasilkannya adalah produk
open source. Namun demikian apakah sebenarnya open source tersebut.
2. Hardware bugs, dengan istilah lainnya hardware key yaitu Sarana fisik yang digunakan untuk
mengamankan sistem komputer dari penggunaan yang tidak sah.
3. Radiasi adalah pancaran energi melalui suatu materi atau ruang dalam bentuk panas, partikel atau
gelombang elektromagnetik/cahaya (foton) dari sumber radiasi. Ada beberapa sumber radiasi yang kita
kenal di sekitar kehidupan kita, contohnya adalah televisi, lampu penerangan, alat pemanas makanan
(microwave oven), komputer, dan lain-lain.
4. Tapping merupakan sebuah terapi yang menggunakan dua buah jari yang dapat menyembuhkan.
Tapping merupakan rangkaian dari pengobatan yang dikenal di Amerika sebagai Teknik Pembebasan
Emosi (Emotional Freedom Technique/ EFT). Teknik pembebasan emosi atau EFT merupakan teori dasar
dalam ilmu psikologi. Jika diri terkendali, akan ada gelombang elektromagnetik tertentu yang akan
mengatur tubuh menjalankan fungsinya secara baik. Kemudian selang beberapa lama, Ahmad Faiz
Zainuddin, seorang sarjana psikologi lulusan Universitas Arlangga memperoleh ilmu EFT langsung dari
Gary Craig. Dan kemudian menambahkan unsur spiritualnya, sehingga menjadi SEFT (Spiritual Emotional
Freedom Technique).
5. Crosstalk adalah Gangguan dalam proses pengiriman data/informasi antar stasiun berupa masuknya
sinyal yang tidak diinginkan dari jalur yang terletak berhimpitan. Sering terjadi pada pengiriman jarak
jauh atau sinyal berfrekuensi tinggi.
6. Unauthorized (VLAN) merupakan suatu model jaringan yang tidak terbatas pada lokasi fisik
seperti LAN , hal ini mengakibatkan suatu network dapat dikonfigurasi secara
virtual tanpa harus menuruti lokasi fisik peralatan. Penggunaan VLAN akan
membuat pengaturan jaringan menjadi sangat fleksibel dimana dapat dibuat
segmen yang bergantung pada organisasi atau departemen, tanpa bergantung pada
lokasi workstation
7. Hardcopy adalah Salinan suatu dokumen dalam bentuk cetakan, biasanya cetakan ke kertas. Dokumen
tersebut bisa dibaca dan dilihat langsung oleh manusia tanpa memerlukan peralatan bantuan.
8. Oversight (keteledoran), meurut BPTN (Badan Pengawas Tenaga Nuklir. Salah satu misi BAPETEN yang
utama adalah peningkatan kualitas pengawasan instalasi nuklir secara terus-menerus, sehingga tingkat
keselamatan dan keamanan reaktor nuklir dapat terjamin terutama untuk menjamin keamanan
masyarakat. Oleh karena itu, workshop pengawasan pengoperasian reaktor penelitian dipandang perlu
diadakan.