elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Rompecabezas de Bitcoin, Medio millón USD en premios


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  PHP (Moderador: #!drvy)
| | | |-+  [Tutorial] Protege Tu Aplicacion PHP
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: [Tutorial] Protege Tu Aplicacion PHP  (Leído 2,715 veces)
Dacan

Desconectado Desconectado

Mensajes: 237



Ver Perfil WWW
[Tutorial] Protege Tu Aplicacion PHP
« en: 15 Noviembre 2008, 23:16 pm »

Bueno debido a que muchos no le dan la debida importancia a la seguridad o no saben casi nada sobre el tema les dejo aquí un tutorial para que pueden protegerse.

Bueno si tu aplicación trabaja con formularios o manejo de superglobales POST, GET debes protegerte de ataques xss o rfi.

Xss:
Debes Filtrar todas las superglobales que el usuario puede modificar con la función
htmlentities()
que se encarga de tratar los códigos html como texto plano, así que cuando alguien intente <b>Texto</b> lo mostrara de la misma forma y no se pondrá el texto en negritas.

Rfi:
Bueno para protegerte de un rfi no puedes incluir una variable que el usuario toque sin asesorarte de que sea el script que verdaderamente debe incluirse, para eso existen muchos sistemas de modulación.

Ahora si tu aplicación trabaja con base de datos solo tienes que filtrar todas las superglobales con la funcion
mysql_real_escape_string()
que se encarga de colocar barras invertidas ante estos caracteres \x00, \n, \r, \, ', " y \x1a.

Mas Información de las funciones antes mencionadas:

- http://es.php.net/mysql_real_escape_string
- http://es.php.net/htmlentities

Ejemplos:


 // Mostrando un Texto
$texto htmlentities($_POST[texto]);
echo 
$texto;

 // Actualizando una tabla
$nick mysql_real_escape_string($_POST['nick']);
$password mysql_real_escape_string($_POST['password']);
$actualizacion "UPDATE usuarios SET password = '$password' WHERE nick = '$nick'";
mysql_query($actualizacion); 
           


Bueno espero que les sirva de ayuda y si tienen alguna duda sobre seguridad o PHP en general me envían un Mensaje Privado y con gusto les ayudare.

Saludos, Dacan  :D




« Última modificación: 15 Noviembre 2008, 23:24 pm por Dacan » En línea

Tec-n0x

Desconectado Desconectado

Mensajes: 25


Ver Perfil
Re: [Tutorial] Protege Tu Aplicacion PHP
« Respuesta #1 en: 16 Noviembre 2008, 03:36 am »

Mas Sencillo .. XSS Una Funcion Rapida:

Código:
<?

// Pequeña Funcion Para ' Sanar ' Variables
// Tec-n0x

function clean($var) {

$var = addslashes($var);
$var = htmlspecialchars($var, ENT_QUOTES);
           
                  return $var;

}

$str = clean($_GET['xssme']);
echo "$str";

?>

Para RFI Simplemente Utilizar Case:

Código:
<?

// Pequeño Anti-RFI
// Tec-n0x

$id = $_GET['id'];
switch($id) {

case home:
include('home.php');
break;

case test:
include('test.php');
break;

default:
include('def.php');
break;

}
?>

Podrias ampliarlo mas. como manejar sesiones / cookies correctamente etc.

Saludos



En línea

Dacan

Desconectado Desconectado

Mensajes: 237



Ver Perfil WWW
Re: [Tutorial] Protege Tu Aplicacion PHP
« Respuesta #2 en: 16 Noviembre 2008, 19:01 pm »

No me gusta Htmlspeacialchars porque:

Convierte los caracteres a otra cosa, ejemplo:

<?php
$nuevo 
htmlspecialchars("<a href='test'>Test</a>"ENT_QUOTES);
echo 
$nuevo// &lt;a href=&#39;test&#39;&gt;Test&lt;/a&gt;
?>

Saludos, Dacan  :D
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines