Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - madpitbull_99

#641
Se trata de una pequeña librería adaptada para CodeIgniter para registrar los intentos de log-in en nuestro sistema de autenticación. Para guardar los logs se emplea un fichero xml.

Código (php) [Seleccionar]

<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
//begin AuthLogger.php -- Library


class AuthLogger {

/*-----------------------------------------------------------------------*/
/**
 * Class Settings
 * @logFile = Name of the log file
 * @logPath = The path where the logFile will
 *    be saves. By default it saves it
 *    in the CI logs folder.
 */
private $logPath;
private $logFile 'auth_logs.xml';
    private 
$user$pass$ip$useragent;

/*-----------------------------------------------------------------------*/
/**
 * The constructor of the Class.
 * It needs and array with the parameters.
 */
function __construct($params)
    {
    
//The logPath it can be changed if the lib
    
// won't be used with CI
$this->logPath APPPATH.'logs/';
        
$this->user  $params['user'];
        
$this->pass  $params['pass'];
        
$this->ip  $params['ip'];
        
$this->useragent $params['useragent'];

        
$this->addLogs($this->user$this->pass$this->ip$this->useragent);


    }

/*-----------------------------------------------------------------------*/
/**
 * Creates or Adds the logs to the XML File.
 * It's an internal private function.
 */
    
private function addLogs($user$pass 'Good Auth'$ip$useragent)
    {

if (!file_exists($this->logPath.$this->logFile)) {
$xml = new SimpleXMLElement("<logdata></logdata>");
} else {
$xml simplexml_load_file($this->logPath.$this->logFile);
}
        
        
$authLog $xml->addChild('auth_log');
        
$authLog->addChild('user'$user);
        
$authLog->addChild('password'$pass);
        
$authLog->addChild('ip'$ip);
        
$authLog->addChild('user_agent'$useragent);
        
$authLog->addChild('date'date("d F Y - G:i:s"));
        
$xml->asXML($this->logPath.$this->logFile);

    }
/*-----------------------------------------------------------------------*/

}

//end AuthLogger.php -- Library
?>



En principio fue desarrollada para usarla con CodeIgniter, por lo tanto solamente hay que copiarla en la carpeta application/libraries.
Si se quiere usar sin este framework, hay que incluír la clase a vuestro script.

Modo de Uso

CodeIgniter:
Crear un array con asociativo con los siguientes valores, los índices asociativos del array no se pueden cambiar, al menos que se cambie en la librería:

Código (php) [Seleccionar]

$params = array (
                        'user'      => $user,
                        'pass'          => $pass',
                        'ip'            => $this->session->userdata('ip_address'),
                        'useragent' => $this->session->userdata('user_agent')
                    );


Donde user es el usuario que hemos recibido del formulario, pass es la contraseña e ip y useragent son la IP del posible
atacante y el useragent (que contendrá el navegador y el sistema operativo).


Después cargaremos la librería y en la misma sentencia le pasamos los parámetros:

Código (php) [Seleccionar]

       $this->load->library('AuthLogger', $params);


Y los datos se guardarán en nuestro archivo de logs en un formato xml de la siguiente manera:

Código (xml) [Seleccionar]

<?xml version="1.0"?>
<logdata>
<auth_log>
<user>mad</user>
<password>mad</password>
<ip>127.0.0.1</ip>
<user_agent>Mozilla/5.0 (Windows NT 6.1; WOW64; rv:5.0) Gecko/</user_agent>
<date>08 July 2011 - 22:38:51</date>
</auth_log>
<auth_log>
<user>mad</user>
<password>mad</password>
<ip>0.0.0.0</ip>
<user_agent>Mozilla/5.0 (Windows NT 6.1; WOW64; rv:5.0) Gecko/</user_agent>
<date>08 July 2011 - 22</date>
</auth_log>
<auth_log>
<user>mad</user>
<password>mad</password>
<ip>127.0.0.1</ip>
<user_agent>Mozilla/5.0 (Windows NT 6.1; WOW64; rv:5.0) Gecko/</user_agent>
<date>08 July 2011 - 22:38:51</date>
</auth_log>
</logdata>


Por si este archivo cae en manos ajenas, lo mejor sería no guardar la verdadera password en el log.
Para eso, en nuestra aplicación deberíamos implementarla algo así:

Código (php) [Seleccionar]

$user = $this->input->post('user');
$pass = $this->input->post('password');

