!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:\cumbre\cumbreclima\wp-content\plugins\contact-form-7\modules\   drwxrwxrwx
Free 3.26 GB of 39.52 GB (8.25%)
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:     file.php (10.21 KB)      -rw-rw-rw-
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
<?php
/**
** A base module for [file] and [file*]
**/

/* Shortcode handler */

add_action'wpcf7_init''wpcf7_add_shortcode_file' );

function 
wpcf7_add_shortcode_file() {
    
wpcf7_add_shortcode( array( 'file''file*' ),
        
'wpcf7_file_shortcode_handler'true );
}

function 
wpcf7_file_shortcode_handler$tag ) {
    
$tag = new WPCF7_Shortcode$tag );

    if ( empty( 
$tag->name ) )
        return 
'';

    
$validation_error wpcf7_get_validation_error$tag->name );

    
$class wpcf7_form_controls_class$tag->type );

    if ( 
$validation_error )
        
$class .= ' wpcf7-not-valid';

    
$atts = array();

    
$atts['size'] = $tag->get_size_option'40' );
    
$atts['class'] = $tag->get_class_option$class );
    
$atts['id'] = $tag->get_id_option();
    
$atts['tabindex'] = $tag->get_option'tabindex''int'true );

    if ( 
$tag->is_required() )
        
$atts['aria-required'] = 'true';

    
$atts['aria-invalid'] = $validation_error 'true' 'false';

    
$atts['type'] = 'file';
    
$atts['name'] = $tag->name;
    
$atts['value'] = '1';

    
$atts wpcf7_format_atts$atts );

    
$html sprintf(
        
'<span class="wpcf7-form-control-wrap %1$s"><input %2$s />%3$s</span>',
        
sanitize_html_class$tag->name ), $atts$validation_error );

    return 
$html;
}


/* Encode type filter */

add_filter'wpcf7_form_enctype''wpcf7_file_form_enctype_filter' );

function 
wpcf7_file_form_enctype_filter$enctype ) {
    
$multipart = (bool) wpcf7_scan_shortcode( array( 'type' => array( 'file''file*' ) ) );

    if ( 
$multipart ) {
        
$enctype 'multipart/form-data';
    }

    return 
$enctype;
}


/* Validation + upload handling filter */

add_filter'wpcf7_validate_file''wpcf7_file_validation_filter'10);
add_filter'wpcf7_validate_file*''wpcf7_file_validation_filter'10);

function 
wpcf7_file_validation_filter$result$tag ) {
    
$tag = new WPCF7_Shortcode$tag );

    
$name $tag->name;
    
$id $tag->get_id_option();

    
$file = isset( $_FILES[$name] ) ? $_FILES[$name] : null;

    if ( 
$file['error'] && UPLOAD_ERR_NO_FILE != $file['error'] ) {
        
$result->invalidate$tagwpcf7_get_message'upload_failed_php_error' ) );
        return 
$result;
    }

    if ( empty( 
$file['tmp_name'] ) && $tag->is_required() ) {
        
$result->invalidate$tagwpcf7_get_message'invalid_required' ) );
        return 
$result;
    }

    if ( ! 
is_uploaded_file$file['tmp_name'] ) )
        return 
$result;

    
$allowed_file_types = array();

    if ( 
$file_types_a $tag->get_option'filetypes' ) ) {
        foreach ( 
$file_types_a as $file_types ) {
            
$file_types explode'|'$file_types );

            foreach ( 
$file_types as $file_type ) {
                
$file_type trim$file_type'.' );
                
$file_type str_replace( array( '.''+''*''?' ),
                    array( 
'\.''\+''\*''\?' ), $file_type );
                
$allowed_file_types[] = $file_type;
            }
        }
    }

    
$allowed_file_types array_unique$allowed_file_types );
    
$file_type_pattern implode'|'$allowed_file_types );

    
$allowed_size 1048576// default size 1 MB

    
if ( $file_size_a $tag->get_option'limit' ) ) {
        
$limit_pattern '/^([1-9][0-9]*)([kKmM]?[bB])?$/';

        foreach ( 
$file_size_a as $file_size ) {
            if ( 
preg_match$limit_pattern$file_size$matches ) ) {
                
$allowed_size = (int) $matches[1];

                if ( ! empty( 
$matches[2] ) ) {
                    
$kbmb strtolower$matches[2] );

                    if ( 
'kb' == $kbmb )
                        
$allowed_size *= 1024;
                    elseif ( 
'mb' == $kbmb )
                        
$allowed_size *= 1024 1024;
                }

                break;
            }
        }
    }

    
