Charly, buen día:
El area de TI de mi cliente me ha enviado un Reporte de Vulnerabilidad de mi app (modharbour+mercury+tweb) con estas observaciones:
-150123 Cookie Does Not Contain The "HTTPOnly" Attribute: El transporte o envío de información a través de cookies (atributos que deben ser agregado en la codificación del sistema).
-150162 Use of JavaScript Library with Known Vulnerability: Uso de una librería de JavaScript desfasada (si la librería por su versión es necesaria para el uso del sistema, se puede desestimar esta alerta)
Sobre el primer punto: Revisando Mercury, encuentro este método:
METHOD SetCookie( cName, cValue, nSecs, cPath, cDomain, lHttps, lOnlyHttp )
El parametro lOnlyHttp esta en false por defecto.
Traerá alguna consecuencia ponerlo en true?
Saludos
Ralph
Cookies - Vulnerabilidad de apps
- charly
- Mensajes: 145
- Registered for: 3 years 6 months
Ralph,
Bon dia Ralph, recuerdo cuando implemente la cookie de poner el parámetro lOnlyHttp, peo no lo llegamos a utilizar. Seria cuestion de mirar un poco mas la estructura de la cookie, adaptarlo y hacer pruebas.
Mirate en mod o mercury el code (que es el mismo
Una cosa a saber es que httponly solo funciona sobre https, (que yo sepa)
EDIT: He mirado un poco y quizas haciendo este cambio en Mercury te puede funcionar:
No lo he podido probar
Estructura
C.
Bon dia Ralph, recuerdo cuando implemente la cookie de poner el parámetro lOnlyHttp, peo no lo llegamos a utilizar. Seria cuestion de mirar un poco mas la estructura de la cookie, adaptarlo y hacer pruebas.
Mirate en mod o mercury el code (que es el mismo
Código: Seleccionar todo
METHOD SetCookie( cName, cValue, nSecs, cPath, cDomain, lHttps, lOnlyHttp ) CLASS TResponse
LOCAL cCookie := ''
__defaultNIL( @cName , '' )
__defaultNIL( @cValue , '' )
__defaultNIL( @nSecs , 3600 ) //
__defaultNIL( @cPath , '/' )
__defaultNIL( @cDomain , '' )
__defaultNIL( @lHttps , .F. )
__defaultNIL( @lOnlyHttp , .F. )
// Validacion de parámetros
// Montamos la cookie
cCookie += cName + '=' + cValue + ';'
cCookie += 'expires=' + CookieExpire( nSecs ) + ';'
cCookie += 'path=' + cPath + ';'
cCookie += 'domain=' + cDomain + ';'
// Pendiente valores logicos de https y OnlyHttp
// Envio de la Cookie
//AP_HeadersOutSet( "Set-Cookie", cCookie )
::SetHeader( "Set-Cookie", cCookie )
RETU NIL
EDIT: He mirado un poco y quizas haciendo este cambio en Mercury te puede funcionar:
Código: Seleccionar todo
cCookie += 'Secure; HttpOnly;'
Estructura
Código: Seleccionar todo
Set-Cookie: <cookie-name>=<cookie-value>
Set-Cookie: <cookie-name>=<cookie-value>; Expires=<date>
Set-Cookie: <cookie-name>=<cookie-value>; Max-Age=<non-zero-digit>
Set-Cookie: <cookie-name>=<cookie-value>; Domain=<domain-value>
Set-Cookie: <cookie-name>=<cookie-value>; Path=<path-value>
Set-Cookie: <cookie-name>=<cookie-value>; Secure
Set-Cookie: <cookie-name>=<cookie-value>; HttpOnly
Set-Cookie: <cookie-name>=<cookie-value>; SameSite=Strict
Set-Cookie: <cookie-name>=<cookie-value>; SameSite=Lax
Set-Cookie: <cookie-name>=<cookie-value>; SameSite=None
C.
Salutacions, saludos, regards.
Charly
"...programar es fácil, hacer programas es difícil..."
https://httpd2.blogspot.com/
https://forum.modharbour.app
Charly
"...programar es fácil, hacer programas es difícil..."
https://httpd2.blogspot.com/
https://forum.modharbour.app