cake-php
[Arriba] [Todas las Listas]

CakePHP 2.3.6 liberó

To: cake-php@xxxxxxxxxxxxxxxx
Subject: CakePHP 2.3.6 liberó
From: mark_story <mark.story@xxxxxxxxx>
Date: Sun, 9 Jun 2013 20:02:17 -0700 (PDT)
Delivery-date: Sun, 09 Jun 2013 23:02:36 -0400
Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlegroups.com; s=20120806; h=x-beenthere:date:from:to:message-id:subject:mime-version :x-original-sender:reply-to:precedence:mailing-list:list-id :x-google-group-id:list-post:list-help:list-archive:sender :list-subscribe:list-unsubscribe:content-type; bh=Bkc6uyzFNxJX2zNAc0mIVmWMs0NWAcXjir9JB2t+/m0=; b=Z39mpVQ74x4iCZ3jEPfwZW1pQlBudOlebk8n1ut8sNttZR3QpmUcKTpk0cBzfDXNJV FLL/R8RwPdHe5XLplIw5FQSGpewhrXoBTaEx+ziE4fD3rPbIMxCxgrcGGtz2+eQUNsl+ IAtW235yR3I6mamYYL7ntubaE91nam4XUA/NYeg7y5Tc5bNcd7boc8iUzet53pUTpiMP QuG8GqRRtrszZPa9LemPRf/4TZRy9R6QYsP0+zAEknKJ4PinIeszpn+J+htB9yeazsm+ 2USPPup/2dRUl1dOxuPS6lNa7hqj5mldzPHtctPMsBvKbmbiJYzOSEP3C19eeoDUUm0O pTOQ==
Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=x-beenthere:date:from:to:message-id:subject:mime-version :x-original-sender:reply-to:precedence:mailing-list:list-id :x-google-group-id:list-post:list-help:list-archive:sender :list-subscribe:list-unsubscribe:content-type; bh=Bkc6uyzFNxJX2zNAc0mIVmWMs0NWAcXjir9JB2t+/m0=; b=gO0NbVO7E2fEtD4DJEwTI1O8C1FGVKP4CTYaZ9F+3IWT510aJtSXf+cJOLRoLDFS7O RwA29u8KYyrZKEn4QgRjVdek9/PpgVD4rrhWogKIo7Mnxse0ZkJJ8uCAqPMw8PFbIgkX jIYId/mT5Pll1nPtbc/P0BrgVFgVOI39eEQQJjwAVIcSKj9HtNiulc+4U7YZbp6GqIRQ g2STz1UZKSPQevxL4z6guUeovypMH/ZshiwZyPl1geDl4votXWk6lhJ2gfa8vaI1/shT Yxsl2knhFbEP0AujcuMCo+JqTZur1CxjHOVAEDiiqAfzNEE6f7QVB266HhEepmPpFHwA LEzg==
Envelope-to: traductor@xxxxxxxxxxx
List-archive: <http://groups.google.com/group/cake-php?hl=en>
List-help: <http://groups.google.com/support/?hl=en>, <mailto:cake-php+help@googlegroups.com>
List-id: <cake-php.googlegroups.com>
List-post: <http://groups.google.com/group/cake-php/post?hl=en>, <mailto:cake-php@googlegroups.com>
List-subscribe: <http://groups.google.com/group/cake-php/subscribe?hl=en>, <mailto:cake-php+subscribe@googlegroups.com>
List-unsubscribe: <http://groups.google.com/group/cake-php/subscribe?hl=en>, <mailto:googlegroups-manage+1003367825667+unsubscribe@googlegroups.com>
Mailing-list: list cake-php@xxxxxxxxxxxxxxxx; contact cake-php+owners@xxxxxxxxxxxxxxxx
Reply-to: cake-php@xxxxxxxxxxxxxxxx
Sender: cake-php@xxxxxxxxxxxxxxxx
El *CakePHP equipo de núcleo es orgulloso de anunciar la disponibilidad inmediata de *CakePHP 
2.3.6[1]. 2.3.6 es un *bugfix liberación para la 2.3 rama de liberación. 
Desde la liberación de 2.3.5 ha habido 64 comete y 17 tickets 
resolvieron. Una lista corta de los cambios puedes esperar es:

