Re: CMS - Sistemas de gesti髇 de contenidos

Horst H. von Brand vonbrand en inf.utfsm.cl
Dom Mayo 18 14:18:32 CLT 2008


[Reordenado para eliminar top-posting, tal vez asi algo se entienda...]

Baronti <baronti en gmail.com> wrote:
> El d铆a 17 de mayo de 2008 20:12, Marco Gonz谩lez Luengo
> <noquierouser en gmail.com> escribi贸:
> > El 17/05/08, Rodrigo Fuentealba <the.code.keeper en gmail.com> escribi贸:
> >> Baronti escribi贸:
> >>> El d铆a 17 de mayo de 2008 16:57, Rodrigo Fuentealba
> >>> <the.code.keeper en gmail.com> escribi贸:
> >>
> >>>> Dios mata a un gatito blanco cada vez que usas Joomla. El codigo es
> >>>> horrible.
> >>>
> >>> A ver, se帽or de los c贸digos
> >>> podria UD. decir, a qu茅 c贸digo se refiere?
> >>
> >>> Joomla Versi贸n 1.0.15, ?
> >>
> >> Yep.
> >>
> >>> Joomla Versi贸n 1.5.x ?
> >>
> >> Tambi茅n.
> >>
> >>> 驴Y cu谩l es el fundamento de la apreciaci贸n?
> >>
> >> De muestra un boton:

> >> Joomla 1.5 fue escrito para PHP 5; sin embargo en el fichero
> >> libraries/joomla/database/database.php me encuentro con una clase que
> >> declara sus atributos como var $atributo.
> >>
> >> 驴Que clase de programador deja a merced del lenguaje el tratamiento de
> >> los atributos de sus clases? Cualquier estudiante de informatica chileno
> >> sabe que las clases importantes, tales como las que se usan en
> >> conexiones a bases de datos deben usar funciones para poblar sus atributos.

> >> <?php
> >>
> >> class imbecil
> >> {
> >>    var $user;
> >>    var $pass;
> >>    var $host;
> >>    var $base;
> >> }
> >>
> >> ?>
> >>
> >> es especialmente estupida; cualquier persona puede extender la clase y
> >> usarla en un modulo para sus propios usos. quien la controla?
> >>
> >> <?php
> >>
> >>   private $user;
> >>   private $pass;
> >>   private $host;
> >>   private $base;
> >>
> >>   function setUser($user) { validacion de $user; asignacion }
> >>   function setPass($pass) { validacion de $pass; asignacion }
> >>   function setHost($host) { validacion de $host; asignacion }
> >>   function setBase($base) { validacion de $base; asignacion }
> >>
> >> ?>
> >>
> >> Esta clase es mucho menos vulnerable a estupideces del tipo "uy, puse un
> >> modulo que me extendio la clase y me hackearon".
> >>
> >> Los tipos de Joomla no tienen idea de PHP.

> No estoy seguro que lo que plantea nuestro amigo es en realidad un problema.

De lo poco que entiendo de PHP, es /muy/ mala practica programar asi.

[...]

> No creo que Joomla este MAS expuesto a la inseguridad que otros

Por esto, tal vez directamenrte no. Pero si algo me ha ensen~ado la
experiencia (tengo canas para demostrarlo!) es que si una parte del codigo
es fea, desordenada, poco cuidadosa, lo mas probable es que el resto sea
igual... y los "problemas de seguridad" al fin del dia son *errores* que
cometio el programador. Por descuido, por desconocimiento, ... da lo
mismo. Y codigo feo o mal hecho es desagradable de trabajar, asi que
tamopoco atrae particularmente a gente que pueda aportar (lo que implica
revisar el codigo para "data mining" o ver donde/como introducir
modificaciones), asi que seran pocos quienes lo analicen criticamente... y
los problemas (de seguridad y otros) permaneceran.
-- 
Dr. Horst H. von Brand                   User #22616 counter.li.org
Departamento de Informatica                    Fono: +56 32 2654431
Universidad Tecnica Federico Santa Maria             +56 32 2654239
Casilla 110-V, Valparaiso, Chile               Fax:  +56 32 2797513
 



M醩 informaci髇 sobre la lista de distribuci髇 Linux