HEX
Server: Apache/2.4.41 (Ubuntu)
System: Linux wordpress-ubuntu-s-2vcpu-4gb-fra1-01 5.4.0-169-generic #187-Ubuntu SMP Thu Nov 23 14:52:28 UTC 2023 x86_64
User: root (0)
PHP: 7.4.33
Disabled: pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
Upload Files
File: /var/www/linde/wp-content/plugins/better-wp-security/core/modules/dashboard/setup.php
<?php

use iThemesSecurity\User_Groups\Upgrader;
use iThemesSecurity\User_Groups\User_Group;

class ITSEC_Dashboard_Setup implements \iThemesSecurity\Contracts\Runnable {
	public function run() {
		add_action( 'itsec_modules_do_plugin_upgrade', [ $this, 'on_upgrade' ] );
	}

	/**
	 * Runs the upgrade routine.
	 *
	 * @param int $itsec_old_version
	 */
	public function on_upgrade( $itsec_old_version ) {
		if ( $itsec_old_version < 4117 ) {
			$upgrader       = ITSEC_Modules::get_container()->get( Upgrader::class );
			$disabled_users = ITSEC_Modules::get_setting( 'dashboard', 'disabled_users' );
			$user_group_ids = [ $upgrader->get_default_group_id( 'administrator' ) ];

			if ( $disabled_users ) {
				$user_group = $upgrader->find_or_create( __( 'Dashboard Owners', 'better-wp-security' ), static function ( User_Group $user_group ) use ( $disabled_users ) {
					$users = ITSEC_Lib_Canonical_Roles::get_users_with_canonical_role( 'administrator' );

					foreach ( $users as $user ) {
						if ( ! in_array( $user->ID, $disabled_users, false ) && user_can( $user, apply_filters( 'itsec_cap_required', is_multisite() ? 'manage_network_options' : 'manage_options' ) ) ) {
							$user_group->add_user( $user );
						}
					}
				} );

				if ( $user_group->get_users() ) {
					$user_group_ids = [ $user_group->get_id() ];
				} else {
					$user_group_ids = [];
				}
			}

			ITSEC_Modules::set_setting( 'dashboard', 'group', $user_group_ids );
		}

		if ( $itsec_old_version < 4123 ) {
			if (
				! ITSEC_Modules::get_setting( 'dashboard', 'migrated' ) &&
				! get_posts( [ 'post_type' => ITSEC_Dashboard::CPT_DASHBOARD, 'numberposts' => 1 ] )
			) {
				require_once( dirname( __FILE__ ) . '/class-itsec-dashboard-util.php' );
				ITSEC_Dashboard_Util::migrate();
				ITSEC_Modules::set_setting( 'dashboard', 'migrated', true );
			}

			$removed_cards = new WP_Query( [
				'post_type'    => ITSEC_Dashboard::CPT_CARD,
				'meta_key'     => ITSEC_Dashboard::META_CARD,
				'meta_value'   => [ 'four-oh-four' ],
				'meta_compare' => 'IN',
			] );

			foreach ( $removed_cards->posts as $post ) {
				wp_delete_post( $post->ID, true );
			}
		}

		if ( $itsec_old_version < 4128 ) {
			$site_scan_cards = new WP_Query( [
				'post_type'    => ITSEC_Dashboard::CPT_CARD,
				'meta_key'     => ITSEC_Dashboard::META_CARD,
				'meta_value'   => [ 'malware-scan' ],
				'meta_compare' => 'IN',
			] );

			foreach ( $site_scan_cards->posts as $post ) {
				update_post_meta( $post->ID, ITSEC_Dashboard::META_CARD, 'vulnerable-software' );
			}
		}
	}
}

( new ITSEC_Dashboard_Setup() )->run();