* *Datetime comparaciones en *CakeTime es más *accurate ahora.
* *FormHelper Ahora correctamente marca campos con clases de error en formas que 
salvan registros múltiples.
* Controlador::$*modelClass es ahora puesto antes de los componentes son *initialized.
* El archivo que lee características de *CakeEmail es ahora disponible fuera de la 
clase.
* *Email Tacha envolver compatibilidad con *japanese los mensajes ha sido 
mejorados.
* *HtmlHelper::*tag() Ahora regresa el contenido cuándo $*tag es falso.
* *Mocked Los Componentes son ahora habilitado cuándo utilizando 
*ControllerTestCase::*testAction().
* El atributo de tipo ahora puede ser puesto cuándo utilizando *HtmlHelper::guión() y *HtmlHelper::*scriptBlock(). 

* Pasando una variedad vacía  no *reset *SmtpTransport configuración 
*anymore.
* *Xml *parse Errores con *SimpleXmlElement ahora echar *XmlException.
* *FormHelper Ahora imposibilita opciones en *multi-seleccionar elementos ahora.
* *TranslateBehavior Ahora siempre utiliza $nombre en vez de *alias cuando 
actualizando/insertando filas.
* Galleta *expiry tiempo en el futuro distante ahora trabajo en 32mordió sistemas.
* *FileEngine Ahora aclara grupos con diferir prefijos correctamente.

### Revelación de seguridad

Allí era 3 seguridad reciente liberaciones para *CakePHP. Con el objetivo de ser 
abierto y transparente, y aguantando cierto a nuestros compromisos anteriores, abajo 
es descripciones más detalladas de cada problema.

#### *Authentication Forma

*Authentication las formas eran vulnerables a manipulación de consulta #por la adición 
de dato de CORREO adicional.  Formas que no fueron también protegido por 
*SecurityComponent era vulnerable. Si en un *login forma tuviste:

<dato de nombre="de la entrada[Usuario][*username]" texto="de tipo"><*br />
<dato de nombre="de la entrada[Usuario][contraseña]" contraseña="de tipo">

antes de entregar la forma un atacante podría añadir este HTML a la forma:

<dato de nombre="de la entrada[Usuario][*username][OR][*id COMO]" valor="1" tipo="dato">
<de nombre de entrada="escondido[Usuario][*username][OR][*username COMO]" valora="%*admin%" 
el tipo="escondido">

Cuándo la forma fue entregada, las $condiciones utilizadas a *log el usuario dentro tendría el valor de: 

    "variedad" => de OR(
      "*id como" => 1,
      "*username como" => "%*admin%"
    )

