Klaus1: Ups. Gefährlich!

Beitrag lesen

Hier der Source-Code für das gesamte PHP-Script:

<? header("Content-Type: text/html; charset=utf8"); ?>

<?
include "config.php";

function guidv4($data = null) {
    // Generate 16 bytes (128 bits) of random data or use the data passed into the function.
    $data = $data ?? random_bytes(16);
    assert(strlen($data) == 16);

    // Set version to 0100
    $data[6] = chr(ord($data[6]) & 0x0f | 0x40);
    // Set bits 6-7 to 10
    $data[8] = chr(ord($data[8]) & 0x3f | 0x80);

    // Output the 36 character UUID.
    return vsprintf('%s%s-%s-%s-%s-%s%s%s', str_split(bin2hex($data), 4));
}



$folder = $_POST["folder"];
$pwd = $_POST["pwd"];
$zippen = $_POST["zippen"];
$totalSize = $_POST["totalSize"];

$verbindung = @mysqli_connect($server,$login,$pass,$dbname);

if (!empty($folder)) {
	$target_path = "/srv/www/htdocs/test/upload/".$folder;
	$zip_path = "/srv/www/htdocs/test/upload";
	if ($zippen == "JA") {
		$zip_name    = $folder . '.zip';
		$zip_files   = $target_path;
		$sys = 'zip ' 
			 . escapeshellarg( $target_path . '/' . $zip_name ) 
			 . ' -0 -j -q -mT ' . escapeshellarg( $zip_files) 
			 . '/*';
		$result = system( $sys );
	}
	$uploader = $_SERVER["REMOTE_ADDR"];
	$datum = date("Y-m-d");
	$token = guidv4();
	$abfrage = "insert into transferdb (token,folder,uploader,pwd,lastaccess) values ('$token','$folder','$uploader','$pwd','$datum')";
	$erg = mysqli_query($verbindung, $abfrage);
	echo "ID=".$token;
}

mysqli_close($verbindung);
?>