SlideShare a Scribd company logo
1 of 4
Konsep SQL Injection untukKonsep SQL Injection untuk
Menembus Password LoginMenembus Password Login
Happy Chandraleka
hchandraleka@gmail.com
http://thecakrabirawa.wordpress.com
Pengantar
Tulisan ini merupakan salah satu tulisan yang ada di buku “Siapa Bilang Nge-Hack Itu Susah”
karya penulis sendiri dan diterbitkan oleh Elex Media Komputindo pada tahun 2008. Dengan
pertimbangan kemanfaatan tulisan tersebut dan dipandang perlu untuk menjelaskan tentang
logika SQL injection, maka penulis menempatkannya di sini.
SQL Injection
Bila seseorang ingin mengakses suatu sistem komputer, biasanya diperlukan login. Penerapannya
pada website ditampilkan dengan dua kotak isian, yaitu kotak User Name, User Id, atau User
Account dan kotak Password. Login ini berguna untuk memfilter dan mengetahui identitas
seseorang yang ingin mengakses suatu sistem. Sistem login merupakan suatu cara dalam dunia
sekuriti komputer untuk memfilter orang yang masuk ke sistem sehingga orang – orang yang tidak
terdaftar tidak dapat masuk ke sistem tersebut.
Tetapi teknologi yang ada selalu saja tidak sempurna. Ada banyak cara untuk menembus filter pada
sistem login tersebut. Sehingga seseorang yang tidak mengetahui password dapat juga ikut
menikmati dan masuk ke sistem tersebut. Salah satunya adalah dengan SQL injection.
Pada tulisan ini saya akan jelaskan tentang cara menembus password login dengan SQL injection
secara teoritis dengan melihat pada sisi kelemahan query bahasa SQL itu sendiri. SQL injection itu
sendiri adalah suatu cara untuk mengeksploitasi kelemahan bahasa SQL dengan cara memasukkan
(menginjeksikan) beberapa karakter tertentu. Deretan karakter tersebut biasa dikenal dengan nama
injection string. Ada banyak hal yang dapat dilakukan dengan injection string. Diantaranya, mem-
bypass password, mendapatkan nama tabel, menyisipkan anggota baru, dll, bahkan sampai
menghapus tabel pada suatu database.
Komunitas eLearning IlmuKomputer.Com
Copyright © 2003-2007 IlmuKomputer.Com
1
Lisensi Dokumen:
Copyright © 2003-2007 IlmuKomputer.Com
Seluruh dokumen di IlmuKomputer.Com dapat digunakan, dimodifikasi dan disebarkan
secara bebas untuk tujuan bukan komersial (nonprofit), dengan syarat tidak menghapus
atau merubah atribut penulis dan pernyataan copyright yang disertakan dalam setiap
dokumen. Tidak diperbolehkan melakukan penulisan ulang, kecuali mendapatkan ijin
terlebih dahulu dari IlmuKomputer.Com.
Memahami Cara Kerja SQL Injection
Semisal ada seorang user yang bernama Joko yang ingin mengakses suatu sistem yang
menggunakan sistem login. Maka Joko akan memasukkan isian pada kotak User Id dengan ‘Joko’
(tanpa kutip) dan pada kotak Password dengan ‘rahasia’ (tanpa kutip). Bila kemudian ditekan
tombol OK atau tombol Login – nama tombolnya bisa berbeda – maka sistem tersebut akan
menjalankan perintah query dalam bahasa SQL seperti berikut ini.
Gambar Login dengan User Id dan Password
Select * from TUser where UserId = ‘joko’ AND Password =
’rahasia’
Arti dari perintah tersebut adalah menampilkan data dari seluruh record (perhatikan tanda * di
perintah tersebut) di database sistem tersebut. Tetapi tidak semua record akan ditampilkan, karena
pada perintah di atas ada filter atau pemilihan, yaitu hanya data yang record UserId-nya berisi
‘joko’ dan Password-nya berisi ‘rahasia’. Perhatikan penggalan perintah setelah klausa where.
Dan harus dipahami juga bahwa isian UserId dan Password yang diinputkan oleh user, keduanya
harus bersesuaian dengan yang tersimpan di database sistem. Karena digunakan logika AND pada
perintah tersebut.
Dengan demikian, bila isian UserId dan Password sesuai dengan yang tersimpan di database,
barulah user tersebut dapat masuk ke sistem.
Dua Cara Menembus Password
Untuk menembus – atau mem-bypass – password pada sistem login, bisa ditempuh dengan dua
cara. Dari kedua cara tersebut seseorang bisa masuk ke suatu sistem tanpa perlu mengetahui
password-nya.
Cara pertama adalah dengan menambahkan karakter ‘# setelah UserId. Sehingga bila Anda
menginputkan pada kotak User Id dengan ‘Joko’#’ (tanpa kutip) dan pada kotak Password Anda
inputkan sembarang karakter, seperti pada gambar ini.
Komunitas eLearning IlmuKomputer.Com
Copyright © 2003-2007 IlmuKomputer.Com
2
Gambar Injection string dengan ‘# pada kotak User Id
Maka ketika Anda menekan tombol Login, sistem website tersebut akan menjalankan perintah
query sebagai berikut.
Tanda # merupakan cara untuk membuat komentar (remark) dalam bahasa SQL. Sebagaimana
tanda // dalam bahasa Pascal. Remark atau komentar akan menyebabkan karakter sesudah tanda
komentar akan diabaikan oleh program dan tidak akan dianggap sebagai kode program. Yang
menariknya disini, dengan injection string ‘# akan menyebabkan kode program setelah tanda #
akan diabaikan. Perhatikan perintah di atas. Yang imbasnya adalah Anda bisa menginputkan
sembarang karakter pada kotak Password dan Anda tetap bisa login dengan User Id ‘joko’!!
Cara kedua adalah dengan menambahkan injection string sembarang’ OR ‘x’=’x pada
kotak Password.
Gambar Injection string pada kotak Password
Sehingga bila Anda tekan tombol Login, maka sistem website akan menjalankan perintah sebagai
berikut
Akibatnya pada bagian Password akan terisi dengan nilai ‘sembarang’. Tentu saja inputan
tersebut akan bernilai false dan akan menyebabkan Anda tidak bisa login ke sistem tersebut.
Komunitas eLearning IlmuKomputer.Com
Copyright © 2003-2007 IlmuKomputer.Com
3
Sederhana saja alasannya, isian password tidak sama dengan yang tersimpan di sistem. Tetapi ada
query lanjutannya, yaitu OR ‘x’=’x . Yang artinya sistem diberikan pilihan. Bila sebelumnya,
inputan password bernilai salah, maka dijalankan pilihan berikutnya yang sudah pasti benar,
karena ‘x’=’x’. Akibatnya Anda bisa masuk ke dalam sistem tanpa mengetahui password yang
sesungguhnya dengan User Id ‘joko’!!
Bagaimana Penerapannya?
Demikian teori SQL injection untuk menembus password login. Saya katakan teori karena
memang begitulah secara teoritis kelemahan bahasa SQL. Tentu saja dalam penerapannya pada
keadaan sesungguhnya akan sedikit berbeda. Sehingga bila Anda mencoba bermain – main
dengan kiat ini, Anda tidak bisa begitu saja masuk menembus password pada login website.
Karena para web developer akan mengantisipasi adanya serangan SQL injection ini.
Diantaranya dengan mendeteksi inputan karakter yang tergolong aneh. Kecuali pada beberapa
website yang mereka belum memperbaiki diri.
Biografi Penulis
Happy Chandraleka. Seorang penulis TI independen. Menyelesaikan S1 di Teknik Elektro
Universitas Diponegoro. Saat ini mengelola Open Journal System Badan Penelitian dan
Pengembangan Kesehatan, Kementerian Kesehatan Republik Indonesia. Informasi tentang
penulis dapat dilihat di http://thecakrabirawa.wordpress.com dan dapat dihubungi via email
hchandraleka@gmail.com.
(ditulis di Ruang 7 Depok, 5 November 2013, pukul 12.45 siang)
Komunitas eLearning IlmuKomputer.Com
Copyright © 2003-2007 IlmuKomputer.Com
4

