!C99Shell v. 1.0 pre-release build #13!

Software: Apache. PHP/5.5.15 

uname -a: Windows NT SVR-DMZ 6.1 build 7600 (Windows Server 2008 R2 Enterprise Edition) i586 

SYSTEM 

Safe-mode: OFF (not secure)

C:\Intranet\C\xampp\php\PEAR\Net\   drwxrwxrwx
Free 4.09 GB of 39.52 GB (10.36%)
Detected drives: [ a ] [ c ] [ d ] [ e ] [ f ]
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    Encoder    Tools    Proc.    FTP brute    Sec.    SQL    PHP-code    Update    Feedback    Self remove    Logout    


Viewing file:     IPv6.php (7.12 KB)      -rw-rw-rw-
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
<?php
//
// +----------------------------------------------------------------------+
// | PHP Version 4                                                        |
// +----------------------------------------------------------------------+
// | Copyright (c) 1997-2003 The PHP Group                                |
// +----------------------------------------------------------------------+
// | This source file is subject to version 2.0 of the PHP license,       |
// | that is bundled with this package in the file LICENSE, and is        |
// | available at through the world-wide-web at                           |
// | http://www.php.net/license/2_02.txt.                                 |
// | If you did not receive a copy of the PHP license and are unable to   |
// | obtain it through the world-wide-web, please send a note to          |
// | license@php.net so we can mail you a copy immediately.               |
// +----------------------------------------------------------------------+
// | Authors: Alexander Merz <alexander.merz@web.de>                  |
// +----------------------------------------------------------------------+
//
// $Id: IPv6.php,v 1.12 2005/09/01 12:42:00 alexmerz Exp $

/**
* Class to validate and to work with IPv6
*
* @author  Alexander Merz <alexander.merz@t-online.de>
* @author elfrink at introweb dot nl
* @package Net_IPv6
* @version $Id: IPv6.php,v 1.12 2005/09/01 12:42:00 alexmerz Exp $
* @access  public
*/
class Net_IPv6 {

    
// {{{ Uncompress()

    /**
     * Uncompresses an IPv6 adress
     *
     * RFC 2373 allows you to compress zeros in an adress to '::'. This
     * function expects an valid IPv6 adress and expands the '::' to
     * the required zeros.
     *
     * Example:  FF01::101    ->  FF01:0:0:0:0:0:0:101
     *           ::1        ->  0:0:0:0:0:0:0:1
     *
     * @access public
     * @see Compress()
     * @static
     * @param string $ip    a valid IPv6-adress (hex format)
     * @return string    the uncompressed IPv6-adress (hex format)
     */
    
function Uncompress($ip) {
        
$uip $ip;
        
$c1 = -1;
        
$c2 = -1;
        if (
false !== strpos($ip'::') ) {
            list(
$ip1$ip2) = explode('::'$ip);
            if(
""==$ip1) {
                
$c1 = -1;
            } else {
                   
$pos 0;
                if(
< ($pos substr_count($ip1':'))) {
                    
$c1 $pos;
                } else {
                    
$c1 0;
                }
            }
            if(
""==$ip2) {
                
$c2 = -1;
            } else {
                
$pos 0;
                if(
< ($pos substr_count($ip2':'))) {
                    
$c2 $pos;
                } else {
                    
$c2 0;
                }
            }
            if(
strstr($ip2'.')) {
                
$c2++;
            }
            if(-
== $c1 && -== $c2) { // ::
                
$uip "0:0:0:0:0:0:0:0";
            } else if(-
1==$c1) {              // ::xxx
                
$fill str_repeat('0:'7-$c2);
                
$uip =  str_replace('::'$fill$uip);
            } else if(-
1==$c2) {              // xxx::
                
$fill str_repeat(':0'7-$c1);
                
$uip =  str_replace('::'$fill$uip);
            } else {                          
// xxx::xxx
                
$fill str_repeat(':0:'6-$c2-$c1);
                
$uip =  str_replace('::'$fill$uip);
                
$uip =  str_replace('::'':'$uip);
            }
        }
        return 
$uip;
    }

    
// }}}
    // {{{ Compress()

