Sidr23
Местный
- Сообщения
- 54
- Реакции
- 3
Ловиnikitin2016 написал(а):скинь пожалуйста
https://cloud.mail.ru/public/51Lp4ZnAu135/jsky (1).rar
- Сообщения
- 280
- Реакции
- 46
А как ты ставил, если там ошибок после него тьма вылазит? Или ты не включал вывод ошибок?Viktor написал(а):
Ставил на все свои проекты, вроде работает, ни разу не взломали. Но еще зависит от хостинга.
Sidr23
Местный
- Сообщения
- 54
- Реакции
- 3
Если его поставить, то не можна ни новость написать, ни тикет, короче ни че го!skroliks написал(а):А как ты ставил, если там ошибок после него тьма вылазит? Или ты не включал вывод ошибок?
- Сообщения
- 280
- Реакции
- 46
Понятно.. Лучше правильно пользоваться фильтрацией, htaccess'ом и прочими видами защиты..Sidr23 написал(а):Если его поставить, то не можна ни новость написать, ни тикет, короче ни че го!
RusRus198
Участник
- Сообщения
- 9
- Реакции
- 1
У меня это есть у 24 файлах, пипесссс!mobisaite написал(а):проверила уже, eval нету) чисто все)) а сообщение отправила просто тех еще не было когда печатала )))
romcka8
Местный
- Сообщения
- 65
- Реакции
- 3
Мне в чат кинули вот такой код
' and ( select 1 from ( select count(*), concat ( ( select (select concat(admin,' ',pass) from db_config where id = 1) from information_schema.tables limit 0,1 ), floor(rand(0)*2) ) x from information_schema.tables group by x) a ) and '
Я так понял , что хотели взломать админку. Подскажите как работает данный код и насколько это опасно?Пользователя дилетанта сразу забанил.Ферма обезопасена по всем указанным тут инструкциям.
' and ( select 1 from ( select count(*), concat ( ( select (select concat(admin,' ',pass) from db_config where id = 1) from information_schema.tables limit 0,1 ), floor(rand(0)*2) ) x from information_schema.tables group by x) a ) and '
Я так понял , что хотели взломать админку. Подскажите как работает данный код и насколько это опасно?Пользователя дилетанта сразу забанил.Ферма обезопасена по всем указанным тут инструкциям.
GLookin
Участник
- Сообщения
- 296
- Реакции
- 62
Этот код выдергивает логин и пароль из твоего конфига в базе данных.romcka8 написал(а):Мне в чат кинули вот такой код
' and ( select 1 from ( select count(*), concat ( ( select (select concat(admin,' ',pass) from db_config where id = 1) from information_schema.tables limit 0,1 ), floor(rand(0)*2) ) x from information_schema.tables group by x) a ) and '
Я так понял , что хотели взломать админку. Подскажите как работает данный код и насколько это опасно?Пользователя дилетанта сразу забанил.Ферма обезопасена по всем указанным тут инструкциям.
Хотя, если ты логин и пароль спрятал в php, как на форуме рекомендовали, то он дилетант все равно не получил бы желанных результатов)
RusRus198
Участник
- Сообщения
- 9
- Реакции
- 1
Меня так сначала и сломали, вывели 13 000 рублей, нашел программиста, решил эту проблему, всегда почему то учимся на своих ошибках(((RusRus198 написал(а):У меня это есть у 24 файлах, пипесссс!
romcka8
Местный
- Сообщения
- 65
- Реакции
- 3
Ну год назад когда начал заниматься фермами , частенько деньги уводили , но небольшие суммы. Сейчас когда появились подобные форумы с ошибками и описанием как их исправить , то жить стало намного проще)))RusRus198 написал(а):Меня так сначала и сломали, вывели 13 000 рублей, нашел программиста, решил эту проблему, всегда почему то учимся на своих ошибках(((
ccc
Участник
- Сообщения
- 11
- Реакции
- 1
ребят кто знает подскажите это опасно?
папка сайт / js / skript.js
/* begin Button */
function artButtonsSetupJsHover(className) {
var tags = ["input", "a", "button"];
for (var j = 0; j < tags.length; j++){
var buttons = artGetElementsByClassName(className, document, tags[j]);
for (var i = 0; i < buttons.length; i++) {
var button = buttons;
if (!button.tagName || !button.parentNode) return;
if (!artHasClass(button.parentNode, 'art-button-wrapper')) {
if (!artHasClass(button, 'art-button')) button.className += ' art-button';
var wrapper = document.createElement('span');
wrapper.className = "art-button-wrapper";
if (artHasClass(button, 'active')) wrapper.className += ' active';
var spanL = document.createElement('span');
spanL.className = "l";
spanL.innerHTML = " ";
wrapper.appendChild(spanL);
var spanR = document.createElement('span');
spanR.className = "r";
spanR.innerHTML = " ";
wrapper.appendChild(spanR);
button.parentNode.insertBefore(wrapper, button);
wrapper.appendChild(button);
}
artEventHelper.bind(button, 'mouseover', function(e) {
e = e || window.event;
wrapper = (e.target || e.srcElement).parentNode;
wrapper.className += " hover";
});
artEventHelper.bind(button, 'mouseout', function(e) {
e = e || window.event;
button = e.target || e.srcElement;
wrapper = button.parentNode;
wrapper.className = wrapper.className.replace(/hover/, "");
if (!artHasClass(button, 'active')) wrapper.className = wrapper.className.replace(/active/, "");
});
artEventHelper.bind(button, 'mousedown', function(e) {
e = e || window.event;
button = e.target || e.srcElement;
wrapper = button.parentNode;
if (!artHasClass(button, 'active')) wrapper.className += " active";
});
artEventHelper.bind(button, 'mouseup', function(e) {
e = e || window.event;
button = e.target || e.srcElement;
wrapper = button.parentNode;
if (!artHasClass(button, 'active')) wrapper.className = wrapper.className.replace(/active/, "");
});
}
}
}
artLoadEvent.add(function() { artButtonsSetupJsHover("art-button"); });
/* end Button */
artLoadEvent.add(function() {
artButtonsSetupJsHover("button");
artButtonsSetupJsHover("readon");
artButtonsSetupJsHover("readmore");
});
вообще нужна эта папка? как быть?
папка сайт / js / skript.js
/* begin Button */
function artButtonsSetupJsHover(className) {
var tags = ["input", "a", "button"];
for (var j = 0; j < tags.length; j++){
var buttons = artGetElementsByClassName(className, document, tags[j]);
for (var i = 0; i < buttons.length; i++) {
var button = buttons;
if (!button.tagName || !button.parentNode) return;
if (!artHasClass(button.parentNode, 'art-button-wrapper')) {
if (!artHasClass(button, 'art-button')) button.className += ' art-button';
var wrapper = document.createElement('span');
wrapper.className = "art-button-wrapper";
if (artHasClass(button, 'active')) wrapper.className += ' active';
var spanL = document.createElement('span');
spanL.className = "l";
spanL.innerHTML = " ";
wrapper.appendChild(spanL);
var spanR = document.createElement('span');
spanR.className = "r";
spanR.innerHTML = " ";
wrapper.appendChild(spanR);
button.parentNode.insertBefore(wrapper, button);
wrapper.appendChild(button);
}
artEventHelper.bind(button, 'mouseover', function(e) {
e = e || window.event;
wrapper = (e.target || e.srcElement).parentNode;
wrapper.className += " hover";
});
artEventHelper.bind(button, 'mouseout', function(e) {
e = e || window.event;
button = e.target || e.srcElement;
wrapper = button.parentNode;
wrapper.className = wrapper.className.replace(/hover/, "");
if (!artHasClass(button, 'active')) wrapper.className = wrapper.className.replace(/active/, "");
});
artEventHelper.bind(button, 'mousedown', function(e) {
e = e || window.event;
button = e.target || e.srcElement;
wrapper = button.parentNode;
if (!artHasClass(button, 'active')) wrapper.className += " active";
});
artEventHelper.bind(button, 'mouseup', function(e) {
e = e || window.event;
button = e.target || e.srcElement;
wrapper = button.parentNode;
if (!artHasClass(button, 'active')) wrapper.className = wrapper.className.replace(/active/, "");
});
}
}
}
artLoadEvent.add(function() { artButtonsSetupJsHover("art-button"); });
/* end Button */
artLoadEvent.add(function() {
artButtonsSetupJsHover("button");
artButtonsSetupJsHover("readon");
artButtonsSetupJsHover("readmore");
});
вообще нужна эта папка? как быть?
GLookin
Участник
- Сообщения
- 296
- Реакции
- 62
Ребят, а вообще насколько можно доверять всем javascripts?
Я в php и стилях понимаю, но в js не углублялся, ибо времени нет.
Насколько реально проникнуть через js, как в дыру?
Я много раз натыкался, например на злостный eval в файлах явы...
То есть, если в файлах php этого eval нет, но в явках имеется - это уже дыра?
надо убивать такие файлы?
Я в php и стилях понимаю, но в js не углублялся, ибо времени нет.
Насколько реально проникнуть через js, как в дыру?
Я много раз натыкался, например на злостный eval в файлах явы...
То есть, если в файлах php этого eval нет, но в явках имеется - это уже дыра?
надо убивать такие файлы?
GLookin
Участник
- Сообщения
- 296
- Реакции
- 62
Например, вот это вот добро, что может быть такое?
PHP:
// Evaluates a script in a global context
// Workarounds based on findings by Jim Driscoll
// http://weblogs.java.net/blog/driscoll/archive/2009/09/08/eval-javascript-global-context
globalEval: function( data ) {
if ( data && jQuery.trim( data ) ) {
// We use execScript on Internet Explorer
// We use an anonymous function so that context is window
// rather than jQuery in Firefox
( window.execScript || function( data ) {
window[ "eval" ].call( window, data );
} )( data );
}
},
himik
Участник
- Сообщения
- 230
- Реакции
- 32
romcka8
Местный
- Сообщения
- 65
- Реакции
- 3
GLookin
Участник
- Сообщения
- 296
- Реакции
- 62
Всё, что описано в данной теме. То, что не описано, либо не встречали, пока больше, либо не расскажем )romcka8 написал(а):Народ , какие еще есть ошибки в фермах? Хочет достаточно хорошо обезопасить проект.
Всё индивидуально, в каждом скаченном скрипте. Сегодня ты скачиваешь по ссылке чистый скрипт, а завтра его уже заменили дырявым.
GLookin
Участник
- Сообщения
- 296
- Реакции
- 62
Сегодня всё утро "бомбят" мне ферму через форму обратной связи вот такими комбинациями:
Это приходит на электронку в "Теме" и "Тексте" письма.
Как думаете, или кто знает, что пытаются сделать злоумышленники?)
Пока что, всё, что у них получается - это отправлять мне это добро на электронную почту моей фермы)
Надеюсь, это всё, что у них выходит и выйдет этими действиями ))
Код:
USD {9999370+10000076}
Код:
-1 OR 2+541-541-1=0+0+0+1
Код:
response.write(9061857*9761980)
Код:
SomeCustomInjectedHeader:injected_by_wvs
Как думаете, или кто знает, что пытаются сделать злоумышленники?)
Пока что, всё, что у них получается - это отправлять мне это добро на электронную почту моей фермы)
Надеюсь, это всё, что у них выходит и выйдет этими действиями ))
Канстантин
Местный
- Сообщения
- 58
- Реакции
- 5
case"null":return"null";}return null;};JSON.decode=function(string,secure){if(!string||typeOf(string)!="string"){return null;}if(secure||JSON.secure){if(JSON.parse){return JSON.parse(string);
}if(!JSON.validate(string)){throw new Error("JSON could not decode the input; security is enabled and the value is not secure.");}}return eval("("+string+")");
и
var properties=Object.append({heightptions.height,widthptions.width},options.properties);var self=this;for(var callBack in callBacks){Swiff.CallBacks[this.instance][callBack]=(function(option){return function(){return option.apply(self.object,arguments);
};})(callBacks[callBack]);vars[callBack]="Swiff.CallBacks."+this.instance+"."+callBack;}params.flashVars=Object.toQueryString(vars);if(Browser.ie){properties.classid="clsid27CDB6E-AE6D-11cf-96B8-444553540000";
params.movie=path;}else{properties.type="application/x-shockwave-flash";}properties.data=path;var build='<object id="'+id+'"';for(var property in properties){build+=" "+property+'="'+properties[property]+'"';
}build+=">";for(var param in params){if(params[param]){build+='<param name="'+param+'" value="'+params[param]+'" />';}}build+="</object>";this.object=((container)?container.empty():new Element("div")).set("html",build).firstChild;
},replaces:function(element){element=document.id(element,true);element.parentNode.replaceChild(this.toElement(),element);return this;},inject:function(element){document.id(element,true).appendChild(this.toElement());
return this;},remote:function(){return Swiff.remote.apply(Swiff,[this.toElement()].append(arguments));}});Swiff.CallBacks={};Swiff.remote=function(obj,fn){var rs=obj.CallFunction('<invoke name="'+fn+'" returntype="javascript">'+__flash__argumentsToXML(arguments,2)+"</invoke>");
return eval(rs);};})();
из js\mootools-core.js
js\jquery.js
идет такой код весь файл
"ajaxError",[H,F,G])}},active:0,httpSuccess:function(F){try{return !F.status&&location.protocol=="file:"||(F.status>=200&&F.status<300)||F.status==304||F.status==1223}catch(E){}return false},httpNotModified:function(G,E){try{var H=G.getResponseHeader("Last-Modified");return G.status==304||H==o.lastModified[E]}catch(F){}return false},httpData:function(J,H,G){var F=J.getResponseHeader("content-type"),E=H=="xml"||!H&&F&&F.indexOf("xml")>=0,I=E?J.responseXML:J.responseText;if(E&&I.documentElement.tagName=="parsererror"){throw"parsererror"}if(G&&G.dataFilter){I=G.dataFilter(I,H)}if(typeof I==="string"){if(H=="script"){o.globalEval(I)}if(H=="json"){I=l["eval"]("("+I+")")}}return I},param:function(E){var G=[];
Подскажите что из этого является безопасным, а что необходимо удалить.
}if(!JSON.validate(string)){throw new Error("JSON could not decode the input; security is enabled and the value is not secure.");}}return eval("("+string+")");
и
var properties=Object.append({heightptions.height,widthptions.width},options.properties);var self=this;for(var callBack in callBacks){Swiff.CallBacks[this.instance][callBack]=(function(option){return function(){return option.apply(self.object,arguments);
};})(callBacks[callBack]);vars[callBack]="Swiff.CallBacks."+this.instance+"."+callBack;}params.flashVars=Object.toQueryString(vars);if(Browser.ie){properties.classid="clsid27CDB6E-AE6D-11cf-96B8-444553540000";
params.movie=path;}else{properties.type="application/x-shockwave-flash";}properties.data=path;var build='<object id="'+id+'"';for(var property in properties){build+=" "+property+'="'+properties[property]+'"';
}build+=">";for(var param in params){if(params[param]){build+='<param name="'+param+'" value="'+params[param]+'" />';}}build+="</object>";this.object=((container)?container.empty():new Element("div")).set("html",build).firstChild;
},replaces:function(element){element=document.id(element,true);element.parentNode.replaceChild(this.toElement(),element);return this;},inject:function(element){document.id(element,true).appendChild(this.toElement());
return this;},remote:function(){return Swiff.remote.apply(Swiff,[this.toElement()].append(arguments));}});Swiff.CallBacks={};Swiff.remote=function(obj,fn){var rs=obj.CallFunction('<invoke name="'+fn+'" returntype="javascript">'+__flash__argumentsToXML(arguments,2)+"</invoke>");
return eval(rs);};})();
из js\mootools-core.js
js\jquery.js
идет такой код весь файл
"ajaxError",[H,F,G])}},active:0,httpSuccess:function(F){try{return !F.status&&location.protocol=="file:"||(F.status>=200&&F.status<300)||F.status==304||F.status==1223}catch(E){}return false},httpNotModified:function(G,E){try{var H=G.getResponseHeader("Last-Modified");return G.status==304||H==o.lastModified[E]}catch(F){}return false},httpData:function(J,H,G){var F=J.getResponseHeader("content-type"),E=H=="xml"||!H&&F&&F.indexOf("xml")>=0,I=E?J.responseXML:J.responseText;if(E&&I.documentElement.tagName=="parsererror"){throw"parsererror"}if(G&&G.dataFilter){I=G.dataFilter(I,H)}if(typeof I==="string"){if(H=="script"){o.globalEval(I)}if(H=="json"){I=l["eval"]("("+I+")")}}return I},param:function(E){var G=[];
Подскажите что из этого является безопасным, а что необходимо удалить.
GLookin
Участник
- Сообщения
- 296
- Реакции
- 62
Я удалял вот это добро из подобных скриптов:Канстантин написал(а):case"null":return"null";}return null;};JSON.decode=function(string,secure){if(!string||typeOf(string)!="string"){return null;}if(secure||JSON.secure){if(JSON.parse){return JSON.parse(string);
}if(!JSON.validate(string)){throw new Error("JSON could not decode the input; security is enabled and the value is not secure.");}}return eval("("+string+")");
и
var properties=Object.append({heightptions.height,widthptions.width},options.properties);var self=this;for(var callBack in callBacks){Swiff.CallBacks[this.instance][callBack]=(function(option){return function(){return option.apply(self.object,arguments);
};})(callBacks[callBack]);vars[callBack]="Swiff.CallBacks."+this.instance+"."+callBack;}params.flashVars=Object.toQueryString(vars);if(Browser.ie){properties.classid="clsid27CDB6E-AE6D-11cf-96B8-444553540000";
params.movie=path;}else{properties.type="application/x-shockwave-flash";}properties.data=path;var build='<object id="'+id+'"';for(var property in properties){build+=" "+property+'="'+properties[property]+'"';
}build+=">";for(var param in params){if(params[param]){build+='<param name="'+param+'" value="'+params[param]+'" />';}}build+="</object>";this.object=((container)?container.empty():new Element("div")).set("html",build).firstChild;
},replaces:function(element){element=document.id(element,true);element.parentNode.replaceChild(this.toElement(),element);return this;},inject:function(element){document.id(element,true).appendChild(this.toElement());
return this;},remote:function(){return Swiff.remote.apply(Swiff,[this.toElement()].append(arguments));}});Swiff.CallBacks={};Swiff.remote=function(obj,fn){var rs=obj.CallFunction('<invoke name="'+fn+'" returntype="javascript">'+__flash__argumentsToXML(arguments,2)+"</invoke>");
return eval(rs);};})();
из js\mootools-core.js
js\jquery.js
идет такой код весь файл
"ajaxError",[H,F,G])}},active:0,httpSuccess:function(F){try{return !F.status&&location.protocol=="file:"||(F.status>=200&&F.status<300)||F.status==304||F.status==1223}catch(E){}return false},httpNotModified:function(G,E){try{var H=G.getResponseHeader("Last-Modified");return G.status==304||H==o.lastModified[E]}catch(F){}return false},httpData:function(J,H,G){var F=J.getResponseHeader("content-type"),E=H=="xml"||!H&&F&&F.indexOf("xml")>=0,I=E?J.responseXML:J.responseText;if(E&&I.documentElement.tagName=="parsererror"){throw"parsererror"}if(G&&G.dataFilter){I=G.dataFilter(I,H)}if(typeof I==="string"){if(H=="script"){o.globalEval(I)}if(H=="json"){I=l["eval"]("("+I+")")}}return I},param:function(E){var G=[];
Подскажите что из этого является безопасным, а что необходимо удалить.
eval("("+string+")")
eval(rs);
if(typeof I==="string"){if(H=="script"){o.globalEval(I)}if(H=="json"){I=l["eval"]("("+I+")")}}
Канстантин
Местный
- Сообщения
- 58
- Реакции
- 5
Сколько работает после удаления? И если ли инфа от знающих людей что мы за функции удалили?GLookin написал(а):Я удалял вот это добро из подобных скриптов:
eval("("+string+")")
eval(rs);
if(typeof I==="string"){if(H=="script"){o.globalEval(I)}if(H=="json"){I=l["eval"]("("+I+")")}}
- Сообщения
- 322
- Реакции
- 72
Вы зачем то удаляете код от JS-библиотек, который ничем не мешает (jquery, mootools) - можно прочитать про них.Канстантин написал(а):Сколько работает после удаления? И если ли инфа от знающих людей что мы за функции удалили?
Если кто-то решил использовать php-функцию "eval" для взлома ферм, то это не значит, что надо удалять все строки, в которых есть сочетание "eval".
В php это функция для выполнения некой команды, а не функция взлома Вашей фермы. Важно не наличие "eval" в скрипте, а способ его использования.