×
Ruby on Rails: постинг твитов через Twitter API (04 нояб 2017)

Практикуемся в Ruby on Rails.

Вопрос Коварный JavaScript. Хитрости для сайта

Больше
6 года 11 мес. назад - 6 года 11 мес. назад #1 от Aleksej
Aleksej создал эту тему: Коварный JavaScript. Хитрости для сайта
Бытует доктрина, в силу которой лучшая защита - нападение... да и владельцу сайта полезно знать о некоторых приемах, скриптах, уловках, с которыми нередко сталкиваешься, открыв ту или иную страничку Всемирной паутины.
Именно поэтому публикую в разделе "Безопасность сайта" эту коллекцию скриптов.


Накрутка при помощи фрейма (страница в странице). На странице сайта устанавливается фрейм, который скрыто для посетителей открывает другую страницу (страница в странице). При этом посетитель не видит открываемой страницы. Увидеть загрузку дополнительной страницы возможно только в статусной строке, чтобы скрыть и там, используется следующий скрипт:
<body style="margin:0px">
</iframe>
<iframe style="position:absolute;left:1%;width:0%;top:1%;height:0%;"
src="http://www.ВАША_ССЫЛКА">
</iframe>
Открытие и закрытие скрытого окна.
На странице устанавливается JavaScript, который открывает скрытое окно со страницей и через некоторое время закрывает его. Окно открывается свернутым и не просматривается при нажатии левой кнопки мыши.
<script language="JavaScript">
<!--
browserVer = parseInt(navigator.appVersion);
HB=window.open('http://www.ВАША_ССЫЛКА', 'HBback','toolbar=1,location=1,status=1, top=3000,left=3000,menubar=1,scrollbars=1,resizable=1,width=500,height=300');
if( browserVer >= 4) {window.focus() ;
}setTimeout ("closewindow()", 9000);function closewindow(){HB.close();}
//-->
</script>

Открытие окна при уходе со страницы.
На странице устанавливается JavaScript, который при уходе со страницы или ее закрытии открывает всплывающее окно с указанной Вами страницей.
<SCRIPT language=javascript>
exit=1;
function d2() {
if (exit==1) {
window.open("http://www.ВАША_ССЫЛКА");
};
};
</SCRIPT>
<BODY onunload=d2();>

Всплывающее окно.
На странице устанавливается JavaScript, который при загрузке Вашей страницы открывает всплывающее окно с указанной Вами страницей.
<SCRIPT LANGUAGE="JavaScript">
<!-- hiding
var remoteWin = null;
var popup_url = "http://ВАША_ССЫЛКА";
if (self.parent.frames.length == 0){
self.name="preview";
}
function popup_hp_ad() {
remoteWin = window.open(popup_url, "ad_popup", "toolbar=0,location=0,directories=0,status=0,menubar=0,scrollbars=0,resizable=0,width=640,height=130");
}
popup_hp_ad();
// End of hiding -->
</SCRIPT>

Открытие и закрытие окна при наведении курсора мыши.
При установке этого JavaScript на странице можно открывать и закрывать новое окно заданного размера, путем наведения курсора мыши на ссылку. По умолчанию окно размером 250 х 250 пикселей.
<A HREF="javascript:"
onMouseOver="SB1 = window.open('http://www.ВАША_ССЫЛКА','SB1','width=250,height=250'); return true;"
onMouseOut=" SB1.window.close(); return true;">ТЕКСТ ССЫЛКИ</A>

Скрипт для статусной строки.
При установке этого JavaScript на странице пользователь в статусной строке не будет видеть загружаемые страницы, а увидит текст.
<script language="JavaScript">
<!--
setInterval("x()",5);
function x(){window.status="ВАШ ТЕКСТ"}
function MM_jumpMenu(targ,selObj,restore){ //v3.0
eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'");
if (restore) selObj.selectedIndex=0;
}
function MM_findObj(n, d) { //v3.0
var p,i,x; if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document); return x;
}
function MM_jumpMenuGo(selName,targ,restore){ //v3.0
var selObj = MM_findObj(selName); if (selObj) MM_jumpMenu(targ,selObj,restore);
}
//-->
</script>