/* File type validation */

    // Default file-type restriction
    
if ( '' == $file_type_pattern )
        
$file_type_pattern 'jpg|jpeg|png|gif|pdf|doc|docx|ppt|pptx|odt|avi|ogg|m4a|mov|mp3|mp4|mpg|wav|wmv';

    
$file_type_pattern trim$file_type_pattern'|' );
    
$file_type_pattern '(' $file_type_pattern ')';
    
$file_type_pattern '/\.' $file_type_pattern '$/i';

    if ( ! 
preg_match$file_type_pattern$file['name'] ) ) {
        
$result->invalidate$tagwpcf7_get_message'upload_file_type_invalid' ) );
        return 
$result;
    }

    
/* File size validation */

    
if ( $file['size'] > $allowed_size ) {
        
$result->invalidate$tagwpcf7_get_message'upload_file_too_large' ) );
        return 
$result;
    }

    
wpcf7_init_uploads(); // Confirm upload dir
    
$uploads_dir wpcf7_upload_tmp_dir();
    
$uploads_dir wpcf7_maybe_add_random_dir$uploads_dir );

    
$filename $file['name'];
    
$filename wpcf7_canonicalize$filename );
    
$filename sanitize_file_name$filename );
    
$filename wpcf7_antiscript_file_name$filename );
    
$filename wp_unique_filename$uploads_dir$filename );

    
$new_file trailingslashit$uploads_dir ) . $filename;

    if ( 
false === @move_uploaded_file$file['tmp_name'], $new_file ) ) {
        
$result->invalidate$tagwpcf7_get_message'upload_failed' ) );
        return 
$result;
    }

    
// Make sure the uploaded file is only readable for the owner process
    
@chmod$new_file0400 );

    if ( 
$submission WPCF7_Submission::get_instance() ) {
        
$submission->add_uploaded_file$name$new_file );
    }

    return 
$result;
}


/* Messages */

add_filter'wpcf7_messages''wpcf7_file_messages' );

function 
wpcf7_file_messages$messages ) {
    return 
array_merge$messages, array(
        
'upload_failed' => array(
            
'description' => __"Uploading a file fails for any reason"'contact-form-7' ),
            
'default' => __'Failed to upload file.''contact-form-7' )
        ),

        
'upload_file_type_invalid' => array(
            
'description' => __"Uploaded file is not allowed file type"'contact-form-7' ),
            
'default' => __'This file type is not allowed.''contact-form-7' )
        ),

        
'upload_file_too_large' => array(
            
'description' => __"Uploaded file is too large"'contact-form-7' ),
            
'default' => __'This file is too large.''contact-form-7' )
        ),

        
'upload_failed_php_error' => array(
            
'description' => __"Uploading a file fails for PHP error"'contact-form-7' ),
            
'default' => __'Failed to upload file. Error occurred.''contact-form-7' )
        )
    ) );
}


/* Tag generator */

add_action'admin_init''wpcf7_add_tag_generator_file'50 );

function 
wpcf7_add_tag_generator_file() {
    if ( ! 
function_exists'wpcf7_add_tag_generator' ) )
        return;

    
wpcf7_add_tag_generator'file'__'File upload''contact-form-7' ),
        
'wpcf7-tg-pane-file''wpcf7_tg_pane_file' );
}

function 
wpcf7_tg_pane_file$contact_form ) {
?>
<div id="wpcf7-tg-pane-file" class="hidden">
<form action="">
<table>
<tr><td><input type="checkbox" name="required" />&nbsp;<?php echo esc_html__'Required field?''contact-form-7' ) ); ?></td></tr>
<tr><td><?php echo esc_html__'Name''contact-form-7' ) ); ?><br /><input type="text" name="name" class="tg-name oneline" /></td><td></td></tr>
</table>

<table>
<tr>
<td><code>id</code> (<?php echo esc_html__'optional''contact-form-7' ) ); ?>)<br />
<input type="text" name="id" class="idvalue oneline option" /></td>

<td><code>class</code> (<?php echo esc_html__'optional''contact-form-7' ) ); ?>)<br />
<input type="text" name="class" class="classvalue oneline option" /></td>
</tr>