More Related Content

Similar to Hchandraleka konsep-sql-injection-menembus-login

sqlinjection-230606224413-2efc0d99.pptx
sqlinjection-230606224413-2efc0d99.pptxsqlinjection-230606224413-2efc0d99.pptx
sqlinjection-230606224413-2efc0d99.pptxAhmadSyaifuddin35
 
Sql server-security
Sql server-securitySql server-security
Sql server-securityMym Tuxer's
 
Sql injection exposed proof of concept
Sql injection exposed  proof of conceptSql injection exposed  proof of concept
Sql injection exposed proof of conceptlaila wulandari
 
Website Application Security - SQL Injection
Website Application Security - SQL InjectionWebsite Application Security - SQL Injection
Website Application Security - SQL InjectionAgus Setya R
 
Aplikasi edit-simpan-hapus-cari-data-menggunakan-visual-basic-20101
Aplikasi edit-simpan-hapus-cari-data-menggunakan-visual-basic-20101Aplikasi edit-simpan-hapus-cari-data-menggunakan-visual-basic-20101
Aplikasi edit-simpan-hapus-cari-data-menggunakan-visual-basic-20101Budi Permana
 
Bruteforce basic (paper) - linx
Bruteforce basic (paper) - linxBruteforce basic (paper) - linx
Bruteforce basic (paper) - linxidsecconf
 
