PDA

View Full Version : Proxy Detector v3.1 - for Posts and WOL


mtha
02-07-2004, 10:00 PM
############################################
# Hack Name: Proxy Detector v3.1
# Orgiginal hack (https://vborg.vbsupport.ru/showthread.php?threadid=38358) by Takara and Stadler (for vB 2.0)
# Modified for vB 3.0.1 and Addon by HacNho
# Compatibility to vB 3.0.x
# Date: 06.20.04
############################################
# History:
# Version 3.1: (update 06.20.04)
# 1. Display ProxyIP in WhoIsOnline list (in UserAgent section)
#
# Version 3.0:
# 1. Compatibility to vB 3.0 RC4
# 2. Admin with "adminpermission" will see the "ProxyIP when overmouse if the IP is not shown
# 3. Proxy IP will be displayed with IP address in show IP page
#
# # Version 2.0 ...
# # Version 1.0 by Takara and Stadler (https://vborg.vbsupport.ru/showthread.php?threadid=38358) (for vB 2.x)

###########################################
# Description: This is little hack detects via the Environmental Variable
# HTTP_X_FORWARDED_FOR if the user is using a proxy. Most proxys give out this
# variable. If it is it will display it out for you, and allow you to view the
# real IP of the person, and proxy IP when you click the link (in Post or Who'sOnline).
#
# Files Edited: 5 - includes/init.php
# - Files edited for proxyIP in posts: 2- includes/functions_newpost.php, postings.php
# - Files edited for proxyIP in WOL: 2- includes/sessions.php, online.php
# Templates Modified for proxyIP in posts: 2 - postbit_ip_show, postbit_ip_hidden
# Templates Modified for ProxyIP in WOL: 1 - whosonlinebit
# SQL Query to run: 2 (add proxyip in post and session table)
# Phrase to add: thread_displayproxyip

#
# Remember to backup your files and DB before making any changes!
############################################

INSTALL: HN-ProxyDetextor-301.txt (https://vborg.vbsupport.ru/attachment.php?attachmentid=19311&stc=1) (8.9 KB)

Upgrade from version 3.0 or only install ProxyDetector for WOL:
HN-ProxyDetextor-WOL.txt (https://vborg.vbsupport.ru/attachment.php?attachmentid=19312&stc=1) (11.5 KB) - Update 06.20.04

Upgrade from version for vB beta7 to version 3.0HN-ProxyDetextor-upgrade-b7-RC4.txt (https://vborg.vbsupport.ru/attachment.php?attachmentid=19297&stc=1) (3.5 KB)

SCREENSHOTS:
proxydetected.jpg (https://vborg.vbsupport.ru/attachment.php?attachmentid=16621&stc=1) (7.8 KB)
proxyip-WOL.gif (https://vborg.vbsupport.ru/attachment.php?attachmentid=19298&stc=1) (10.1 KB)



*NEW: version 3.1 will save and show proxyIP in Who is Online page.
In order to see proxy, you need to turn "UserAgent" on:
http://yourdomain/Yourforum/online.php?ua=1


Remember to click https://vborg.vbsupport.ru/ (https://vborg.vbsupport.ru/vborg_miscactions.php?do=installhack&threadid=61331)

version2
02-08-2004, 08:12 PM
Rock on.

msimplay
02-08-2004, 10:24 PM
please make it work for rc2

mtha
02-08-2004, 10:44 PM
please make it work for rc2
You can try installing on RC2 (or RC4 is the most current one). it should work fine. (version2, do you need to do anything else for your RC2 to work with this hack?)

I dont have any RC in use yet,

msimplay
02-08-2004, 11:58 PM
i did try and i failed :) thats why i posed please make it work for rc2

mtha
02-09-2004, 01:48 AM
i did try and i failed :) thats why i posed please make it work for rc2
I have looked over the code for RC4, and there's nothing different, except for the search in functions.php, you look for

/*================================================= =====================*\
|| ################################################## ##################
|| # Downloaded: 22:43, Fri Feb 6th 2004
|| # CVS: $RCSfile: functions.php,v $ - $Revision: 1.944 $
|| ################################################## ##################
\*================================================ ======================*/

at the end of that file, and add the getproxyip() function above it. everything else should be the same.

(If codes RC4 and beta7 are the same (at the searching locations), I would assume that the code in RC 2 be the same)

If you tell me the error, or where you get stuck, I may be able to help you, without rewriting the mod, which I dont think I will, until Gold. :)

Frank
02-09-2004, 08:21 AM
Nice thanks.

VampireMan
02-09-2004, 10:23 AM
could this be altered for the who's online page ?

msimplay
02-09-2004, 01:18 PM
omg i ran the querie now nomatter who i click on the profile always goes to my profile how do i reverse this querie please :(

mtha
02-09-2004, 02:39 PM
could this be altered for the who's online page ?
This hack is for per post IP detection, and who's online page is for per login IP, so, this would not work in who's online page

However, you can use the same method, to read IP in who's online page. it'd be great too.

omg i ran the querie now nomatter who i click on the profile always goes to my profile how do i reverse this querie please
I dont really understand what you mean. This hack should not effect profile.

the only SQL query is to add a column to your post table:
ALTER TABLE post ADD proxyip VARCHAR(50) not null AFTER ipaddress;

msimplay
02-09-2004, 02:42 PM
This hack is for per post IP detection, and who's online page is for per login IP, so, this would not work in who's online page

However, you can use the same method, to read IP in who's online page. it'd be great too.


I dont really understand what you mean. This hack should not effect profile.

the only SQL query is to add a column to your post table:
ALTER TABLE post ADD proxyip VARCHAR(50) not null AFTER ipaddress;
sorry your right :o i needed to restart coz i just installed mozilla 1.6 sorry
very sorry

Metro Man
02-09-2004, 05:35 PM
nice nice

gmarik
02-09-2004, 06:48 PM
Why should I need one? :rolleyes:

Stadler
02-09-2004, 06:54 PM
Thanks for the time I couldn't find to update the hack :)

btw: instead of using a function to detect the Proxy-Address, you could modify /includes/init.php by adding// ################################################## #####################
// establish client Proxy address (if it exists)
if ($_SERVER['HTTP_FORWARDED'] != '')
{
$proxyip = $_SERVER['HTTP_FORWARDED'];
}
else if ($_SERVER['HTTP_X_FORWARDED_FOR'] != '')
{
$proxyip = $_SERVER['HTTP_X_FORWARDED_FOR'];
}
else if ($_SERVER['HTTP_CLIENT_IP'] != '')
{
$proxyip = $_SERVER['HTTP_CLIENT_IP'];
}
else
{
$proxyip = '';
}

$proxyip = preg_replace('/javascript/i', 'java script', $proxyip);
$proxyip = str_replace('"', '"', $proxyip);
$proxyip = str_replace('<', '&lt;', $proxyip);
define('PROXYIP', str_replace('>', '&gt;', $proxyip));
unset($proxyip);after{
define('ALT_IP', $_SERVER['REMOTE_ADDR']);
}(At least I came this far ;))

mtha
02-09-2004, 07:09 PM
Thanks for the time I couldn't find to update the hack :)

btw: instead of using a function to detect the Proxy-Address, you could modify /includes/init.php by adding...
wondering what's the advantage/disadvantage of using init.php to functions.php? I'm kinda new to that init.php :)

Stadler
02-09-2004, 07:14 PM
Not much advantages, but:
1. init.php is called in every script and it's among the first scripts called there.
2. The IP is determined in the same script.
3. It was my approach to that hack. ;)

