07 Desember 2015 - 17:24:33 - Read: 1722

Hacking Queries. Bad Logic dan Penerapannya Dalam Kehidupan Sehari-Hari

Hi hallo geeks, sehat? Gimana kabarnya mantan?

Sebuah program selalu dibangun berdasarkan logika dari yang paling sederhana hingga yang paling kompleks, dari logika yang paling efisien sampe dengan logika yang salah :p
Yarp, jika didalam sebuah aplikasi terdapat logika yang salah, maka kesalahan tersebutlah yang bisa dimanfaatkan oleh hacker untuk melakukan hal-hal yang seharusnya tidak dapat dilakukan oleh aplikasi.  

Perl

fork while 1


Pada tau kan yak, bad logic dari sintaks sederhana perl yang ternyata bisa dimanfaatkan buat nge-hang-in komputer ini :)
Didalam kehidupan sehari-hari, ternyata bad logic seperti ini juga bisa dimanfaatkan oleh para pria jomblo diluar sana sebagai jawaban bijak terhadap pertanyaan menyakitkan seperti "Lo masih jomblo aja bro?"

Jawaban para jomblo yang se-tipe dengan "fork while 1" itu semacam...
"Selama masih ada temen gue yang jomblo, berarti gue masih aman. Karena bukan cuma gue sendiri cowok yang berstatus jomblo didunia ini"
#LaluTerdengarBunyiSangkakala #JombloSampeKiamat.

Bash


env x='() { :;}; echo PRETT' bash -c :


Nah, kalo untuk pemanfaatan bugs ini agak extreme. Karena penerapannya bisa digunakan untuk menyamarkan bunyi kentut. Yarp, kalo ada pepatah "Sambil menyelam minum air", kalo untuk menyamarkan bunyi kentut yang se-tipe dengan "env x='() { :;}; echo PRETT' bash -c :" adalah


"Sambil gebrak meja, kentut"


Trus liat sekeliling. Kalo pada kaget, trus pada fokus di meja, berarti kamuflase berhasil. Tapi kalo ada yang pingsan, berarti cara diatas hanya bisa menyamarkan bunyi, tapi tidak bisa menyembunyikan bau :D


PHP


    function Input_Harus_Angka_Satu_Tapi_Input_Gak_Boleh_Pake_Angka(){
        $g=$_GET;
        $a=1;
        $b=preg_replace( '/[^a-z]/', '', $g['b']);
        return (strcmp($a,$b) == 0)?true:false;
    }
    bypass : url.php?b[]=ini_angka_:p    

 

Nah, ini satu lagi bugs yang ternyata juga bisa kita terapkan dalam kehidupan sehari-hari. Nyari contohnya agak ribet, karena penjelasan dari kode diatas mungkin semacam ini:


- cewek ngajak cowok makan
- cowok nanya mau makan dimana
- cewek bilang "terserah"
- cowok ngasih masukan tempat makan A
- cewek gak suka menunya
- cowok ngasih masukan tempat makan B
- cewek gak suka tempatnya, ngingetin mantan katanya
- cowok ngasih masukan tempat makan C
- cewek gak mau, katanya sepi pengunjung Berarti gak enak
- cowok ngasih masukan tempat makan D
- cewek gak mau, yang jualan mantannya


Ya gitu, ribet. Jadi langsung bypass aja.


- cowok ngajak balik kerumah ceweknya
- cowok beli mie goreng di warung
- cowok bilang bikin mie dirumah aja


Yarp. gitu aja. :)


- cewek minta putus


Lahh.


- cewek balik ke tempat makan D
- cewek ngajakin mantannya balikan


Jiahhhhh.


SQL


SELECT * FROM table WHERE field='A' or 1=1--


Bad logic yang 1 ini bisa diterapkan sebagai cara paling ajib memenangkan argumen ketika berantem sama cewek. Sebagai contoh, kadang-kadang cewek suka merhatiin siapa aja cewek lain yang "selalu" nge-like foto cowoknya yang diupload. Cewek memang kadang gitu yak, kalo ada foto kita cuma di-like oleh cewek lain yang sama setiap upload foto. Wajar sih cemburu, soalnya ini memang salah satu modus yang biasa dipake cowok :p


Sinta : "Aku gak suka si Nadya, Raisa, Putri, Bowo, dan Gatot selalu nge-like semua foto yang kamu upload!!! Blokir mereka sekarang"
Thomas : "Sayang, cewek yang aku cinta itu cuma kamu" // field='A'
Thomas : "Lagian, harusnya kamu bangga dong kalo fotoku selalu di-like. Berarti cowok kamu ini tampan. ya kan?" // or 1=1
Thomas : "Selain itu, anggap saja ini sebagai ujian cinta kita. Aku gak mudah tergoda sama Nadya, Raisa, Putri, Bowo apalagi Gatot. Karena begitu besarnya cintaku padamu." // or 'A'='A'



Hacked. Semua pernyataan dari Thomas akan selalu bernilai true atau benar. Argumen win. Mission complete. :p