Pages : 1
#1 Le 29/01/2013, à 19:27
- chtitueur62
Probleme script scan reseau
Bonjour,
je fais un script en PHP CLI qui scanne un reseau et me dis quel sont les ports ouvert, mais j'ai un probleme de syntaxe pour executer la commande nmap, en effet pour l'option du port je veux le définir comme ceci:
$scan=exec('nmap -sS -p$port[$m] $ip');
mais cela ne fonctionne pas. une erreur de syntaxe? ( ' ) ?
il me marque l'erreur:
Nmap done: 1 IP address (1 host up) scanned in 0.11 secondsNmap done: 1 IP address (1 host up) scanned in 0.11 secondsError #485: Your port specifications are illegal. Example of proper form: "-100,200-1024,T:3000-4000,U:60000-"
Merci
Dernière modification par chtitueur62 (Le 29/01/2013, à 19:29)
Thery Guillaume
Intel core i3-2100
1 SSD 250 Go et 1 SSD 120 Go
ATI radeon HD 7970 2Gb
Hors ligne
#2 Le 29/01/2013, à 19:57
- Maisondouf
Re : Probleme script scan reseau
passes par une variable intermédiaire, les appels externes en PHP n'aiment pas trop les opérations dans les paramètres, ni les tableaux d'ailleurs.
$l=$port[$m]; $scan=exec('nmap -sS -p $l $ip');
ASUS M5A88-v EVO avec AMD FX(tm)-8120 Eight-Core Processor, OS principal Precise 12.04.1 LTS 63bits½
Bricoleur, menteur, inculte, inadapté social et mythomane, enfin d'après certains....
"the secret of my form is summed up in two words, no sport" (Winston Churchill)
Hors ligne
#3 Le 29/01/2013, à 20:05
- chtitueur62
Re : Probleme script scan reseau
ça ne marche pas, il me dis toujours
Error #487: Your port specifications are illegal. Example of proper form: "-100,200-1024,T:3000-4000,U:60000-"
Thery Guillaume
Intel core i3-2100
1 SSD 250 Go et 1 SSD 120 Go
ATI radeon HD 7970 2Gb
Hors ligne
#4 Le 29/01/2013, à 20:08
- chtitueur62
Re : Probleme script scan reseau
mon script complet:
#!/usr/bin/php
<?php
$argc=$argc-1;
$port="21,22,25,80,110";
exec("rm /var/log/scannetwork.log");
if ($argc == 2)
{
//echo "les paramétres sont: $argv[1] et $argv[2] \n";
//##Récuperation des octets des plages d'adresse!
//#Plage 1
$a=explode(".", $argv[1]);
echo "la plage ip n°1 est: $a[0].$a[1].$a[2].$a[3] \n";
//plage2
$b=explode(".", $argv[2]);
echo "la plage ip n°2 est: $b[0].$b[1].$b[2].$b[3] \n";
for ($i = $a[0]; $i <= $b[0]; $i++)
{
for ($j = $a[1]; $j <= $b[1]; $j++)
{
for ($k = $a[2]; $k <= $b[2]; $k++)
{
for ($l = $a[3]; $l <= $b[3]; $l++)
{
$ip="$i.$j.$k.$l";
echo "$ip \n";
$res=exec('ping -c1 '.$ip.' | grep transmitted | cut -f3 -d "," | cut -f1 -d "," | cut -f1 -d "%"');
//echo "$res \n";
if($res==0)
{
echo "l'ip $ip répond \n";
for ($m = 0; $m <=4; $m++)
{
$liste_port=explode(",", $port);
$n=$scan=[$m];
$scan=exec('nmap -sS -p$n '.$ip.' | grep open | cut -f2 -d " "');
echo "$scan \n";
/*if($scan = open)
{
echo "Le port $port[$m] est ouvert \n";
}
else
{
echo"le port $port[$m] est fermé ";
}*/
}
$f=fopen('/var/log/scannetwork.log','a');
fwrite($f, "$i.$j.$k.$l est connecté: Ports ouvert: \n");
fclose($f);
}
else
{
echo "l'ip $ip ne répond pas \n";
$f=fopen('/var/log/scannetwork.log','a');
fwrite($f, "$i.$j.$k.$l n'est pas connecté \n");
fclose($f);
}
}
}
}
}
}
else
{
echo "Veuillez entrez la plage d'adresse, (ex: 192.168.0.1 192.168.0.254) en parametre \n";
}
?>
Thery Guillaume
Intel core i3-2100
1 SSD 250 Go et 1 SSD 120 Go
ATI radeon HD 7970 2Gb
Hors ligne
#5 Le 29/01/2013, à 21:04
- Maisondouf
Re : Probleme script scan reseau
Dans l'autre sens peut-être:
$l=$port[$m]; $scan=exec('nmap -sS $ip -p $l');
Et puis pour certains port, il faut être en mode 'root'
papounet@amd8papou:~$ nmap -sS 192.168.0.8 -p 22
You requested a scan type which requires root privileges.
QUITTING!
papounet@amd8papou:~$
Dernière modification par Maisondouf (Le 29/01/2013, à 21:06)
ASUS M5A88-v EVO avec AMD FX(tm)-8120 Eight-Core Processor, OS principal Precise 12.04.1 LTS 63bits½
Bricoleur, menteur, inculte, inadapté social et mythomane, enfin d'après certains....
"the secret of my form is summed up in two words, no sport" (Winston Churchill)
Hors ligne
#6 Le 29/01/2013, à 21:10
- chtitueur62
Re : Probleme script scan reseau
ça fonctionne, mais j'ai un probleme dans la redirection , j'aimerai y voir ça:
poste $ip connecté: port ouvert: $port, port fermé: $port
comment faire cet redirection?
Mon script modifié:
#!/usr/bin/php
<?php
$argc=$argc-1;
$port="21,22,25,80,110";
exec("rm /var/log/scannetwork.log");
if ($argc == 2)
{
//echo "les paramétres sont: $argv[1] et $argv[2] \n";
//##Récuperation des octets des plages d'adresse!
//#Plage 1
$a=explode(".", $argv[1]);
echo "la plage ip n°1 est: $a[0].$a[1].$a[2].$a[3] \n";
//#Plage2
$b=explode(".", $argv[2]);
echo "la plage ip n°2 est: $b[0].$b[1].$b[2].$b[3] \n";
for ($i = $a[0]; $i <= $b[0]; $i++)
{
for ($j = $a[1]; $j <= $b[1]; $j++)
{
for ($k = $a[2]; $k <= $b[2]; $k++)
{
for ($l = $a[3]; $l <= $b[3]; $l++)
{
$ip="$i.$j.$k.$l";
echo "$ip \n";
$res=exec('ping -c1 '.$ip.' | grep transmitted | cut -f3 -d "," | cut -f1 -d "," | cut -f1 -d "%"');
//echo "$res \n";
if($res==0)
{
echo "l'ip $ip répond \n";
for ($m = 0; $m <=4; $m++)
{
$liste_port=explode(",", $port);
//echo "$liste_port[$m] \n";
$n=$liste_port[$m];
$scan=exec('nmap -sS '.$ip.' -p'.$n.' | grep open | cut -f2 -d " "');
//echo "$scan \n";
if($scan == "open")
{
echo "Le port $n est ouvert \n";
}
else
{
echo"le port $n est fermé \n";
}
}
$f=fopen('/var/log/scannetwork.log','a');
fwrite($f, "$i.$j.$k.$l est connecté: Ports ouvert: $n \n");
fclose($f);
}
else
{
echo "l'ip $ip ne répond pas \n";
$f=fopen('/var/log/scannetwork.log','a');
fwrite($f, "$i.$j.$k.$l n'est pas connecté \n");
fclose($f);
}
}
}
}
}
}
else
{
echo "Veuillez entrez la plage d'adresse, (ex: 192.168.0.1 192.168.0.254) en parametre \n";
}
?>
Merci.
Dernière modification par chtitueur62 (Le 29/01/2013, à 22:25)
Thery Guillaume
Intel core i3-2100
1 SSD 250 Go et 1 SSD 120 Go
ATI radeon HD 7970 2Gb
Hors ligne
#7 Le 30/01/2013, à 00:16
- Maisondouf
Re : Probleme script scan reseau
Tu sais, tu peux exécuter la commande totale avec 'nmap' et traiter le résultat dans un fichier ensuite en php.
nmap 192.168.0.100-120 -p 21,22,25,80,110 >resultat
ASUS M5A88-v EVO avec AMD FX(tm)-8120 Eight-Core Processor, OS principal Precise 12.04.1 LTS 63bits½
Bricoleur, menteur, inculte, inadapté social et mythomane, enfin d'après certains....
"the secret of my form is summed up in two words, no sport" (Winston Churchill)
Hors ligne
#8 Le 30/01/2013, à 06:18
- chtitueur62
Re : Probleme script scan reseau
d'accord je vais y regarder.
Merci de m'avoir debloqué dans mon script
Thery Guillaume
Intel core i3-2100
1 SSD 250 Go et 1 SSD 120 Go
ATI radeon HD 7970 2Gb
Hors ligne
Pages : 1