!c99Shell v. 1.0 pre-release build #16!

Software: Apache/2.2.3 (CentOS). PHP/5.1.6 

uname -a: Linux mx-ll-110-164-51-230.static.3bb.co.th 2.6.18-194.el5PAE #1 SMP Fri Apr 2 15:37:44
EDT 2010 i686
 

uid=48(apache) gid=48(apache) groups=48(apache) 

Safe-mode: OFF (not secure)

/var/www/html/phpMyAdmin/libraries/export/   drwxr-xr-x
Free 52.34 GB of 127.8 GB (40.95%)
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    Encoder    Tools    Proc.    FTP brute    Sec.    SQL    PHP-code    Update    Feedback    Self remove    Logout    


Viewing file:     latex.php (13.5 KB)      -rw-r--r--
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
<?php
/* $Id: latex.php,v 2.16 2006/01/19 15:39:29 cybot_tm Exp $ */
// vim: expandtab sw=4 ts=4 sts=4:

/**
 * Set of functions used to build dumps of tables
 */

/**
 * Escapes some special characters for use in TeX/LaTeX
 *
 * @param   string      the string to convert
 *
 * @return  string      the converted string with escape codes
 *
 * @access  private
 */
function PMA_texEscape($string) {
   
$escape = array('$''%''{''}',  '&',  '#''_''^');
   
$cnt_escape count($escape);
   for (
$k=0$k $cnt_escape$k++) {
      
$string str_replace($escape[$k], '\\' $escape[$k], $string);
   }
   return 
$string;
}

/**
 * Outputs comment
 *
 * @param   string      Text of comment
 *
 * @return  bool        Whether it suceeded
 */
function PMA_exportComment($text) {
    return 
PMA_exportOutputHandler('% ' $text $GLOBALS['crlf']);
}

/**
 * Outputs export footer
 *
 * @return  bool        Whether it suceeded
 *
 * @access  public
 */
function PMA_exportFooter() {
    return 
TRUE;
}

/**
 * Outputs export header
 *
 * @return  bool        Whether it suceeded
 *
 * @access  public
 */
function PMA_exportHeader() {
    global 
$crlf;
    global 
$cfg;

    
$head  =  '% phpMyAdmin LaTeX Dump' $crlf
           
.  '% version ' PMA_VERSION $crlf
           
.  '% http://www.phpmyadmin.net' $crlf
           
.  '%' $crlf
           
.  '% ' $GLOBALS['strHost'] . ': ' $cfg['Server']['host'];
    if (!empty(
$cfg['Server']['port'])) {
         
$head .= ':' $cfg['Server']['port'];
    }
    
$head .= $crlf
           
.  '% ' $GLOBALS['strGenTime'] . ': ' PMA_localisedDate() . $crlf
           
.  '% ' $GLOBALS['strServerVersion'] . ': ' substr(PMA_MYSQL_INT_VERSION01) . '.' . (int) substr(PMA_MYSQL_INT_VERSION12) . '.' . (int) substr(PMA_MYSQL_INT_VERSION3) . $crlf
           
.  '% ' $GLOBALS['strPHPVersion'] . ': ' phpversion() . $crlf;
    return 
PMA_exportOutputHandler($head);
}

/**
 * Outputs database header
 *
 * @param   string      Database name
 *
 * @return  bool        Whether it suceeded
 *
 * @access  public
 */
function PMA_exportDBHeader($db) {
    global 
$crlf;
    
$head '% ' $crlf
          
'% ' $GLOBALS['strDatabase'] . ': ' . (isset($GLOBALS['use_backquotes']) ? PMA_backquote($db) : '\'' $db '\''). $crlf
          
'% ' $crlf;
    return 
PMA_exportOutputHandler($head);
}

/**
 * Outputs database footer
 *
 * @param   string      Database name
 *
 * @return  bool        Whether it suceeded
 *
 * @access  public
 */
function PMA_exportDBFooter($db) {
    return 
TRUE;
}

/**
 * Outputs create database database
 *
 * @param   string      Database name
 *
 * @return  bool        Whether it suceeded
 *
 * @access  public
 */
function PMA_exportDBCreate($db) {
    return 
TRUE;
}

