From 482c5a82b4d79e7a19614f5a67dc24593046cefd Mon Sep 17 00:00:00 2001 From: Carlos Garcia Gomez Date: Tue, 3 May 2022 20:23:16 +0200 Subject: [PATCH] Escaped html code from model fields to improve security. ------ Escapado el html de los campos del modelo para mejorar la seguridad. --- Core/Model/Subcuenta.php | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/Core/Model/Subcuenta.php b/Core/Model/Subcuenta.php index 21a9e05f07..c1eefe33f9 100644 --- a/Core/Model/Subcuenta.php +++ b/Core/Model/Subcuenta.php @@ -205,8 +205,12 @@ public function test(): bool { $this->saldo = $this->debe - $this->haber; - $this->codcuenta = trim($this->codcuenta); - $this->codsubcuenta = empty($this->idsubcuenta) ? $this->transformCodsubcuenta($this->codsubcuenta) : trim($this->codsubcuenta); + // escape html + foreach (['codcuenta', 'codsubcuenta', 'descripcion', 'codcuentaesp'] as $field) { + $this->{$field} = self::toolBox()::utils()::noHtml($this->{$field}); + } + + $this->codsubcuenta = empty($this->idsubcuenta) ? $this->transformCodsubcuenta($this->codsubcuenta) : $this->codsubcuenta; $this->descripcion = $this->toolBox()->utils()->noHtml($this->descripcion); if (strlen($this->descripcion) < 1 || strlen($this->descripcion) > 255) { $this->toolBox()->i18nLog()->warning( @@ -218,7 +222,7 @@ public function test(): bool // check exercise $exercise = $this->getExercise(); - if (!$this->disableAdditionalTest && strlen($this->codsubcuenta) !== $exercise->longsubcuenta) { + if (false === $this->disableAdditionalTest && strlen($this->codsubcuenta) !== $exercise->longsubcuenta) { $this->toolBox()->i18nLog()->warning('account-length-error', ['%code%' => $this->codsubcuenta]); return false; }