MaDCaT75
02-10-2004, 04:40 AM
There is no such template as post_ip_show !

mtha
02-10-2004, 06:18 AM
There is no such template as post_ip_show !
:) template was changed in RC too.

it's postbit_ip

if you want, you can change this postbit_ip to:


<if condition="$show['ip']">
$vbphrase[ip]: $post[ip] <if condition="($post[proxyip] != '')"><br>(Proxy Detected! Real IP: $post[proxyip])</if>
<else />
<a href="postings.php?$session[sessionurl]do=getip&amp;p=$post[postid]"><img class="inlineimg" src="$stylevar[imgdir_button]/ip.gif" alt="$vbphrase[ip]" title="$post[ip]" border="0" /></a>
</if>

achtungbaby
02-11-2004, 02:43 AM
:) template was changed in RC too.

it's postbit_ip

if you want, you can change this postbit_ip to:


<if condition="$show['ip']">
$vbphrase[ip]: $post[ip] <if condition="($post[proxyip] != '')"><br>(Proxy Detected! Real IP: $post[proxyip])</if>
<else />
<a href="postings.php?$session[sessionurl]do=getip&amp;p=$post[postid]"><img class="inlineimg" src="$stylevar[imgdir_button]/ip.gif" alt="$vbphrase[ip]" title="$post[ip]" border="0" /></a>
</if>


I'm confused. What exactly shoudl we add to postbit_ip...where does the code from iphidden and ipshow go?

MaDCaT75
02-11-2004, 06:28 AM
can someone make this easy on me and translate it for RC2 :(

mtha
02-19-2004, 09:48 PM
The MOD now work for vB3 RC4. See first post. (You may want to uninstall if you installed the version for beta7)
https://vborg.vbsupport.ru/showthread.php?p=474503#post474503

I'm confused. What exactly shoudl we add to postbit_ip...where does the code from iphidden and ipshow go?Dont worry about that postbit_ip_show and hidden anymore, just replace postbit_ip by:
# Replace all by



<if condition="$show['ip']">
$vbphrase[ip]: $post[ip] <if condition="($post[proxyip] != '')">Proxy!<br>Real IP: $post[proxyip])</if>
<else />
<a href="postings.php?$session[sessionurl]do=getip&amp;p=$post[postid]">
<img class="inlineimg" src="$stylevar[imgdir_button]/ip.gif" alt="$vbphrase[ip]" title="$post[ip] <if condition="($post[proxyip] != '')">- Proxy Detected! Real IP: $post[proxyip])</if>" border="0" />
</a>
</if>

draculanowaday
02-29-2004, 02:35 PM
Đi lang thang t?m hack/mod lại vớ phải đ?ng code của b?c Hắc Nho b?n n?y :) vui thật đ? :) I iem Dr?c?l? in GVN :D
* draculanowaday will install it tomorrow :)

mtha
03-01-2004, 07:07 AM
Đi lang thang t?m hack/mod lại vớ phải đ?ng code của b?c Hắc Nho b?n n?y :) vui thật đ? :) I iem Dr?c?l? in GVN :D
* draculanowaday will install it tomorrow :)
Welcome aboard :)

NexVision
03-01-2004, 08:49 AM
ok i installed this hack on rc4 and didnt notice anything dif but then again i was a little confused by the instructions anyone got them in idiot terms

DVDF-Osiris
03-03-2004, 10:15 PM
ok i installed this hack on rc4 and didnt notice anything dif but then again i was a little confused by the instructions anyone got them in idiot terms
Here you are -
############################################
# Hack Name: Proxy Detector v3.0
# Orgiginal hack by Takara and Stadler (for vB 2.0)
# Modified for vB 3.0 RC4 by HacNho
# Date: 02.19.04
############################################
# Changes and Fixes:
# Version 3.0:
# 1. Compatibility to vB 3.0 RC4
# 2. Admin with "adminpermission" will see the "ProxyIP when overmouse if the IP is not shown
# 3. Proxy IP will be displayed with IP address in show IP page
###########################################
# Description: This is little hack detects via the Environmental Variable
# HTTP_X_FORWARDED_FOR if the user is using a proxy. Most proxys give out this
# variable. If it is it will display it out for you, and allow you to view the
# real IP of the person, and proxy IP/hostmask when you click the link.
#
# Files Edited: init.php, functions_newpost.php, postings.php
# Templates Modified: postbit_ip_show, postbit_ip_hidden
# SQL Columns Added: proxyip
# Phrase to add: thread_displayproxyip
#
# Notes: Thanks to Takara and Stadler who wrote and modify this hack for vBulletin 2.x
# I just modify to make it work with vB 3.x (PHP 4.3.3)
# Remember to backup your files and DB before making any changes!
############################################


######################################
#RUN THE FOLLOWING SQL QUERY:
######################################

ALTER TABLE post ADD proxyip VARCHAR(50) not null AFTER ipaddress;



#####################################
#ADD NEW PHRASE:
#####################################

PHRASE TYPE: Front-End Error Messages

VARNAME: thread_displayproxyip

