From 551a62597851aa1a6dbc87383f87a2082653f44e Mon Sep 17 00:00:00 2001 From: Daniel Serrano Date: Fri, 31 Jul 2026 11:29:29 +0200 Subject: [PATCH] Liferay: add cookie + HTML signals for response-first detection Liferay currently matches only the Liferay-Portal response header and the window.Liferay JS global. Hardened / CDN-fronted installs strip the Liferay-Portal header, and response-first (non-headless) analysis can't observe window.Liferay, so Liferay goes undetected despite unmistakable static markers. Add unique static signals (keeping header/JS + version): - html: Liferay JS API namespaces (Liferay.Util/Language/ThemeDisplay/AUI) and the Liferay portlet DOM id prefix (id="_com_liferay_). - cookies: GUEST_LANGUAGE_ID; COOKIE_SUPPORT at confidence:50 (generic name). Verified on a real hardened install (www.javeriana.edu.co): no Liferay-Portal header, but Liferay.AUI x19, id="_com_liferay_ x519, and a COOKIE_SUPPORT cookie. --- src/technologies/l.json | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/technologies/l.json b/src/technologies/l.json index a392ef87b..5b5953a4a 100644 --- a/src/technologies/l.json +++ b/src/technologies/l.json @@ -753,11 +753,19 @@ "cats": [ 1 ], + "cookies": { + "GUEST_LANGUAGE_ID": "", + "COOKIE_SUPPORT": "\\;confidence:50" + }, "cpe": "cpe:2.3:a:liferay:liferay_portal:*:*:*:*:*:*:*:*", "description": "Liferay is an open-source company that provides free documentation and paid professional service to users of its software.", "headers": { "Liferay-Portal": "[a-z\\s]+([\\d.]+)\\;version:\\1" }, + "html": [ + "Liferay\\.(?:Util|Language|ThemeDisplay|AUI)", + "id=\"_com_liferay_" + ], "icon": "Liferay.svg", "implies": "Java", "js": {