!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:\cumbreclima\wp-content\plugins\duplicator\installer\build\classes\   drwxrwxrwx
Free 4.1 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:     class.utils.php (10.06 KB)      -rw-rw-rw-
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
<?php
// Exit if accessed directly
if (! defined('DUPLICATOR_INIT')) {
    
$_baseURL =  strlen($_SERVER['SERVER_NAME']) ? $_SERVER['SERVER_NAME'] : $_SERVER['HTTP_HOST'];
    
$_baseURL =  "http://" $_baseURL;
    
header("HTTP/1.1 301 Moved Permanently");
    
header("Location: $_baseURL");
    exit; 
}

/** * *****************************************************
 *  CLASS::DupUtil
 *  Various Static Utility methods for working with the installer */
class DupUtil {



    
/** METHOD: GET_MICROTIME
     * Get current microtime as a float. Can be used for simple profiling.
     */
    
static public function get_microtime() {
        return 
microtime(true);
    }

    
/** METHOD: ELAPSED_TIME
     * Return a string with the elapsed time.
     * Order of $end and $start can be switched. 
     */
    
static public function elapsed_time($end$start) {
        return 
sprintf("%.4f sec."abs($end $start));
    }

    
/** METHOD: ESC_HTML_ATTR
     * @param string $string Thing that needs escaping
     * @param bool $echo   Do we echo or return?
     * @return string    Escaped string. 
     */
    
static public function esc_html_attr($string ''$echo false) {
        
$output htmlentities($stringENT_QUOTES'UTF-8');
        if (
$echo)
            echo 
$output;
        else
            return 
$output;
    }

    
/** METHOD: TABLE_COUNT
     *  Count the tables in a given database
     *  @param string $_POST['dbname']        Database to count tables in 
     */
    
static public function dbtable_count($conn$dbname) {
        
$res mysqli_query($conn"SELECT COUNT(*) AS count FROM information_schema.tables WHERE table_schema = '{$dbname}' ");
        
$row mysqli_fetch_row($res);
        return 
is_null($row) ? $row[0];
    }

    
/** METHOD: TABLE_ROW_COUNT
     *  Returns the table count
     *  @param string $conn            A valid link resource
     *  @param string $table_name    A valid table name
     */
    
static public function table_row_count($conn$table_name) {
        
$total mysqli_query($conn"SELECT COUNT(*) FROM `$table_name`");
        if (
$total) {
            
$total = @mysqli_fetch_array($total);
            return 
$total[0];
        } else {
            return 
0;
        }
    }

    
/** METHOD: ADD_ENDING_SLASH
     *  Adds a slash to the end of a path
     *  @param string $path        A path
     */
    
static public function add_slash($path) {
        
$last_char substr($pathstrlen($path) - 11);
        if (
$last_char != '/') {
            
$path .= '/';
        }
        return 
$path;
    }

    
/** METHOD: SET_SAFE_PATH
     *  Makes path safe for any OS
     *  Paths should ALWAYS READ be "/"
     *         uni: /home/path/file.xt
     *         win:  D:/home/path/file.txt 
     *  @param string $path        The path to make safe
     */
    
static public function set_safe_path($path) {
        return 
str_replace("\\""/"$path);
    }

    static public function 
unset_safe_path($path) {
        return 
str_replace("/""\\"$path);
    }

    
/** METHOD: FCGI_FLUSH
     *  PHP_SAPI for fcgi requires a data flush of at least 256
     *  bytes every 40 seconds or else it forces a script hault
     */
    
static public function fcgi_flush() {
        echo(
str_repeat(' '256));
        @
flush();
    }

    
/** METHOD: COPY_FILE
     *  A safe method used to copy larger files
     *  @param string $source        The path to the file being copied
     *  @param string $destination    The path to the file being made
     */
    
static public function copy_file($source$destination) {
        
$sp fopen($source'r');
        
$op fopen($destination'w');

        while (!
feof($sp)) {
            
$buffer fread($sp512);  // use a buffer of 512 bytes
            
fwrite($op$buffer);
        }
        
// close handles
        
fclose($op);
        
fclose($sp);
    }

    
/** METHOD: string_has_value
     *  Finds a string in a file and returns true if found
     *  @param array  $list        A list of strings to search for
     *  @param string $haystack    The string to search in
     */
    
static public function string_has_value($list$file) {
        foreach (
$list as $var) {
            if (
strstr($file$var) !== false) {
                return 
true;
            }
        }
        return 
false;
    }

    
/** METHOD: get_active_plugins
     *  Returns the active plugins for a package
     *  @param  conn   $dbh     A database connection handle
     *  @return array  $list A list of active plugins
     */
    
static public function get_active_plugins($dbh) {
        
$query = @mysqli_query($dbh"SELECT option_value FROM `{$GLOBALS['FW_TABLEPREFIX']}options` WHERE option_name = 'active_plugins' ");
        if (
$query) {
            
$row = @mysqli_fetch_array($query);
            
$all_plugins unserialize($row[0]);
            if (
is_array($all_plugins)) {
                return 
$all_plugins;
            }
        }
        return array();
    }

    
/** METHOD: get_database_tables
     *  Returns the tables for a database
     *  @param  conn   $dbh     A database connection handle     
     *  @return array  $list A list of all table names
     */
    
static public function get_database_tables($dbh) {
        
$query = @mysqli_query($dbh'SHOW TABLES');
        if (
$query) {
            while (
$table = @mysqli_fetch_array($query)) {
                
$all_tables[] = $table[0];
            }
            if (
is_array($all_tables)) {
                return 
$all_tables;
            }
        }
        return array();
    }
    
    
/**
     * MySQL connection support for sock
     * @param same as mysqli_connect
     * @return database connection handle
     */    
    
static public function db_connect$host$username$password$dbname ''$port null ) {

        
//sock connections
        
if ( 'sock' === substr$host, -) ) 
        {
            
$url_parts parse_url$host );
            