TEXT:
The proxy IP Address is: $postinfo[ipaddress]<br>
The proxy host name is: $postinfo[hostaddress]<br>
The real IP Address is: $postinfo[proxyip]



#####################################
#Edit TEMPLATE: postbit_ip
#####################################
-----------------------------------
Replace the whole text with this:
-----------------------------------
<if condition="$show['ip']">
$vbphrase[ip]: $post[ip] <if condition="($post[proxyip] != '')">Proxy!<br>Real IP: $post[proxyip])</if>
<else />
<a href="postings.php?$session[sessionurl]do=getip&amp;p=$post[postid]">
<img class="inlineimg" src="$stylevar[imgdir_button]/ip.gif" alt="$vbphrase[ip]" title="$post[ip] <if condition="($post[proxyip] != '')">- Proxy Detected! Real IP: $post[proxyip])</if>" border="0" />
</a>
</if>

<author>
HacNho
</author>

<homepage>

</homepage>



#######################################
#Edit the file: includes/init.php
#######################################
-----------------------------------
search for:
-----------------------------------
{
define('ALT_IP', $_SERVER['REMOTE_ADDR']);
}
-----------------------------------
insert after:
-----------------------------------
// ####################### HN getproxyip START########################
// establish client Proxy address (if it exists)
if ($_SERVER['HTTP_FORWARDED'] != '')
{
$proxyip = $_SERVER['HTTP_FORWARDED'];
}
else if ($_SERVER['HTTP_X_FORWARDED_FOR'] != '')
{
$proxyip = $_SERVER['HTTP_X_FORWARDED_FOR'];
}
else if ($_SERVER['HTTP_CLIENT_IP'] != '')
{
$proxyip = $_SERVER['HTTP_CLIENT_IP'];
}
else
{
$proxyip = '';
}

$proxyip = preg_replace('/javascript/i', 'java script', $proxyip);
$proxyip = str_replace('"', '"', $proxyip);
$proxyip = str_replace('<', '&lt;', $proxyip);
define('PROXYIP', str_replace('>', '&gt;', $proxyip));
unset($proxyip);
// ####################### HN getproxyip END ########################



################################################## ####
#edit the file: includes/functions_newpost.php
################################################## ###
-----------------------------------
search for:
-----------------------------------
if ($vboptions['logip'])
{
$post['ipaddress'] = IPADDRESS;
}
else
{
$post['ipaddress'] = '';
}
-----------------------------------
replace with:
-----------------------------------
// Begin proxyip hack - HacNho
if ($vboptions['logip'])
{
$post['ipaddress'] = IPADDRESS;
$post['proxyip'] = PROXYIP;
}
else
{
$post['ipaddress'] = '';
$post['proxyip'] = '';
}
// End proxyip hack - HacNho


