Vulnerabilidades en PHP

En lo que va de este mes de mayo la gente de MOPS, Month of PHP Security ya han encontrado 23 nuevas vulnerabilidades de PHP.

La mayoría de ellas están relacionadas directamente con PHP aunque algunas corresponden a aplicaciones de terceros creadas en PHP .

Esta interesante iniciativa empezó en 2007 por el alemán Stefa Esses, experto en seguridad informática, con un proyecto denominado Month of PHP.

En el sitio web de MOPS podéis consultar todas las vulnerabilidades encontradas.

CheatSheet interesantes

Veo en Vera un post con 34 cheat sheets muy interesantes y que no debemos perdernos ya que pueden sacarnos de algún aprieto.

Aquí os dejo el listado,

  • jQuery ( si la hubiera tenido hace un par de meses cuanto dolores de cabeza me habría ahorrado )
  • jQuery 1.2 Cheat Sheet
  • Fireworks CS3

Gestionando Redes con PHP

Redes
Redes

Pasando el rato y buscando cositas interesantes he llegado a la web de phpip, ni me acuerdo como llegué jeje, pero lo importante es que esta gente tiene un paquete para descargar que te permite ver y “gestionar” todos los recursos de una red local.

Su uso es realmente sencillo, aquí van los 4 pasitos que se necesitan para tenerlo funcionando,

Paso 1
Descargar el paquete desde http://www.phpip.net/download.php

Paso 2

Descomprimir en un directorio público de nuestro servidor y accediendo a través del navegador a http://localhost/directoriodeinstalacion, cambiando “directoriodeinstalacion” por el directorio donde lo habéis descomprimido.

Paso 3

Por último simplemente tendremos que renombrar el fichero de configuración:

# mv /includes/install.database.php /includes/database.php

Y acceder al asistente de instalación que nos guiará durante este último paso: http://localhost/phpip/install.php

(tan pronto tenga un ratito haré un par de capturas de pantalla para que veáis la interface)

Ejecutar aplicación con PHP y Windows

Windows + Apache + PHP
Windows + Apache + PHP

Estos días en la oficina hemos tenido que echar mano de un windows y montarle Apache, PHP y MySQL para un proyecto que estamos desarrollando. Sí no había otra forma o windows o nada, por eso digo lo de “nunca cerrar las puertas a nadie” bueno en este caso a “nada”.

Sí Windows tendrás sus cosas malas pero en este caso nos está funcionando a las mil maravillas.

Os cuento hemos desarrollado una aplicación que necesita generar un tipo concreto de ficheros que en Linux se nos hacía bastante complicado generar con la suficiente calidad y no nos quedó otro remedio que echar mano de windows.

Los problemas llegaron cuando desde el código PHP no éramos capaces de lanzar un programa, siempre nos encontrábamos con el error,

“programatal.exe” no se reconoce como un comando interno o externo,
programa o archivo por lotes ejecutable.

Buscando en Internet encontramos que teníamos que modificar en el php.ini la siguientes opciones:

  • safe_mode= off
  • safe_mode_exec_dir= On

También es necesario modificar el servicio del apache para darle permisos para permitir al servicio “interactuar con el escritorio”, para ello hacemos click en el botón Inicio->Ejecutar y escribimos “Services.msc” ( sin las comillas ), se nos abrirá el “gestor de servicios” de windows, tendremos que hacer click con el botón derecho en el Apache y click en propiedades. Ahora en la ventana que se nos ha abierto haremos click en “Inicio sesión” y marcaremos la opción “Permitir a los servicios que interactúen con el escritorio”.

Con estos pasos ya deberíamos poder ejecutar mediante la shell de windows un php y que éste lanze cualquier aplicación. En nuestro caso fue imposible, sí podíamos lanzar, por ejemplo, la calculadora de windows, el bloc de notas pero no una aplicación externa a windows.

Solución? La única solución que encontramos y que está funcionando perfectamente, es el crear un acceso directo al programa en la carpeta donde está nuestro fichero php.

El motivo por el cual no podíamos lanzar nuestra aplicación aún está por descubrir, la falta de tiempo no nos ha dejado investigar un poco más el por qué, aunque teóricamente es una medida de seguridad el no permitir ejecutar programas externos fuera del directorio del php que se está ejecutando.

Hola Mundo

Probando el coloreado de código…
Ejemplo en PHP
[code lang=”php”]
echo "Hola Mundo";
[/code]

Programación

Después de darle muchas vueltas ya que requiere bastante tiempo del que no dispongo al final me he decidido a crear una nueva categoría-> Programación en la que iré poniendo código, sobre todo PHP, que crea que puede ser de utilidad.

Espero que salga bien.