Накрутка счетчиков.
При установке данного фрейма - страница будет автоматически перезагружаться через указанное Вами время, накручивая показания счетчиков.
<META HTTP-EQUIV="Refresh" CONTENT="10">
</HEAD>
<FRAMESET ROWS="1%" FRAMEBORDER="0" FRAMESPACING="0">
<FRAME SRC="страница где установлен этот фрейм.htm" NORESIZE>
</FRAMESET>
Параметры скрипта: CONTENT="10" (время в секундах для перегрузки)

Всплывающее окно с приветствием для накрутки.
При загрузке страницы с данным скриптом, посетитель увидит всплывающее в левой части экрана окно (скажем, с приветствием), которое через заданный промежуток времени уплывает вправо и там закрывается. Чем хорош данный способ для накрутки? Посетитель считает, что окно просто приветствует его, а на самом деле в пробегающем окне загружается страница спонсора (страница в странице).
<head>
<script>
<!-- Beginning of JavaScript -
var popwindow
var popwindowwidth=200
var popwindowheight=150
var popwindowtop=20
var popwindowURL="СТРАНИЦА.htm"
var waitingtime=4
var pause=20
var step=40
var popwindowleft=-popwindowwidth-50
var marginright
var pagecenter
var timer
waitingtime= waitingtime*1000
function showWindow() {
popwindow = window.open(popwindowURL, "popwindow", "toolbar=no,width="+popwindowwidth+",height="+popwindowheight+",top="+popwindowtop+",left="+(-popwindowwidth)+"");
if (document.all) {marginright = screen.width+50}
if (document.layers) {marginright = screen.width+50}
pagecenter=Math.floor(marginright/2)-Math.floor(popwindowwidth/2)
movewindow()}
function movewindow() {if (popwindowleft<=pagecenter) {popwindow.moveTo(popwindowleft,popwindowtop)
popwindowleft+=step
timer= setTimeout("movewindow()",pause)}
else {clearTimeout(timer)
timer= setTimeout("movewindow2()",waitingtime)}
}
function movewindow2() {
if (popwindowleft<=marginright) {
popwindow.moveTo(popwindowleft,popwindowtop)
popwindowleft+=step
timer= setTimeout("movewindow2()",pause)}
else {clearTimeout(timer)
popwindow.close() }
}
// -->
</script>
</head>
<body onLoad="showWindow()">
</BODY>

Параметры скрипта: var popwindowwidth=200 (высота окна в пикселях); var popwindowheight=150 (ширина окна в пикселях); var popwindowtop=20 (расстояние от высшего края главного окна); var popwindowURL="СТРАНИЦА.htm" (URL или HTML-файл который будет открываться в окне); var waitingtime=5 (время в секундах для остановки окна).


Блокирование правой кнопки мышки (работает не во всех браузерах).
При установке этого JavaScript на странице пользователь не сможет вызвать меню нажатием правой кнопку мыши. Хотя существует много скриптов по блокировке кнопки, вызвать меню всё же можно (оставьте курсор на экране и нажмите Shift+F10).
<script>
<!--
function right(e) {
if (document.layers && (e.which==3 || e.which==2)) {
window.status="NO RIGHT CLICK ALLOWED!"
return false;
}
else if (document.all && (event.button==2 || event.button==3)) {
window.status="NO RIGHT CLICK ALLOWED!"
openclosewindow()
return false;
}
}
function openclosewindow() {
var windownews=window.open("", "", "status=no,location=no,toolbar=no,menubar=no,resizable=no,scrollbars=no,width=50,height=50,top=20000,left=200");
windownews.close()
}
if (document.all) {
document.onmouseup=right;
window.onmouseup=right;
}
if (document.layers) {
document.captureEvents(Event.MOUSEDOWN);
document.onmousedown=right;
}
//-->
</script>
Последнее редактирование: 6 года 11 мес. назад от Aleksej.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
10 мес. 2 нед. назад #2 от superlamer
superlamer ответил в теме Коварный JavaScript. Хитрости для сайта
Скажите, а возможно вытащить название интернет-провайдера посетителя джаваскриптом?

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
10 мес. 2 нед. назад #3 от serge
serge ответил в теме Коварный JavaScript. Хитрости для сайта
superlamer, без проблем, см например здесь .

А я смогу! - А поглядим! - А я упрямый!

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.