Banner Grabbing
Publicado por Perfil removido (última atualização em 09/10/2013)
[ Hits: 6.438 ]
Banner Grabbing é uma técnica de enumeração usada para recolher informações sobre os sistemas de computador em uma rede e os serviços que estão sendo executados, por exemplo, uma máquina é um servidor FTP, através dessa técnica podemos descobrir qual é a versão desse serviço FTP.
#!/usr/bin/env php <? // Coded by MMxM error_reporting(0); function help($name){ print "\n[*] IP-Range Banner grabber\n"; print "[+] Coded by MMxM\n"; print "[*] How to use:\n\n"; print "\t\$ $name <ip-start> <ip-end> <ports> <threads>\n\n"; print "[*] Example:\n\n"; print "\t\$ $name 127.0.0.1 127.0.0.254 21,22,25,80,3306 10\n\n"; exit(0); } function threads($argv){ $ip1 = ip2long($argv[1]); $ip2 = ip2long($argv[2]); while ($ip1 <= $ip2) { $ips[] = long2ip($ip1); $ip1++; } print "\n[*] ".count($ips)." IP's to get banner\n\n"; $out = 0; $thr = $argv[4]; $ini = 0; $fin = $thr - 1; while(1){ $childs = array(); for ($count = $ini; $count <= $fin; $count++){ if(empty($ips[$count])){ $out = 1; continue; } $pid = pcntl_fork(); if ( $pid == -1 ) { echo "Fork error\n"; exit(1); } else if ($pid) { array_push($childs, $pid); } else { $n = $count+1; banner($ips[$count],$argv[3]); exit(0); } } foreach($childs as $key => $pid){ pcntl_waitpid($pid, $status); } if($out == 1){ return; } $ini = $fin + 1; $fin = $fin + $thr; } } function banner($ip,$ports){ $list = explode(",",$ports); foreach($list as $port){ $fp = fsockopen($ip, $port, $errno, $errstr, 2); if (!$fp) { print "\n[+] $ip : $port\n"; print "[*] Closed Port => $port\n\n"; } else { $out = ""; $i = 1; fwrite($fp, "HEAD / HTTP/1.0\r\n\r\n"); while (!feof($fp)){ $a = fgets($fp, 1024); if(preg_match("/(^50)|(^$)/",$a)){ break; } if($port == 22){ $out = $a; break; } $out .= $a; } if($out == ""){ print "\n[+] $ip : $port\n"; print "[-] Filtered port => $port\n\n"; } else { print "\n[+] $ip : $port\n"; print $out; print "\n\n"; } fclose($fp); } } } if(count($argv) != 5) help($argv[0]); else threads($argv); ?>
Gravando log de erros gerados em consultas SQL
KWEB.SYS - Simples script de login em PHP sem uso de bancos de dados (MySQL)
Nenhum comentário foi encontrado.
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Como renomear arquivos de letras maiúsculas para minúsculas
Imprimindo no formato livreto no Linux
Vim - incrementando números em substituição
Efeito "livro" em arquivos PDF
Como resolver o erro no CUPS: Unable to get list of printer drivers
SysAdmin ou DevOps: Qual curso inicial pra essa área? (1)
É cada coisa que me aparece! - não é só 3% (1)
Alguma pessoa pode me ajudar com drriver Core i3 7020u (Debian 12)? (2)
[Python] Automação de scan de vulnerabilidades
[Python] Script para analise de superficie de ataque
[Shell Script] Novo script para redimensionar, rotacionar, converter e espelhar arquivos de imagem
[Shell Script] Iniciador de DOOM (DSDA-DOOM, Doom Retro ou Woof!)
[Shell Script] Script para adicionar bordas às imagens de uma pasta