Форум сетевых администраторов
Показаны 21 сообщений на этой странице

Форум сетевых администраторов (http://netadmin.ws/forum/index.php)
- Хаки от Netadmin или "Сделай сам" (http://netadmin.ws/forum/forumdisplay.php?forumid=76)
-- [vB3] No Refer On URL's hack by GenUS (http://netadmin.ws/forum/showthread.php?threadid=8646)


Помещено GenUS 03-05-2004 в 20:42:

Smile [vB3] No Refer On URL's hack by GenUS

Данный хак блокирует REFERER, посылаемый браузером при посещении ссылки, созданой с помощью тэгов [URL] и [URL=..].

Новое в версии 2.0 - для каждого раздела можно выбирать: блокировать рефер или нет.

code:

###################
\admincp\forum.php
-------------------
ИЩЕМ: (~70-80 строка)

'warnall' => 0
-------------------
МЕНЯЕМ НА:

'warnall' => 0,
'disablerefereronurls' => 0
-------------------
ИЩЕМ: (~165-175 строка)

 print_yes_no_row($vbphrase['show_forum_on_forum_ju
mp'], 'options[showonforumjump]', $forum['showonforumjump']);
-------------------
НИЖЕ ВСТАВЛЯЕМ:

 print_yes_no_row($vbphrase['disable_referer_on_url
s'], 'options[disablerefereronurls]', $forum['disablerefereronurls']);

###################
\includes\init.php
-------------------
ИЩЕМ: (почти в конце)

'warnall'           => 131072
-------------------
МЕНЯЕМ НА:

'warnall'           => 131072,
'disablerefereronurls' => 262144

###################
\includes\functions_bbcodeparse.php
-------------------
ИЩЕМ: (~1430 строка)

// ###################### Start handle_bbcode_url #######################
function handle_bbcode_url($text, $link, $type = 'url')
{
	global $wysiwygparse;
-------------------
МЕНЯЕМ НА:

// ###################### Start handle_bbcode_url #######################
function handle_bbcode_url($text, $link, $type = 'url')
{
	global $wysiwygparse, $forum;
-------------------
ИЩЕМ: (~1470 строка)

// standard URL hyperlink
return "<a href=\"$rightlink\" target=\"_blank\">$text</a>";
-------------------
МЕНЯЕМ НА:

// standard URL hyperlink
if ($forum['disablerefereronurls']) {
	return "<a href=\"#\" onClick=\"window.open('$rightlink','',''); return false;\">$text</a>";
} else {
	return "<a href=\"$rightlink\" target=\"_blank\">$text</a>";
}
###################
Добавляем следующую фразу "disable_referer_on_urls" в разделе "Forum-Related":

Disable REFERER's on [URL] in this forum
###################



Скриншот выложил ниже ...

PS Окно создается с помощью JavaScript и может блокироваться некоторыми AntiPopUp-системами ...

PPS (типа статистика )
Время разработки - 1,5 часа (до этого более-менее серъезных хаков не делал)
Выпито пива - 3 банки Клинского
Играл музон - в основном Progressive Trance
Использован софт - Zend Studio, Notepad, Total Commander

__________________
.


Помещено miXei 03-05-2004 в 21:22:

GenUS
Сам пробовал? Запрос действительно не содержит REFERER?
Или все равно проскакивает?

__________________
miXei.ru - Дискуссионный клуб


Помещено GenUS 03-05-2004 в 21:53:

miXei
Проверено на IE5, IE6 - не проходит ...

__________________
.


Помещено Jaxick 03-05-2004 в 23:48:

Че то я не въехал в смысл этого хака!
И еще - извини за тупость - но что такое реферер? Скоко встречаю это слово а сам не знаю что это такое!


Помещено GenUS 04-05-2004 в 04:39:

Jaxick
"Ð_ефер" - это адрес страницы, на которой нажали ссылку ... т.е. адрес, откуда пришли на тот или иной сайт ...

__________________
.


Помещено Vanish 04-05-2004 в 10:53:

скажем так цены бы моду не было, если возможно было бы его только для отдельных форумов включать.

__________________
No pity, no mercy, no regret.


Помещено GenUS 04-05-2004 в 18:32:

Vanish
Подумаю над этим ...

GenUS добавил 04-05-2004 в 20:17:15:
Сделал версию 2.0 ... счас можно выбирать для какого раздела включать блокировку, а для какого нет ...

__________________
.


Помещено GenUS 04-05-2004 в 21:59:

Arrow

Скриншот.

__________________
.


Помещено GenUS 05-05-2004 в 06:45:

Как думаете, стОит добавлять в хак блокировку показа ссылок для Гостей? ... или это уже лишнее? ...

__________________
.


Помещено Jaxick 05-05-2004 в 13:18:

ААА!
Ясненько! Ну и передастся этот адрес другому серверу и что? что плохого?.. может случится?


Помещено Vanish 05-05-2004 в 13:30:

Jaxick, реальный пример, у части администраторов сайтов стоят сборщики статистика, сколько кто и откуда пришел. Ну таким образом можно выявлять аффилейт сайты, сайты тырящие у вас контент и т.д.
Так вот у производители скриптов помимо всего выше перечисленного, системы сбора статистики используют для выявления мест где их продукт:
а) установлен
б) распространяется (и возможно даже не легально)

Данная модификация наверное больше пригодится для борд ведущих подпольный образ жизни, которым лишняя известность не нужна.

__________________
No pity, no mercy, no regret.


Помещено Firenze 05-05-2004 в 15:42:

GenUS
Спасибо за апдейт!

quote:
Первоначальное сообщение от GenUS
Как думаете, стОит добавлять в хак блокировку показа ссылок для Гостей? ... или это уже лишнее? ...

Думаю стоит, но опять же имхо нужно сделать возможность выбирать разделы и форумы, в которых эта опция будет включена.


Помещено Stafford 05-05-2004 в 23:08:

Если это так, то это супер хак. Давно его искал.

quote:
miXei
Проверено на IE5, IE6 - не проходит


Как нужно проверять, проходит или нет. У меня есть IE6 и Opera?


Помещено MCTarakan 06-05-2004 в 00:35:

а еще былоб прикольно сделать ЗАБАНЕННЫЕ УÐ_Л! Типа при вводе определенных УÐ_Л у них вырубался бы рефер или они вообще бы заменялись ***-ками... загонять в Цензуру что-то лениво!

__________________
yMC.ru - хомяк музыканта


Помещено GenUS 06-05-2004 в 04:30:

Stafford
Создаешь временную PHP-страницу со следующим содержанием:

code:

<?PHP
phpinfo();
?>

делаешь на нее ссылку в посте ... переходишь по ссылке ... ищешь в этой странице параметры HTTP_REFERER, либо _SERVER["HTTP_REFERER"] ... если их нет - значит рефер не проходит ... но их в принципе и не должно быть, т.к. я уже писал, что окно открывается через JS, а в этом случае рефер не проходит ... но имхо всеравно нужно потестить на разных браузерах, вдруг найдется какой нть "умный" браузер ... о результатах, если не сложно - напиши тут ...

GenUS добавил 06-05-2004 в 04:31:45:
MCTarakan
А как тогда предлагаешь делать менеджер забаненых урлов? ... всеравно через админку лезть ...

__________________
.


Помещено Stafford 06-05-2004 в 13:51:

GenUS

Вот тут находится эта страница: PHP info

Установил твой хак. Ð_езультат: Опера и Ð_ксплорер определяют рефер сылку

В интернете есть такая страница, которая помогает скрыть рефер ссылку. Единственное,я не знаю как мне вставить http://en.safeurl.de/? перед всеми http:// страницами. Какой фаил нужно менять и какую строчку?


Помещено Firenze 06-05-2004 в 15:37:

сабж.


Look in includes/functions_bbcodeparse.php

find


PHP:


// ###################### Start handle_bbcode_url ####################### 
function handle_bbcode_url($text, $link, $type = 'url') 
{ 
    global 
$wysiwygparse; 

    if (
trim($text) == '') 
    { 
        return 
''; 
    } 

    
$rightlink = trim($link); 
    if (empty(
$rightlink)) 
    { 
        
// no option -- use param 
        
$rightlink = trim($text); 
    } 
    
$rightlink = strip_smilies(str_replace('\"', '"', $rightlink)); 
    
$rightlink = str_replace('"', '&quot;', $rightlink); 

    if(
$type == 'url' AND !preg_match('#^[a-z0-9]+://#si', $rightlink)) 
    { 
        
$rightlink = "http://$rightlink"; 
    } 

    if (!
trim($link) OR $text == $rightlink) 
    { 
        
$tmp = unhtmlspecialchars($rightlink); 
        if (
strlen($tmp) > 55 AND !$wysiwygparse) 
        { 
            
$text = htmlspecialchars_uni(substr($tmp, 0, 35) . '...' . substr($tmp, -15)); 
        } 
    } 

    
// remove double spaces -- fixes issues with wordwrap 
    
$rightlink = str_replace('  ', '', $rightlink); 

    
// strip extra quotes from hyperlink 
    
$text = str_replace('\"', '"', $text); 

    if (
$type == 'url') 
    { 
        
// standard URL hyperlink 
        
return "<a href=\"$rightlink\" target=\"_blank\">$text</a>"; 
    } 
    else 
    { 
        
// email hyperlink (mailto<img src="images/smilies/smile.gif" border="0" alt=""> 
        
if (is_valid_email($rightlink)) 
        { 
            return 
"<a href=\"mailto:$rightlink\">$text</a>"; 
        } 
        else 
        { 
            
// not a valid email - don't link it 
            
return "<span title=\"$rightlink\">$text</span>"; 
        } 
    } 
}




replace with

PHP:

// ###################### Start handle_bbcode_url ####################### 
function handle_bbcode_url($text, $link, $type = 'url') 
{ 
    global 
$wysiwygparse; 

    if (
trim($text) == '') 
    { 
        return 
''; 
    } 

    
$rightlink = trim($link); 
    if (empty(
$rightlink)) 
    { 
        
// no option -- use param 
        
$rightlink = trim($text); 
    } 
    
$rightlink = strip_smilies(str_replace('\"', '"', $rightlink)); 
    
$rightlink = str_replace('"', '&quot;', $rightlink); 

    if(
$type == 'url' AND !preg_match('#^[a-z0-9]+://#si', $rightlink)) 
    { 
        
$rightlink = "http://en.safeurl.de/?$rightlink"; 
    } 

    if (!
trim($link) OR $text == $rightlink) 
    { 
        
$tmp = unhtmlspecialchars($rightlink); 
        if (
strlen($tmp) > 55 AND !$wysiwygparse) 
        { 
            
$text = htmlspecialchars_uni(substr($tmp, 0, 35) . '...' . substr($tmp, -15)); 
        } 
    } 

    
// remove double spaces -- fixes issues with wordwrap 
    
$rightlink = str_replace('  ', '', $rightlink); 

    
// strip extra quotes from hyperlink 
    
$text = str_replace('\"', '"', $text); 

    if (
$type == 'url') 
    { 
        
// standard URL hyperlink 
        
return "<a href=\"http://en.safeurl.de/?$rightlink\" target=\"_blank\">$text</a>"; 
    } 
    else 
    { 
        
// email hyperlink (mailto<img src="images/smilies/smile.gif" border="0" alt=""> 
        
if (is_valid_email($rightlink)) 
        { 
            return 
"<a href=\"mailto:$rightlink\">$text</a>"; 
        } 
        else 
        { 
            
// not a valid email - don't link it 
            
return "<span title=\"$rightlink\">$text</span>"; 
        } 
    } 
}



(c) TouchingVirus


Помещено MCTarakan 06-05-2004 в 15:55:

quote:
А как тогда предлагаешь делать менеджер забаненых урлов? ... всеравно через админку лезть ...

да хоть и через админку... просто не хочу мешать фразы с урлами!

__________________
yMC.ru - хомяк музыканта


Помещено Stafford 06-05-2004 в 20:52:

Firenze
спасибо. Ð_аботает как надо.


Помещено GenUS 07-05-2004 в 07:12:

Сегодня доработаю хак ...

Firenze
А нафига двойной анонимайзер проставлять? ...

code:

...........
$rightlink = "http://en.safeurl.de/?$rightlink"; // <<-- Формирование адреса ссылки
.............
return "<a href=\"http://en.safeurl.de/?$rightlink\" target=\"_blank\">$text</a>"; // <<-- Формирование ссылки в HTML
...........

Получится что-то в этом роде: http://en.safeurl.de/?http://en.safeurl.de/?http://mysite.ru ...

__________________
.


Помещено Tagore 22-05-2004 в 10:09:

Да, инетерсно.

__________________
Международное брачное агенство в Сибири.


Формат времени GMT. Текущее время 09:08.
Показаны 21 сообщений на этой странице

Powered by: vBulletin Version 2.2.4
Copyright © Jelsoft Enterprises Limited 2000, 2001.