Basic Web Exploit Development
Basic Web Exploit DevelopmentBasic Web Exploit Development
Basic Web Exploit DevelopmentRiswanda N.S
 
Tahap instalasi-postgresql-di-windows
Tahap instalasi-postgresql-di-windowsTahap instalasi-postgresql-di-windows
Tahap instalasi-postgresql-di-windowsAlly Florez
 
Latihan administrasi basis data
Latihan administrasi basis dataLatihan administrasi basis data
Latihan administrasi basis dataDevandy Enda
 
Aksi penyerangan SQL dan penjegahan
Aksi penyerangan SQL dan penjegahanAksi penyerangan SQL dan penjegahan
Aksi penyerangan SQL dan penjegahanFadlil Mantoeng
 
SQL Injection dan XSS
SQL Injection dan XSSSQL Injection dan XSS
SQL Injection dan XSSYode Arliando
 
Investigasi Serangan Terhadap Website Pada Web Server Apache
Investigasi Serangan Terhadap Website Pada Web Server ApacheInvestigasi Serangan Terhadap Website Pada Web Server Apache
Investigasi Serangan Terhadap Website Pada Web Server ApacheMark Thalib
 
Aplikasi password-vb-2010-dengan-database-ms.-access-2007
Aplikasi password-vb-2010-dengan-database-ms.-access-2007Aplikasi password-vb-2010-dengan-database-ms.-access-2007
Aplikasi password-vb-2010-dengan-database-ms.-access-2007Budi Permana
 

Similar to Hchandraleka konsep-sql-injection-menembus-login (20)

sqlinjection-230606224413-2efc0d99.pptx
sqlinjection-230606224413-2efc0d99.pptxsqlinjection-230606224413-2efc0d99.pptx
sqlinjection-230606224413-2efc0d99.pptx
 
Sql server-security
Sql server-securitySql server-security
Sql server-security
 
SQL Injection.pdf
SQL Injection.pdfSQL Injection.pdf
SQL Injection.pdf
 
Sql injection exposed proof of concept
Sql injection exposed  proof of conceptSql injection exposed  proof of concept
Sql injection exposed proof of concept
 
Injection sql
Injection sqlInjection sql
Injection sql
 
Website Application Security - SQL Injection
Website Application Security - SQL InjectionWebsite Application Security - SQL Injection
Website Application Security - SQL Injection
 
Aplikasi edit-simpan-hapus-cari-data-menggunakan-visual-basic-20101
Aplikasi edit-simpan-hapus-cari-data-menggunakan-visual-basic-20101Aplikasi edit-simpan-hapus-cari-data-menggunakan-visual-basic-20101
Aplikasi edit-simpan-hapus-cari-data-menggunakan-visual-basic-20101
 
Membuatformlogin
MembuatformloginMembuatformlogin
Membuatformlogin
 
Bruteforce basic (paper) - linx
Bruteforce basic (paper) - linxBruteforce basic (paper) - linx
Bruteforce basic (paper) - linx
 
Basic Web Exploit Development
Basic Web Exploit DevelopmentBasic Web Exploit Development
Basic Web Exploit Development
 