-----------------------------------
search for:
-----------------------------------
// ### POST NEW POST ###
$DB_site->query("
INSERT INTO " . TABLE_PREFIX . "post
(threadid, parentid, title, username, userid, dateline, pagetext, allowsmilie,
showsignature, ipaddress, iconid, visible, attach)
VALUES
($threadinfo[threadid], $parentid, '" . addslashes($post['title']) . "',
'" . addslashes($post['postusername']) . "', $bbuserinfo[userid], " . TIMENOW . ",
'" . addslashes($post['message']) . "', $post[enablesmilies], $post[signature],
'" . addslashes($post['ipaddress']) . "', $post[iconid], $post[visible], $totalattachments)
");
-----------------------------------
replace with:
-----------------------------------
// Begin proxyip hack - HacNho
// ### POST NEW POST ###
$DB_site->query("
INSERT INTO " . TABLE_PREFIX . "post
(threadid, parentid, title, username, userid, dateline, pagetext, allowsmilie,
showsignature, ipaddress, proxyip, iconid, visible, attach)
VALUES
($threadinfo[threadid], $parentid, '" . addslashes($post['title']) . "',
'" . addslashes($post['postusername']) . "', $bbuserinfo[userid], " . TIMENOW . ",
'" . addslashes($post['message']) . "', $post[enablesmilies], $post[signature],
'" . addslashes($post['ipaddress']) . "','" . addslashes($post['proxyip']) . "', $post[iconid], $post[visible], $totalattachments)
");
// End proxyip hack - HacNho





################################################
#edit the file: postings.php
###############################################
-----------------------------------
search for:
-----------------------------------
eval(print_standard_error('thread_displayip', 1, 0));

-----------------------------------
replace with:
-----------------------------------
// Begin proxyip hack - HacNho
if ($postinfo[proxyip] != '')
{
eval(print_standard_error('thread_displayproxyip', 1, 0));
}
else
{
eval(print_standard_error('thread_displayip', 1, 0));
}
// End proxyip hack - HacNho



Nice hack mtha, installed :)

NexVision
03-03-2004, 10:25 PM
installing now thanx

NexVision
03-03-2004, 10:42 PM
ok i think i got it does this screen look right

DVDF-Osiris
03-04-2004, 08:16 AM
Not sure about the 'Alt IP Address' bit, I don't get that.

This is what I get -

(IPs edited of course)

alkatraz
03-04-2004, 08:20 AM
nice hack!!! thx

NexVision
03-04-2004, 01:33 PM
can anyone help me not sure wut i did wrong i followed the reworded directions above and still nothing its not decoiphering the actual IP I have vb3 rc4

M1th
03-04-2004, 02:39 PM
Cant remember exactly when, but floris released something similar to this a couple of weeks ago.

mtha
03-05-2004, 06:13 AM
can anyone help me not sure wut i did wrong i followed the reworded directions above and still nothing its not decoiphering the actual IP I have vb3 rc4
no one can help without information. How can I know what you did wrong, if you only say it doesnt work in your board?

btw, if proxy is not detected (and not all proxy is detected, only most of them are), it should look normal, as if nothing happened :P

Cant remember exactly when, but floris released something similar to this a couple of weeks ago.Are you refering to this one?
https://vborg.vbsupport.ru/showthread.php?t=59738


It's nice, but I dont know much about that ALT_IP function doing, and as I stated at the begining, the original hack for this one belongs to Takara and Stadler (HERE for vB 2.0 (https://vborg.vbsupport.ru/showthread.php?t=38358&highlight=Proxy+Detector))

NexVision
03-05-2004, 06:19 AM
no one can help without information. How can I know what you did wrong, if you only say it doesnt work in your board?

btw, if proxy is not detected (and not all proxy is detected, only most of them are), it should look normal, as if nothing happened :P


see thats just it i dont think i did wut would you need to see to tell

mtha
03-05-2004, 08:55 PM
see thats just it i dont think i did wut would you need to see to tell
means you are having problems or not? is that a question?

things you can test:

- open post table (in phpMyAdmin, for example), and sort by proxyip, see if you have any IP in there
SELECT * FROM `post` WHERE 'proxyip' !='';

If there're some IPs in there, means you did record the proxy IPs. otherwise, it could either be none of the new posts posted under any ip or your proxy function doesnt work.

MAKE SURE that you did all the changes in the files correct.
- add any IP into some post that you can check, using phpMyAdmin, and see if it shows up in your testing post

good luck



it's hard to help, without information, you know. if you do everything correct, it should work properly.

NexVision
03-05-2004, 09:29 PM
means you are having problems or not? is that a question?

things you can test:

- open post table (in phpMyAdmin, for example), and sort by proxyip, see if you have any IP in there
SELECT * FROM `post` WHERE 'proxyip' !='';

If there're some IPs in there, means you did record the proxy IPs. otherwise, it could either be none of the new posts posted under any ip or your proxy function doesnt work.

MAKE SURE that you did all the changes in the files correct.
- add any IP into some post that you can check, using phpMyAdmin, and see if it shows up in your testing post

good luck



it's hard to help, without information, you know. if you do everything correct, it should work properly.

sorry for not being to much help I think I followed the directions exactly however I really know nothing about this stuff and im just learning this is wut I see i tried to run the query again and it tells me duplicate entry

NexVision
03-05-2004, 09:38 PM
ok i did some more looking and it shows me a proxy ip for 2 users on the last page of the post table so i guess i ++++ed up on the templates somewhere

mtha
03-06-2004, 09:05 AM
ok i did some more looking and it shows me a proxy ip for 2 users on the last page of the post table so i guess i ++++ed up on the templates somewhere
check that post id + thread ID to go with it. View that post, and click on IP, see if it call the new template.


also, check this part in postings.php


// Begin proxyip hack - HacNho
if ($postinfo[proxyip] != '')
{
eval(print_standard_error('thread_displayproxyip', 1, 0));
}
else
{
eval(print_standard_error('thread_displayip', 1, 0));
}
// End proxyip hack - HacNho



and phrase thread_displayproxyip. Make sure the phrase property is correct

NexVision
03-06-2004, 01:37 PM
ok I checked all those things now when I go to a post where the user is behing a proxy i get the following message pic 1

so I did a phrase search and got this pic 2

mtha
03-06-2004, 06:06 PM
ok I checked all those things now when I go to a post where the user is behing a proxy i get the following message pic 1

so I did a phrase search and got this pic 2
Go to Search in Phrases, search for proxy
Make sure that the thread_displayproxyip is belong to
Front-End Error Messages Phrases catalogue

Otherwise, remove that phrase, and add again, under FRONT-END ERROR MESSAGES



bwt. is this your post?
https://vborg.vbsupport.ru/showpost.php?p=481994&postcount=27

seems like you installed floris' ALT_IP hacks? remember, this one is different. I didnt play with the other one, so I dont know if there's any conflict.

NexVision
03-06-2004, 06:16 PM
Go to Search in Phrases, search for proxy
Make sure that the thread_displayproxyip is belong to
Front-End Error Messages Phrases catalogue

Otherwise, remove that phrase, and add again, under FRONT-END ERROR MESSAGES



bwt. is this your post?
https://vborg.vbsupport.ru/showpost.php?p=481994&postcount=27

seems like you installed floris' ALT_IP hacks? remember, this one is different. I didnt play with the other one, so I dont know if there's any conflict.
yes that was my post and adding that to my front-end error message worked I didnt realize that the alt ip hack was installed my partner may have done it ill search for that hack and remove it thank you for all the help :) sorry im such a noob

mtha
03-06-2004, 08:39 PM
yes that was my post and adding that to my front-end error message worked I didnt realize that the alt ip hack was installed my partner may have done it ill search for that hack and remove it thank you for all the help :) sorry im such a noob
here's what you are looking for
https://vborg.vbsupport.ru/showpost.php?p=482336&postcount=32

it's up to you, which one you want to use. floris' hack may work well too.

InsaneContender
05-07-2004, 12:03 AM
This is great - but it was HELL to figure out your TXT install file... you should make it a little bit easier to read...

mtha
05-07-2004, 06:09 AM
This is great - but it was HELL to figure out your TXT install file... you should make it a little bit easier to read...
I didnt write the file, i generate the file. It'd be much easier if you use the tool YaME (Yet another Mod Editor) (http://www.boardmod.org/downloads.php#bc01) that go with BoardMod (www.boardmod.org (http://www.boardmod.org))

otherwise, just here's the rule:

each commands should open by <command> and closed by </command>

Eagle Creek
06-08-2004, 01:17 PM
It doesn't work here :(

first I get an error by the MYSQL: Duplicate column name 'proxyip'

But this column isn't in the Database! So I can't remove it too.

Second of all: The IP Address is: *. The host name is: *. but I don't see the Proxy message.

Eagle Creek
06-08-2004, 01:50 PM
Ok, that problem is solved.

So it's working now. But: when I block an IP address I can't access the forum. When I use proxy, I can access again. When I'm posting the mod can see that I am with proxyserver... but> how can I keep them banned? The system must see that I'm on proxy and the originally address is banned.
Is this possbile?

Someone who knows the anwser?

mtha
06-09-2004, 10:04 AM
Ok, that problem is solved.

So it's working now. But: when I block an IP address I can't access the forum. When I use proxy, I can access again. When I'm posting the mod can see that I am with proxyserver... but> how can I keep them banned? The system must see that I'm on proxy and the originally address is banned.
Is this possbile?

Someone who knows the anwser?This proxy is only for posts, and record "real IP" into post table. I did not do anything with online users and banning system.

I think BAN system do work with regular IP (which would be proxy IP in your case), so if you want to ban someone, you have to ban his proxy IP. there's nothing related to real IP revealed yet.