$dbh = @mysqli_connect'localhost'$username$password$dbnamenull$url_parts['path'] );
        }
        else 
        {
            
$dbh = @mysqli_connect$host$username$password$dbname$port );
        }
        return 
$dbh;
    }
    

    
/**
     * MySQL database version number
     * @param conn $dbh Database connection handle
     * @return false|string false on failure, version number on success
     */
    
static public function mysql_version($dbh) {
        if (
function_exists('mysqli_get_server_info')) {
            return 
preg_replace('/[^0-9.].*/'''mysqli_get_server_info($dbh));
        } else {
            return 
0;
        }
    }

    
/**
     * MySQL server variable
     * @param conn $dbh Database connection handle
     * @return string the server variable to query for
     */
    
static public function mysql_variable_value($dbh$variable) {
        
$result = @mysqli_query($dbh"SHOW VARIABLES LIKE '{$variable}'");
        
$row = @mysqli_fetch_array($result);
        @
mysqli_free_result($result);
        return isset(
$row[1]) ? $row[1] : null;
    }

    
/**
     * Determine if a MySQL database supports a particular feature
     * @param conn $dbh Database connection handle     
     * @param string $feature the feature to check for
     * @return bool
     */
    
static public function mysql_has_ability($dbh$feature) {
        
$version self::mysql_version($dbh);

        switch (
strtolower($feature)) {
            case 
'collation' :
            case 
'group_concat' :
            case 
'subqueries' :
                return 
version_compare($version'4.1''>=');
            case 
'set_charset' :
                return 
version_compare($version'5.0.7''>=');
        };
        return 
false;
    }

    
/**
     * Sets the MySQL connection's character set.
     * @param resource $dbh     The resource given by mysqli_connect
     * @param string   $charset The character set (optional)
     * @param string   $collate The collation (optional)
     */
    
static public function mysql_set_charset($dbh$charset null$collate null) {

        
$charset = (!isset($charset) ) ? $GLOBALS['DBCHARSET_DEFAULT'] : $charset;
        
$collate = (!isset($collate) ) ? $GLOBALS['DBCOLLATE_DEFAULT'] : $collate;

        if (
self::mysql_has_ability($dbh'collation') && !empty($charset)) {
            if (
function_exists('mysqli_set_charset') && self::mysql_has_ability($dbh'set_charset')) {
                return 
mysqli_set_charset($dbh$charset);
            } else {
                
$sql " SET NAMES {$charset}";
                if (!empty(
$collate))
                    
$sql .= " COLLATE {$collate}";
                return 
mysqli_query($dbh$sql);
            }
        }
    }

    
/**
     *  READABLE_BYTESIZE
     *  Display human readable byte sizes
     *  @param string $size        The size in bytes
     */
    
static public function readable_bytesize($size) {
        try {
            
$units = array('B''KB''MB''GB''TB');
            for (
$i 0$size >= 1024 && $i 4$i++)
                
$size /= 1024;
            return 
round($size2) . $units[$i];
        } catch (
Exception $e) {
            return 
"n/a";
        }
    }
    
    
/**
     *  PREG_REPLACEMENT_QUOTE
     *  The characters that are special in the replacement value of preg_replace are not the 
     *  same characters that are special in the pattern
     *  @param string $str        The string to replace on
     */
    
static public function preg_replacement_quote($str) {
        return 
preg_replace('/(\$|\\\\)(?=\d)/''\\\\\1'$str);
    }
    
    
    
/**
     *  IS_WEB_CONNECTED
     *  Check to see if the internet is accessable
     *  @param string $url        A url e.g without prefix "ajax.googleapis.com"
     *  @param string $port        A valid port number
     *  @return bool
     */
    
static public function is_url_active($url$port) {
        if (
function_exists('fsockopen')) {
            
$port = isset($port) && is_integer($port) ? $port 80;
            
$connected = @fsockopen($url$port); //website and port
            
if ($connected){
                
$is_conn true;
                @
fclose($connected);
            } else {
                
$is_conn false
            }
            return 
$is_conn;
        } 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.0312 ]--