send
Grupo de Telegram
play_arrow
Este sitio utiliza cookies propias y de terceros. Si continúa navegando consideramos que acepta el uso de cookies. OK Más Información.

Capturador de IPs [PHP]

  • 2 Respuestas
  • 1648 Vistas

0 Usuarios y 1 Visitante están viendo este tema.

Conectado ANTRAX

  • *
  • Administrator
  • Mensajes: 5267
  • Actividad:
    48.33%
  • Reputación 26
  • ANTRAX
    • Ver Perfil
    • Underc0de
    • Email
  • Skype: underc0de.org
  • Twitter: @Underc0de
« en: Marzo 28, 2012, 12:35:40 pm »
Hace tiempo Xt3mP realizo este codigo para obtener IPs de gente que entraba a la web, no con un fin malicioso, sino con el fin de saber quien atacaba en caso de un DOS.
Este codigo a demas de capturar la ip, le añadi tambien para guardar fecha y hora, para identificar la ip en caso de un ataque.
El codigo inicial era el siguietne:

Código: PHP
  1. <?php if ($_SERVER) { if ( $_SERVER["HTTP_X_FORWARDED_FOR"] ) { $realip = $_SERVER["HTTP_X_FORWARDED_FOR"]; } elseif ( $_SERVER["HTTP_CLIENT_IP"] ) { $realip = $_SERVER["HTTP_CLIENT_IP"]; } else { $realip = $_SERVER["REMOTE_ADDR"]; } } else { if ( You are not allowed to view links. Register or Login( "HTTP_X_FORWARDED_FOR" ) ) { $realip = You are not allowed to view links. Register or Login( "HTTP_X_FORWARDED_FOR" ); } elseif ( You are not allowed to view links. Register or Login( "HTTP_CLIENT_IP" ) ) { $realip = You are not allowed to view links. Register or Login( "HTTP_CLIENT_IP" ); } else { $realip = You are not allowed to view links. Register or Login( "REMOTE_ADDR" ); } }
  2.  
  3. $f = You are not allowed to view links. Register or Login("log.txt","a");
  4.  
  5.  You are not allowed to view links. Register or Login($f, $realip. PHP_EOL);
  6.  
  7.  You are not allowed to view links. Register or Login($f, "===================". PHP_EOL);
  8.  
  9. You are not allowed to view links. Register or Login($f);
  10.  
  11. ?>

Se puede mejorar y mucho, tiene ya su tiempo el codigo. Se añade en el index, se le da permiso de escritura, ya que almacena todo en un *.TXT
Este codigo debe ir acompañado de un archivo de texto como bien dije antes, llamado "log.txt"

Aca les dejo el codigo modificado para capturar fecha y hora:

Código: PHP
  1. <?php
  2. if ($_SERVER) { if ( $_SERVER["HTTP_X_FORWARDED_FOR"] ) { $realip = $_SERVER["HTTP_X_FORWARDED_FOR"]; } elseif ( $_SERVER["HTTP_CLIENT_IP"] ) { $realip = $_SERVER["HTTP_CLIENT_IP"]; } else { $realip = $_SERVER["REMOTE_ADDR"]; } } else { if ( You are not allowed to view links. Register or Login( "HTTP_X_FORWARDED_FOR" ) ) { $realip = You are not allowed to view links. Register or Login( "HTTP_X_FORWARDED_FOR" ); } elseif ( You are not allowed to view links. Register or Login( "HTTP_CLIENT_IP" ) ) { $realip = You are not allowed to view links. Register or Login( "HTTP_CLIENT_IP" ); } else { $realip = You are not allowed to view links. Register or Login( "REMOTE_ADDR" ); } }
  3. $f = You are not allowed to view links. Register or Login("log.txt","a");
  4. You are not allowed to view links. Register or Login($f, $realip. PHP_EOL);
  5. You are not allowed to view links. Register or Login($f, You are not allowed to view links. Register or Login('l jS \of F Y h:i:S A'));
  6. You are not allowed to view links. Register or Login($f, "\r\n======================================". PHP_EOL);
  7. You are not allowed to view links. Register or Login($f);
  8. ?>

El log se veria de la siguiente manera:

Código: You are not allowed to view links. Register or Login
190.xxx.x.xxx
Friday 23rd of December 2011 12:41:rd PM
========================================
66.xxx.xxx.xxx
Friday 23rd of December 2011 12:43:rd PM
========================================
186.xxx.xx.xx
Friday 23rd of December 2011 12:43:rd PM
========================================
xxx.xxx.x.226
Friday 23rd of December 2011 12:44:rd PM
========================================

Por motivos obvios oculte las ips.

Xt3mp hizo una nueva modificacion del codigo dejandolo mas prolijo:

Código: PHP
  1. <?php
  2. $ip = $_SERVER['REMOTE_ADDR']; //IP
  3. $meses = You are not allowed to view links. Register or Login('enero', 'febrero', 'marzo', 'abril', 'mayo', 'junio', 'julio', 'agosto', 'septiembre', 'octubre', 'noviembre', 'diciembre'); //Meses
  4. $nombre = 'logs'; //Nombre de archivo
  5. $dia = You are not allowed to view links. Register or Login('d'); //Dia
  6. $mes = You are not allowed to view links. Register or Login('m') - 1; //Mes
  7. $ano = You are not allowed to view links. Register or Login('Y'); //Año
  8. $hora = You are not allowed to view links. Register or Login('h:i:s'); //Hora
  9. $file = You are not allowed to view links. Register or Login($nombre.'.txt', 'a+'); //Abrimos archivo
  10. You are not allowed to view links. Register or Login($file,  'La IP '.$ip.' accedio el '.$dia.' de '.$meses[$mes].' del '.$ano.' a las '.$hora."\r\n"); //Guardamos información
  11. You are not allowed to view links. Register or Login($file);//Cerramos archivo
  12. ?>

Código: You are not allowed to view links. Register or Login
La IP 127.0.0.1 accedio el 23 de diciembre del 2011 a las 08:01:29
La IP 127.0.0.1 accedio el 23 de diciembre del 2011 a las 08:01:29
La IP 127.0.0.1 accedio el 23 de diciembre del 2011 a las 08:01:29

Espero que les sirva!

ANTRAX
« Última modificación: Marzo 27, 2014, 05:49:51 pm por Expermicid »


Desconectado Okol

  • *
  • Underc0der
  • Mensajes: 83
  • Actividad:
    0%
  • Reputación 0
  • Imaginando Programando & Avanzando!
    • Ver Perfil
    • Email
« Respuesta #1 en: Marzo 28, 2012, 04:31:33 pm »
exelente ANTRAX gracias por tus aportes me encanto :D
Underc0de Manager!

Desconectado baron.power

  • *
  • Underc0der
  • Mensajes: 285
  • Actividad:
    0%
  • Reputación 0
    • Ver Perfil
« Respuesta #2 en: Marzo 30, 2012, 07:31:10 pm »
gracias, utilisimo, saludos

 

¿Te gustó el post? COMPARTILO!