For rightnow, I am not interested in banning system (I dont ban anyone, there's no bad guy in my site tho), so ... I dont think I can help you yet.


anyway, if you wanna write it yourself, check out this part in functions.php


// ###################### Start checkipban #######################
function verify_ip_ban()
{
// checkes to see if the current ip address is banned
global $vboptions, $session;
$vboptions['banip'] = trim($vboptions['banip']);
if ($vboptions['enablebanning'] == 1 AND $vboptions['banip'])
{
$addresses = explode(' ', preg_replace("/[[:space:]]+/", " ", $vboptions['banip']) );
foreach ($addresses AS $val)
{
if (strpos(' ' . IPADDRESS, ' ' . trim($val)) !== false)
{
eval(print_standard_error('error_banip'));
}
}
}
}



You need to mahe sure that $proxyip is detected, and then compare this value with $val, something like


if (strpos(' ' . $proxyip, ' ' . trim($val)) !== false)
{
eval(print_standard_error('error_banip'));
}


Maybe you just need to add the code bellow


if (strpos(' ' . IPADDRESS, ' ' . trim($val)) !== false)
{
eval(print_standard_error('error_banip'));
}



remember, I DID NOT test the script, so if you try, give it some extra carefull :D

chet
06-10-2004, 10:46 AM
Once this is installed, where does the information get shown about the users IP's

Regerds

mtha
06-11-2004, 03:57 AM
Once this is installed, where does the information get shown about the users IP's

Regerds
there is an IP link or icon under your post (if you have permission to view posts' IP).

https://vborg.vbsupport.ru/attachment.php?attachmentid=16621

chet
06-11-2004, 12:01 PM
I have followed all the steps, but all I see is the IP address as before, no proxy or other information is there, what could be wrong

Regards

Chet

mtha
06-11-2004, 05:02 PM
I have followed all the steps, but all I see is the IP address as before, no proxy or other information is there, what could be wrong

Regards

Chet
did you change the post_ip template? if yes, then maybe you dont have Proxy (or proxy not detectable).

Check the posts table, and see if you have any information in proxyip column for any post:

- open post table (in phpMyAdmin, for example), and sort by proxyip, see if you have any IP in there, or run this querry:

SELECT * FROM `post` WHERE 'proxyip' !='';

If there're some IPs in there, means you did record the proxy IPs, check the template. Otherwise, it could either be none of the new posts posted under any ip OR your proxy function doesnt work.

MAKE SURE that you did all the changes in the files correct.
- add any IP into some post that you can check, using phpMyAdmin, and see if it shows up in your testing post

Eagle Creek
06-19-2004, 03:42 PM
This proxy is only for posts, and record "real IP" into post table. I did not do anything with online users and banning system.

I think BAN system do work with regular IP (which would be proxy IP in your case), so if you want to ban someone, you have to ban his proxy IP. there's nothing related to real IP revealed yet.

For rightnow, I am not interested in banning system (I dont ban anyone, there's no bad guy in my site tho), so ... I dont think I can help you yet.


anyway, if you wanna write it yourself, check out this part in functions.php


// ###################### Start checkipban #######################
function verify_ip_ban()
{
// checkes to see if the current ip address is banned
global $vboptions, $session;
$vboptions['banip'] = trim($vboptions['banip']);
if ($vboptions['enablebanning'] == 1 AND $vboptions['banip'])
{
$addresses = explode(' ', preg_replace("/[[:space:]]+/", " ", $vboptions['banip']) );
foreach ($addresses AS $val)
{
if (strpos(' ' . IPADDRESS, ' ' . trim($val)) !== false)
{
eval(print_standard_error('error_banip'));
}
}
}
}



You need to mahe sure that $proxyip is detected, and then compare this value with $val, something like


if (strpos(' ' . $proxyip, ' ' . trim($val)) !== false)
{
eval(print_standard_error('error_banip'));
}


Maybe you just need to add the code bellow


if (strpos(' ' . IPADDRESS, ' ' . trim($val)) !== false)
{
eval(print_standard_error('error_banip'));
}



remember, I DID NOT test the script, so if you try, give it some extra carefull :D


Hmmm, I'm affraid I don't have enough PHP knowledge to make something like that :(. Any idea's? Does somebody want to make something like this?

mtha
06-20-2004, 09:15 PM
A new version to catch proxyIP for Whois Online is available in the first post:

https://vborg.vbsupport.ru/showthread.php?p=474503#post474503

mtha
06-20-2004, 09:21 PM
Hmmm, I'm affraid I don't have enough PHP knowledge to make something like that :(. Any idea's? Does somebody want to make something like this?
Try this:

in functions.php

Look for
if (strpos(' ' . IPADDRESS, ' ' . trim($val)) !== false)
{
eval(print_standard_error('error_banip'));
}

Add after:

if (strpos(' ' . PROXYIP, ' ' . trim($val)) !== false)
{
eval(print_standard_error('error_banip'));
}


(given that you did installed my mod)


PS. I DIDNOT test the function, so if you want to do it, backup first.

Onkel_Tom
06-21-2004, 12:54 AM
Proxy Detector Version 3.1 works fine for me ;)
thanks mtha

Acido
06-21-2004, 02:22 PM
I'm getting this error in the online.php script

Database error in vBulletin 3.0.1:
Invalid SQL:
SELECT user.username, user.smsstatus, user.username as loginname, session.useragent, session.location, session.lastactivity, user.userid, user.options, session.host, session.proxyip, session.badlocation, session.incalendar, user.aim, user.icq, user.msn, user.yahoo,
IF(displaygroupid=0, user.usergroupid, displaygroupid) AS displaygroupid
FROM session AS session

LEFT JOIN user AS user USING (userid)
WHERE session.lastactivity > 1087830026

ORDER BY user.username asc
mysql error: Unknown column 'user.smsstatus' in 'field list'
mysql error number: 1054
Can you help ?

Onkel_Tom
06-21-2004, 03:00 PM
My syntax in online.php looks like this

$allusers = $DB_site->query("
SELECT user.username, session.useragent, session.location, session.lastactivity, user.userid, user.options, session.host, session.proxyip, session.badlocation, session.incalendar, user.aim, user.icq, user.msn, user.yahoo,
IF(displaygroupid=0, user.usergroupid, displaygroupid) AS displaygroupid
FROM " . TABLE_PREFIX . "session AS session
". iif($vboptions['WOLguests'], " LEFT JOIN " . TABLE_PREFIX . "user AS user USING (userid) ", ", " . TABLE_PREFIX . "user AS user") ."
WHERE session.lastactivity > $datecut
". iif(!$vboptions['WOLguests'], " AND session.userid = user.userid", "") ."
ORDER BY $sqlsort $sortorder
");


There is no "user.username as loginname" in it !
Check installation instruction and your original files to fix !

mtha
06-21-2004, 03:18 PM
There is no "user.username as loginname" in it !
Check installation instruction and your original files to fix !You are right :) my board was heavily hacked. I didnt look back at the original file to check. Sorry :)
the installation files are updated.


I'm getting this error in the online.php script


Can you help ?In online.php, replace the old part by this one:


// HN - ProxyIP UserOnline - BEGIN
$allusers = $DB_site->query("
SELECT user.username, session.useragent, session.location, session.lastactivity, user.userid, user.options, session.host, session.proxyip, session.badlocation, session.incalendar, user.aim, user.icq, user.msn, user.yahoo,
IF(displaygroupid=0, user.usergroupid, displaygroupid) AS displaygroupid
FROM " . TABLE_PREFIX . "session AS session
". iif($vboptions['WOLguests'], "
LEFT JOIN " . TABLE_PREFIX . "user AS user USING (userid) ", ", " . TABLE_PREFIX . "user AS user") ."
WHERE session.lastactivity > $datecut
". iif(!$vboptions['WOLguests'], " AND session.userid = user.userid", "") ."
ORDER BY $sqlsort $sortorder
");
// HN - ProxyIP UserOnline - END



Or you just need to add session.proxyip, after session.host, in the original online.php file

SmartGnome
07-19-2004, 08:12 AM
I have installed the hack..... Thanks MTA and now I'm looking for proxy users.

Merjawy
08-11-2004, 10:45 AM
I just installed it and done what you said in the last 2 posts and still don't see nothing

all I see is theres what looks like a dash next to the original IP icon

but I only see the one IP in posts and in whos online.. I am using proxy myself and it just shows the one IP

I am using 3.0.3 btw

and I am not a newbie to hacking so I did everything correctly
I turn on my proxy I see the new IP (the proxy iP), I turn my proxy off I see my real IP nothing more , it won't show if I was behind proxy


also on that board I am pretty sure at least 90% of users/visiters are behind proxy :)

Merjawy
08-11-2004, 10:56 AM
OOps.. I am a newbie after all :)

sorry mate.. I didn't have user agent on :)

its working

thnx

Logan70
08-11-2004, 04:54 PM
Did you install it straight from the install notes or was there mods needed?

I am looking at this and want to make I get it right the first time.

Anything will help.

thanks

MickDoneDee
10-02-2004, 05:29 PM
*install* on vB3.0.3. Wow, most complicated hack I've installed to date. Now just waiting for someone to come online with a proxy server to see if the hack works. ;)

mtha
10-02-2004, 05:45 PM
*install* on vB3.0.3. Wow, most complicated hack I've installed to date. Now just waiting for someone to come online with a proxy server to see if the hack works. ;)
Is it really that complicated? :)

:) why dont you get a proxy for yourself, log into your board, and check :>
that way you know exactly what you have.