/**
 * Outputs the content of a table in LaTeX table/sideways table environment
 *
 * @param   string      the database name
 * @param   string      the table name
 * @param   string      the end of line sequence
 * @param   string      the url to go back in case of error
 * @param   string      SQL query for obtaining data
 *
 * @return  bool        Whether it suceeded
 *
 * @access  public
 */
function PMA_exportData($db$table$crlf$error_url$sql_query) {
    
$result      PMA_DBI_try_query($sql_querynullPMA_DBI_QUERY_UNBUFFERED);

    
$columns_cnt PMA_DBI_num_fields($result);
    for (
$i 0$i $columns_cnt$i++) {
        
$columns[$i] = PMA_DBI_field_name($result$i);
    }
    unset(
$i);

    
$buffer      $crlf '%' $crlf '% ' $GLOBALS['strData'] . ': ' $table $crlf '%' $crlf
                 
' \\begin{longtable}{|';

    for (
$index=0;$index<$columns_cnt;$index++) {
       
$buffer .= 'l|';
    }
    
$buffer .= '} ' $crlf ;

    
$buffer .= ' \\hline \\endhead \\hline \\endfoot \\hline ' $crlf;
    if (isset(
$GLOBALS['latex_caption'])) {
        
$buffer .= ' \\caption{' str_replace('__TABLE__'PMA_texEscape($table), $GLOBALS['latex_data_caption'])
                   . 
'} \\label{' str_replace('__TABLE__'$table$GLOBALS['latex_data_label']) . '} \\\\';
    }
    if (!
PMA_exportOutputHandler($buffer)) {
        return 
FALSE;
    }

    
// show column names
    
if (isset($GLOBALS['latex_showcolumns'])) {
        
$buffer '\\hline ';
        for (
$i 0$i $columns_cnt$i++) {
            
$buffer .= '\\multicolumn{1}{|c|}{\\textbf{' PMA_texEscape(stripslashes($columns[$i])) . '}} & ';
          }

        
$buffer substr($buffer0, -2) . '\\\\ \\hline \hline ';
        if (!
PMA_exportOutputHandler($buffer ' \\endfirsthead ' $crlf)) {
            return 
FALSE;
        }
        if (isset(
$GLOBALS['latex_caption'])) {
            if (!
PMA_exportOutputHandler('\\caption{' str_replace('__TABLE__'PMA_texEscape($table), $GLOBALS['latex_data_continued_caption']) . '} \\\\ ')) return FALSE;
        }
        if (!
PMA_exportOutputHandler($buffer '\\endhead \\endfoot' $crlf)) {
            return 
FALSE;
        }
    } else {
        if (!
PMA_exportOutputHandler('\\\\ \hline')) {
            return 
FALSE;
        }
    }

    
// print the whole table
    
while ($record PMA_DBI_fetch_assoc($result)) {

        
$buffer '';
        
// print each row
        
for ($i 0$i $columns_cnt$i++) {
            if ( isset(
$record[$columns[$i]]) && (!function_exists('is_null') || !is_null($record[$columns[$i]]))) {
                
$column_value PMA_texEscape(stripslashes($record[$columns[$i]]));
            } else {
                
$column_value $GLOBALS['latex_replace_null'];
            }

            
// last column ... no need for & character
            
if ($i == ($columns_cnt 1)) {
                
$buffer .= $column_value;
            } else {
                
$buffer .= $column_value " & ";
            }
        }
        
$buffer .= ' \\\\ \\hline ' $crlf;
        if (!
PMA_exportOutputHandler($buffer)) {
            return 
FALSE;
        }
    }

    
$buffer ' \\end{longtable}' $crlf;
    if (!
PMA_exportOutputHandler($buffer)) {
        return 
FALSE;
    }

    
PMA_DBI_free_result($result);
    return 
TRUE;

// end getTableLaTeX

/**
 * Returns $table's structure as LaTeX
 *
 * @param   string   the database name
 * @param   string   the table name
 * @param   string   the end of line sequence
 * @param   string   the url to go back in case of error
 * @param   boolean  whether to include relation comments
 * @param   boolean  whether to include column comments
 * @param   boolean  whether to include mime comments
 *
 * @return  bool     Whether it suceeded
 *
 * @access  public
 */
 // @@@ $strTableStructure
function PMA_exportStructure($db$table$crlf$error_url$do_relation false$do_comments false$do_mime false$dates false)
{
    global 
$cfgRelation;

    
/**
     * Get the unique keys in the table
     */
    
$keys_query     'SHOW KEYS FROM ' PMA_backquote($table) . ' FROM 'PMA_backquote($db);
    
$keys_result    PMA_DBI_query($keys_query);
    
$unique_keys    = array();
    while (
$key PMA_DBI_fetch_assoc($keys_result)) {
        if (
$key['Non_unique'] == 0) {
            
$unique_keys[] = $key['Column_name'];
        }
    }
    
PMA_DBI_free_result($keys_result);
    
    
/**
     * Gets fields properties
     */
    
PMA_DBI_select_db($db);
    
$local_query 'SHOW FIELDS FROM ' PMA_backquote($db) . '.' PMA_backquote($table);
    
$result      PMA_DBI_query($local_query);
    
$fields_cnt  PMA_DBI_num_rows($result);

    
// Check if we can use Relations (Mike Beck)
    
if ($do_relation && !empty($cfgRelation['relation'])) {
        
// Find which tables are related with the current one and write it in
        // an array
        
$res_rel PMA_getForeigners($db$table);

        if (
$res_rel && count($res_rel) > 0) {
            
$have_rel TRUE;
        } else {
            
$have_rel FALSE;
        }
    } else {
           
$have_rel FALSE;
    } 
// end if

    /**
     * Displays the table structure
     */
    
$buffer      $crlf '%' $crlf '% ' $GLOBALS['strStructure'] . ': ' $table  $crlf '%' $crlf
                 
' \\begin{longtable}{';
    if (!
PMA_exportOutputHandler($buffer)) {
        return 
FALSE;
    }

    
$columns_cnt 4;
    
$alignment '|l|c|c|c|';
    if (
$do_relation && $have_rel) {
        
$columns_cnt++;
        
$alignment .= 'l|';
    }
    if (
$do_comments && $cfgRelation['commwork']) {
        
$columns_cnt++;
        
$alignment .= 'l|';
    }
    if (
$do_mime && $cfgRelation['mimework']) {
        
$columns_cnt++;
        
$alignment .='l|';
    }
    
$buffer $alignment '} ' $crlf ;

    
$header ' \\hline ';
    
$header .= '\\multicolumn{1}{|c|}{\\textbf{' $GLOBALS['strField'] . '}} & \\multicolumn{1}{|c|}{\\textbf{' $GLOBALS['strType'] . '}} & \\multicolumn{1}{|c|}{\\textbf{' $GLOBALS['strNull'] . '}} & \\multicolumn{1}{|c|}{\\textbf{' $GLOBALS['strDefault'] . '}}';
    if (
$do_relation && $have_rel) {
        
$header .= ' & \\multicolumn{1}{|c|}{\\textbf{' $GLOBALS['strLinksTo'] . '}}';
    }
    if (
$do_comments && ($cfgRelation['commwork'] || PMA_MYSQL_INT_VERSION >= 40100)) {
        
$header .= ' & \\multicolumn{1}{|c|}{\\textbf{' $GLOBALS['strComments'] . '}}';
        
$comments PMA_getComments($db$table);
    }
    if (
$do_mime && $cfgRelation['mimework']) {
        
$header .= ' & \\multicolumn{1}{|c|}{\\textbf{MIME}}';
        
$mime_map PMA_getMIME($db$tabletrue);
    }

    
$local_buffer PMA_texEscape($table);

    
// Table caption for first page and label
    
if (isset($GLOBALS['latex_caption'])) {
        
$buffer .= ' \\caption{'str_replace('__TABLE__'PMA_texEscape($table), $GLOBALS['latex_structure_caption'])
                   . 
'} \\label{' str_replace('__TABLE__'$table$GLOBALS['latex_structure_label'])
                   . 
'} \\\\' $crlf;
    }
    
$buffer .= $header ' \\\\ \\hline \\hline' $crlf '\\endfirsthead' $crlf;
    
// Table caption on next pages
    
if (isset($GLOBALS['latex_caption'])) {
        
$buffer .= ' \\caption{'str_replace('__TABLE__'PMA_texEscape($table), $GLOBALS['latex_structure_continued_caption'])
                   . 
'} \\\\ ' $crlf;
    }
    
$buffer .= $header ' \\\\ \\hline \\hline \\endhead \\endfoot ';

    if (!
PMA_exportOutputHandler($buffer)) {
        return 
FALSE;
    }

    while (
$row PMA_DBI_fetch_assoc($result)) {

        
$type             $row['Type'];
        
// reformat mysql query output - staybyte - 9. June 2001
        // loic1: set or enum types: slashes single quotes inside options
        
if (eregi('^(set|enum)\((.+)\)$'$type$tmp)) {
            
$tmp[2]       = substr(ereg_replace('([^,])\'\'''\\1\\\''',' $tmp[2]), 1);
            
$type         $tmp[1] . '(' str_replace(','', '$tmp[2]) . ')';
            
$type_nowrap  '';

            
$binary       0;
            
$unsigned     0;
            
$zerofill     0;
        } else {
            
$type_nowrap  ' nowrap="nowrap"';
            
$type         eregi_replace('BINARY'''$type);
            
$type         eregi_replace('ZEROFILL'''$type);
            
$type         eregi_replace('UNSIGNED'''$type);
            if (empty(
$type)) {
                
$type     '&nbsp;';
            }

            
$binary       eregi('BINARY'$row['Type']);
            
$unsigned     eregi('UNSIGNED'$row['Type']);
            
$zerofill     eregi('ZEROFILL'$row['Type']);
        }
        
$strAttribute     '&nbsp;';
        if (
$binary) {
            
$strAttribute 'BINARY';
        }
        if (
$unsigned) {
            
$strAttribute 'UNSIGNED';
        }
        if (
$zerofill) {
            
$strAttribute 'UNSIGNED ZEROFILL';
        }
        if (!isset(
$row['Default'])) {
            if (
$row['Null'] != '') {
                
$row['Default'] = 'NULL';
            }
        } else {
            
$row['Default'] = $row['Default'];
        }

        
$field_name $row['Field'];

        
$local_buffer $field_name "\000" $type "\000" . (($row['Null'] == '') ? $GLOBALS['strNo'] : $GLOBALS['strYes'])  . "\000" . (isset($row['Default']) ? $row['Default'] : '');

        if (
$do_relation && $have_rel) {
            
$local_buffer .= "\000";
            if (isset(
$res_rel[$field_name])) {
                
$local_buffer .= $res_rel[$field_name]['foreign_table'] . ' (' $res_rel[$field_name]['foreign_field'] . ')';
            }
        }
        if (
$do_comments && $cfgRelation['commwork']) {
            
$local_buffer .= "\000";
            if (isset(
$comments[$field_name])) {
                
$local_buffer .= $comments[$field_name];
            }
        }
        if (
$do_mime && $cfgRelation['mimework']) {
            
$local_buffer .= "\000";
            if (isset(
$mime_map[$field_name])) {
                
$local_buffer .= str_replace('_''/'$mime_map[$field_name]['mimetype']);
            }
        }
        
$local_buffer PMA_texEscape($local_buffer);
        if (
$row['Key']=='PRI') {
            
$pos=strpos($local_buffer"\000");
            
$local_buffer '\\textit{' substr($local_buffer0$pos) . '}' substr($local_buffer$pos);
        }
        if (
in_array($field_name$unique_keys)) {
            
$pos=strpos($local_buffer"\000");
            
$local_buffer '\\textbf{' substr($local_buffer0$pos) . '}' substr($local_buffer$pos);
        }
        
$buffer str_replace("\000"' & '$local_buffer);
        
$buffer .= ' \\\\ \\hline ' $crlf;

        if (!
PMA_exportOutputHandler($buffer)) {
            return 
FALSE;
        }
    } 
// end while
    
PMA_DBI_free_result($result);

    
$buffer ' \\end{longtable}' $crlf;
    return 
PMA_exportOutputHandler($buffer);
// end of the 'PMA_getTableStructureLaTeX()' function
?>

:: Command execute ::

Enter:
 
Select:
 

:: Shadow's tricks :D ::

Useful Commands
 
Warning. Kernel may be alerted using higher levels
Kernel Info:

:: Preddy's tricks :D ::

Php Safe-Mode Bypass (Read Files)

File:

eg: /etc/passwd

Php Safe-Mode Bypass (List Directories):

Dir:

eg: /etc/

:: Search ::
  - regexp 

:: Upload ::
 
[ ok ]

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

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

--[ c999shell v. 1.0 pre-release build #16 Modded by Shadow & Preddy | RootShell Security Group | r57 c99 shell | Generation time: 0.0068 ]--