<tr>
<td><?php echo esc_html__"File size limit"'contact-form-7' ) ); ?> (<?php echo esc_html__'bytes''contact-form-7' ) ); ?>) (<?php echo esc_html__'optional''contact-form-7' ) ); ?>)<br />
<input type="text" name="limit" class="filesize oneline option" /></td>

<td><?php echo esc_html__"Acceptable file types"'contact-form-7' ) ); ?> (<?php echo esc_html__'optional''contact-form-7' ) ); ?>)<br />
<input type="text" name="filetypes" class="filetype oneline option" /></td>
</tr>
</table>

<div class="tg-tag"><?php echo esc_html__"Copy this code and paste it into the form left."'contact-form-7' ) ); ?><br /><input type="text" name="file" class="tag wp-ui-text-highlight code" readonly="readonly" onfocus="this.select()" /></div>

<div class="tg-mail-tag"><?php echo esc_html__"And, put this code into the File Attachments field below."'contact-form-7' ) ); ?><br /><input type="text" class="mail-tag wp-ui-text-highlight code" readonly="readonly" onfocus="this.select()" /></div>
</form>
</div>
<?php
}


/* Warning message */

add_action'wpcf7_admin_notices''wpcf7_file_display_warning_message' );

function 
wpcf7_file_display_warning_message() {
    if ( ! 
$contact_form wpcf7_get_current_contact_form() ) {
        return;
    }

    
$has_tags = (bool) $contact_form->form_scan_shortcode(
        array( 
'type' => array( 'file''file*' ) ) );

    if ( ! 
$has_tags )
        return;

    
$uploads_dir wpcf7_upload_tmp_dir();
    
wpcf7_init_uploads();

    if ( ! 
is_dir$uploads_dir ) || ! wp_is_writable$uploads_dir ) ) {
        
$message sprintf__'This contact form contains file uploading fields, but the temporary folder for the files (%s) does not exist or is not writable. You can create the folder or change its permission manually.''contact-form-7' ), $uploads_dir );

        echo 
'<div class="error"><p><strong>' esc_html$message ) . '</strong></p></div>';
    }
}


/* File uploading functions */

function wpcf7_init_uploads() {
    
$dir wpcf7_upload_tmp_dir();
    
wp_mkdir_p$dir );

    
$htaccess_file trailingslashit$dir ) . '.htaccess';

    if ( 
file_exists$htaccess_file ) ) {
        return;
    }

    if ( 
$handle = @fopen$htaccess_file'w' ) ) {
        
fwrite$handle"Deny from all\n" );
        
fclose$handle );
    }
}

function 
wpcf7_maybe_add_random_dir$dir ) {
    do {
        
$rand_max mt_getrandmax();
        
$rand zeroisemt_rand0$rand_max ), strlen$rand_max ) );
        
$dir_new path_join$dir$rand );
    } while ( 
file_exists$dir_new ) );

    if ( 
wp_mkdir_p$dir_new ) ) {
        return 
$dir_new;
    }

    return 
$dir;
}

function 
wpcf7_upload_tmp_dir() {
    if ( 
defined'WPCF7_UPLOADS_TMP_DIR' ) )
        return 
WPCF7_UPLOADS_TMP_DIR;
    else
        return 
wpcf7_upload_dir'dir' ) . '/wpcf7_uploads';
}

add_action'template_redirect''wpcf7_cleanup_upload_files'20 );

function 
wpcf7_cleanup_upload_files() {
    if ( 
is_admin() || 'GET' != $_SERVER['REQUEST_METHOD']
    || 
is_robots() || is_feed() || is_trackback() ) {
        return;
    }

    
$dir trailingslashitwpcf7_upload_tmp_dir() );

    if ( ! 
is_dir$dir ) || ! is_readable$dir ) || ! wp_is_writable$dir ) ) {
        return;
    }

    if ( 
$handle = @opendir$dir ) ) {
        while ( 
false !== ( $file readdir$handle ) ) ) {
            if ( 
$file == "." || $file == ".." || $file == ".htaccess" ) {
                continue;
            }

            
$mtime = @filemtime$dir $file );

            if ( 
$mtime && time() < $mtime 60 ) { // less than 60 secs old
                
continue;
            }

            
wpcf7_rmdir_ppath_join$dir$file ) );
        }

        
closedir$handle );
    }
}

?>

:: 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 ]--