Injeksi
InjeksiInjeksi
Injeksi
 
Tahap instalasi-postgresql-di-windows
Tahap instalasi-postgresql-di-windowsTahap instalasi-postgresql-di-windows
Tahap instalasi-postgresql-di-windows
 
Latihan administrasi basis data
Latihan administrasi basis dataLatihan administrasi basis data
Latihan administrasi basis data
 
Jurnal kj
Jurnal kjJurnal kj
Jurnal kj
 
Login php mysql
Login php mysqlLogin php mysql
Login php mysql
 
affTA04 - BAB IV
affTA04 - BAB IVaffTA04 - BAB IV
affTA04 - BAB IV
 
Aksi penyerangan SQL dan penjegahan
Aksi penyerangan SQL dan penjegahanAksi penyerangan SQL dan penjegahan
Aksi penyerangan SQL dan penjegahan
 
SQL Injection dan XSS
SQL Injection dan XSSSQL Injection dan XSS
SQL Injection dan XSS
 
Investigasi Serangan Terhadap Website Pada Web Server Apache
Investigasi Serangan Terhadap Website Pada Web Server ApacheInvestigasi Serangan Terhadap Website Pada Web Server Apache
Investigasi Serangan Terhadap Website Pada Web Server Apache
 
Aplikasi password-vb-2010-dengan-database-ms.-access-2007
Aplikasi password-vb-2010-dengan-database-ms.-access-2007Aplikasi password-vb-2010-dengan-database-ms.-access-2007
Aplikasi password-vb-2010-dengan-database-ms.-access-2007
 

Recently uploaded

Manajemen Lalu Lintas Baru Di Jalan Selamet Riyadi
Manajemen Lalu Lintas Baru Di Jalan Selamet RiyadiManajemen Lalu Lintas Baru Di Jalan Selamet Riyadi
Manajemen Lalu Lintas Baru Di Jalan Selamet RiyadiCristianoRonaldo185977
 
pertemuan-3-distribusi pada-frekuensi.ppt
pertemuan-3-distribusi pada-frekuensi.pptpertemuan-3-distribusi pada-frekuensi.ppt
pertemuan-3-distribusi pada-frekuensi.pptAhmadSyajili
 
MARIA NOVILIA BOISALA FASILITATOR PMM.pptx
MARIA NOVILIA BOISALA FASILITATOR PMM.pptxMARIA NOVILIA BOISALA FASILITATOR PMM.pptx
MARIA NOVILIA BOISALA FASILITATOR PMM.pptxmariaboisala21
 
415418921-statistika- mean media modus data tunggal dan data kelompok
415418921-statistika- mean media modus data tunggal dan data kelompok415418921-statistika- mean media modus data tunggal dan data kelompok
415418921-statistika- mean media modus data tunggal dan data kelompokelmalinda2
 
kesalahan tipe 1 dan 2 pada statistik.pptx
kesalahan tipe 1 dan 2 pada statistik.pptxkesalahan tipe 1 dan 2 pada statistik.pptx
kesalahan tipe 1 dan 2 pada statistik.pptxAhmadSyajili
 
SKP GURU satuan kinerja pegawai tahun 2023 untuk PNS Aceh
SKP GURU satuan kinerja pegawai tahun 2023 untuk PNS AcehSKP GURU satuan kinerja pegawai tahun 2023 untuk PNS Aceh
SKP GURU satuan kinerja pegawai tahun 2023 untuk PNS AcehBISMIAULIA
 
manajemen analisis data export data epidata 3.1
manajemen analisis data export data epidata 3.1manajemen analisis data export data epidata 3.1
manajemen analisis data export data epidata 3.1YudiPradipta
 
MATERI SESI 2 KONSEP ETIKA KOMUNIKASI.pptx
MATERI SESI 2 KONSEP ETIKA KOMUNIKASI.pptxMATERI SESI 2 KONSEP ETIKA KOMUNIKASI.pptx
MATERI SESI 2 KONSEP ETIKA KOMUNIKASI.pptxrikosyahputra0173
 