However, if some proxy doesnt return values, you may not have expected answer.


Did you install it straight from the install notes or was there mods needed?
no, you dont need any other mods for this to work, but you need to install ... vBulletin :>

MickDoneDee
10-02-2004, 05:50 PM
Thanks, had a member showup a few moments ago using a proxy server. Your hack works like a charm. I'd like to give viewing permissions to my supermods since they are online more than me and keep a better eye on things than I do. How do I give them permission?

MickDoneDee
10-03-2004, 07:06 AM
I'd like to give viewing permissions to my supermods since they are online more than me and keep a better eye on things than I do. How do I give them permission?
Admin cp -> Usergroups -> Usergroup Manager -> Click Go to edit Supermoderator permissions -> Select Yes option for all Who's Online Permissions.

I may have encountered a bug since installing this hack. The hack requires the User Agent display to be on in Who's Online to view the real IP address. The default setting for the User Agent display is off. I tried modifying the Whosonline template to have the UA display on by default but couldn't do it. So, I decided to change the template back to the original condition using Revert. After clicking Revert I got a popup warning and continued with the Revert. To my horror it DELETED the Whosonline template. I asked for advice on vB.com to restore the template and it was suggested that I should restore the master template:
AdminCP > Styles & Templates > Upload / Download Styles > Click on import.

This restored the Who's Online template without overwriting my existing template modifications. They also suspected the bug occurred because of a hack I may have installed. Does anyone here have a test forum with this hack installed and would like to see if this hack has caused a problem with the Revert function for the Whosonline template?

Does anyone know how to have UA on by default when loading Who's Online?

Neal-UK
10-04-2004, 01:56 PM
Well i've installed everything as I should and when I click the computer Icon on the post, I get the following page (View image). Shouldn't that be something different?

MickDoneDee
10-04-2004, 02:38 PM
Well i've installed everything as I should and when I click the computer Icon on the post, I get the following page (View image). Shouldn't that be something different?
Yes, that should be different because the New Phrase: thread_displayproxyip shows:

The proxy IP Address is: $postinfo[ipaddress]<br>
The proxy host name is: $postinfo[hostaddress]<br>
The real IP Address is: $postinfo[proxyip]

Neal-UK
10-04-2004, 04:34 PM
Yes, that should be different because the New Phrase: thread_displayproxyip shows:

The proxy IP Address is: $postinfo[ipaddress]<br>
The proxy host name is: $postinfo[hostaddress]<br>
The real IP Address is: $postinfo[proxyip]
any ideas why anyone?

Neal-UK
10-04-2004, 04:43 PM
any ideas why anyone?it shows when i change the phrase 'thread_displayip'

Is this right?

MickDoneDee
10-04-2004, 05:03 PM
Neal, the three lines of info should start with:

The proxy IP Address is:
The proxy host name is:
The real IP Address is:

if you have modified the thread_displayip template as suggested in Proxy
Detector v3.1. *

* The above line is incorrect. It should read:
if you have created the thread_displayproxyip phrase as suggested in Proxy Detector v3.1.

What hack have you installed exactly?