    /**
     * Compresses an IPv6 adress
     *
     * RFC 2373 allows you to compress zeros in an adress to '::'. This
     * function expects an valid IPv6 adress and compresses successive zeros
     * to '::'
     *
     * Example:  FF01:0:0:0:0:0:0:101     -> FF01::101
     *           0:0:0:0:0:0:0:1        -> ::1
     *
     * @access public
     * @see Uncompress()
     * @static
     * @param string $ip    a valid IPv6-adress (hex format)     
     * @return string    the compressed IPv6-adress (hex format)
     * @author elfrink at introweb dot nl
     */
    
function Compress($ip)    {
        
$cip $ip;

        if (!
strstr($ip'::')) {
             
$ipp explode(':',$ip);
             for(
$i=0$i<count($ipp); $i++) {
                 
$ipp[$i] = dechex(hexdec($ipp[$i]));
             }
            
$cip ':' join(':',$ipp) . ':';
            
preg_match_all("/(:0)+/"$cip$zeros);
            if (
count($zeros[0])>0) {
                
$match '';
                foreach(
$zeros[0] as $zero) {
                    if (
strlen($zero) > strlen($match))
                        
$match $zero;
                }
                
$cip preg_replace('/' $match '/'':'$cip1);
            }
            
$cip preg_replace('/((^:)|(:$))/''' ,$cip);
            
$cip preg_replace('/((^:)|(:$))/''::' ,$cip);
         }
         return 
$cip;
    }

    
// }}}
    // {{{ SplitV64()

    /**
     * Splits an IPv6 adress into the IPv6 and a possible IPv4 part
     *
     * RFC 2373 allows you to note the last two parts of an IPv6 adress as
     * an IPv4 compatible adress
     *
     * Example:  0:0:0:0:0:0:13.1.68.3
     *           0:0:0:0:0:FFFF:129.144.52.38
     *
     * @access public
     * @static
     * @param string $ip    a valid IPv6-adress (hex format)
     * @return array        [0] contains the IPv6 part, [1] the IPv4 part (hex format)
     */
    
function SplitV64($ip) {
        
$ip Net_IPv6::Uncompress($ip);
        if (
strstr($ip'.')) {
            
$pos strrpos($ip':');
            
$ip{$pos} = '_';
            
$ipPart explode('_'$ip);
            return 
$ipPart;
        } else {
            return array(
$ip"");
        }
    }

    
// }}}
    // {{{ checkIPv6

    /**
     * Checks an IPv6 adress
     *
     * Checks if the given IP is IPv6-compatible
     *
     * @access public
     * @static
     * @param string $ip    a valid IPv6-adress
     * @return boolean    true if $ip is an IPv6 adress
     */
    
function checkIPv6($ip) {

        
$ipPart Net_IPv6::SplitV64($ip);
        
$count 0;
        if (!empty(
$ipPart[0])) {
            
$ipv6 =explode(':'$ipPart[0]);
            for (
$i 0$i count($ipv6); $i++) {
                
$dec hexdec($ipv6[$i]);
                
$hex strtoupper(preg_replace("/^[0]{1,3}(.*[0-9a-fA-F])$/""\\1"$ipv6[$i]));
                if (
$ipv6[$i] >= && $dec <= 65535 && $hex == strtoupper(dechex($dec))) {
                    
$count++;
                }
            }
            if (
== $count) {
                return 
true;
            } elseif (
== $count and !empty($ipPart[1])) {
                
$ipv4 explode('.',$ipPart[1]);
                
$count 0;
                for (
$i 0$i count($ipv4); $i++) {
                    if (
$ipv4[$i] >= && (integer)$ipv4[$i] <= 255 && preg_match("/^\d{1,3}$/"$ipv4[$i])) {
                        
$count++;
                    }
                }
                if (
== $count) {
                    return 
true;
                }
            } else {
                return 
false;
            }

        } else {
            return 
false;
        }
    }
    
// }}}
}
?>

:: Command execute ::

Enter:
 
Select:
 

:: Search ::
  - regexp 

:: Upload ::
 
[ ok ]

:: Make Dir ::
 
[ ok ]
:: Make File ::
 
[ ok ]

:: Go Dir ::
 
:: Go File ::
 

--[ c99shell v. 1.0 pre-release build #13 powered by Captain Crunch Security Team | http://ccteam.ru | Generation time: 0.0624 ]--