VULKANISME.pdf vulkanisme dan pengaruh nya terhadap kehidupan
VULKANISME.pdf vulkanisme dan pengaruh nya terhadap kehidupanVULKANISME.pdf vulkanisme dan pengaruh nya terhadap kehidupan
VULKANISME.pdf vulkanisme dan pengaruh nya terhadap kehidupanBungaCitraNazwaAtin
 
Metode penelitian Deskriptif atau Survei
Metode penelitian Deskriptif atau SurveiMetode penelitian Deskriptif atau Survei
Metode penelitian Deskriptif atau Surveikustiyantidew94
 
PPT Olah Nilai Kurikulum merdeka belajar.pptx
PPT Olah Nilai Kurikulum merdeka belajar.pptxPPT Olah Nilai Kurikulum merdeka belajar.pptx
PPT Olah Nilai Kurikulum merdeka belajar.pptxnursariheldaseptiana
 
SOP MEDIA KOMUNIKASI DAN KOORDINASI pkms
SOP MEDIA KOMUNIKASI DAN KOORDINASI pkmsSOP MEDIA KOMUNIKASI DAN KOORDINASI pkms
SOP MEDIA KOMUNIKASI DAN KOORDINASI pkmsedyardy
 

Recently uploaded (12)

Manajemen Lalu Lintas Baru Di Jalan Selamet Riyadi
Manajemen Lalu Lintas Baru Di Jalan Selamet RiyadiManajemen Lalu Lintas Baru Di Jalan Selamet Riyadi
Manajemen Lalu Lintas Baru Di Jalan Selamet Riyadi
 
pertemuan-3-distribusi pada-frekuensi.ppt
pertemuan-3-distribusi pada-frekuensi.pptpertemuan-3-distribusi pada-frekuensi.ppt
pertemuan-3-distribusi pada-frekuensi.ppt
 
MARIA NOVILIA BOISALA FASILITATOR PMM.pptx
MARIA NOVILIA BOISALA FASILITATOR PMM.pptxMARIA NOVILIA BOISALA FASILITATOR PMM.pptx
MARIA NOVILIA BOISALA FASILITATOR PMM.pptx
 
415418921-statistika- mean media modus data tunggal dan data kelompok
415418921-statistika- mean media modus data tunggal dan data kelompok415418921-statistika- mean media modus data tunggal dan data kelompok
415418921-statistika- mean media modus data tunggal dan data kelompok
 
kesalahan tipe 1 dan 2 pada statistik.pptx
kesalahan tipe 1 dan 2 pada statistik.pptxkesalahan tipe 1 dan 2 pada statistik.pptx
kesalahan tipe 1 dan 2 pada statistik.pptx
 
SKP GURU satuan kinerja pegawai tahun 2023 untuk PNS Aceh
SKP GURU satuan kinerja pegawai tahun 2023 untuk PNS AcehSKP GURU satuan kinerja pegawai tahun 2023 untuk PNS Aceh
SKP GURU satuan kinerja pegawai tahun 2023 untuk PNS Aceh
 
manajemen analisis data export data epidata 3.1
manajemen analisis data export data epidata 3.1manajemen analisis data export data epidata 3.1
manajemen analisis data export data epidata 3.1
 
MATERI SESI 2 KONSEP ETIKA KOMUNIKASI.pptx
MATERI SESI 2 KONSEP ETIKA KOMUNIKASI.pptxMATERI SESI 2 KONSEP ETIKA KOMUNIKASI.pptx
MATERI SESI 2 KONSEP ETIKA KOMUNIKASI.pptx
 
VULKANISME.pdf vulkanisme dan pengaruh nya terhadap kehidupan
VULKANISME.pdf vulkanisme dan pengaruh nya terhadap kehidupanVULKANISME.pdf vulkanisme dan pengaruh nya terhadap kehidupan
VULKANISME.pdf vulkanisme dan pengaruh nya terhadap kehidupan
 
Metode penelitian Deskriptif atau Survei
Metode penelitian Deskriptif atau SurveiMetode penelitian Deskriptif atau Survei
Metode penelitian Deskriptif atau Survei
 
PPT Olah Nilai Kurikulum merdeka belajar.pptx
PPT Olah Nilai Kurikulum merdeka belajar.pptxPPT Olah Nilai Kurikulum merdeka belajar.pptx
PPT Olah Nilai Kurikulum merdeka belajar.pptx
 