if ($this->Users_model->checkUser($user, $pass)) {
    //Good User Credentials

    /* AuthLog Parameters and Lib */
    $params = array (
        'user'      => $user,
        'pass'      => 'Good Authentification',
        'ip'        => $this->session->userdata('ip_address'),
        'useragent' => $this->session->userdata('user_agent')
    );
    $this->load->library('AuthLogger', $params);
    /* AuthLog Parameters and Lib */

} else {
    //BAD User Credentials

    /* AuthLog Parameters and Lib */
    $params = array (
        'user'  => $user,
        'pass'  => $pass,
        'ip'    => $this->session->userdata('ip_address'),
        'useragent' => $this->session->userdata('user_agent')
    );
    $this->load->library('AuthLogger', $params);
    /* AuthLog Parameters and Lib */

}


Simplemente, si los datos del usuario proporcionados son válidos, sobrescribir el parámetro 'pass' por un texto alternativo, también se puede aplicar al
campo del usuario, para más seguridad.

Uso sin framework:

Como ya lo he mencionado, esta librería ha sido creada con el fin de usarla junto con CodeIgniter, pero se puede usar con cualquier proyecto y framework
fácilmente. Se haría de la siguiente manera:

Código (php) [Seleccionar]

    require_once('authLogger.class.php');
    $authLogger = new AuthLogger($params);


Los parámetros son los mismos que en el caso de CodeIgniter. No olvidéis aplicar el mismo o un mecanismo de autenticación parecido al mencionado en el ejemplo de uso
con CodeIgniter, para no incluir los datos verdaderos de acceso en el registro.
#642
Puede ser problema del Windows. ¿Ha cambiado la contraseña del WiFi a cifrado WPA2?

Si es así, es probable que no tenga instalado el parche que soluciona la conectividad con redes que emplean cifrado WPA2, para solucionarlo hay que descargar un parche.

El documento donde explican esto, es el siguiente: Actualización de Wi-Fi Protected Access 2 (WPA2)/Wireless Provisioning Services Information Element (WPS IE) para Windows XP con el Service Pack 2.


O sino, ve al Panel de control -> Redes -> Propiedades de la red inalámbrica -> Autenticación -> Y desmarcar Habilitar el acceso a la red mediante IEEE.

Con instalar el Service Pack 3 (SP3) para Windows, debería solucionarse el problema.
#643
Redes / Re: Ayuda con puertos
8 Julio 2011, 21:42 PM
Si el servicio que estás dando al exterior tiene fallos/bugs el sistema podrá verse comprometido.

Al igual que el mensaje que mencionas, hay que tener los servicios al día, un firewall, tal vez un IDS, etc.
#644
Redes / Re: Ayuda con puertos
8 Julio 2011, 21:29 PM
Normalmente suele haber una tercera opción que es TCP + UDP, pero por lo visto tu router no la tiene. En ese caso tú mismo has mencionado la solución:

CitarO es que haga 2 puerto de lo mismo solo que uno con TCP y otro con UDP.

#645
Redes / Re: Ayuda con puertos
8 Julio 2011, 21:04 PM
Citar4.) Protocol - El protocolo a emplear, si no estás seguro, pon tanto UDP como TCP.
No he dicho en ninguna parte que da igual. Si no lo sabes, simplemente pon los dos.
#646
Redes / Re: Ayuda con puertos
8 Julio 2011, 20:50 PM


1.) Range Ports - Rango de puertos que quieres redirigir. Si vas a abrir los puertos para Counter Strike, por ejemplo, tendrás que redirigir el rango de 2700 a 2800.
2.) Translate To - La dirección IP local del servidor al que quieres redirigir las peticiones.
3.) Trigger Port - El puerto por el cuál el servidor está corriendo, si es un servidor web, lo más probable es que sea el puerto 80.
4.) Protocol - El protocolo a emplear, si no estás seguro, pon tanto UDP como TCP.
#647
Si la tiene, debería estar en la parte de Wireless.
#648
El mensaje 'XBomb MSN v1.4 :P- Bloquea o Kickea a tus contactos de MSN (TODAS LAS VERSIONES)' fue bloqueado
No se permite postear este tipo de aplicaciones sino es con un fin educativo (poniendo el código fuente).
Leer reglas:
http://foro.elhacker.net/reglas
#649
¿Que navegador estás usando? Porque solo ha sido probado en Chrome 11 y Mozilla 3.6.
#650
De hecho lo posteaste en Windows, pero Randomize te lo movió a Programación General.