Herramientas de usuario

Herramientas del sitio


enlaces:utilidades_de_red

Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Ambos lados, revisión anteriorRevisión previa
Próxima revisión
Revisión previa
Próxima revisiónAmbos lados, revisión siguiente
enlaces:utilidades_de_red [2011/06/29 20:26] – [Parser y formateador de salida NMap] cayuenlaces:utilidades_de_red [2018/11/01 16:35] – [Netcat] cayu
Línea 2: Línea 2:
  
 ===== Conectividad ===== ===== Conectividad =====
 +
 +==== Agregar ruta estatica ====
 +
 +<code>
 +ip route add 192.168.55.0/24 via 192.168.1.254 dev eth1
 +</code>
 +
 +<code>
 +route add -net 192.168.55.0 netmask 255.255.255.0 gw 192.168.1.254 dev eth1
 +</code>
  
 ==== Forzar el modo ethernet ==== ==== Forzar el modo ethernet ====
Línea 10: Línea 20:
 ethtool -s eth0 speed 100 duplex full autoneg off ethtool -s eth0 speed 100 duplex full autoneg off
 </code> </code>
- 
 ==== Conectarse a redes Wi Fi ==== ==== Conectarse a redes Wi Fi ====
 Primero bajamos el servicio de Network Manager si es que lo tenemos instalado Primero bajamos el servicio de Network Manager si es que lo tenemos instalado
Línea 343: Línea 352:
  
 Muestra y busca paquetes. Ngrep se esfuerza por proveer de la mayoría de características comunes del "grep" de GNU, aplicándolas a la capa de network ({"network layer"} del modelo de referencia OSI). ngrep es consciente de la presencia de pcap y permite usar expresiones regulares que concuerden con el "payload" ( o sea la carga, el cuerpo, y _no_ los encabezados) de los paquetes. Actualmente reconoce TCP, UDP, e ICMP sobre Ethernet, PPP, SLIP e interfaces nulas {"null interfaces"}, y comprende la lógica de un filtro "bpf" de la misma manera que herramientas más comunes de sniffing como tcpdump y snoop. Muestra y busca paquetes. Ngrep se esfuerza por proveer de la mayoría de características comunes del "grep" de GNU, aplicándolas a la capa de network ({"network layer"} del modelo de referencia OSI). ngrep es consciente de la presencia de pcap y permite usar expresiones regulares que concuerden con el "payload" ( o sea la carga, el cuerpo, y _no_ los encabezados) de los paquetes. Actualmente reconoce TCP, UDP, e ICMP sobre Ethernet, PPP, SLIP e interfaces nulas {"null interfaces"}, y comprende la lógica de un filtro "bpf" de la misma manera que herramientas más comunes de sniffing como tcpdump y snoop.
 +
 +
 +Usage examples:
 +
 +<code>
 +ngrep '' udp (print all UDP packets)
 +
 +ngrep '' icmp (print all ICMP packets)
 +
 +ngrep '' port 53 (print TCP or UDP port 53 packets)
 +
 +ngrep '' tcp port 23 (print TCP port 23 packets)
 +
 +ngrep 'LILWORD' port 138 (print Microsoft browsing traffic for NT domain LILWORLD)
 +
 +ngrep -iq 'rcpt to|mail from' tcp port 25 (monitor current delivery and print sender and recipients)
 +
 +ngrep 'user' port 110 (monitor POP3)
 +
 +ngrep -q 'abcd' icmp (Microsoft operating systems fill the ICMP payload with the alphabet; is the "pinging" host running a 
 +Microsoft operating system?)
 +
 +ngrep -iq 'user-agent' tcp port 80 (determine client application that client host is running)
 +
 +ngrep '220' port 21 (determine version of FTP server)
 +
 +ngrep 'SSH' port 22 (investigate Secure Shell)
 +
 +ngrep -v '' port 23 (see all traffic but telnet)
 +
 +ngrep -d le0 '' (listen to le0)
 +</code>
 +
 +
 +Useful flags:
 +
 +<code>
 +-A n (prints out "n" packets after the match)
 +
 +-l (pipe the output of ngrep to another program for more processing)
 +
 +-v (print all lines not matching the expression)
 +
 +-d (specify the device you want to monitor)
 +</code>
  
  
Línea 415: Línea 469:
  
  
-==== Netcat ==== 
  
