PX : code

Proxy Bypass by Nick Horvath
Download this code


<?php
/************************************************
*   Get around your proxy with this redirect!   *
*                                               *
*   Author: Nick Horvath                        *
*   Filename: redirect.php                      *
*   Created: June, 2002                         *
*   Last Edited: July 4, 2002                   *
*   Website: http://mooserve.myftp.org:8080/    *
*                                               *
*    Uncomment the login areas for working      *
*         MySQL-Based authentication            *
*                                               *
************************************************/

//fix page function- cleans up urls & keeps links redirecting thru the script
function parse_page($url$host$script)
{
    
//read page into an array for editing
     
$page = @implode("", (@file($url))) or die("No url specified");
     
     
//fix images
     
$page str_replace("src=\"""src=\"$url/"$page);
     
$page str_replace("src=\"$url/http://""src=\"http://"$page);
     
     
//fix links
     
$page str_replace("href=\"""href=\"http://$host$script?url=$url/"$page);
     
$page str_replace("href=\"http://$host$script?url=$url/http://""href=\"http://$host$script?url=http://"$page);
    
     
//fix double slash problems
     
$page str_replace("//""/"$page);
     
$page str_replace("http:/""http://"$page);
     return(
$page);
}

//much longer full parsing function for stubborn pages
function full_parse($url$host$script)
{
    
//read page into an array for editing
     
$page = @implode("", (@file($url))) or die("No url specified");
     
     
//fix images
     
$page str_replace("src=\"""src=\"$url/"$page);
     
$page str_replace("src=\"$url/http://""src=\"http://"$page);
     
     
//fix links
     
$page str_replace("href=\"""href=\"http://$host$script?url=$url/"$page);
     
$page str_replace("href=\"http://$host$script?url=$url/http://""href=\"http://$host$script?url=http://"$page);
     
     
//if no quotes fix things too
     //fix images
     
$page str_replace("src=a""src=$url/a"$page);
     
$page str_replace("src=b""src=$url/b"$page);
    
$page str_replace("src=c""src=$url/c"$page);
     
$page str_replace("src=d""src=$url/d"$page);
     
$page str_replace("src=e""src=$url/e"$page);
     
$page str_replace("src=f""src=$url/f"$page);
     
$page str_replace("src=g""src=$url/g"$page);
     
$page str_replace("src=h""src=$url/h"$page);
     
$page str_replace("src=$url/hhttp://""src=http://"$page);
     
$page str_replace("src=i""src=$url/i"$page);
     
$page str_replace("src=j""src=$url/j"$page);
     
$page str_replace("src=k""src=$url/k"$page);
     
$page str_replace("src=l""src=$url/l"$page);
    
$page str_replace("src=m""src=$url/m"$page);
     
$page str_replace("src=n""src=$url/n"$page);
     
$page str_replace("src=o""src=$url/o"$page);
     
$page str_replace("src=p""src=$url/p"$page);
     
$page str_replace("src=q""src=$url/q"$page);
     
$page str_replace("src=r""src=$url/r"$page);
     
$page str_replace("src=s""src=$url/s"$page);
     
$page str_replace("src=t""src=$url/t"$page);
     
$page str_replace("src=u""src=$url/u"$page);
     
$page str_replace("src=v""src=$url/v"$page);
     
$page str_replace("src=w""src=$url/w"$page);
     
$page str_replace("src=x""src=$url/x"$page);
     
$page str_replace("src=y""src=$url/y"$page);
     
$page str_replace("src=z""src=$url/z"$page);     
     
$page str_replace("src=1""src=$url/1"$page);
     
$page str_replace("src=2""src=$url/2"$page);
     
$page str_replace("src=3""src=$url/3"$page);
     
$page str_replace("src=4""src=$url/4"$page);
     
$page str_replace("src=5""src=$url/5"$page);
     
$page str_replace("src=6""src=$url/6"$page);
     
$page str_replace("src=7""src=$url/7"$page);
     
$page str_replace("src=8""src=$url/8"$page);
     
$page str_replace("src=9""src=$url/9"$page);
     
$page str_replace("src=0""src=$url/0"$page);
     
$page str_replace("src=/""src=$url/"$page);
          
     
//fix links
     
$page str_replace("href=a""href=http://$host$script?url=$url/a"$page);
     
$page str_replace("href=b""href=http://$host$script?url=$url/b"$page);
    
$page str_replace("href=c""href=http://$host$script?url=$url/c"$page);
     
$page str_replace("href=d""href=http://$host$script?url=$url/d"$page);
     
$page str_replace("href=e""href=http://$host$script?url=$url/e"$page);
     
$page str_replace("href=f""href=http://$host$script?url=$url/f"$page);
     
$page str_replace("href=g""href=http://$host$script?url=$url/g"$page);
     
$page str_replace("href=h""href=http://$host$script?url=$url/h"$page);
     
$page str_replace("href=i""href=http://$host$script?url=$url/i"$page);
     
$page str_replace("href=j""href=http://$host$script?url=$url/j"$page);
     
$page str_replace("href=k""href=http://$host$script?url=$url/k"$page);
     
$page str_replace("href=l""href=http://$host$script?url=$url/l"$page);
    
$page str_replace("href=m""href=http://$host$script?url=$url/m"$page);
     
$page str_replace("href=n""href=http://$host$script?url=$url/n"$page);
     
$page str_replace("href=o""href=http://$host$script?url=$url/o"$page);
     
$page str_replace("href=p""href=http://$host$script?url=$url/p"$page);
     
$page str_replace("href=q""href=http://$host$script?url=$url/q"$page);
     
$page str_replace("href=r""href=http://$host$script?url=$url/r"$page);
     
$page str_replace("href=s""href=http://$host$script?url=$url/s"$page);
     
$page str_replace("href=t""href=http://$host$script?url=$url/t"$page);
     
$page str_replace("href=u""href=http://$host$script?url=$url/u"$page);
     
$page str_replace("href=v""href=http://$host$script?url=$url/v"$page);
     
$page str_replace("href=w""href=http://$host$script?url=$url/w"$page);
     
$page str_replace("href=x""href=http://$host$script?url=$url/x"$page);
     
$page str_replace("href=y""href=http://$host$script?url=$url/y"$page);
     
$page str_replace("href=z""href=http://$host$script?url=$url/z"$page);     
     
$page str_replace("href=1""href=http://$host$script?url=$url/1"$page);
     
$page str_replace("href=2""href=http://$host$script?url=$url/2"$page);
     
$page str_replace("href=3""href=http://$host$script?url=$url/3"$page);
     
$page str_replace("href=4""href=http://$host$script?url=$url/4"$page);
     
$page str_replace("href=5""href=http://$host$script?url=$url/5"$page);
     
$page str_replace("href=6""href=http://$host$script?url=$url/6"$page);
     
$page str_replace("href=7""href=http://$host$script?url=$url/7"$page);
     
$page str_replace("href=8""href=http://$host$script?url=$url/8"$page);
     
$page str_replace("href=9""href=http://$host$script?url=$url/9"$page);
     
$page str_replace("href=0""href=http://$host$script?url=$url/0"$page);
     
$page str_replace("href=/""href=http://$host$script?url=$url/"$page);
    
     
//fix double slash problems
     
$page str_replace("//""/"$page);
     
$page str_replace("http:/""http://"$page);
     
     return (
$page);
}