Este asunto fue presentado accidentalmente cuándo añadiendo apoyo para *blowfish 
*authentication. El asunto fue resuelto por tratar muy no-*scalar 
condiciones cuándo *authenticating usuarios como fracaso. Este asunto fue corregido 
en [esto 
comete](*https://*github.*com/*cakephp/*cakephp/Comete/*db6*dd18*f865359*fa01*e88*d2691078*dba383*b753*b). 
Gracias a *Magnus *Andersson para el informe y *patch.

#### *Pagination SQL *injection

#Por manipulación del modelo *alias utilizado para ordenar un *pagination URL, 
el SQL arbitrario podría ser ejecutado. Este asunto efectuó el 1.2, 1.3, y 2.*x 
Serie de liberaciones y era accidentalmente presentado hace 5 años. 
*PaginatorComponent Sólo validado el nombre de campo, pero no el modelo *alias. 
Esto significado que cualquier SQL contenido en el *alias sería *inlined como SQL. Un 
URL de proeza del ejemplo parecería:

    
*http://*yourtest.*com/Clase/de índice/de los usuarios:*id%20LÍMITE%2010;elimina%20DE%#20%60contactos%60;.*id

El por encima del URL inyecta un ELIMINAR consulta al *pagination petición que 
sería ejecutado sin *sanitization debido a él siendo una llave de clase. Este 
asunto fue fijado por ignorar el dato de usuario y utilizando el modelo sabido *alias 
en [esto 
comete](*https://*github.*com/*cakephp/*cakephp/Comete/*c327*bdc4*bd309*ce07*fe2*c20#uno2#uno9123*f2165*cae76). 
Gracias a 'Ahmad' para informar el asunto en *lighthouse y ayudando el 
*CakePHP el equipo encuentra un fijar.


#### Sitio de cruz *scripting #por *webroot

Por manipular el URL un atacante podría generar una página de error que 
dejó la ejecución de arbitrario *javascript. El *webroot la propiedad en 
el objeto de petición era *incorrectly confiado en como seguro incluso aunque contuvo 
entrada de usuario. Una proeza de ejemplo podría parecer:

    
*http://ejemplo.*com/Índice.*php/%3*E%22%3*E%3*Cscript%3*Ealert%28%27*hehe%27%29;%3*C/guión%3*E%3*Clink%20*href=%22*HTTP/1.0%22%3*C

La solución a este asunto era a *urlencode el usuario suministrado *webroot 
propiedad cuándo el objeto de petición es creado. Esto hace el URL generado 
salva para utilizar en todos los contextos normales. El fijar para esto fue aplicado en [esto 
comete](*https://*github.*com/*cakephp/*cakephp/Comete/6017*db9*dc8*eb86354*ccf2*dc1*b94#uno9764*adfee422).

Me gustaría a *thank las varias personas que informaron los asuntos de seguridad y asistido 
en conseguirles fijado. también me gustaría a *thank todo del 
*contributors que ayuda mantiene *CakePHP cocina. Sin ti allí sería ningún 
*CakePHP. Descargar un *packaged liberación[2].


### Vínculos

* [1] *http://*cakephp.*org/*changelogs/2.3.6
* [2] *http://*github.*com/*cakephp/*cakephp/*tags

-- 
Gustarnos en *FaceBook *https://www.facebook.com/*CakePHP
nos Encuentra en *Twitter *http://*twitter.*com/*CakePHP

--- 
Recibiste este mensaje porque eres *subscribed al *Google Grupos "*CakePHP" grupo.
A *unsubscribe de este grupo y la parón que recibe *emails de él, enviar un *email a pastel-*php+unsubscribe@xxxxxxxxxxxxxxxx.
A correo a este grupo, envía *email a pastel-php@xxxxxxxxxxxxxxxx.
Visita este grupo en *http://grupos.*google.*com/Pastel/de grupo-*php?*hl=*en.
Para más opciones, visita *https://grupos.*google.*com/Los Grupos/optan_fuera.


The CakePHP core team is proud to announce the immediate availability of 
CakePHP 2.3.6[1]. 2.3.6 is a bugfix release for the 2.3 release branch. 
Since the release of 2.3.5 there have been 64 commits and 17 tickets 
resolved. A short list of the changes you can expect is:

* Datetime comparisons in CakeTime are more accurate now.
* FormHelper now correctly marks fields with error classes on forms that 
save multiple records.
* Controller::$modelClass is now set before components are initialized.
* The file reading features of CakeEmail are now available outside the 
class.
* Email line wrapping compatibility with japanese messages has been 
improved.
* HtmlHelper::tag() now returns the content when $tag is false.
* Mocked components are now enabled when using 
ControllerTestCase::testAction().
* The type attribute can now be set when using HtmlHelper::script() and 
HtmlHelper::scriptBlock().
* Passing an empty array does not reset SmtpTransport's configuration 
anymore.
* Xml parse errors with SimpleXmlElement now throw XmlException.
* FormHelper now disables options in multi-select elements now.
* TranslateBehavior now always uses $name instead of alias when 
updating/inserting rows.
* Cookie expiry times in the distant future now work on 32bit systems.
* FileEngine now clears groups with differing prefixes correctly.

### Security disclosure

There were 3 recent security releases for CakePHP. With the goal of being 
open and transparent, and holding true to our previous commitments, below 
are more detailed descriptions of each problem.

#### Authentication forms

Authentication forms were vulnerable to query manipulation through the 
addition of additional POST data.  Forms that were not also protected by 
SecurityComponent were vulnerable. If in a login form you had:

<input name="data[User][username]" type="text"><br />
<input name="data[User][password]" type="password">

Before submitting the form an attacker could add this HTML to the form:

<input name="data[User][username][OR][id LIKE]" value="1" type="hidden">
<input name="data[User][username][OR][username LIKE]" value="%admin%" 
type="hidden">

When the form was submitted, the $conditions used to log the user in would 
have the value of: 

    "OR" => array(
      "id like" => 1,
      "username like" => "%admin%"
    )

This issue was introduced accidentally when adding support for blowfish 
authentication. The issue was resolved by treating any non-scalar 
conditions when authenticating users as a failure. This issue was corrected 
in [this 
commit](https://github.com/cakephp/cakephp/commit/db6dd18f865359fa01e88d2691078dba383b753b). 
Thanks to Magnus Andersson for the report and patch.

#### Pagination SQL injection

Through manipulation of the model alias used to sort a pagination URL, 
arbitrary SQL could be executed. This issue effected the 1.2, 1.3, and 2.x 
series of releases and was accidentally introduced 5 years ago. 
PaginatorComponent only validated the field name, but not the model alias. 
This meant that any SQL contained in the alias would be inlined as SQL. An 
example exploit URL would look like:

    
http://yourtest.com/users/index/sort:id%20LIMIT%2010;delete%20FROM%20%60contacts%60;.id

The above URL injects a DELETE query into the pagination request which 
would be executed without sanitization due to it being a sort key. This 
issue was fixed by ignoring the user data and using the known model alias 
in [this 
commit](https://github.com/cakephp/cakephp/commit/c327bdc4bd309ce07fe2c20a2a9123f2165cae76). 
Thanks to 'Ahmad' for reporting the issue on lighthouse and helping the 
CakePHP team find a fix.


#### Cross site scripting through webroot

By manipulating the URL an attacker could generate an error page that 
allowed the execution of arbitrary javascript. The webroot property on the 
request object was incorrectly trusted as safe even though it contained 
user input. An example exploit could look like:

    
http://example.com/index.php/%3E%22%3E%3Cscript%3Ealert%28%27hehe%27%29;%3C/script%3E%3Clink%20href=%22HTTP/1.0%22%3C

The solution to this issue was to urlencode the user supplied webroot 
property when the request object is created. This makes generated URL's 
save to use in all normal contexts. The fix for this was applied in [this 
commit](https://github.com/cakephp/cakephp/commit/6017db9dc8eb86354ccf2dc1b94a9764adfee422).

I'd like to thank the various people who reported the security issues and 
assisted in getting them fixed. I'd also like to thank all of the 
contributors who help keep CakePHP cooking. Without you there would be no 
CakePHP. Download a packaged release[2].


### Links

* [1] http://cakephp.org/changelogs/2.3.6
* [2] http://github.com/cakephp/cakephp/tags

-- 
Like Us on FaceBook https://www.facebook.com/CakePHP
Find us on Twitter http://twitter.com/CakePHP

--- 
You received this message because you are subscribed to the Google Groups "CakePHP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to cake-php+unsubscribe@xxxxxxxxxxxxxxxx.
To post to this group, send email to cake-php@xxxxxxxxxxxxxxxx.
Visit this group at http://groups.google.com/group/cake-php?hl=en.
For more options, visit https://groups.google.com/groups/opt_out.


<Anterior por Tema] Tema Actual [Siguiente por Tema>
  • CakePHP 2.3.6 liberó, mark_story <=