- Netcat is a featured networking utility which reads and writes data across network connections, using the TCP/IP protocol. +==== MSN Dump ====
-It is designed to be a reliable "back-end" tool that can be used directly or easily driven by other programs and scripts. At the same time, it is a feature-rich network debugging and exploration tool, since it can create almost any kind of connection you would need and has several interesting built-in capabilities.+
  
-It provides access to the following main features:+Sniffea eh interpreta lo que va por el puerto 1863 :p
  
-    * Outbound and inbound connections, TCP or UDP, to or from any ports. +<code perl> 
-    * Featured tunneling mode which allows also special tunneling such as UDP to TCP, with the possibility of specifying all network parameters (source port/interface, listening port/interface, and the remote host allowed to connect to the tunnel+#!/usr/bin/perl -w 
-    * Built-in port-scanning capabilities, with randomizer. +# quick dirty msn sniffer 
-    * Advanced usage options, such as buffered send-mode (one line every N seconds)and hexdump (to stderr or to a specified file) of trasmitted and received data. +# http://miscname.com/ 
-    * Optional RFC854 telnet codes parser and responder+# $Id: msndump.pl,v 1.3 2004/11/17 10:00:33 meh Exp $
  
 +#To capture live traffic from device eth0 run:
 +#msndump.pl -i eth0
  
-The GNU Netcat is distributed freely under the GNU General Public License (GPL)+#To capture from tcpdump traffic.pcap file run: 
 +#msndump.pl -r traffic.pcap
  
-<code bash> +# you need Net::Pcap and Net::Packet 
-echo  -e "GET HTTP/1.0\r\n" | nc 192.168.1.1 80 +# use cpan or get manually 
-</code>+# http://search.cpan.org/CPAN/authors/id/A/AT/ATRAK/NetPacket-0.04.tar.gz 
 +# http://search.cpan.org/CPAN/authors/id/K/KC/KCARNUT/Net-Pcap-0.05.tar.gz
  
-Referencias :+my $lowuid='1001'; 
 +my $lowgid='1001';
  
-http://netcat.sourceforge.net/+my $filter = 'tcp and port 1863';
  
 +# no modify below
 +use Getopt::Std;
 +use Net::Pcap;
 +use NetPacket::IP;
 +use NetPacket::Ethernet qw (:strip);
 +use Fcntl;
 +$|=1;
 +my $flags |= O_NONBLOCK;
  
-Tutorial con ejemplos prácticos http://crysol.org/node/28+my %opts; 
 +getopt("wicr",\%opts); 
 +if ( (!($opts{i})) && (!($opts{r})) ) { 
 +print "[ msndump - miscname.com ]\n Usage:\n\t-i rl0 || -r file.pcap\n\t-c X - capture X packets\n\t-w freshIMz.txt\n\n"; 
 +exit; 
 +
 + 
 +if ((!$opts{r}) && ($> != '0')) { 
 +die ("you need uid 0\n"); 
 +
 + 
 +# main loop 
 +my $exitvar = '0'; 
 +while ($exitvar == '0') { 
 + 
 +# create pcap 
 +my $pcap = &cap_pkt; 
 +if (!($pcap)) { 
 +  die ("cant capture\n"); 
 +
 + 
 +# drop privs 
 +my $GID="$lowgid"; 
 +my $UID="$lowuid"; 
 +my $EGID="$lowgid $lowgid"; 
 + 
 +# -w if set 
 +if ($opts{w}) { 
 +  open (FILEOUT,">$opts{w}") || die ("cant open $opts{w} ($!)\n"); 
 +  fcntl(FILEOUT, F_SETFL, $flags) or die ("couldn't set nonblock for $opts{w} ($!)\n"); 
 +
 + 
 +# capture loop 
 +if (($opts{c}) && ($opts{c} =~ /(\d+)/)) { 
 +  print "stopping after $1 packets\n"; 
 +         Net::Pcap::loop($pcap, $1, \&proc_pkt, 0); 
 +  $exitvar = '1'; 
 +} else { 
 +         Net::Pcap::loop($pcap, -1, \&proc_pkt, 0); 
 +  my %stats; 
 +  Net::Pcap::stats($pcap, \%stats); 
 +  print "saw $stats{ps_recv} packets, dropped $stats{ps_drop}\n"; 
 +
 + 
 +# free it 
 +print "cleaning up\n"; 
 +Net::Pcap::close($pcap); 
 +# close fh 
 +if ($opts{w}) { 
 +  print "wrote $opts{w}.\n"; 
 +  close FILEOUT; 
 +
 +
 + 
 +# sub procs below 
 +sub cap_pkt { 
 + 
 +my ($pcap,$dev,$err,$mask,$net,$filter2); 
 +my $snaplen = 14096; # seen some big im's :( 
 +my $promisc = 1; # promisc of course 
 +my $timeout = 0; # timeout 
 + 
 +# file.pcap? 
 +if ($opts{r}) { 
 +  print "reading from '$opts{r}'\n"; 
 +  $pcap = Net::Pcap::open_offline($opts{r}, \$err); 
 +  if (!($pcap)) { 
 +   die("error opening $opts{r} ($err)\n"); 
 +      } 
 +} else { 
 + 
 +  # set dev from cmdline 
 +  $dev = $opts{i}; 
 +  print "dumping on '$opts{i}'\n"; 
 + 
 +  # get netmask for filter 
 +  if ((Net::Pcap::lookupnet($dev, \$net, \$mask, \$err)) == -1 ) { 
 +          die ("Net::Pcap::lookupnet failed ($err)\n"); 
 +      } 
 +     
 +  # open it 
 +  $pcap = Net::Pcap::open_live($dev, $snaplen, $promisc, $timeout, \$err); 
 +  if (!($pcap)) { 
 +   die ("can't create packet fd ($err)\n"); 
 +  } 
 +
 +    
 +# sanity check 
 +if (!($pcap)) { 
 +  die ("sanity check failed - \$pcap null\n"); 
 +} elsif (!($mask)) { 
 +  $mask = '0'; # for open_offline 
 +
 + 
 +# make filter struct 
 +if (Net::Pcap::compile($pcap, \$filter2, $filter, 1, $mask) != '0') { 
 +   die ("broken filter ($filter)\n"); 
 +
 +# apply 
 +Net::Pcap::setfilter($pcap, $filter2); 
 + 
 +return $pcap; 
 +
 + 
 +sub proc_pkt { 
 + 
 +my($user_data, $hdr, $pkt) = @_; 
 +my ($user,$msg); 
 + 
 +my $ip_obj = NetPacket::IP->decode(eth_strip($pkt)); 
 +#my $ip_obj = NetPacket::IP::strip($pkt); 
 + 
 +# check if its a message (or a p2p file transfer) 
 +# if your reading this, include 'P2P-Dest:' in your message body to avoid sniffer ;) 
 +if (($ip_obj->{data} !~ /MSG/m) || ($ip_obj->{data} =~ /P2P-Dest:/m)) { 
 +  ; 
 +} else { 
 +  print $ip_obj->{data}; 
 +  # extract goodies 
 +  if ( (($ip_obj->{data} =~ /MSG (.*)\@(.*)/)) || (($ip_obj->{data} =~ /P4-Context: (.*)/)) ) { 
 +   $user = "$1\@$2"; 
 +  } 
 + 
 +  if ($ip_obj->{data} =~ /X-MMS-IM-Format:\s.*\r(.*)/s) { #\s\w+\=\w+\;\s\w+\=\w+\;\s\w+\=\w+\;\s\w+\=\w+\;\s\w+\=\w+\;(.*)/m) { 
 +   $msg = $1; 
 +  } 
 + 
 +  # display if we have both 
 +  if (($user) || ($msg)) 
 +  { 
 +   if(!$user) 
 +   { 
 +    $user = "unknown user"; 
 +   } 
 +   if (!($opts{w})) { 
 +    print "\n----------------------------------------------------\n"; 
 +    print "src_ip($ip_obj->{src_ip}) dst_ip($ip_obj->{dest_ip})\n"; 
 +    print "TO/FROM: $user\nMESSAGE:\n$msg\n"; 
 +   } else { 
 +    print FILEOUT "\n----------------------------------------------------\n"; 
 +    print FILEOUT "src_ip($ip_obj->{src_ip}) dst_ip($ip_obj->{dest_ip})\n"; 
 +    print FILEOUT "TO/FROM: $user\nMESSAGE: \n$msg\n\n"; 
 +   } 
 +  } 
 +
 +
 +</code>
  
 ==== Python Proxy ==== ==== Python Proxy ====
 +
 +Mini Proxy en Python
  
 http://code.google.com/p/python-proxy/ http://code.google.com/p/python-proxy/
Línea 453: Línea 666:
 GET http://security.debian.org/dists/lenny/updates/Release.gpg HTTP/1.1 GET http://security.debian.org/dists/lenny/updates/Release.gpg HTTP/1.1
 </code> </code>
 +
  
  
enlaces/utilidades_de_red.txt · Última modificación: 2019/01/22 15:34 por cayu