Legacy Trash (IV)

Hola! Después de ver comprobar que:

  • Ninguna entrada del usuario está validada, el sitio entero es el paraíso del XSS.
  • No hay un solo archivo HTML en la ruta de la aplicación, absolutamente todo el código HTML se genera desde PHP. 

Uno comienza a pensar que a esas alturas ya descubrió todas las falencias de la aplicación. Sin embargo, me topé con una función llamada enTiempo($tiempo), que recibe un timestamp y lo devuelve en tiempo (?) es decir año, mes, día, horas, minutos y segundos ¿Se entiende, no? No hace falta que tenga un nombre mejor </sarcasm>. El problema de esto es que no tiene en cuenta jamás las zonas horarias ni ningúna sutil comodidad de las que suelen incluir las librerías de manejo de fechas o, en el último de los casos, la API estándar de PHP. La función en sí es la sgte.:

function enTiempo($tiempo)
{
 $tiempo=(int)($tiempo); 
 if ($tiempo<=0) { return "0 hs"; }
 else
 {
  if ($tiempo/(60*60*24*365)>1)
  {
   return ((int)($tiempo/(60*60*24*365)))." año".((entero($tiempo/(60*60*24*365))!=1)?"s":"");
  }
  elseif ($tiempo/(60*60*24*30)>1)
  {
   return ((int)($tiempo/(60*60*24*30)))." mes".((entero($tiempo/(60*60*24*30))!=1)?"es":"");
  }
  elseif ($tiempo/(60*60*24)>1)
  {
   return ((int)($tiempo/(60*60*24)))." dia".((entero($tiempo/(60*60*24))!=1)?"s":"");
  }
  elseif ($tiempo/(60*60)>1)
  {
   return ((int)($tiempo/(60*60)))." hs";
  }
  elseif ($tiempo/60>1)
  {
   return ((int)($tiempo/60))." mins";
  }
  else
  {
          return $tiempo." segs";
  }
 }
}
Después, encontré unas funciones Javascript con nombres deliciosos pero no puedo compartirlas con ustedes porque el código no está ofuscado y lo podrían encontrar :(
Para terminar la entrada de hoy estaba pensando distinto. Creo que si hay algo que admirar al que desarrolló esta aplicación es que se requiere mucha paciencia para poder manejarte en una codebase tan innecesariamente tonta compleja y monolítica.
Nos vemos!

Comentarios

Entradas populares de este blog

Introduccion a x86 ASM - Registros

JS: Triángulo de Pascal

Legacy Trash (II)