Después de cierto tiempo trabajando en aplicaciones realizadas bajo PHP – MySQL, y tras varios desastres originados por inyecciones SQL, poca seguridad y por mí, que soy un manazas, he llegado a estas pequeñas conclusiones resumidas a modo de lista de consejos para dormir todos los días algo más tranquilo.
7 CONSEJOS PARA DORMIR TRANQUILO SI TRABAJAS EN PHP:
- Trabaja con register_globals en OFF. Evitarás que te cambien valores de variables por la URL. También puedes inicializar todas las variables y así tener tu rebaño de $ más controlado,
- Usar la función htmlentities para evitar que nos hagan cross app scripting (ejecutar js en inputs o textareas).
- Realizar una validación completa paralela tanto con JS como con PHP. Validar cliente y Server para evitar sorpresas. No confiemos nunca en nada.
- Usar addslashes para evitar inyecciones SQL que nos revienten nuestras bases de datos.
- Evitar que se filtren datos a través de los errores. Hemos de trabajar con display_error en OFF cuando estemos en fase de producción.
- Evitar mostrar el árbol de directorios de nuestro sitio. En el httpd.conf podemos añadir Option Indexes FollowSysmsLinks Multiviews – Indexes para evitar que se muestre el árbol de directorios del sitio. Tambíen podemos usar la técnica manual de poner un index.php vacío o con un redirect en cada directorio.
- Usar Captcha si usamos formularios para evitar ser banneados.
- Quede claro que esta no es una guía definitiva ni una guía realizada por un crack en desarrollos PHP, pero sinceramente a mí me viene perfecta para dormir tranquilo todas las noches.