SQL injection merupakan salah satu rentan aplikasi web yang paling sering ditemukan berdasarkan laporan keamanan yang dikeluarkan oleh baracode 32% dari aplikasi web paling tidak memiliki satu kerentenan SQL injection dan berdasarkan laporan kerentanan dari komunitas yang diperoleh oleh badan sandi si bernegara atau yang disingkat bssn terdapat 73% dari laporan kerentan yang diterima merupakan kerentanan SQL injection Tak hanya itu berdasarkan Award Open web application security Project injection juga merupakan ancaman nomor 3 terhadap keamanan aplikasi web menurut statistik yang ada dapat kita simpulkan bahwa SQL injection tetap menjadi resiko paling besar pada aplikasi web yang paling sering ditemukan oleh sebab itu kita perlu memahami apa itu SQL injection pada video ini kami akan bahas tuntas semuanya Yuk kita simak terus videonya [Musik] SQL injection merupakan teknik Serangan yang menyalahgunakan celah keamanan yang terjadi dalam lapisan basis data pada sebuah aplikasi dengan cara memodifikasi perintah SQL sebelum dikirim ke database SQL injection terjadi karena data yang diinputkan oleh pengguna tidak dilakukan validasi oleh aplikasi dan langsung dimuat di dalam baris perintah query SQL sehingga inputan pengguna tersebut diperlakukan sebagian bagian dari query SQL [Musik] sebagai contoh jika kita punya sebuah halaman login seperti yang ada pada tampilan berikut maka untuk melakukan login secara normal kita memerlukan akun yang verified atau akun yang benar sebagai contoh disini kita memiliki username admin passwordnya admin123 dan ini merupakan akun untuk admin ketika kita memasukkan username admin dan passwordnya admin 123 dan kemudian kita mengetik atau mengklik halaman login maka aplikasi akan mengirimkan perintah SQL ke database contoh perintah yang digunakan adalah sebagai berikut di sinilah Mari kita lihat username yang sama dengan admin dan password sama dengan admin 123 Di mana admin dan admin 1 2 3 ini merupakan inputan yang diterima oleh aplikasi dari pengguna [Musik] query ini akan diproses oleh database dan ternyata setelah dicek di tabel user di sini ada riabre user maka ia akan menghasilkan nilai true karena kita beli user memang ada username admin dan passwordnya admin123 dalam menghasilkan nilai true program akan menerima nilai true tersebut akan menghasilkan ke dashboard akan masuk ke dashboard sehingga kita bisa login nah Ternyata kalau misalnya kita menginputkan yang salah atau akun yang tidak verified contohnya Ini username passwordnya kita masukkan bukan admin dan kita klik login perintah yang dikirimkan itu tetap sama yang bedanya hanya di bagian sini database akan mengecek tabel user dan ternyata tidak ada akun dengan username admin dan password bukan admin database akan mengirimkan nilai false berarti tidak ada data rekamnya menerima nilai false akan menampilkan pesan error errornya itu bermacam-macam misalnya username dan password tidak cocok username salah atau Password salah dan lain sebagainya tergantung pengembang webnya nah lantas Bagaimana dengan SQL injection jika kita menyimpulkan payload SQ injection sebagai contoh yang berwarna merah ini adalah pilot SQ injection maka program itu akan mengirimkan query sebagai berikut yang sebelumnya itu password admin dan bukan admin diganti menjadi seperti ini yang berisikan pasien payload ini akan memaksa database untuk mengirimkan nilai true karena di sini ada horse 1 = 1 yang berarti itu akan selalu true apapun yang diisikan oleh pengguna untuk masalah n dan or ini kalian bisa mempelajari logical operator itu ada end corner dan lain sebagainya bisa kalian pelajari oleh searching saja di Google ini akan memaksa database untuk mengirimkan true jadi ketika database mengirimkan true program akan mengira bahwa ya ternyata username nya memang ada akunnya memang benar pada kenyataannya akunnya salah tapi program tetap akan menampilkan halaman dashboard begitulah kita bisa login ke dalam halaman dashboard tanpa akun yang benar istilah ini dalam dunia hiking kita sebut Bypass admin login Bypass Kalian juga bisa melihat contoh dari simulasi ini pada admin pada dgc2 Kalau saya tidak salah ya kalian lihat saja di playlist simulasi hacking Oke selanjutnya kita akan masuk ke contoh terkait tentang tipe-tipe dari SQL injection [Musik] nah SQL injection ini terbagi jadi 3 yang pertama itu ada in band syl injection yang kedua itu ada inferensial SQ injection dan yang ketiga itu ada hot band SQL injection [Musik] untuk in band SQL injection ini terdiri dari dua jenis yaitu error base SQL injection dan Union base SQL injection untuk contohnya kalian bisa lihat di simulasi hacking untuk thumbnailnya yang seperti ini kalian bisa cari nanti ya sini akan saya jelaskan secara singkat saja untuk in band SQL injection ini merupakan tipe serangan SG injection yang paling umum dan mudah untuk dieksploitasi in band SQL injection terjadi ketika penyerang dapat menggunakan kanal komponen hasil dari serangan di sini kalau kita lihat contohnya sini kita punya web ya Nah ini kita kanalnya web ini kanal itu web ini jadi ketika kita di sini mengetikkan tanda kutip satu di alamat urlnya seperti ini Nah di sini menampilkan pesan error nah ini termasuk kategori yang tadi masuk kategori error base SQL injection ya [Musik] oke di sini jadi kita kenalnya itu sama kemudian ketika kita sudah tahu ini ternyata ini punya celah SQL injection dan dia menampilkan pesan error langsung kita bisa mencoba untuk melakukan kunion base SQL injection di sini sudah saya contohkan di sini kita menemukan tabelnya itu ada empat ya nih neon select 1,2,3,4 jadi ada 4 tabel atau 4 kolom untuk bagian halaman ini di sini nih volume kedua di sini volume ketiga dan ini belum keempat Nah dari ini sudah bisa Seharusnya kalau ini diteruskan kita bisa mendapatkan username dan passwordnya Biasanya sih dalam dunia packing atau dalam dunia diving ini biasanya kita sebutnya nyari nomor togel atau sejenisnya ya selanjutnya itu kita masuk ke Yang Kedua jenis yang kedua inferensial SQL injection tidak seperti injection serangan TV inferension SQL injection ini membutuhkan waktu yang lebih lama karena ketika kita eksploitasi itu dia tidak menampilkan pesan error biasanya inferensial SQL injection ini kita sebut juga blind SQL ini terbagi dari dua yaitu Blend polliance injection dan Plantation untuk contohnya kalian bisa lihat di sebelah sini cari di playlist simulasi hacking dan thumbnailnya itu yang seperti ini ya Jadi kalau misalnya kita Contohkan itu Nah di sini tinggal kita klik kita tambahkan di sini titik 1 seperti ini ya Nanti kalian bisa lihat sendiri di playlist simulasi game yang tampilannya seperti ini kalau kalian ingin lebih mengerti terkait tentang inferensial ST injection itu Contohnya seperti apa selanjutnya yaitu outband SG injection nah orbit escalation ini merupakan tipe SQ injection yang termasuk jarang ditemukan karena bergantung pada fitur yang diaktifkan oleh server database yang digunakan aplikasi web ini sebagai contohnya di sini ada taker dia melakukan serangan terhadap web server Dia memasukkan inject Malaysia SQL command dia masukkan payload SQL kemudian web server itu memproses langsung ke database dicek mengirimkan query yang seperti tadi namun si database ini nggak mengirim hasilnya itu ke web server lagi melainkan dia mengirim ke kanal yang lain Jadi ada listening server yang disediakan oleh taker jadi dia ngirim ke listening server listening server ini akan mengirimkan informasi atau capture informasi dari database tadi Nah ini yang di sini bagian Inilah yang disebut dengan hasilnya itu tidak melalui webnya tapi melalui listening server jadi ada server lain lagi untuk contoh yang outband exeling ini belum ada ya di playlist simulasi mungkin kedepannya nanti akan kita buatkan Nah untuk bahayanya sendiri itu Berdasarkan informasi dari badan siber Sandi Negara di Twitter katanya ya untuk SQL injection itu bahayanya yang pertama itu masuk ke dalam aplikasi tanpa username dan password yang valid pertama itu berarti Bypass admin login atau Bypass login saja pokoknya login masuk tanpa username dan password yang valid atau tanpa kredensial yang benar yang kedua itu memodifikasi data jadi datanya yang seharusnya dia tidak lulus bisa jadi Lulus ini bahayanya juga termasuk tes CPNS masuk perguruan tinggi atau tes apapun itu di sini juga bisa berbahaya sjl injection kemudian menghapus seluruh data yang tersedia ini dihapus Ini bahaya di drop table kalau istilahnya kemudian mencuri informasi yang sensitif Nah di sini untuk mencuri informasi ini juga pernah kebocoran data ya itu termasuk mencu informasi melakukan perintah jarak jauh atau remote RTP mungkin menyamarkan dengan memanfaatkan akun pengguna resmi jadi pura-pura dia Jadi dia ngehack nggak rubah apa-apa tapi dia pura-pura bahwa dia adalah orang tersebut itu namanya identititik kalian bisa cari identity untuk informasi lebih lanjut untuk studi kasus SK injection di sini ada studi kasus yang menariknya yaitu pada tahun 2004 nah ini kalau dibilang ini kisah x-nover legenda pembobol situs KPU jadi di tahun 2004 itu KPU mengekspos sistem it-nya yang bernilainya itu 125 miliar ini bukan nilai yang kecil ya ini nilai yang fantastis ke media sehingga menarik perhatian jadi 152 miliar dan ada orang iseng sisa novel Ini micnya michaelnya dan lebar massa mencoba-coba untuk membobol sistem ini jadi pada 16 april 2004 itu melihat ada lubang pada sistem ipkpu lalu mengetes untuk bobol KPU dan berhasil tanpa menggunakan tools khusus alias hanya menggunakan SQL injection setelah itu sanubar mengganti nama partai menjadi nama-nama nyeleneh dari partai jambu sampai partai bubur ijo nah adik-adik perlu diingat bahwa melakukan tindakan hacking walaupun hanya iseng-iseng itu bisa dipenjara Ini contohnya si dan ini resmi dilaporkan setelah KPU melaporkan aksi pembobolan sistem it ke Polda Metro Jaya danuver dituntut penjara 1 tahun atau denda 10 juta Namun karena di dalam kurungan dia baik dia hanya dihukum 6 bulan 21 hari di penjara bayangkan adik-adik iseng ngebobol itu iseng-iseng aja ini Gabut Terus tiba-tiba [Musik] eh ternyata besoknya masuk penjara dong 6 bulan 21 hari satu semester kalau adik-adik di penjara nggak megang HP nggak megang komputer Made tembok aja bayangin jadi jangan dicontoh ya iseng-iseng Boleh tapi iseng-iseng lah kesitu yang sudah disediakan memang khusus untuk melakukan simulasi hacking contohnya itu DG gini loh Itu khusus sekalian gak akan masuk penjara karena mobil situs DG gini loh karena memang khusus disediakan untuk pembelajaran Nah untuk pencegahannya itu ada tiga ya yang paling utama yang pertama parameters SQL query yang kedua validasi input data yang ketiga uji aplikasi secara berkala untuk parameter race ini merupakan salah satu teknik dalam bahasa pemrograman yang ditujukan agar database dapat membedakan mana yang merupakan SQL statement dan mana yang merupakan data yang diinputkan oleh pengguna Jadi kalian bisa cari terkait parametest parameterrice SQL query ini di Google Kalau kalian mau jadi developer yang handal dalam bagian security agar aplikasi kalian itu tidak mudah kebobolan ini merupakan salah satu teknik dalam perut gaming yang kedua validasi input data Nah untuk validasi input data ini ada dua jenis yang pertama white list yang kedua blacklist untuk white list berarti hanya menerima inputan data yang memang benar-benar diketahui baik blacklist hanya menolak info data yang diketahui tidak baik sebagai contoh untuk wireless itu misalnya kita punya text box harga jadi itu Harga itu kan seharusnya hanya angka jadi dia hanya menerima inputan berupa angka dan tidak menerima inputan berupa huruf dan sejenisnya Sedangkan untuk textbook email itu harus menggunakan tanda @ nggak mungkin email tidak menggunakan tanda head untuk blacklist di sini ada banyak ya jadi disini saya screenshot saja mulai dari kutip satu core dan seterusnya halter bisa cari di Google Blacklist karakter untuk SQL injection yang terakhir yaitu Fuji aplikasi keamanan secara berkala agar celah keamanan terkait aplikasi dapat diketahui secara dini dengan demikian langkah preventif ataupun perbaikan terhadap celah keamanan tersebut dapat segera dilakukan pastikan juga bahwa aplikasi web yang kamu bangun telah lulus Jadi kalian bisa nyewa web hacking untuk ngetes aplikasi kalian apakah sudah aman atau belum istilah ini biasa juga disebut sebagai pantes [Musik] Sekian dulu video kita pada kesempatan hari ini Terima kasih telah menonton dan sampai jumpa di video selanjutnya [Musik]