Entradas etiquetadas ‘visual

Seguridad Php (3ª Parte)

23 de mayo de 2006

en: Programacion

Manipulación de archivos

Algunos sitios tienen URLs parecidas a esto:

index.php?page=contactus.html

El archivo “index.php” incluye simplemente el archivo de “contactus.html”, y el sitio parece funcionar. Sin embargo, el usuario puede cambiar muy fácilmente el pedacito de “contactus.html” por cualquier cosa que le apetezca. Por ejemplo, si estás utilizando el mod_auth de Apache para proteger archivos y para guadar tu contraseña en el archivo llamado ” .htpasswd ” (el nombre convencional), si un usuario quisiera visitar esa URL, la respuesta haría salir el nombre de usuario y contraseña:

index.php?page=.htpasswd

Seguridad Php (2ª Parte)

23 de mayo de 2006

en: Programacion

Cuidado con SQL

Una de las ventajas más grandes de PHP es la facilidad con la cual puede comunicarse con las bases de datos, lo más normal con MySQL . Mucha gente hace el uso excesivo de esto, y muchos grandes sitios, confía en las bases de datos para funcionar.
Sin embargo, con esa ventaja hay problemas suficientemente grandes en la seguridad a los que tendras que hacer frente. Afortunadamente, hay un montón de soluciones. El peligro más común de seguridad al que debes de hacer frente es cuando un usuario utiliza un fallo para poder atacar directamente al servidor de bases de datos con sentencias SQL.
Utilicemos un ejemplo común. Muchos sistemas utilizan un codigo muy parecido a este para comprobar el usuario y la contraseña pudiendose hacer todas las combinaciones válidas del usuario y de su contraseña, por ejemplo para controlar el acceso a un área de administración:

Seguridad Php (1ª Parte)

23 de mayo de 2006

en: Programacion

PHP es una lengua muy fácil a aprender, y muchos programadores lo aprenden como manera de agregar interactividad a sus Sitio Web. Desafortunadamente, eso significa a menudo los programadores de PHP, especialmente ésos más nuevos al desarrollo web, cometen ciertos riesgos de seguridad y desaprovechan el potencial que sus usos pueden contener. Aquí están algunos de los problemas mas comunes de seguridad y cómo evitarlos.

Regla número uno: Nunca, confiar en los usuarios

Nunca debes confiar en que los usuarios te van a mandar los datos que tu esperas. Mucha gente responde a esto con algo como“Oh, nadie estaría interesado en mi sitio”. Esta afirmación no podría ser mas incorrecta , siempre hay un usuario malévolo que quiere explotar un agujero de seguridad ademas los problemas pueden presentarse fácilmente debido a un usuario que hace algo mal inintencionalmente.

Por todo esto la regla de todo desarrollador web tiene que ser "Nunca, confiar en los usuarios" . Asumir que cada pieza de datos que tu sitio recoge de un usuario puede convertirse en un agujero de seguridad, siempre. Si la seguridad de tu sitio web es importante para ti, este un buen puntopara comenzar a aprender. Sería conveniente tener “una hoja de seguridad para PHP” al lado de tu escritorio con los puntos mas importantes en texto negrita grande.

Variables globales

En muchas lenguajes debes crear explícitamente un variable para utilizarlas. En PHP, hay una opción, las “register_globals”, que puedes fijar en php.ini y que permite que utilices variables globales.
Considera el código siguiente:

if ($password == “my_password”) {
   $authorized = 1;
}
if ($authorized == 1) {
   echo “Mis cosas importantes “;
}