/*
//uncomment the two areas and set these 4 vars for working mysql login

//MySQL variables
$database_name = "":
$mysql_user = "";
$mysql_pass = "";
$table = "";

//Setup the login form
$loginform="
<h2>Login to user area:</h2>
<form method=post action=\"$PHP_SELF\">
<input type=hidden name=login value=yes>

<p><b>Username:</B><br>
<input type=text name=username size=25 maxlength=12></p>

<p><b>Password:</b><br>
<input type=password name=password size=25 maxlenth=12></p>

<p><input type=submit name=submit value=Login></p>
</form>";

if ($redirect == "ok") //check for good cookie
{
*/
     //url input box
     
echo "<p><form method=post action=\"$PHP_SELF\">
    <b>URL: </b><input type=text name=url value=$url> &nbsp
     Full parsing:<input type=checkbox name=full value=yes"
;
     if (
$full == "yes")
         echo 
" CHECKED><input type=submit value=Go!></form></p>";
     else
         echo 
"><input type=submit value=Go!></form></p>";
     
     
//Strip trailing "/" for uniformity (it'll be added back later)
    
if (preg_match("/^\//"$url))
         
$url sub_str($url0, -1);
     
     
//fix url so file() doesn't puke
     
if (preg_match("/http:\/\//"$url))
     {
         if (
$full != "yes")
              echo (
parse_page($url$HTTP_HOST$PHP_SELF));
          else
               echo (
full_parse($url$HTTP_HOST$PHP_SELF));
     }
     else
     {    
         if (
$full != "yes")
               echo (
parse_page("http://$url"$HTTP_HOST$PHP_SELF));
          else
               echo (
full_parse("http://$url"$HTTP_HOST$PHP_SELF));
     }
/*
}
else
{
    if ($login != "yes")  //has user seen the login yet? if not show it
    {
        die("$loginform");
    }
    else if ($login == "yes")  //if they've seen it compare data to users
    {
        //check if superuser
          $connection=@mysql_connect("localhost", "$mysql_user", "$mysql_pass") or die("Couldn't connect to MySQL.");
        $db=@mysql_select_db("$database_name", $connection) or die("Couldn't select database");
        $sql="select * from $table where user=\"$username\" and password=password(\"$password\")";
        $result=@mysql_query($sql, $connection) or die("Couldn't execute query.");
        $num=mysql_numrows($result);
        if ($num == 0)
        {
            //if not a user say that
              die("You are not an authorized user!<br>$loginform");
          }
        else if ($num != 0)
        {
              //set cookie and reload the script
            setcookie("redirect", "ok", 0, "/", "mooserve.myftp.org", 0);
               @header("Location: $PHP_SELF");
        }
    }
}
*/

?>

Comments or questions?
PX is running PHP 5.2.17
Thanks to Miranda Productions for hosting and bandwidth.
Use of any code from PX is at your own risk.