Jawaban:
Kebingungan adalah cara "mengaburkan" arti sebenarnya dan maksud dari kode javascript Anda. Beberapa situs menggunakannya sebagai penghalang bagi orang yang ingin menyalin / meminjam kode mereka. Situs lain menggunakannya sebagai sarana untuk menyembunyikan maksud sebenarnya dari kode.
Beberapa bentuk penyembunyian:
Penyembunyian tidak dengan sendirinya jahat, tetapi dapat digunakan untuk mencoba menyembunyikan niat jahat dan itulah yang mungkin menjadi keberatan AVG. Ia mendeteksi banyak hal yang tidak jelas sehingga tidak bisa memastikan apakah javascript berusaha melakukan sesuatu yang ingin dicegah. Karena itu, secara default kode tersebut dinyatakan tidak aman karena tidak dapat memverifikasi bahwa kode itu tampak OK.
1
dan 2
juga dilakukan oleh kompresor javascript. Kompresor mengaburkan kode sebagai efek samping, tetapi itu bukan tujuan utama mereka; tujuan utamanya adalah untuk membuat javascript lebih kecil, untuk mengurangi bandwidth.
Kebingungan mengacu pada menyembunyikan makna yang dimaksudkan dari sesuatu.
Dalam hal ini, cuplikan JavaScript yang dapat dibaca dengan jelas, seperti
window.onload = function() { alert("Hello " + username) };
dapat diganti oleh
var _0xc5b2=["\x6F\x6E\x6C\x6F\x61\x64",
"\x48\x65\x6C\x6C\x6F\x20"];window[_0xc5b2[0]]=
function (){alert(_0xc5b2[1]+username);} ;
atau bahkan
eval(unescape("var%20_0xc5b2%3D%5B%22onload%22%2C%22Hello%20%22%5D%3Bwindow"+
"%5B_0xc5b2%5B0%5D%5D%3Dfunction%20%28%29%7Balert%28_0xc5b2%5B1%5D+username"+
"%29%3B%7D%20%3B"));
Ketiga potongan kode melakukan hal yang sama persis, tetapi hanya membaca yang pertama akan memungkinkan Anda untuk memahami niatnya dengan mudah.
Rupanya, AVG berupaya memahami tujuan kode JavaScript sebelum mengizinkan eksekusi. Ketika kode tersebut dikaburkan, AVG mungkin akan gagal. Karena itu peringatan.
Yang sedang berkata, beberapa situs web mengaburkan JavaScript mereka bukan karena niat jahat, tetapi untuk membuatnya sulit untuk mencuri pekerjaan mereka. Kebingungan biasanya tidak berguna jika digunakan untuk tujuan ini, tetapi intinya adalah bahwa kebingungan tidak selalu berarti niat buruk.