Neal-UK
10-04-2004, 05:14 PM
Neal, the three lines of info should start with:

The proxy IP Address is:
The proxy host name is:
The real IP Address is:

if you have modified the thread_displayip template as suggested in Proxy Detector v3.1.

What hack have you installed exactly?
PD v3.1

I'm uninstaling it anyhow.

MickDoneDee
10-04-2004, 05:25 PM
PD v3.1

I'm uninstaling it anyhow.
Neal, I made an error when I said:
if you have modified the thread_displayip template as suggested in Proxy Detector v3.1.

it should say:
if you have created the thread_displayproxyip phrase as suggested in Proxy Detector v3.1.

The phrase thread_displayip already exists. You are not meant to touch that. You are meant to create a NEW phrase called thread_displayproxyip.

In the Text field you should insert:

The proxy IP Address is: $postinfo[ipaddress]<br>
The proxy host name is: $postinfo[hostaddress]<br>
The real IP Address is: $postinfo[proxyip]

That will give you the proper display.

mtha
10-05-2004, 12:52 PM
Well i've installed everything as I should and when I click the computer Icon on the post, I get the following page (View image). Shouldn't that be something different?
Did you do all the steps, including this one?:

### Run the Following SQL Query (for POST)
ALTER TABLE post ADD proxyip VARCHAR(50) not null AFTER ipaddress;

### Run the Following SQL Query (for WOL)
ALTER TABLE session ADD proxyip VARCHAR(50) not null AFTER `host`;


you have to have that field to store proxyIP, otherwise you will get the default IP page as you had

Neal-UK
10-05-2004, 02:20 PM
Did you do all the steps, including this one?:

### Run the Following SQL Query (for POST)
ALTER TABLE post ADD proxyip VARCHAR(50) not null AFTER ipaddress;

### Run the Following SQL Query (for WOL)
ALTER TABLE session ADD proxyip VARCHAR(50) not null AFTER `host`;


you have to have that field to store proxyIP, otherwise you will get the default IP page as you had
Yes I did, and checked the database and it was all in there. I may have done something else wrong but who knows. I'm normally okay at adding hacks but I'll leave this one for now....:ermm:

Good job with it anyhow, wish I could make them!

mtha
10-06-2004, 05:21 AM
Yes I did, and checked the database and it was all in there. I may have done something else wrong but who knows. I'm normally okay at adding hacks but I'll leave this one for now....:ermm:
The new template will ONLY be displayed when PROXYIP exists (recorded).

You should try to add (manually) some number into the proxyip field of some post that you KNOW (in order to test). If you have the number appeared in "show IP windows" then you are fine, just check the code to detect the proxy. Some proxys are not detectable.



btw, the code only work for NEW posting. it wouldnt know the proxyip for old posts.

Goodspeed
10-06-2004, 09:36 AM
I've just installed it and faced to the same problem... Looks like information do not add into proxyip in the post table. This field clean. Could you advise something?

mtha
10-08-2004, 06:12 AM
I've just installed it and faced to the same problem... Looks like information do not add into proxyip in the post table. This field clean. Could you advise something?
do some checking as I said earlier first. I wont advice if I dont know more detail

theArchitect
10-11-2004, 10:25 AM
If I could ask for some assistance as this is not working.

If I use the link http://YourDomain/Yourforum/online.php?ua=1 then I get the new look Who's Online page with all of the relevant details. However, this info is not saved and when I next go to Who's Online it has reverted back to its original state.

Also, when I click on the IP info button in the postbit I just get the regular IP info postings.php page. I don't get the proxy ip is etc which is shown in attachment 1.

I am running 3.0.3 so this may have something to do with it.

Any help would be most appreciated.

MickDoneDee
10-11-2004, 11:09 AM
Look at the bottom of Who's Online - you should see these settings:

Display: All (space) User Agent: No (space) Per Page: 20

They are the default settings that appear whenever you load http://YourDomain/Yourforum/online.php?

To see the results of the Proxy Detector v3.1 hack you need to select User Agent: Yes

The Real IP is seen above the user agent info and if a Proxy IP is detected you will see the round blue icon with question mark within the user agent info. Mouse-over that to see the Proxy IP.

If you are concerned about the User Agent setting defaulting every time you leave and return to Who's Online then keep Who's Online open but minimised as an icon on your taskbar while you browse the rest of the site in another open window.

theArchitect
10-11-2004, 11:18 AM
Look at the bottom of Who's Online - you should see these settings:

Display: All (space) User Agent: No (space) Per Page: 20

They are the default settings that appear whenever you load http://YourDomain/Yourforum/online.php?

To see the results of the Proxy Detector v3.1 hack you need to select User Agent: Yes

The Real IP is seen above the user agent info and if a Proxy IP is detected you will see the round blue icon with question mark within the user agent info. Mouse-over that to see the Proxy IP.

If you are concerned about the User Agent setting defaulting every time you leave and return to Who's Online then keep Who's Online open but minimised as an icon on your taskbar while you browse the rest of the site in another open window.
*looks sheepishly stupid for a moment*.

Thankyou. Although, in the first screen shot is that suppose to be displayed when I click on the IP address icon located next to each post?

MickDoneDee
10-11-2004, 11:29 AM
Thankyou. Although, in the first screen shot is that suppose to be displayed when I click on the IP address icon located next to each post?

When a person creates a post obviously that post is recorded in the database with IP address info which is accessible by mouse-over or clicking the ip.gif. If the person was using a proxy IP when they posted that too will be recorded in the database so that when you click the ip.gif icon you get a message screen that contains both real and proxy IP addresses like you see in the first screenshot.

theArchitect
10-11-2004, 12:06 PM
When a person creates a post obviously that post is recorded in the database with IP address info which is accessible by mouse-over or clicking the ip.gif. If the person was using a proxy IP when they posted that too will be recorded in the database so that when you click the ip.gif icon you get a message screen that contains both real and proxy IP addresses like you see in the first screenshot.
Thankyou for your assistance. But it doesn't seem to be doing this.

I have a couple of friends who have been helping me out by logging on from proxies to test my system and they are not being listed as proxies.

Does this hack work for annonymisers or just proxies?

MickDoneDee
10-11-2004, 12:17 PM
Are your friends actually posting? If they are posting with a proxy that IP should appear in the Proxy IP field in your database and be displayed in http://yourforum.com/postings.php?do=getip&p=xxxxxxx where xxxxxxx is the postid.