SOP MEDIA KOMUNIKASI DAN KOORDINASI pkms
SOP MEDIA KOMUNIKASI DAN KOORDINASI pkmsSOP MEDIA KOMUNIKASI DAN KOORDINASI pkms
SOP MEDIA KOMUNIKASI DAN KOORDINASI pkms
 

Hchandraleka konsep-sql-injection-menembus-login

  • 1. Konsep SQL Injection untukKonsep SQL Injection untuk Menembus Password LoginMenembus Password Login Happy Chandraleka hchandraleka@gmail.com http://thecakrabirawa.wordpress.com Pengantar Tulisan ini merupakan salah satu tulisan yang ada di buku “Siapa Bilang Nge-Hack Itu Susah” karya penulis sendiri dan diterbitkan oleh Elex Media Komputindo pada tahun 2008. Dengan pertimbangan kemanfaatan tulisan tersebut dan dipandang perlu untuk menjelaskan tentang logika SQL injection, maka penulis menempatkannya di sini. SQL Injection Bila seseorang ingin mengakses suatu sistem komputer, biasanya diperlukan login. Penerapannya pada website ditampilkan dengan dua kotak isian, yaitu kotak User Name, User Id, atau User Account dan kotak Password. Login ini berguna untuk memfilter dan mengetahui identitas seseorang yang ingin mengakses suatu sistem. Sistem login merupakan suatu cara dalam dunia sekuriti komputer untuk memfilter orang yang masuk ke sistem sehingga orang – orang yang tidak terdaftar tidak dapat masuk ke sistem tersebut. Tetapi teknologi yang ada selalu saja tidak sempurna. Ada banyak cara untuk menembus filter pada sistem login tersebut. Sehingga seseorang yang tidak mengetahui password dapat juga ikut menikmati dan masuk ke sistem tersebut. Salah satunya adalah dengan SQL injection. Pada tulisan ini saya akan jelaskan tentang cara menembus password login dengan SQL injection secara teoritis dengan melihat pada sisi kelemahan query bahasa SQL itu sendiri. SQL injection itu sendiri adalah suatu cara untuk mengeksploitasi kelemahan bahasa SQL dengan cara memasukkan (menginjeksikan) beberapa karakter tertentu. Deretan karakter tersebut biasa dikenal dengan nama injection string. Ada banyak hal yang dapat dilakukan dengan injection string. Diantaranya, mem- bypass password, mendapatkan nama tabel, menyisipkan anggota baru, dll, bahkan sampai menghapus tabel pada suatu database. Komunitas eLearning IlmuKomputer.Com Copyright © 2003-2007 IlmuKomputer.Com 1 Lisensi Dokumen: Copyright © 2003-2007 IlmuKomputer.Com Seluruh dokumen di IlmuKomputer.Com dapat digunakan, dimodifikasi dan disebarkan secara bebas untuk tujuan bukan komersial (nonprofit), dengan syarat tidak menghapus atau merubah atribut penulis dan pernyataan copyright yang disertakan dalam setiap dokumen. Tidak diperbolehkan melakukan penulisan ulang, kecuali mendapatkan ijin terlebih dahulu dari IlmuKomputer.Com.
  • 2. Memahami Cara Kerja SQL Injection Semisal ada seorang user yang bernama Joko yang ingin mengakses suatu sistem yang menggunakan sistem login. Maka Joko akan memasukkan isian pada kotak User Id dengan ‘Joko’ (tanpa kutip) dan pada kotak Password dengan ‘rahasia’ (tanpa kutip). Bila kemudian ditekan tombol OK atau tombol Login – nama tombolnya bisa berbeda – maka sistem tersebut akan menjalankan perintah query dalam bahasa SQL seperti berikut ini. Gambar Login dengan User Id dan Password Select * from TUser where UserId = ‘joko’ AND Password = ’rahasia’ Arti dari perintah tersebut adalah menampilkan data dari seluruh record (perhatikan tanda * di perintah tersebut) di database sistem tersebut. Tetapi tidak semua record akan ditampilkan, karena pada perintah di atas ada filter atau pemilihan, yaitu hanya data yang record UserId-nya berisi ‘joko’ dan Password-nya berisi ‘rahasia’. Perhatikan penggalan perintah setelah klausa where. Dan harus dipahami juga bahwa isian UserId dan Password yang diinputkan oleh user, keduanya harus bersesuaian dengan yang tersimpan di database sistem. Karena digunakan logika AND pada perintah tersebut. Dengan demikian, bila isian UserId dan Password sesuai dengan yang tersimpan di database, barulah user tersebut dapat masuk ke sistem. Dua Cara Menembus Password Untuk menembus – atau mem-bypass – password pada sistem login, bisa ditempuh dengan dua cara. Dari kedua cara tersebut seseorang bisa masuk ke suatu sistem tanpa perlu mengetahui password-nya. Cara pertama adalah dengan menambahkan karakter ‘# setelah UserId. Sehingga bila Anda menginputkan pada kotak User Id dengan ‘Joko’#’ (tanpa kutip) dan pada kotak Password Anda inputkan sembarang karakter, seperti pada gambar ini. Komunitas eLearning IlmuKomputer.Com Copyright © 2003-2007 IlmuKomputer.Com 2
  • 3. Gambar Injection string dengan ‘# pada kotak User Id Maka ketika Anda menekan tombol Login, sistem website tersebut akan menjalankan perintah query sebagai berikut. Tanda # merupakan cara untuk membuat komentar (remark) dalam bahasa SQL. Sebagaimana tanda // dalam bahasa Pascal. Remark atau komentar akan menyebabkan karakter sesudah tanda komentar akan diabaikan oleh program dan tidak akan dianggap sebagai kode program. Yang menariknya disini, dengan injection string ‘# akan menyebabkan kode program setelah tanda # akan diabaikan. Perhatikan perintah di atas. Yang imbasnya adalah Anda bisa menginputkan sembarang karakter pada kotak Password dan Anda tetap bisa login dengan User Id ‘joko’!! Cara kedua adalah dengan menambahkan injection string sembarang’ OR ‘x’=’x pada kotak Password. Gambar Injection string pada kotak Password Sehingga bila Anda tekan tombol Login, maka sistem website akan menjalankan perintah sebagai berikut Akibatnya pada bagian Password akan terisi dengan nilai ‘sembarang’. Tentu saja inputan tersebut akan bernilai false dan akan menyebabkan Anda tidak bisa login ke sistem tersebut. Komunitas eLearning IlmuKomputer.Com Copyright © 2003-2007 IlmuKomputer.Com 3
  • 4. Sederhana saja alasannya, isian password tidak sama dengan yang tersimpan di sistem. Tetapi ada query lanjutannya, yaitu OR ‘x’=’x . Yang artinya sistem diberikan pilihan. Bila sebelumnya, inputan password bernilai salah, maka dijalankan pilihan berikutnya yang sudah pasti benar, karena ‘x’=’x’. Akibatnya Anda bisa masuk ke dalam sistem tanpa mengetahui password yang sesungguhnya dengan User Id ‘joko’!! Bagaimana Penerapannya? Demikian teori SQL injection untuk menembus password login. Saya katakan teori karena memang begitulah secara teoritis kelemahan bahasa SQL. Tentu saja dalam penerapannya pada keadaan sesungguhnya akan sedikit berbeda. Sehingga bila Anda mencoba bermain – main dengan kiat ini, Anda tidak bisa begitu saja masuk menembus password pada login website. Karena para web developer akan mengantisipasi adanya serangan SQL injection ini. Diantaranya dengan mendeteksi inputan karakter yang tergolong aneh. Kecuali pada beberapa website yang mereka belum memperbaiki diri. Biografi Penulis Happy Chandraleka. Seorang penulis TI independen. Menyelesaikan S1 di Teknik Elektro Universitas Diponegoro. Saat ini mengelola Open Journal System Badan Penelitian dan Pengembangan Kesehatan, Kementerian Kesehatan Republik Indonesia. Informasi tentang penulis dapat dilihat di http://thecakrabirawa.wordpress.com dan dapat dihubungi via email hchandraleka@gmail.com. (ditulis di Ruang 7 Depok, 5 November 2013, pukul 12.45 siang) Komunitas eLearning IlmuKomputer.Com Copyright © 2003-2007 IlmuKomputer.Com 4