Have you got access to your database to check?

mtha
11-19-2004, 09:27 PM
Look at the bottom of Who's Online - you should see these settings:

Display: All (space) User Agent: No (space) Per Page: 20

They are the default settings that appear whenever you load http://YourDomain/Yourforum/online.php?

To see the results of the Proxy Detector v3.1 hack you need to select User Agent: Yes

The Real IP is seen above the user agent info and if a Proxy IP is detected you will see the round blue icon with question mark within the user agent info. Mouse-over that to see the Proxy IP.

If you are concerned about the User Agent setting defaulting every time you leave and return to Who's Online then keep Who's Online open but minimised as an icon on your taskbar while you browse the rest of the site in another open window. It seems that people having a hard time turning User Agent ON so I would suggest taking the ProxyIP Icon OUT of the user Agent


You can Use this instead:


### ACP/Edit TEMPLATE: whosonlinebit
## Look for:

<if condition="$show['useragent']">

## Add BEFORE:
<if condition="$userinfo[proxyip]">
<img src="$stylevar[imgdir_misc]/question_icon.gif" alt="$userinfo[proxyip]" />

Eagle Creek
11-19-2004, 09:31 PM
Is there a possibilaty to ban people with a proxy?

With this hack I can see their real IP. But when I ban that IP, and their proxy IP they can just take another proxy from the net and start posting again..
Cause the ACP doesn't use the info/doesn't see's the info.

So when a user's real IP and proxy IP are banned the forum doesn't do anything when a person is posting again.

Do you understand?

MickDoneDee
11-20-2004, 03:35 AM
Is there a possibilaty to ban people with a proxy?

So when a user's real IP and proxy IP are banned the forum doesn't do anything when a person is posting again.That's why you need to add Proxy ip to real ip conversion (https://vborg.vbsupport.ru/showthread.php?t=69295). It compliments this hack very well so that you can reveal people's real IP address when they are using Proxys AND, most importantly, ban those users, if necessary, by their REAL ip address. I haven't had to ban anyone, yet, in this manner, but I have forums which allow guests to post so it is vital that I can stop them flooding the forum by banning their real ip.

rh2004
12-05-2004, 07:58 PM
Will this work in 3.0.3

Eagle Creek
12-05-2004, 08:37 PM
That's why you need to add Proxy ip to real ip conversion (https://vborg.vbsupport.ru/showthread.php?t=69295). It compliments this hack very well so that you can reveal people's real IP address when they are using Proxys AND, most importantly, ban those users, if necessary, by their REAL ip address. I haven't had to ban anyone, yet, in this manner, but I have forums which allow guests to post so it is vital that I can stop them flooding the forum by banning their real ip.
Thank you! I'll take a look overthere.

MickDoneDee
12-05-2004, 09:53 PM
Will this work in 3.0.3
Yes, I'm using 3.0.3 and it works well.

Goodspeed
12-10-2004, 01:41 PM
I've just uninstalled Proxy Detector... But now IP adresses do not write into the database. All I can see is

IP Adress: IPADRESS. Host .

Please help. May be I deleted something wrong?

MickDoneDee
12-10-2004, 05:58 PM
To install Proxy Detector including changes to WOL five files were edited. To reverse the procedure just overwrite these files with the originals:

includes/init.php
includes/functions_newpost.php
postings.php
includes/sessions.php
online.php

clearchannel
12-26-2004, 01:02 PM
I have a silly question. Am I correct in assuming that installing HN Proxy Detextor 3.01 install(s) both the Proxy Detextor for Posts and Who's On Line, and HN Proxy Detextor WOL only install Proxy Detextor for Who's on Line?

Also when running the two SQL queries, should I run them individually in ADMINCP or together in MySqlAdmin?

Thanks in advance.

clearchannel
01-08-2005, 12:30 AM
Will this hack also work in vB 3.05?

DVDF-Osiris
01-08-2005, 08:47 AM
Will this hack also work in vB 3.05?
Works fine for me :)

ArabsLink
05-15-2005, 04:24 AM
<i>up up

Will this hack also work in vb3.0.07 !!</i>

mtha
05-15-2005, 06:12 AM
Yes it is.

Chadi
05-19-2005, 11:10 PM
I'm getting this error

An error occurred while attempting to execute your query. The following information was returned.
error number: 1060
error desc: Duplicate column name 'proxyip'


I have already installed

Cerb's Anti-Proxy
https://vborg.vbsupport.ru/showthread.php?t=68590

Proxy ip to real ip conversion
https://vborg.vbsupport.ru/showthread.php?t=69295

Would they interfere?

Paul M
05-20-2005, 12:29 AM
I have already installed

Cerb's Anti-Proxy
https://vborg.vbsupport.ru/showthread.php?t=68590

Proxy ip to real ip conversion
https://vborg.vbsupport.ru/showthread.php?t=69295

Would they interfere?Yes they would - the "Proxy ip to real ip conversion" was partly based on an older version of this hack.

I'm quite confused - those two hacks you have listed will probably intefere with each other - as well as appearing to be at cross purposes to each other - and now you want to try and install a third one ???

Apart from trying to totally trash your forum, what exactly are you trying to achieve ?

Chadi
05-20-2005, 02:42 AM
Ok I removed those two and still trying to install this one but I get this when I try the sql query

An error occurred while attempting to execute your query. The following information was returned.
error number: 1064
error desc: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ';
ALTER TABLE session ADD proxyip VARCHAR(50) not null AFTER ho

I deleted all tables with "proxyip" first to clean it out. How do I resolve this?

Paul M
05-20-2005, 03:36 AM
Please copy/paste the whole error message - what you have posted does not help. :)

You still didn't say what you are trying to achieve - you may be installing the wrong thing.

mohend10
04-15-2006, 09:08 AM
Oppps
at : http://www.mysite.com/forums/online.php?

i've :


print_standard_error(...)
is now redundant. Instead, use
standard_error(fetch_error(...))


i used vBulletin version 3.5.4

Paul M
04-15-2006, 09:56 AM
This is a vb 3.0 hack, it won't work on vb 3.5

mohend10
04-15-2006, 11:44 AM
Ok thank's
I live in Paris, my English is rudimentary: you will translate this hack for the last version?