Fixed "scripts" and "#" bugs, Added AngularJS, GX WebManager, Google Code Prettify, Google Tag Manager, Google Web Toolkit, Jirafe, Marketo, New Relic, OpenText Web Solutions, SDL Tridion, Sphinx, Tealeaf

main
Elbert Alias 12 years ago
parent 578979d6ee
commit 3a0e3aaf41

Binary file not shown.

Before

Width:  |  Height:  |  Size: 428 B

After

Width:  |  Height:  |  Size: 497 B

@ -92,6 +92,8 @@ var wappalyzer = (function() {
analyze: function(hostname, url, data) { analyze: function(hostname, url, data) {
w.log('w.analyze'); w.log('w.analyze');
url = url.split('#')[0];
data.url = url; data.url = url;
if ( w.apps == null || w.categories == null ) { if ( w.apps == null || w.categories == null ) {
@ -156,7 +158,7 @@ var wappalyzer = (function() {
} }
regex = new RegExp(w.apps[app][type].replace('/', '\\\/'), 'i'); regex = new RegExp(w.apps[app][type].replace('/', '\\\/'), 'i');
regexScript = new RegExp('<script[^>]+src=("|\')([^"\']+)\1', 'ig'); regexScript = new RegExp('<script[^>]+src=("|\')([^"\']+)', 'ig');
profiler.regexCount ++; profiler.regexCount ++;
@ -266,7 +268,7 @@ var wappalyzer = (function() {
} }
} }
w.log(apps.length + ' apps detected: ' + apps.join(', ')); w.log(apps.length + ' apps detected: ' + apps.join(', ') + ' on ' + url);
// Keep history of detected apps // Keep history of detected apps
var i, app, match; var i, app, match;

@ -30,7 +30,8 @@
"28": "operating-systems", "28": "operating-systems",
"29": "search-engines", "29": "search-engines",
"30": "web-mail", "30": "web-mail",
"31": "cdn" "31": "cdn",
"32": "marketing-automation"
}, },
"apps": { "apps": {
"1C-Bitrix": { "1C-Bitrix": {
@ -96,6 +97,10 @@
"env": "amp_js_init", "env": "amp_js_init",
"implies": [ "PHP" ] "implies": [ "PHP" ]
}, },
"AngularJS": {
"cats": [ 12 ],
"env": "^angular$"
},
"AOLserver": { "AOLserver": {
"cats": [ 22 ], "cats": [ 22 ],
"headers": { "Server": "AOLserver" } }, "headers": { "Server": "AOLserver" } },
@ -225,6 +230,10 @@
"CFML": { "CFML": {
"cats": [ 27 ] "cats": [ 27 ]
}, },
"CacheFly": {
"cats": [ "31" ],
"headers": { "Server": "^CFS ", "X-CF1": ".+", "X-CF2": ".+" }
},
"Chameleon": { "Chameleon": {
"cats": [ 1 ], "cats": [ 1 ],
"meta": { "generator": "chameleon-cms" }, "meta": { "generator": "chameleon-cms" },
@ -468,8 +477,9 @@
"implies": [ "PHP" ] "implies": [ "PHP" ]
}, },
"DotNetNuke": { "DotNetNuke": {
"cats": [ 1 ], "cats": [ "1" ],
"meta": { "generator": "DotNetNuke" }, "meta": { "generator": "DotNetNuke" },
"headers": { "X-Compressed-By": "DotNetNuke-Compression", "Set-Cookie": "DotNetNukeAnonymous=.+" },
"html": "<!-- by DotNetNuke Corporation", "html": "<!-- by DotNetNuke Corporation",
"env": "^DotNetNuke", "env": "^DotNetNuke",
"implies": [ "Microsoft ASP.NET" ] "implies": [ "Microsoft ASP.NET" ]
@ -506,6 +516,10 @@
"script": "e107\\.js", "script": "e107\\.js",
"implies": [ "PHP"] "implies": [ "PHP"]
}, },
"EdgeCast": {
"cats": [ "31" ],
"headers": { "Server": "^ECS " }
},
"EPiServer": { "EPiServer": {
"cats": [ 1 ], "cats": [ 1 ],
"meta": { "generator": "EPiServer" }, "meta": { "generator": "EPiServer" },
@ -539,7 +553,7 @@
"eZ Publish": { "eZ Publish": {
"cats": [ 1, 6 ], "cats": [ 1, 6 ],
"meta": { "generator": "eZ Publish" }, "meta": { "generator": "eZ Publish" },
"headers": { "X-Powered-By": "^eZ Publish$" }, "headers": { "X-Powered-By": "^eZ Publish" },
"implies": [ "PHP" ] "implies": [ "PHP" ]
}, },
"Fact Finder": { "Fact Finder": {
@ -622,6 +636,10 @@
"cats": [ 22 ], "cats": [ 22 ],
"headers": { "Server": "Google Frontend" } "headers": { "Server": "Google Frontend" }
}, },
"Google Code Prettify": {
"cats": [ 19 ],
"env": "^prettyPrint$"
},
"Google Font API": { "Google Font API": {
"cats": [ 17 ], "cats": [ 17 ],
"script": "googleapis.com/.+webfont", "script": "googleapis.com/.+webfont",
@ -636,6 +654,14 @@
"cats": [ 1 ], "cats": [ 1 ],
"url": "sites.google.com" "url": "sites.google.com"
}, },
"Google Tag Manager": {
"cats": [ 19 ],
"html": "//www\\.googletagmanager\\.com/ns\\.html[^>]+></iframe>"
},
"Google Web Toolkit": {
"cats": [ 18 ],
"env": "^__gwt_"
},
"GoStats": { "GoStats": {
"cats": [ 10 ], "cats": [ 10 ],
"env": "^_go(stats|_track)" "env": "^_go(stats|_track)"
@ -653,6 +679,10 @@
"html": "gravityInsightsParams\\.site_guid = '", "html": "gravityInsightsParams\\.site_guid = '",
"env": "^GravityInsights$" "env": "^GravityInsights$"
}, },
"GX WebManager": {
"cats": [ 1 ],
"meta": { "generator": "GX WebManager" }
},
"Handlebars": { "Handlebars": {
"cats": [ 12 ], "cats": [ 12 ],
"env": "^Handlebars$" "env": "^Handlebars$"
@ -672,7 +702,7 @@
}, },
"Hybris": { "Hybris": {
"cats": [ 6 ], "cats": [ 6 ],
"html": "/sys_master/|/hybr/", "html": "(/sys_master/|/hybr/|/_ui/desktop/)",
"headers": { "Set-Cookie": "_hybris" }, "headers": { "Set-Cookie": "_hybris" },
"implies": [ "Java" ] "implies": [ "Java" ]
}, },
@ -730,7 +760,7 @@
}, },
"iWeb": { "iWeb": {
"cats": [ 20 ], "cats": [ 20 ],
"meta": { "generator": "iWeb" } "meta": { "generator": "^iWeb" }
}, },
"Jalios": { "Jalios": {
"cats": [ 1 ], "cats": [ 1 ],
@ -745,6 +775,11 @@
"script": "jit.*\\.js", "script": "jit.*\\.js",
"env": "^\\$jit$" "env": "^\\$jit$"
}, },
"Jirafe": {
"cats": [ 10, 32 ],
"script": "/jirafe\\.js",
"env": "^jirafe$"
},
"Jo": { "Jo": {
"cats": [ 26, 12 ], "cats": [ 26, 12 ],
"env": "^jo(Cache|DOM|Event)$" "env": "^jo(Cache|DOM|Event)$"
@ -758,7 +793,7 @@
"cats": [ 1 ], "cats": [ 1 ],
"url": "option=com_", "url": "option=com_",
"meta": { "generator": "Joomla" }, "meta": { "generator": "Joomla" },
"html": "(<!-- JoomlaWorks \\\"K2\\\"|<[^>]+(feed|components)/com_)", "html": "(<div[^>]+id=\\\"wrapper_r\\\"|<[^>]+(feed|components)/com_|<table[^>]+class=\\\"pill\\\")",
"headers": { "X-Content-Encoded-By": "Joomla" }, "headers": { "X-Content-Encoded-By": "Joomla" },
"env": "^(jcomments)$" "env": "^(jcomments)$"
}, },
@ -878,6 +913,11 @@
"cats": [ 13 ], "cats": [ 13 ],
"html": "<img[^>]+ alt=\\\"Powered by Mantis Bugtracker" "html": "<img[^>]+ alt=\\\"Powered by Mantis Bugtracker"
}, },
"Marketo": {
"cats": [ 32 ],
"script": "munchkin\\.marketo\\.net/munchkin\\.js",
"env": "^Munchkin$"
},
"MaxSite CMS": { "MaxSite CMS": {
"cats": [ 1 ], "cats": [ 1 ],
"meta": { "generator": "MaxSite CMS" } "meta": { "generator": "MaxSite CMS" }
@ -999,6 +1039,11 @@
"script": "netmonitor\\.fi/nmtracker\\.js", "script": "netmonitor\\.fi/nmtracker\\.js",
"env": "^netmonitor" "env": "^netmonitor"
}, },
"New Relic": {
"cats": [ 10 ],
"html": "<script[^>]+>var NREUMQ=NREUMQ",
"env": "^NREUMQ$"
},
"Nginx": { "Nginx": {
"cats": [ 22 ], "cats": [ 22 ],
"headers": { "Server": "nginx" } "headers": { "Server": "nginx" }
@ -1014,13 +1059,19 @@
"cats": [ 6 ], "cats": [ 6 ],
"html": "(<!--Powered by nopCommerce|Powered by: <a[^>]+nopcommerce)" "html": "(<!--Powered by nopCommerce|Powered by: <a[^>]+nopcommerce)"
}, },
"Open Web Analytics": {
"cats": [ 10 ],
"html": "<!-- (Start|End) Open Web Analytics Tracker -->",
"env": "^_?owa_"
},
"OneStat": { "OneStat": {
"cats": [ 10 ], "cats": [ 10 ],
"html": "var p=\\\"http\\\"\\+\\(d\\.URL\\.indexOf\\('https:'\\)==0\\?'s':''\\)\\+\\\"://stat\\.onestat\\.com/stat\\.aspx\\?tagver" "html": "var p=\\\"http\\\"\\+\\(d\\.URL\\.indexOf\\('https:'\\)==0\\?'s':''\\)\\+\\\"://stat\\.onestat\\.com/stat\\.aspx\\?tagver"
}, },
"OpenCart": { "OpenCart": {
"cats": [ 6 ], "cats": [ 6 ],
"html": "(Powered By <a href=\\\"[^>]+OpenCart|route = getURLVar\\(\\\"route)" "html": "(Powered By <a href=\\\"[^>]+OpenCart|route = getURLVar\\(\\\"route|OpenCart is open source software and you are free to remove the powered by OpenCart if you want)",
"implies": [ "PHP" ]
}, },
"openEngine": { "openEngine": {
"cats": [ 1 ], "cats": [ 1 ],
@ -1040,10 +1091,10 @@
"cats": [ 1 ], "cats": [ 1 ],
"headers": { "X-Powered-By": "OpenNemas" } "headers": { "X-Powered-By": "OpenNemas" }
}, },
"Open Web Analytics": { "OpenText Web Solutions": {
"cats": [ 10 ], "cats": [ 1 ],
"html": "<!-- (Start|End) Open Web Analytics Tracker -->", "html": "<!--[^>]+published by Open Text Web Solutions",
"env": "^_?owa_" "implies": [ "Microsoft ASP.NET" ]
}, },
"Optimizely": { "Optimizely": {
"cats": [ 10 ], "cats": [ 10 ],
@ -1132,6 +1183,11 @@
"cats": [ 3 ], "cats": [ 3 ],
"html": "(<title>phpPgAdmin</title>|<span class=\\\"appname\\\">phpPgAdmin)" "html": "(<title>phpPgAdmin</title>|<span class=\\\"appname\\\">phpPgAdmin)"
}, },
"phpSQLiteCMS": {
"cats": [ "1" ],
"meta": { "generator": "^phpSQLiteCMS" },
"implies": [ "PHP" ]
},
"Piwik": { "Piwik": {
"cats": [ 10 ], "cats": [ 10 ],
"html": "var piwikTracker = Piwik\\.getTracker\\(", "html": "var piwikTracker = Piwik\\.getTracker\\(",
@ -1286,6 +1342,10 @@
"script": "(scriptaculous|protoaculous)\\.js", "script": "(scriptaculous|protoaculous)\\.js",
"env": "^Scriptaculous$" "env": "^Scriptaculous$"
}, },
"SDL Tridion": {
"cats": [ 1 ],
"html": "mfinfo\\.application='Tridion"
},
"Sencha Touch": { "Sencha Touch": {
"cats": [ 26, 12 ], "cats": [ 26, 12 ],
"script": "sencha-touch.*\\.js" "script": "sencha-touch.*\\.js"
@ -1308,7 +1368,6 @@
"cats": [ 6 ], "cats": [ 6 ],
"meta": { "application-name": "Shopware" }, "meta": { "application-name": "Shopware" },
"script": "shopware\\.js", "script": "shopware\\.js",
"env": "^Shopify$",
"implies": [ "PHP" ] "implies": [ "PHP" ]
}, },
"sIFR": { "sIFR": {
@ -1348,7 +1407,8 @@
}, },
"Snoobi": { "Snoobi": {
"cats": [ 10 ], "cats": [ 10 ],
"script": "snoobi\\.com/snoop\\.php" "script": "snoobi\\.com/snoop\\.php",
"env": "^snoobi$"
}, },
"SOBI 2": { "SOBI 2": {
"cats": [ 19 ], "cats": [ 19 ],
@ -1360,8 +1420,12 @@
}, },
"SPDY": { "SPDY": {
"cats": [ 19 ], "cats": [ 19 ],
"headers": { "headers": { "X-Firefox-Spdy": ".*" }
"X-Firefox-Spdy": ".*" } },
"Sphinx": {
"cats": [ 4 ],
"env": "^DOCUMENTATION_OPTIONS$",
"implies": [ "Python" ]
}, },
"SPIP": { "SPIP": {
"cats": [ 1 ], "cats": [ 1 ],
@ -1434,6 +1498,10 @@
"cats": [ 24 ], "cats": [ 24 ],
"env": "^tinyMCE$" "env": "^tinyMCE$"
}, },
"Tealeaf": {
"cats": [ 10 ],
"env": "^TeaLeaf$"
},
"TomatoCart": { "TomatoCart": {
"cats": [ 6 ], "cats": [ 6 ],
"meta": { "generator": "TomatoCart" }, "meta": { "generator": "TomatoCart" },
@ -1585,7 +1653,7 @@
}, },
"WebPublisher": { "WebPublisher": {
"cats": [ 1 ], "cats": [ 1 ],
"meta": { "generator": "WEB|Publisher" } "meta": { "generator": "WEB\\|Publisher" }
}, },
"Websale": { "Websale": {
"cats": [ 6 ], "cats": [ 6 ],

@ -42,5 +42,6 @@
"categoryName28": { "message": "Operating System" }, "categoryName28": { "message": "Operating System" },
"categoryName29": { "message": "Search Engine" }, "categoryName29": { "message": "Search Engine" },
"categoryName30": { "message": "Web Mail" }, "categoryName30": { "message": "Web Mail" },
"categoryName31": { "message": "CDN" } "categoryName31": { "message": "CDN" },
"categoryName32": { "message": "Marketing Automation" }
} }

@ -30,7 +30,8 @@
"28": "operating-systems", "28": "operating-systems",
"29": "search-engines", "29": "search-engines",
"30": "web-mail", "30": "web-mail",
"31": "cdn" "31": "cdn",
"32": "marketing-automation"
}, },
"apps": { "apps": {
"1C-Bitrix": { "1C-Bitrix": {
@ -96,6 +97,10 @@
"env": "amp_js_init", "env": "amp_js_init",
"implies": [ "PHP" ] "implies": [ "PHP" ]
}, },
"AngularJS": {
"cats": [ 12 ],
"env": "^angular$"
},
"AOLserver": { "AOLserver": {
"cats": [ 22 ], "cats": [ 22 ],
"headers": { "Server": "AOLserver" } }, "headers": { "Server": "AOLserver" } },
@ -225,6 +230,10 @@
"CFML": { "CFML": {
"cats": [ 27 ] "cats": [ 27 ]
}, },
"CacheFly": {
"cats": [ "31" ],
"headers": { "Server": "^CFS ", "X-CF1": ".+", "X-CF2": ".+" }
},
"Chameleon": { "Chameleon": {
"cats": [ 1 ], "cats": [ 1 ],
"meta": { "generator": "chameleon-cms" }, "meta": { "generator": "chameleon-cms" },
@ -468,8 +477,9 @@
"implies": [ "PHP" ] "implies": [ "PHP" ]
}, },
"DotNetNuke": { "DotNetNuke": {
"cats": [ 1 ], "cats": [ "1" ],
"meta": { "generator": "DotNetNuke" }, "meta": { "generator": "DotNetNuke" },
"headers": { "X-Compressed-By": "DotNetNuke-Compression", "Set-Cookie": "DotNetNukeAnonymous=.+" },
"html": "<!-- by DotNetNuke Corporation", "html": "<!-- by DotNetNuke Corporation",
"env": "^DotNetNuke", "env": "^DotNetNuke",
"implies": [ "Microsoft ASP.NET" ] "implies": [ "Microsoft ASP.NET" ]
@ -506,6 +516,10 @@
"script": "e107\\.js", "script": "e107\\.js",
"implies": [ "PHP"] "implies": [ "PHP"]
}, },
"EdgeCast": {
"cats": [ "31" ],
"headers": { "Server": "^ECS " }
},
"EPiServer": { "EPiServer": {
"cats": [ 1 ], "cats": [ 1 ],
"meta": { "generator": "EPiServer" }, "meta": { "generator": "EPiServer" },
@ -539,7 +553,7 @@
"eZ Publish": { "eZ Publish": {
"cats": [ 1, 6 ], "cats": [ 1, 6 ],
"meta": { "generator": "eZ Publish" }, "meta": { "generator": "eZ Publish" },
"headers": { "X-Powered-By": "^eZ Publish$" }, "headers": { "X-Powered-By": "^eZ Publish" },
"implies": [ "PHP" ] "implies": [ "PHP" ]
}, },
"Fact Finder": { "Fact Finder": {
@ -622,6 +636,10 @@
"cats": [ 22 ], "cats": [ 22 ],
"headers": { "Server": "Google Frontend" } "headers": { "Server": "Google Frontend" }
}, },
"Google Code Prettify": {
"cats": [ 19 ],
"env": "^prettyPrint$"
},
"Google Font API": { "Google Font API": {
"cats": [ 17 ], "cats": [ 17 ],
"script": "googleapis.com/.+webfont", "script": "googleapis.com/.+webfont",
@ -636,6 +654,14 @@
"cats": [ 1 ], "cats": [ 1 ],
"url": "sites.google.com" "url": "sites.google.com"
}, },
"Google Tag Manager": {
"cats": [ 19 ],
"html": "//www\\.googletagmanager\\.com/ns\\.html[^>]+></iframe>"
},
"Google Web Toolkit": {
"cats": [ 18 ],
"env": "^__gwt_"
},
"GoStats": { "GoStats": {
"cats": [ 10 ], "cats": [ 10 ],
"env": "^_go(stats|_track)" "env": "^_go(stats|_track)"
@ -653,6 +679,10 @@
"html": "gravityInsightsParams\\.site_guid = '", "html": "gravityInsightsParams\\.site_guid = '",
"env": "^GravityInsights$" "env": "^GravityInsights$"
}, },
"GX WebManager": {
"cats": [ 1 ],
"meta": { "generator": "GX WebManager" }
},
"Handlebars": { "Handlebars": {
"cats": [ 12 ], "cats": [ 12 ],
"env": "^Handlebars$" "env": "^Handlebars$"
@ -672,7 +702,7 @@
}, },
"Hybris": { "Hybris": {
"cats": [ 6 ], "cats": [ 6 ],
"html": "/sys_master/|/hybr/", "html": "(/sys_master/|/hybr/|/_ui/desktop/)",
"headers": { "Set-Cookie": "_hybris" }, "headers": { "Set-Cookie": "_hybris" },
"implies": [ "Java" ] "implies": [ "Java" ]
}, },
@ -730,7 +760,7 @@
}, },
"iWeb": { "iWeb": {
"cats": [ 20 ], "cats": [ 20 ],
"meta": { "generator": "iWeb" } "meta": { "generator": "^iWeb" }
}, },
"Jalios": { "Jalios": {
"cats": [ 1 ], "cats": [ 1 ],
@ -745,6 +775,11 @@
"script": "jit.*\\.js", "script": "jit.*\\.js",
"env": "^\\$jit$" "env": "^\\$jit$"
}, },
"Jirafe": {
"cats": [ 10, 32 ],
"script": "/jirafe\\.js",
"env": "^jirafe$"
},
"Jo": { "Jo": {
"cats": [ 26, 12 ], "cats": [ 26, 12 ],
"env": "^jo(Cache|DOM|Event)$" "env": "^jo(Cache|DOM|Event)$"
@ -758,7 +793,7 @@
"cats": [ 1 ], "cats": [ 1 ],
"url": "option=com_", "url": "option=com_",
"meta": { "generator": "Joomla" }, "meta": { "generator": "Joomla" },
"html": "(<!-- JoomlaWorks \\\"K2\\\"|<[^>]+(feed|components)/com_)", "html": "(<div[^>]+id=\\\"wrapper_r\\\"|<[^>]+(feed|components)/com_|<table[^>]+class=\\\"pill\\\")",
"headers": { "X-Content-Encoded-By": "Joomla" }, "headers": { "X-Content-Encoded-By": "Joomla" },
"env": "^(jcomments)$" "env": "^(jcomments)$"
}, },
@ -878,6 +913,11 @@
"cats": [ 13 ], "cats": [ 13 ],
"html": "<img[^>]+ alt=\\\"Powered by Mantis Bugtracker" "html": "<img[^>]+ alt=\\\"Powered by Mantis Bugtracker"
}, },
"Marketo": {
"cats": [ 32 ],
"script": "munchkin\\.marketo\\.net/munchkin\\.js",
"env": "^Munchkin$"
},
"MaxSite CMS": { "MaxSite CMS": {
"cats": [ 1 ], "cats": [ 1 ],
"meta": { "generator": "MaxSite CMS" } "meta": { "generator": "MaxSite CMS" }
@ -999,6 +1039,11 @@
"script": "netmonitor\\.fi/nmtracker\\.js", "script": "netmonitor\\.fi/nmtracker\\.js",
"env": "^netmonitor" "env": "^netmonitor"
}, },
"New Relic": {
"cats": [ 10 ],
"html": "<script[^>]+>var NREUMQ=NREUMQ",
"env": "^NREUMQ$"
},
"Nginx": { "Nginx": {
"cats": [ 22 ], "cats": [ 22 ],
"headers": { "Server": "nginx" } "headers": { "Server": "nginx" }
@ -1014,13 +1059,19 @@
"cats": [ 6 ], "cats": [ 6 ],
"html": "(<!--Powered by nopCommerce|Powered by: <a[^>]+nopcommerce)" "html": "(<!--Powered by nopCommerce|Powered by: <a[^>]+nopcommerce)"
}, },
"Open Web Analytics": {
"cats": [ 10 ],
"html": "<!-- (Start|End) Open Web Analytics Tracker -->",
"env": "^_?owa_"
},
"OneStat": { "OneStat": {
"cats": [ 10 ], "cats": [ 10 ],
"html": "var p=\\\"http\\\"\\+\\(d\\.URL\\.indexOf\\('https:'\\)==0\\?'s':''\\)\\+\\\"://stat\\.onestat\\.com/stat\\.aspx\\?tagver" "html": "var p=\\\"http\\\"\\+\\(d\\.URL\\.indexOf\\('https:'\\)==0\\?'s':''\\)\\+\\\"://stat\\.onestat\\.com/stat\\.aspx\\?tagver"
}, },
"OpenCart": { "OpenCart": {
"cats": [ 6 ], "cats": [ 6 ],
"html": "(Powered By <a href=\\\"[^>]+OpenCart|route = getURLVar\\(\\\"route)" "html": "(Powered By <a href=\\\"[^>]+OpenCart|route = getURLVar\\(\\\"route|OpenCart is open source software and you are free to remove the powered by OpenCart if you want)",
"implies": [ "PHP" ]
}, },
"openEngine": { "openEngine": {
"cats": [ 1 ], "cats": [ 1 ],
@ -1040,10 +1091,10 @@
"cats": [ 1 ], "cats": [ 1 ],
"headers": { "X-Powered-By": "OpenNemas" } "headers": { "X-Powered-By": "OpenNemas" }
}, },
"Open Web Analytics": { "OpenText Web Solutions": {
"cats": [ 10 ], "cats": [ 1 ],
"html": "<!-- (Start|End) Open Web Analytics Tracker -->", "html": "<!--[^>]+published by Open Text Web Solutions",
"env": "^_?owa_" "implies": [ "Microsoft ASP.NET" ]
}, },
"Optimizely": { "Optimizely": {
"cats": [ 10 ], "cats": [ 10 ],
@ -1132,6 +1183,11 @@
"cats": [ 3 ], "cats": [ 3 ],
"html": "(<title>phpPgAdmin</title>|<span class=\\\"appname\\\">phpPgAdmin)" "html": "(<title>phpPgAdmin</title>|<span class=\\\"appname\\\">phpPgAdmin)"
}, },
"phpSQLiteCMS": {
"cats": [ "1" ],
"meta": { "generator": "^phpSQLiteCMS" },
"implies": [ "PHP" ]
},
"Piwik": { "Piwik": {
"cats": [ 10 ], "cats": [ 10 ],
"html": "var piwikTracker = Piwik\\.getTracker\\(", "html": "var piwikTracker = Piwik\\.getTracker\\(",
@ -1286,6 +1342,10 @@
"script": "(scriptaculous|protoaculous)\\.js", "script": "(scriptaculous|protoaculous)\\.js",
"env": "^Scriptaculous$" "env": "^Scriptaculous$"
}, },
"SDL Tridion": {
"cats": [ 1 ],
"html": "mfinfo\\.application='Tridion"
},
"Sencha Touch": { "Sencha Touch": {
"cats": [ 26, 12 ], "cats": [ 26, 12 ],
"script": "sencha-touch.*\\.js" "script": "sencha-touch.*\\.js"
@ -1308,7 +1368,6 @@
"cats": [ 6 ], "cats": [ 6 ],
"meta": { "application-name": "Shopware" }, "meta": { "application-name": "Shopware" },
"script": "shopware\\.js", "script": "shopware\\.js",
"env": "^Shopify$",
"implies": [ "PHP" ] "implies": [ "PHP" ]
}, },
"sIFR": { "sIFR": {
@ -1348,7 +1407,8 @@
}, },
"Snoobi": { "Snoobi": {
"cats": [ 10 ], "cats": [ 10 ],
"script": "snoobi\\.com/snoop\\.php" "script": "snoobi\\.com/snoop\\.php",
"env": "^snoobi$"
}, },
"SOBI 2": { "SOBI 2": {
"cats": [ 19 ], "cats": [ 19 ],
@ -1360,8 +1420,12 @@
}, },
"SPDY": { "SPDY": {
"cats": [ 19 ], "cats": [ 19 ],
"headers": { "headers": { "X-Firefox-Spdy": ".*" }
"X-Firefox-Spdy": ".*" } },
"Sphinx": {
"cats": [ 4 ],
"env": "^DOCUMENTATION_OPTIONS$",
"implies": [ "Python" ]
}, },
"SPIP": { "SPIP": {
"cats": [ 1 ], "cats": [ 1 ],
@ -1434,6 +1498,10 @@
"cats": [ 24 ], "cats": [ 24 ],
"env": "^tinyMCE$" "env": "^tinyMCE$"
}, },
"Tealeaf": {
"cats": [ 10 ],
"env": "^TeaLeaf$"
},
"TomatoCart": { "TomatoCart": {
"cats": [ 6 ], "cats": [ 6 ],
"meta": { "generator": "TomatoCart" }, "meta": { "generator": "TomatoCart" },
@ -1585,7 +1653,7 @@
}, },
"WebPublisher": { "WebPublisher": {
"cats": [ 1 ], "cats": [ 1 ],
"meta": { "generator": "WEB|Publisher" } "meta": { "generator": "WEB\\|Publisher" }
}, },
"Websale": { "Websale": {
"cats": [ 6 ], "cats": [ 6 ],

Binary file not shown.

Before

Width:  |  Height:  |  Size: 428 B

After

Width:  |  Height:  |  Size: 497 B

@ -206,6 +206,7 @@
15, // Comment System 15, // Comment System
20, // Editor 20, // Editor
10, // Analytics 10, // Analytics
32, // Marketing Automation
31, // CDN 31, // CDN
23, // Cache Tool 23, // Cache Tool
17, // Font Script 17, // Font Script

@ -92,6 +92,8 @@ var wappalyzer = (function() {
analyze: function(hostname, url, data) { analyze: function(hostname, url, data) {
w.log('w.analyze'); w.log('w.analyze');
url = url.split('#')[0];
data.url = url; data.url = url;
if ( w.apps == null || w.categories == null ) { if ( w.apps == null || w.categories == null ) {
@ -156,7 +158,7 @@ var wappalyzer = (function() {
} }
regex = new RegExp(w.apps[app][type].replace('/', '\\\/'), 'i'); regex = new RegExp(w.apps[app][type].replace('/', '\\\/'), 'i');
regexScript = new RegExp('<script[^>]+src=("|\')([^"\']+)\1', 'ig'); regexScript = new RegExp('<script[^>]+src=("|\')([^"\']+)', 'ig');
profiler.regexCount ++; profiler.regexCount ++;
@ -266,7 +268,7 @@ var wappalyzer = (function() {
} }
} }
w.log(apps.length + ' apps detected: ' + apps.join(', ')); w.log(apps.length + ' apps detected: ' + apps.join(', ') + ' on ' + url);
// Keep history of detected apps // Keep history of detected apps
var i, app, match; var i, app, match;

@ -1,7 +1,7 @@
{ "name": "Wappalyzer", { "name": "Wappalyzer",
"homepage_url": "http://wappalyzer.com?utm_source=chrome&utm_medium=extension&utm_campaign=extensions", "homepage_url": "http://wappalyzer.com?utm_source=chrome&utm_medium=extension&utm_campaign=extensions",
"description": "Identifies software on the web", "description": "Identifies software on the web",
"version": "2.14", "version": "2.15",
"default_locale": "en", "default_locale": "en",
"manifest_version": 2, "manifest_version": 2,
"icons": { "icons": {

@ -30,7 +30,8 @@
"28": "operating-systems", "28": "operating-systems",
"29": "search-engines", "29": "search-engines",
"30": "web-mail", "30": "web-mail",
"31": "cdn" "31": "cdn",
"32": "marketing-automation"
}, },
"apps": { "apps": {
"1C-Bitrix": { "1C-Bitrix": {
@ -96,6 +97,10 @@
"env": "amp_js_init", "env": "amp_js_init",
"implies": [ "PHP" ] "implies": [ "PHP" ]
}, },
"AngularJS": {
"cats": [ 12 ],
"env": "^angular$"
},
"AOLserver": { "AOLserver": {
"cats": [ 22 ], "cats": [ 22 ],
"headers": { "Server": "AOLserver" } }, "headers": { "Server": "AOLserver" } },
@ -225,6 +230,10 @@
"CFML": { "CFML": {
"cats": [ 27 ] "cats": [ 27 ]
}, },
"CacheFly": {
"cats": [ "31" ],
"headers": { "Server": "^CFS ", "X-CF1": ".+", "X-CF2": ".+" }
},
"Chameleon": { "Chameleon": {
"cats": [ 1 ], "cats": [ 1 ],
"meta": { "generator": "chameleon-cms" }, "meta": { "generator": "chameleon-cms" },
@ -468,8 +477,9 @@
"implies": [ "PHP" ] "implies": [ "PHP" ]
}, },
"DotNetNuke": { "DotNetNuke": {
"cats": [ 1 ], "cats": [ "1" ],
"meta": { "generator": "DotNetNuke" }, "meta": { "generator": "DotNetNuke" },
"headers": { "X-Compressed-By": "DotNetNuke-Compression", "Set-Cookie": "DotNetNukeAnonymous=.+" },
"html": "<!-- by DotNetNuke Corporation", "html": "<!-- by DotNetNuke Corporation",
"env": "^DotNetNuke", "env": "^DotNetNuke",
"implies": [ "Microsoft ASP.NET" ] "implies": [ "Microsoft ASP.NET" ]
@ -506,6 +516,10 @@
"script": "e107\\.js", "script": "e107\\.js",
"implies": [ "PHP"] "implies": [ "PHP"]
}, },
"EdgeCast": {
"cats": [ "31" ],
"headers": { "Server": "^ECS " }
},
"EPiServer": { "EPiServer": {
"cats": [ 1 ], "cats": [ 1 ],
"meta": { "generator": "EPiServer" }, "meta": { "generator": "EPiServer" },
@ -539,7 +553,7 @@
"eZ Publish": { "eZ Publish": {
"cats": [ 1, 6 ], "cats": [ 1, 6 ],
"meta": { "generator": "eZ Publish" }, "meta": { "generator": "eZ Publish" },
"headers": { "X-Powered-By": "^eZ Publish$" }, "headers": { "X-Powered-By": "^eZ Publish" },
"implies": [ "PHP" ] "implies": [ "PHP" ]
}, },
"Fact Finder": { "Fact Finder": {
@ -622,6 +636,10 @@
"cats": [ 22 ], "cats": [ 22 ],
"headers": { "Server": "Google Frontend" } "headers": { "Server": "Google Frontend" }
}, },
"Google Code Prettify": {
"cats": [ 19 ],
"env": "^prettyPrint$"
},
"Google Font API": { "Google Font API": {
"cats": [ 17 ], "cats": [ 17 ],
"script": "googleapis.com/.+webfont", "script": "googleapis.com/.+webfont",
@ -636,6 +654,14 @@
"cats": [ 1 ], "cats": [ 1 ],
"url": "sites.google.com" "url": "sites.google.com"
}, },
"Google Tag Manager": {
"cats": [ 19 ],
"html": "//www\\.googletagmanager\\.com/ns\\.html[^>]+></iframe>"
},
"Google Web Toolkit": {
"cats": [ 18 ],
"env": "^__gwt_"
},
"GoStats": { "GoStats": {
"cats": [ 10 ], "cats": [ 10 ],
"env": "^_go(stats|_track)" "env": "^_go(stats|_track)"
@ -653,6 +679,10 @@
"html": "gravityInsightsParams\\.site_guid = '", "html": "gravityInsightsParams\\.site_guid = '",
"env": "^GravityInsights$" "env": "^GravityInsights$"
}, },
"GX WebManager": {
"cats": [ 1 ],
"meta": { "generator": "GX WebManager" }
},
"Handlebars": { "Handlebars": {
"cats": [ 12 ], "cats": [ 12 ],
"env": "^Handlebars$" "env": "^Handlebars$"
@ -672,7 +702,7 @@
}, },
"Hybris": { "Hybris": {
"cats": [ 6 ], "cats": [ 6 ],
"html": "/sys_master/|/hybr/", "html": "(/sys_master/|/hybr/|/_ui/desktop/)",
"headers": { "Set-Cookie": "_hybris" }, "headers": { "Set-Cookie": "_hybris" },
"implies": [ "Java" ] "implies": [ "Java" ]
}, },
@ -730,7 +760,7 @@
}, },
"iWeb": { "iWeb": {
"cats": [ 20 ], "cats": [ 20 ],
"meta": { "generator": "iWeb" } "meta": { "generator": "^iWeb" }
}, },
"Jalios": { "Jalios": {
"cats": [ 1 ], "cats": [ 1 ],
@ -745,6 +775,11 @@
"script": "jit.*\\.js", "script": "jit.*\\.js",
"env": "^\\$jit$" "env": "^\\$jit$"
}, },
"Jirafe": {
"cats": [ 10, 32 ],
"script": "/jirafe\\.js",
"env": "^jirafe$"
},
"Jo": { "Jo": {
"cats": [ 26, 12 ], "cats": [ 26, 12 ],
"env": "^jo(Cache|DOM|Event)$" "env": "^jo(Cache|DOM|Event)$"
@ -758,7 +793,7 @@
"cats": [ 1 ], "cats": [ 1 ],
"url": "option=com_", "url": "option=com_",
"meta": { "generator": "Joomla" }, "meta": { "generator": "Joomla" },
"html": "(<!-- JoomlaWorks \\\"K2\\\"|<[^>]+(feed|components)/com_)", "html": "(<div[^>]+id=\\\"wrapper_r\\\"|<[^>]+(feed|components)/com_|<table[^>]+class=\\\"pill\\\")",
"headers": { "X-Content-Encoded-By": "Joomla" }, "headers": { "X-Content-Encoded-By": "Joomla" },
"env": "^(jcomments)$" "env": "^(jcomments)$"
}, },
@ -878,6 +913,11 @@
"cats": [ 13 ], "cats": [ 13 ],
"html": "<img[^>]+ alt=\\\"Powered by Mantis Bugtracker" "html": "<img[^>]+ alt=\\\"Powered by Mantis Bugtracker"
}, },
"Marketo": {
"cats": [ 32 ],
"script": "munchkin\\.marketo\\.net/munchkin\\.js",
"env": "^Munchkin$"
},
"MaxSite CMS": { "MaxSite CMS": {
"cats": [ 1 ], "cats": [ 1 ],
"meta": { "generator": "MaxSite CMS" } "meta": { "generator": "MaxSite CMS" }
@ -999,6 +1039,11 @@
"script": "netmonitor\\.fi/nmtracker\\.js", "script": "netmonitor\\.fi/nmtracker\\.js",
"env": "^netmonitor" "env": "^netmonitor"
}, },
"New Relic": {
"cats": [ 10 ],
"html": "<script[^>]+>var NREUMQ=NREUMQ",
"env": "^NREUMQ$"
},
"Nginx": { "Nginx": {
"cats": [ 22 ], "cats": [ 22 ],
"headers": { "Server": "nginx" } "headers": { "Server": "nginx" }
@ -1014,13 +1059,19 @@
"cats": [ 6 ], "cats": [ 6 ],
"html": "(<!--Powered by nopCommerce|Powered by: <a[^>]+nopcommerce)" "html": "(<!--Powered by nopCommerce|Powered by: <a[^>]+nopcommerce)"
}, },
"Open Web Analytics": {
"cats": [ 10 ],
"html": "<!-- (Start|End) Open Web Analytics Tracker -->",
"env": "^_?owa_"
},
"OneStat": { "OneStat": {
"cats": [ 10 ], "cats": [ 10 ],
"html": "var p=\\\"http\\\"\\+\\(d\\.URL\\.indexOf\\('https:'\\)==0\\?'s':''\\)\\+\\\"://stat\\.onestat\\.com/stat\\.aspx\\?tagver" "html": "var p=\\\"http\\\"\\+\\(d\\.URL\\.indexOf\\('https:'\\)==0\\?'s':''\\)\\+\\\"://stat\\.onestat\\.com/stat\\.aspx\\?tagver"
}, },
"OpenCart": { "OpenCart": {
"cats": [ 6 ], "cats": [ 6 ],
"html": "(Powered By <a href=\\\"[^>]+OpenCart|route = getURLVar\\(\\\"route)" "html": "(Powered By <a href=\\\"[^>]+OpenCart|route = getURLVar\\(\\\"route|OpenCart is open source software and you are free to remove the powered by OpenCart if you want)",
"implies": [ "PHP" ]
}, },
"openEngine": { "openEngine": {
"cats": [ 1 ], "cats": [ 1 ],
@ -1040,10 +1091,10 @@
"cats": [ 1 ], "cats": [ 1 ],
"headers": { "X-Powered-By": "OpenNemas" } "headers": { "X-Powered-By": "OpenNemas" }
}, },
"Open Web Analytics": { "OpenText Web Solutions": {
"cats": [ 10 ], "cats": [ 1 ],
"html": "<!-- (Start|End) Open Web Analytics Tracker -->", "html": "<!--[^>]+published by Open Text Web Solutions",
"env": "^_?owa_" "implies": [ "Microsoft ASP.NET" ]
}, },
"Optimizely": { "Optimizely": {
"cats": [ 10 ], "cats": [ 10 ],
@ -1132,6 +1183,11 @@
"cats": [ 3 ], "cats": [ 3 ],
"html": "(<title>phpPgAdmin</title>|<span class=\\\"appname\\\">phpPgAdmin)" "html": "(<title>phpPgAdmin</title>|<span class=\\\"appname\\\">phpPgAdmin)"
}, },
"phpSQLiteCMS": {
"cats": [ "1" ],
"meta": { "generator": "^phpSQLiteCMS" },
"implies": [ "PHP" ]
},
"Piwik": { "Piwik": {
"cats": [ 10 ], "cats": [ 10 ],
"html": "var piwikTracker = Piwik\\.getTracker\\(", "html": "var piwikTracker = Piwik\\.getTracker\\(",
@ -1286,6 +1342,10 @@
"script": "(scriptaculous|protoaculous)\\.js", "script": "(scriptaculous|protoaculous)\\.js",
"env": "^Scriptaculous$" "env": "^Scriptaculous$"
}, },
"SDL Tridion": {
"cats": [ 1 ],
"html": "mfinfo\\.application='Tridion"
},
"Sencha Touch": { "Sencha Touch": {
"cats": [ 26, 12 ], "cats": [ 26, 12 ],
"script": "sencha-touch.*\\.js" "script": "sencha-touch.*\\.js"
@ -1308,7 +1368,6 @@
"cats": [ 6 ], "cats": [ 6 ],
"meta": { "application-name": "Shopware" }, "meta": { "application-name": "Shopware" },
"script": "shopware\\.js", "script": "shopware\\.js",
"env": "^Shopify$",
"implies": [ "PHP" ] "implies": [ "PHP" ]
}, },
"sIFR": { "sIFR": {
@ -1348,7 +1407,8 @@
}, },
"Snoobi": { "Snoobi": {
"cats": [ 10 ], "cats": [ 10 ],
"script": "snoobi\\.com/snoop\\.php" "script": "snoobi\\.com/snoop\\.php",
"env": "^snoobi$"
}, },
"SOBI 2": { "SOBI 2": {
"cats": [ 19 ], "cats": [ 19 ],
@ -1360,8 +1420,12 @@
}, },
"SPDY": { "SPDY": {
"cats": [ 19 ], "cats": [ 19 ],
"headers": { "headers": { "X-Firefox-Spdy": ".*" }
"X-Firefox-Spdy": ".*" } },
"Sphinx": {
"cats": [ 4 ],
"env": "^DOCUMENTATION_OPTIONS$",
"implies": [ "Python" ]
}, },
"SPIP": { "SPIP": {
"cats": [ 1 ], "cats": [ 1 ],
@ -1434,6 +1498,10 @@
"cats": [ 24 ], "cats": [ 24 ],
"env": "^tinyMCE$" "env": "^tinyMCE$"
}, },
"Tealeaf": {
"cats": [ 10 ],
"env": "^TeaLeaf$"
},
"TomatoCart": { "TomatoCart": {
"cats": [ 6 ], "cats": [ 6 ],
"meta": { "generator": "TomatoCart" }, "meta": { "generator": "TomatoCart" },
@ -1585,7 +1653,7 @@
}, },
"WebPublisher": { "WebPublisher": {
"cats": [ 1 ], "cats": [ 1 ],
"meta": { "generator": "WEB|Publisher" } "meta": { "generator": "WEB\\|Publisher" }
}, },
"Websale": { "Websale": {
"cats": [ 6 ], "cats": [ 6 ],

Binary file not shown.

Before

Width:  |  Height:  |  Size: 428 B

After

Width:  |  Height:  |  Size: 497 B

@ -92,6 +92,8 @@ var wappalyzer = (function() {
analyze: function(hostname, url, data) { analyze: function(hostname, url, data) {
w.log('w.analyze'); w.log('w.analyze');
url = url.split('#')[0];
data.url = url; data.url = url;
if ( w.apps == null || w.categories == null ) { if ( w.apps == null || w.categories == null ) {
@ -156,7 +158,7 @@ var wappalyzer = (function() {
} }
regex = new RegExp(w.apps[app][type].replace('/', '\\\/'), 'i'); regex = new RegExp(w.apps[app][type].replace('/', '\\\/'), 'i');
regexScript = new RegExp('<script[^>]+src=("|\')([^"\']+)\1', 'ig'); regexScript = new RegExp('<script[^>]+src=("|\')([^"\']+)', 'ig');
profiler.regexCount ++; profiler.regexCount ++;
@ -266,7 +268,7 @@ var wappalyzer = (function() {
} }
} }
w.log(apps.length + ' apps detected: ' + apps.join(', ')); w.log(apps.length + ' apps detected: ' + apps.join(', ') + ' on ' + url);
// Keep history of detected apps // Keep history of detected apps
var i, app, match; var i, app, match;

@ -30,7 +30,8 @@
"28": "operating-systems", "28": "operating-systems",
"29": "search-engines", "29": "search-engines",
"30": "web-mail", "30": "web-mail",
"31": "cdn" "31": "cdn",
"32": "marketing-automation"
}, },
"apps": { "apps": {
"1C-Bitrix": { "1C-Bitrix": {
@ -96,6 +97,10 @@
"env": "amp_js_init", "env": "amp_js_init",
"implies": [ "PHP" ] "implies": [ "PHP" ]
}, },
"AngularJS": {
"cats": [ 12 ],
"env": "^angular$"
},
"AOLserver": { "AOLserver": {
"cats": [ 22 ], "cats": [ 22 ],
"headers": { "Server": "AOLserver" } }, "headers": { "Server": "AOLserver" } },
@ -225,6 +230,10 @@
"CFML": { "CFML": {
"cats": [ 27 ] "cats": [ 27 ]
}, },
"CacheFly": {
"cats": [ "31" ],
"headers": { "Server": "^CFS ", "X-CF1": ".+", "X-CF2": ".+" }
},
"Chameleon": { "Chameleon": {
"cats": [ 1 ], "cats": [ 1 ],
"meta": { "generator": "chameleon-cms" }, "meta": { "generator": "chameleon-cms" },
@ -468,8 +477,9 @@
"implies": [ "PHP" ] "implies": [ "PHP" ]
}, },
"DotNetNuke": { "DotNetNuke": {
"cats": [ 1 ], "cats": [ "1" ],
"meta": { "generator": "DotNetNuke" }, "meta": { "generator": "DotNetNuke" },
"headers": { "X-Compressed-By": "DotNetNuke-Compression", "Set-Cookie": "DotNetNukeAnonymous=.+" },
"html": "<!-- by DotNetNuke Corporation", "html": "<!-- by DotNetNuke Corporation",
"env": "^DotNetNuke", "env": "^DotNetNuke",
"implies": [ "Microsoft ASP.NET" ] "implies": [ "Microsoft ASP.NET" ]
@ -506,6 +516,10 @@
"script": "e107\\.js", "script": "e107\\.js",
"implies": [ "PHP"] "implies": [ "PHP"]
}, },
"EdgeCast": {
"cats": [ "31" ],
"headers": { "Server": "^ECS " }
},
"EPiServer": { "EPiServer": {
"cats": [ 1 ], "cats": [ 1 ],
"meta": { "generator": "EPiServer" }, "meta": { "generator": "EPiServer" },
@ -539,7 +553,7 @@
"eZ Publish": { "eZ Publish": {
"cats": [ 1, 6 ], "cats": [ 1, 6 ],
"meta": { "generator": "eZ Publish" }, "meta": { "generator": "eZ Publish" },
"headers": { "X-Powered-By": "^eZ Publish$" }, "headers": { "X-Powered-By": "^eZ Publish" },
"implies": [ "PHP" ] "implies": [ "PHP" ]
}, },
"Fact Finder": { "Fact Finder": {
@ -622,6 +636,10 @@
"cats": [ 22 ], "cats": [ 22 ],
"headers": { "Server": "Google Frontend" } "headers": { "Server": "Google Frontend" }
}, },
"Google Code Prettify": {
"cats": [ 19 ],
"env": "^prettyPrint$"
},
"Google Font API": { "Google Font API": {
"cats": [ 17 ], "cats": [ 17 ],
"script": "googleapis.com/.+webfont", "script": "googleapis.com/.+webfont",
@ -636,6 +654,14 @@
"cats": [ 1 ], "cats": [ 1 ],
"url": "sites.google.com" "url": "sites.google.com"
}, },
"Google Tag Manager": {
"cats": [ 19 ],
"html": "//www\\.googletagmanager\\.com/ns\\.html[^>]+></iframe>"
},
"Google Web Toolkit": {
"cats": [ 18 ],
"env": "^__gwt_"
},
"GoStats": { "GoStats": {
"cats": [ 10 ], "cats": [ 10 ],
"env": "^_go(stats|_track)" "env": "^_go(stats|_track)"
@ -653,6 +679,10 @@
"html": "gravityInsightsParams\\.site_guid = '", "html": "gravityInsightsParams\\.site_guid = '",
"env": "^GravityInsights$" "env": "^GravityInsights$"
}, },
"GX WebManager": {
"cats": [ 1 ],
"meta": { "generator": "GX WebManager" }
},
"Handlebars": { "Handlebars": {
"cats": [ 12 ], "cats": [ 12 ],
"env": "^Handlebars$" "env": "^Handlebars$"
@ -672,7 +702,7 @@
}, },
"Hybris": { "Hybris": {
"cats": [ 6 ], "cats": [ 6 ],
"html": "/sys_master/|/hybr/", "html": "(/sys_master/|/hybr/|/_ui/desktop/)",
"headers": { "Set-Cookie": "_hybris" }, "headers": { "Set-Cookie": "_hybris" },
"implies": [ "Java" ] "implies": [ "Java" ]
}, },
@ -730,7 +760,7 @@
}, },
"iWeb": { "iWeb": {
"cats": [ 20 ], "cats": [ 20 ],
"meta": { "generator": "iWeb" } "meta": { "generator": "^iWeb" }
}, },
"Jalios": { "Jalios": {
"cats": [ 1 ], "cats": [ 1 ],
@ -745,6 +775,11 @@
"script": "jit.*\\.js", "script": "jit.*\\.js",
"env": "^\\$jit$" "env": "^\\$jit$"
}, },
"Jirafe": {
"cats": [ 10, 32 ],
"script": "/jirafe\\.js",
"env": "^jirafe$"
},
"Jo": { "Jo": {
"cats": [ 26, 12 ], "cats": [ 26, 12 ],
"env": "^jo(Cache|DOM|Event)$" "env": "^jo(Cache|DOM|Event)$"
@ -758,7 +793,7 @@
"cats": [ 1 ], "cats": [ 1 ],
"url": "option=com_", "url": "option=com_",
"meta": { "generator": "Joomla" }, "meta": { "generator": "Joomla" },
"html": "(<!-- JoomlaWorks \\\"K2\\\"|<[^>]+(feed|components)/com_)", "html": "(<div[^>]+id=\\\"wrapper_r\\\"|<[^>]+(feed|components)/com_|<table[^>]+class=\\\"pill\\\")",
"headers": { "X-Content-Encoded-By": "Joomla" }, "headers": { "X-Content-Encoded-By": "Joomla" },
"env": "^(jcomments)$" "env": "^(jcomments)$"
}, },
@ -878,6 +913,11 @@
"cats": [ 13 ], "cats": [ 13 ],
"html": "<img[^>]+ alt=\\\"Powered by Mantis Bugtracker" "html": "<img[^>]+ alt=\\\"Powered by Mantis Bugtracker"
}, },
"Marketo": {
"cats": [ 32 ],
"script": "munchkin\\.marketo\\.net/munchkin\\.js",
"env": "^Munchkin$"
},
"MaxSite CMS": { "MaxSite CMS": {
"cats": [ 1 ], "cats": [ 1 ],
"meta": { "generator": "MaxSite CMS" } "meta": { "generator": "MaxSite CMS" }
@ -999,6 +1039,11 @@
"script": "netmonitor\\.fi/nmtracker\\.js", "script": "netmonitor\\.fi/nmtracker\\.js",
"env": "^netmonitor" "env": "^netmonitor"
}, },
"New Relic": {
"cats": [ 10 ],
"html": "<script[^>]+>var NREUMQ=NREUMQ",
"env": "^NREUMQ$"
},
"Nginx": { "Nginx": {
"cats": [ 22 ], "cats": [ 22 ],
"headers": { "Server": "nginx" } "headers": { "Server": "nginx" }
@ -1014,13 +1059,19 @@
"cats": [ 6 ], "cats": [ 6 ],
"html": "(<!--Powered by nopCommerce|Powered by: <a[^>]+nopcommerce)" "html": "(<!--Powered by nopCommerce|Powered by: <a[^>]+nopcommerce)"
}, },
"Open Web Analytics": {
"cats": [ 10 ],
"html": "<!-- (Start|End) Open Web Analytics Tracker -->",
"env": "^_?owa_"
},
"OneStat": { "OneStat": {
"cats": [ 10 ], "cats": [ 10 ],
"html": "var p=\\\"http\\\"\\+\\(d\\.URL\\.indexOf\\('https:'\\)==0\\?'s':''\\)\\+\\\"://stat\\.onestat\\.com/stat\\.aspx\\?tagver" "html": "var p=\\\"http\\\"\\+\\(d\\.URL\\.indexOf\\('https:'\\)==0\\?'s':''\\)\\+\\\"://stat\\.onestat\\.com/stat\\.aspx\\?tagver"
}, },
"OpenCart": { "OpenCart": {
"cats": [ 6 ], "cats": [ 6 ],
"html": "(Powered By <a href=\\\"[^>]+OpenCart|route = getURLVar\\(\\\"route)" "html": "(Powered By <a href=\\\"[^>]+OpenCart|route = getURLVar\\(\\\"route|OpenCart is open source software and you are free to remove the powered by OpenCart if you want)",
"implies": [ "PHP" ]
}, },
"openEngine": { "openEngine": {
"cats": [ 1 ], "cats": [ 1 ],
@ -1040,10 +1091,10 @@
"cats": [ 1 ], "cats": [ 1 ],
"headers": { "X-Powered-By": "OpenNemas" } "headers": { "X-Powered-By": "OpenNemas" }
}, },
"Open Web Analytics": { "OpenText Web Solutions": {
"cats": [ 10 ], "cats": [ 1 ],
"html": "<!-- (Start|End) Open Web Analytics Tracker -->", "html": "<!--[^>]+published by Open Text Web Solutions",
"env": "^_?owa_" "implies": [ "Microsoft ASP.NET" ]
}, },
"Optimizely": { "Optimizely": {
"cats": [ 10 ], "cats": [ 10 ],
@ -1132,6 +1183,11 @@
"cats": [ 3 ], "cats": [ 3 ],
"html": "(<title>phpPgAdmin</title>|<span class=\\\"appname\\\">phpPgAdmin)" "html": "(<title>phpPgAdmin</title>|<span class=\\\"appname\\\">phpPgAdmin)"
}, },
"phpSQLiteCMS": {
"cats": [ "1" ],
"meta": { "generator": "^phpSQLiteCMS" },
"implies": [ "PHP" ]
},
"Piwik": { "Piwik": {
"cats": [ 10 ], "cats": [ 10 ],
"html": "var piwikTracker = Piwik\\.getTracker\\(", "html": "var piwikTracker = Piwik\\.getTracker\\(",
@ -1286,6 +1342,10 @@
"script": "(scriptaculous|protoaculous)\\.js", "script": "(scriptaculous|protoaculous)\\.js",
"env": "^Scriptaculous$" "env": "^Scriptaculous$"
}, },
"SDL Tridion": {
"cats": [ 1 ],
"html": "mfinfo\\.application='Tridion"
},
"Sencha Touch": { "Sencha Touch": {
"cats": [ 26, 12 ], "cats": [ 26, 12 ],
"script": "sencha-touch.*\\.js" "script": "sencha-touch.*\\.js"
@ -1308,7 +1368,6 @@
"cats": [ 6 ], "cats": [ 6 ],
"meta": { "application-name": "Shopware" }, "meta": { "application-name": "Shopware" },
"script": "shopware\\.js", "script": "shopware\\.js",
"env": "^Shopify$",
"implies": [ "PHP" ] "implies": [ "PHP" ]
}, },
"sIFR": { "sIFR": {
@ -1348,7 +1407,8 @@
}, },
"Snoobi": { "Snoobi": {
"cats": [ 10 ], "cats": [ 10 ],
"script": "snoobi\\.com/snoop\\.php" "script": "snoobi\\.com/snoop\\.php",
"env": "^snoobi$"
}, },
"SOBI 2": { "SOBI 2": {
"cats": [ 19 ], "cats": [ 19 ],
@ -1360,8 +1420,12 @@
}, },
"SPDY": { "SPDY": {
"cats": [ 19 ], "cats": [ 19 ],
"headers": { "headers": { "X-Firefox-Spdy": ".*" }
"X-Firefox-Spdy": ".*" } },
"Sphinx": {
"cats": [ 4 ],
"env": "^DOCUMENTATION_OPTIONS$",
"implies": [ "Python" ]
}, },
"SPIP": { "SPIP": {
"cats": [ 1 ], "cats": [ 1 ],
@ -1434,6 +1498,10 @@
"cats": [ 24 ], "cats": [ 24 ],
"env": "^tinyMCE$" "env": "^tinyMCE$"
}, },
"Tealeaf": {
"cats": [ 10 ],
"env": "^TeaLeaf$"
},
"TomatoCart": { "TomatoCart": {
"cats": [ 6 ], "cats": [ 6 ],
"meta": { "generator": "TomatoCart" }, "meta": { "generator": "TomatoCart" },
@ -1585,7 +1653,7 @@
}, },
"WebPublisher": { "WebPublisher": {
"cats": [ 1 ], "cats": [ 1 ],
"meta": { "generator": "WEB|Publisher" } "meta": { "generator": "WEB\\|Publisher" }
}, },
"Websale": { "Websale": {
"cats": [ 6 ], "cats": [ 6 ],

@ -92,6 +92,8 @@ var wappalyzer = (function() {
analyze: function(hostname, url, data) { analyze: function(hostname, url, data) {
w.log('w.analyze'); w.log('w.analyze');
url = url.split('#')[0];
data.url = url; data.url = url;
if ( w.apps == null || w.categories == null ) { if ( w.apps == null || w.categories == null ) {
@ -156,7 +158,7 @@ var wappalyzer = (function() {
} }
regex = new RegExp(w.apps[app][type].replace('/', '\\\/'), 'i'); regex = new RegExp(w.apps[app][type].replace('/', '\\\/'), 'i');
regexScript = new RegExp('<script[^>]+src=("|\')([^"\']+)\1', 'ig'); regexScript = new RegExp('<script[^>]+src=("|\')([^"\']+)', 'ig');
profiler.regexCount ++; profiler.regexCount ++;
@ -266,7 +268,7 @@ var wappalyzer = (function() {
} }
} }
w.log(apps.length + ' apps detected: ' + apps.join(', ')); w.log(apps.length + ' apps detected: ' + apps.join(', ') + ' on ' + url);
// Keep history of detected apps // Keep history of detected apps
var i, app, match; var i, app, match;

@ -46,6 +46,7 @@
<preference id="wappalyzer-cat29" name="extensions.wappalyzer.cat29" type="bool"/> <preference id="wappalyzer-cat29" name="extensions.wappalyzer.cat29" type="bool"/>
<preference id="wappalyzer-cat30" name="extensions.wappalyzer.cat30" type="bool"/> <preference id="wappalyzer-cat30" name="extensions.wappalyzer.cat30" type="bool"/>
<preference id="wappalyzer-cat31" name="extensions.wappalyzer.cat31" type="bool"/> <preference id="wappalyzer-cat31" name="extensions.wappalyzer.cat31" type="bool"/>
<preference id="wappalyzer-cat31" name="extensions.wappalyzer.cat32" type="bool"/>
<preference id="wappalyzer-tracking" name="extensions.wappalyzer.tracking" type="bool"/> <preference id="wappalyzer-tracking" name="extensions.wappalyzer.tracking" type="bool"/>
</preferences> </preferences>
@ -132,10 +133,11 @@
<checkbox preference="wappalyzer-cat27" label="&wappalyzer.cat27;"/> <checkbox preference="wappalyzer-cat27" label="&wappalyzer.cat27;"/>
<checkbox preference="wappalyzer-cat28" label="&wappalyzer.cat28;"/> <checkbox preference="wappalyzer-cat28" label="&wappalyzer.cat28;"/>
<checkbox preference="wappalyzer-cat29" label="&wappalyzer.cat29;"/> <checkbox preference="wappalyzer-cat29" label="&wappalyzer.cat29;"/>
<checkbox preference="wappalyzer-cat29" label="&wappalyzer.cat30;"/> <checkbox preference="wappalyzer-cat30" label="&wappalyzer.cat30;"/>
</row> </row>
<row> <row>
<checkbox preference="wappalyzer-cat29" label="&wappalyzer.cat31;"/> <checkbox preference="wappalyzer-cat31" label="&wappalyzer.cat31;"/>
<checkbox preference="wappalyzer-cat32" label="&wappalyzer.cat31;"/>
</row> </row>
</rows> </rows>
</grid> </grid>

@ -38,3 +38,4 @@ pref('extensions.wappalyzer.cat28', true);
pref('extensions.wappalyzer.cat29', true); pref('extensions.wappalyzer.cat29', true);
pref('extensions.wappalyzer.cat30', true); pref('extensions.wappalyzer.cat30', true);
pref('extensions.wappalyzer.cat31', true); pref('extensions.wappalyzer.cat31', true);
pref('extensions.wappalyzer.cat32', true);

@ -3,7 +3,7 @@
<RDF xmlns="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:em="http://www.mozilla.org/2004/em-rdf#"> <RDF xmlns="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:em="http://www.mozilla.org/2004/em-rdf#">
<Description about="urn:mozilla:install-manifest"> <Description about="urn:mozilla:install-manifest">
<em:id>wappalyzer@crunchlabz.com</em:id> <em:id>wappalyzer@crunchlabz.com</em:id>
<em:version>2.5.1</em:version> <em:version>2.5.2</em:version>
<em:type>2</em:type> <em:type>2</em:type>
<em:unpack>true</em:unpack> <em:unpack>true</em:unpack>

@ -49,3 +49,4 @@
<!ENTITY wappalyzer.cat29 "Suchmaschinen"> <!ENTITY wappalyzer.cat29 "Suchmaschinen">
<!ENTITY wappalyzer.cat30 "Web mail"> <!ENTITY wappalyzer.cat30 "Web mail">
<!ENTITY wappalyzer.cat31 "CDN"> <!ENTITY wappalyzer.cat31 "CDN">
<!ENTITY wappalyzer.cat32 "Marketing Automation">

@ -33,3 +33,4 @@ wappalyzer.cat28 = Operating System
wappalyzer.cat29 = Search Engine wappalyzer.cat29 = Search Engine
wappalyzer.cat30 = Web mail wappalyzer.cat30 = Web mail
wappalyzer.cat31 = CDN wappalyzer.cat31 = CDN
wappalyzer.cat32 = Marketing Automation

@ -50,3 +50,4 @@
<!ENTITY wappalyzer.cat29 "Search Engines"> <!ENTITY wappalyzer.cat29 "Search Engines">
<!ENTITY wappalyzer.cat30 "Web Mail"> <!ENTITY wappalyzer.cat30 "Web Mail">
<!ENTITY wappalyzer.cat31 "CDN"> <!ENTITY wappalyzer.cat31 "CDN">
<!ENTITY wappalyzer.cat32 "Marketing Automation">

@ -33,3 +33,4 @@ wappalyzer.cat28 = Operating System
wappalyzer.cat29 = Search Engine wappalyzer.cat29 = Search Engine
wappalyzer.cat30 = Web Mail wappalyzer.cat30 = Web Mail
wappalyzer.cat31 = CDN wappalyzer.cat31 = CDN
wappalyzer.cat32 = Marketing Automation

@ -49,3 +49,4 @@
<!ENTITY wappalyzer.cat29 "Moteurs de recherche"> <!ENTITY wappalyzer.cat29 "Moteurs de recherche">
<!ENTITY wappalyzer.cat30 "Web Mail"> <!ENTITY wappalyzer.cat30 "Web Mail">
<!ENTITY wappalyzer.cat31 "CDN"> <!ENTITY wappalyzer.cat31 "CDN">
<!ENTITY wappalyzer.cat32 "Marketing Automation">

@ -33,3 +33,4 @@ wappalyzer.cat28 = Système d'exploitation
wappalyzer.cat29 = Moteur de recherche wappalyzer.cat29 = Moteur de recherche
wappalyzer.cat30 = Web Mail wappalyzer.cat30 = Web Mail
wappalyzer.cat31 = CDN wappalyzer.cat31 = CDN
wappalyzer.cat32 = Marketing Automation

@ -48,3 +48,4 @@
<!ENTITY wappalyzer.cat28 "Operating Systems"> <!ENTITY wappalyzer.cat28 "Operating Systems">
<!ENTITY wappalyzer.cat30 "Web Mail"> <!ENTITY wappalyzer.cat30 "Web Mail">
<!ENTITY wappalyzer.cat31 "CDN"> <!ENTITY wappalyzer.cat31 "CDN">
<!ENTITY wappalyzer.cat32 "Marketing Automatisering">

@ -33,3 +33,4 @@ wappalyzer.cat28 = Operating System
wappalyzer.cat29 = Zoek Machine wappalyzer.cat29 = Zoek Machine
wappalyzer.cat30 = Web Mail wappalyzer.cat30 = Web Mail
wappalyzer.cat31 = CDN wappalyzer.cat31 = CDN
wappalyzer.cat32 = Marketing Automatisering

Binary file not shown.

Before

Width:  |  Height:  |  Size: 428 B

After

Width:  |  Height:  |  Size: 497 B

@ -30,7 +30,8 @@
"28": "operating-systems", "28": "operating-systems",
"29": "search-engines", "29": "search-engines",
"30": "web-mail", "30": "web-mail",
"31": "cdn" "31": "cdn",
"32": "marketing-automation"
}, },
"apps": { "apps": {
"1C-Bitrix": { "1C-Bitrix": {
@ -96,6 +97,10 @@
"env": "amp_js_init", "env": "amp_js_init",
"implies": [ "PHP" ] "implies": [ "PHP" ]
}, },
"AngularJS": {
"cats": [ 12 ],
"env": "^angular$"
},
"AOLserver": { "AOLserver": {
"cats": [ 22 ], "cats": [ 22 ],
"headers": { "Server": "AOLserver" } }, "headers": { "Server": "AOLserver" } },
@ -225,6 +230,10 @@
"CFML": { "CFML": {
"cats": [ 27 ] "cats": [ 27 ]
}, },
"CacheFly": {
"cats": [ "31" ],
"headers": { "Server": "^CFS ", "X-CF1": ".+", "X-CF2": ".+" }
},
"Chameleon": { "Chameleon": {
"cats": [ 1 ], "cats": [ 1 ],
"meta": { "generator": "chameleon-cms" }, "meta": { "generator": "chameleon-cms" },
@ -468,8 +477,9 @@
"implies": [ "PHP" ] "implies": [ "PHP" ]
}, },
"DotNetNuke": { "DotNetNuke": {
"cats": [ 1 ], "cats": [ "1" ],
"meta": { "generator": "DotNetNuke" }, "meta": { "generator": "DotNetNuke" },
"headers": { "X-Compressed-By": "DotNetNuke-Compression", "Set-Cookie": "DotNetNukeAnonymous=.+" },
"html": "<!-- by DotNetNuke Corporation", "html": "<!-- by DotNetNuke Corporation",
"env": "^DotNetNuke", "env": "^DotNetNuke",
"implies": [ "Microsoft ASP.NET" ] "implies": [ "Microsoft ASP.NET" ]
@ -506,6 +516,10 @@
"script": "e107\\.js", "script": "e107\\.js",
"implies": [ "PHP"] "implies": [ "PHP"]
}, },
"EdgeCast": {
"cats": [ "31" ],
"headers": { "Server": "^ECS " }
},
"EPiServer": { "EPiServer": {
"cats": [ 1 ], "cats": [ 1 ],
"meta": { "generator": "EPiServer" }, "meta": { "generator": "EPiServer" },
@ -539,7 +553,7 @@
"eZ Publish": { "eZ Publish": {
"cats": [ 1, 6 ], "cats": [ 1, 6 ],
"meta": { "generator": "eZ Publish" }, "meta": { "generator": "eZ Publish" },
"headers": { "X-Powered-By": "^eZ Publish$" }, "headers": { "X-Powered-By": "^eZ Publish" },
"implies": [ "PHP" ] "implies": [ "PHP" ]
}, },
"Fact Finder": { "Fact Finder": {
@ -622,6 +636,10 @@
"cats": [ 22 ], "cats": [ 22 ],
"headers": { "Server": "Google Frontend" } "headers": { "Server": "Google Frontend" }
}, },
"Google Code Prettify": {
"cats": [ 19 ],
"env": "^prettyPrint$"
},
"Google Font API": { "Google Font API": {
"cats": [ 17 ], "cats": [ 17 ],
"script": "googleapis.com/.+webfont", "script": "googleapis.com/.+webfont",
@ -636,6 +654,14 @@
"cats": [ 1 ], "cats": [ 1 ],
"url": "sites.google.com" "url": "sites.google.com"
}, },
"Google Tag Manager": {
"cats": [ 19 ],
"html": "//www\\.googletagmanager\\.com/ns\\.html[^>]+></iframe>"
},
"Google Web Toolkit": {
"cats": [ 18 ],
"env": "^__gwt_"
},
"GoStats": { "GoStats": {
"cats": [ 10 ], "cats": [ 10 ],
"env": "^_go(stats|_track)" "env": "^_go(stats|_track)"
@ -653,6 +679,10 @@
"html": "gravityInsightsParams\\.site_guid = '", "html": "gravityInsightsParams\\.site_guid = '",
"env": "^GravityInsights$" "env": "^GravityInsights$"
}, },
"GX WebManager": {
"cats": [ 1 ],
"meta": { "generator": "GX WebManager" }
},
"Handlebars": { "Handlebars": {
"cats": [ 12 ], "cats": [ 12 ],
"env": "^Handlebars$" "env": "^Handlebars$"
@ -672,7 +702,7 @@
}, },
"Hybris": { "Hybris": {
"cats": [ 6 ], "cats": [ 6 ],
"html": "/sys_master/|/hybr/", "html": "(/sys_master/|/hybr/|/_ui/desktop/)",
"headers": { "Set-Cookie": "_hybris" }, "headers": { "Set-Cookie": "_hybris" },
"implies": [ "Java" ] "implies": [ "Java" ]
}, },
@ -730,7 +760,7 @@
}, },
"iWeb": { "iWeb": {
"cats": [ 20 ], "cats": [ 20 ],
"meta": { "generator": "iWeb" } "meta": { "generator": "^iWeb" }
}, },
"Jalios": { "Jalios": {
"cats": [ 1 ], "cats": [ 1 ],
@ -745,6 +775,11 @@
"script": "jit.*\\.js", "script": "jit.*\\.js",
"env": "^\\$jit$" "env": "^\\$jit$"
}, },
"Jirafe": {
"cats": [ 10, 32 ],
"script": "/jirafe\\.js",
"env": "^jirafe$"
},
"Jo": { "Jo": {
"cats": [ 26, 12 ], "cats": [ 26, 12 ],
"env": "^jo(Cache|DOM|Event)$" "env": "^jo(Cache|DOM|Event)$"
@ -758,7 +793,7 @@
"cats": [ 1 ], "cats": [ 1 ],
"url": "option=com_", "url": "option=com_",
"meta": { "generator": "Joomla" }, "meta": { "generator": "Joomla" },
"html": "(<!-- JoomlaWorks \\\"K2\\\"|<[^>]+(feed|components)/com_)", "html": "(<div[^>]+id=\\\"wrapper_r\\\"|<[^>]+(feed|components)/com_|<table[^>]+class=\\\"pill\\\")",
"headers": { "X-Content-Encoded-By": "Joomla" }, "headers": { "X-Content-Encoded-By": "Joomla" },
"env": "^(jcomments)$" "env": "^(jcomments)$"
}, },
@ -878,6 +913,11 @@
"cats": [ 13 ], "cats": [ 13 ],
"html": "<img[^>]+ alt=\\\"Powered by Mantis Bugtracker" "html": "<img[^>]+ alt=\\\"Powered by Mantis Bugtracker"
}, },
"Marketo": {
"cats": [ 32 ],
"script": "munchkin\\.marketo\\.net/munchkin\\.js",
"env": "^Munchkin$"
},
"MaxSite CMS": { "MaxSite CMS": {
"cats": [ 1 ], "cats": [ 1 ],
"meta": { "generator": "MaxSite CMS" } "meta": { "generator": "MaxSite CMS" }
@ -999,6 +1039,11 @@
"script": "netmonitor\\.fi/nmtracker\\.js", "script": "netmonitor\\.fi/nmtracker\\.js",
"env": "^netmonitor" "env": "^netmonitor"
}, },
"New Relic": {
"cats": [ 10 ],
"html": "<script[^>]+>var NREUMQ=NREUMQ",
"env": "^NREUMQ$"
},
"Nginx": { "Nginx": {
"cats": [ 22 ], "cats": [ 22 ],
"headers": { "Server": "nginx" } "headers": { "Server": "nginx" }
@ -1014,13 +1059,19 @@
"cats": [ 6 ], "cats": [ 6 ],
"html": "(<!--Powered by nopCommerce|Powered by: <a[^>]+nopcommerce)" "html": "(<!--Powered by nopCommerce|Powered by: <a[^>]+nopcommerce)"
}, },
"Open Web Analytics": {
"cats": [ 10 ],
"html": "<!-- (Start|End) Open Web Analytics Tracker -->",
"env": "^_?owa_"
},
"OneStat": { "OneStat": {
"cats": [ 10 ], "cats": [ 10 ],
"html": "var p=\\\"http\\\"\\+\\(d\\.URL\\.indexOf\\('https:'\\)==0\\?'s':''\\)\\+\\\"://stat\\.onestat\\.com/stat\\.aspx\\?tagver" "html": "var p=\\\"http\\\"\\+\\(d\\.URL\\.indexOf\\('https:'\\)==0\\?'s':''\\)\\+\\\"://stat\\.onestat\\.com/stat\\.aspx\\?tagver"
}, },
"OpenCart": { "OpenCart": {
"cats": [ 6 ], "cats": [ 6 ],
"html": "(Powered By <a href=\\\"[^>]+OpenCart|route = getURLVar\\(\\\"route)" "html": "(Powered By <a href=\\\"[^>]+OpenCart|route = getURLVar\\(\\\"route|OpenCart is open source software and you are free to remove the powered by OpenCart if you want)",
"implies": [ "PHP" ]
}, },
"openEngine": { "openEngine": {
"cats": [ 1 ], "cats": [ 1 ],
@ -1040,10 +1091,10 @@
"cats": [ 1 ], "cats": [ 1 ],
"headers": { "X-Powered-By": "OpenNemas" } "headers": { "X-Powered-By": "OpenNemas" }
}, },
"Open Web Analytics": { "OpenText Web Solutions": {
"cats": [ 10 ], "cats": [ 1 ],
"html": "<!-- (Start|End) Open Web Analytics Tracker -->", "html": "<!--[^>]+published by Open Text Web Solutions",
"env": "^_?owa_" "implies": [ "Microsoft ASP.NET" ]
}, },
"Optimizely": { "Optimizely": {
"cats": [ 10 ], "cats": [ 10 ],
@ -1132,6 +1183,11 @@
"cats": [ 3 ], "cats": [ 3 ],
"html": "(<title>phpPgAdmin</title>|<span class=\\\"appname\\\">phpPgAdmin)" "html": "(<title>phpPgAdmin</title>|<span class=\\\"appname\\\">phpPgAdmin)"
}, },
"phpSQLiteCMS": {
"cats": [ "1" ],
"meta": { "generator": "^phpSQLiteCMS" },
"implies": [ "PHP" ]
},
"Piwik": { "Piwik": {
"cats": [ 10 ], "cats": [ 10 ],
"html": "var piwikTracker = Piwik\\.getTracker\\(", "html": "var piwikTracker = Piwik\\.getTracker\\(",
@ -1286,6 +1342,10 @@
"script": "(scriptaculous|protoaculous)\\.js", "script": "(scriptaculous|protoaculous)\\.js",
"env": "^Scriptaculous$" "env": "^Scriptaculous$"
}, },
"SDL Tridion": {
"cats": [ 1 ],
"html": "mfinfo\\.application='Tridion"
},
"Sencha Touch": { "Sencha Touch": {
"cats": [ 26, 12 ], "cats": [ 26, 12 ],
"script": "sencha-touch.*\\.js" "script": "sencha-touch.*\\.js"
@ -1308,7 +1368,6 @@
"cats": [ 6 ], "cats": [ 6 ],
"meta": { "application-name": "Shopware" }, "meta": { "application-name": "Shopware" },
"script": "shopware\\.js", "script": "shopware\\.js",
"env": "^Shopify$",
"implies": [ "PHP" ] "implies": [ "PHP" ]
}, },
"sIFR": { "sIFR": {
@ -1348,7 +1407,8 @@
}, },
"Snoobi": { "Snoobi": {
"cats": [ 10 ], "cats": [ 10 ],
"script": "snoobi\\.com/snoop\\.php" "script": "snoobi\\.com/snoop\\.php",
"env": "^snoobi$"
}, },
"SOBI 2": { "SOBI 2": {
"cats": [ 19 ], "cats": [ 19 ],
@ -1360,8 +1420,12 @@
}, },
"SPDY": { "SPDY": {
"cats": [ 19 ], "cats": [ 19 ],
"headers": { "headers": { "X-Firefox-Spdy": ".*" }
"X-Firefox-Spdy": ".*" } },
"Sphinx": {
"cats": [ 4 ],
"env": "^DOCUMENTATION_OPTIONS$",
"implies": [ "Python" ]
}, },
"SPIP": { "SPIP": {
"cats": [ 1 ], "cats": [ 1 ],
@ -1434,6 +1498,10 @@
"cats": [ 24 ], "cats": [ 24 ],
"env": "^tinyMCE$" "env": "^tinyMCE$"
}, },
"Tealeaf": {
"cats": [ 10 ],
"env": "^TeaLeaf$"
},
"TomatoCart": { "TomatoCart": {
"cats": [ 6 ], "cats": [ 6 ],
"meta": { "generator": "TomatoCart" }, "meta": { "generator": "TomatoCart" },
@ -1585,7 +1653,7 @@
}, },
"WebPublisher": { "WebPublisher": {
"cats": [ 1 ], "cats": [ 1 ],
"meta": { "generator": "WEB|Publisher" } "meta": { "generator": "WEB\\|Publisher" }
}, },
"Websale": { "Websale": {
"cats": [ 6 ], "cats": [ 6 ],

Binary file not shown.

Before

Width:  |  Height:  |  Size: 428 B

After

Width:  |  Height:  |  Size: 497 B

@ -92,6 +92,8 @@ var wappalyzer = (function() {
analyze: function(hostname, url, data) { analyze: function(hostname, url, data) {
w.log('w.analyze'); w.log('w.analyze');
url = url.split('#')[0];
data.url = url; data.url = url;
if ( w.apps == null || w.categories == null ) { if ( w.apps == null || w.categories == null ) {
@ -156,7 +158,7 @@ var wappalyzer = (function() {
} }
regex = new RegExp(w.apps[app][type].replace('/', '\\\/'), 'i'); regex = new RegExp(w.apps[app][type].replace('/', '\\\/'), 'i');
regexScript = new RegExp('<script[^>]+src=("|\')([^"\']+)\1', 'ig'); regexScript = new RegExp('<script[^>]+src=("|\')([^"\']+)', 'ig');
profiler.regexCount ++; profiler.regexCount ++;
@ -266,7 +268,7 @@ var wappalyzer = (function() {
} }
} }
w.log(apps.length + ' apps detected: ' + apps.join(', ')); w.log(apps.length + ' apps detected: ' + apps.join(', ') + ' on ' + url);
// Keep history of detected apps // Keep history of detected apps
var i, app, match; var i, app, match;

@ -30,7 +30,8 @@
"28": "operating-systems", "28": "operating-systems",
"29": "search-engines", "29": "search-engines",
"30": "web-mail", "30": "web-mail",
"31": "cdn" "31": "cdn",
"32": "marketing-automation"
}, },
"apps": { "apps": {
"1C-Bitrix": { "1C-Bitrix": {
@ -96,6 +97,10 @@
"env": "amp_js_init", "env": "amp_js_init",
"implies": [ "PHP" ] "implies": [ "PHP" ]
}, },
"AngularJS": {
"cats": [ 12 ],
"env": "^angular$"
},
"AOLserver": { "AOLserver": {
"cats": [ 22 ], "cats": [ 22 ],
"headers": { "Server": "AOLserver" } }, "headers": { "Server": "AOLserver" } },
@ -225,6 +230,10 @@
"CFML": { "CFML": {
"cats": [ 27 ] "cats": [ 27 ]
}, },
"CacheFly": {
"cats": [ "31" ],
"headers": { "Server": "^CFS ", "X-CF1": ".+", "X-CF2": ".+" }
},
"Chameleon": { "Chameleon": {
"cats": [ 1 ], "cats": [ 1 ],
"meta": { "generator": "chameleon-cms" }, "meta": { "generator": "chameleon-cms" },
@ -468,8 +477,9 @@
"implies": [ "PHP" ] "implies": [ "PHP" ]
}, },
"DotNetNuke": { "DotNetNuke": {
"cats": [ 1 ], "cats": [ "1" ],
"meta": { "generator": "DotNetNuke" }, "meta": { "generator": "DotNetNuke" },
"headers": { "X-Compressed-By": "DotNetNuke-Compression", "Set-Cookie": "DotNetNukeAnonymous=.+" },
"html": "<!-- by DotNetNuke Corporation", "html": "<!-- by DotNetNuke Corporation",
"env": "^DotNetNuke", "env": "^DotNetNuke",
"implies": [ "Microsoft ASP.NET" ] "implies": [ "Microsoft ASP.NET" ]
@ -506,6 +516,10 @@
"script": "e107\\.js", "script": "e107\\.js",
"implies": [ "PHP"] "implies": [ "PHP"]
}, },
"EdgeCast": {
"cats": [ "31" ],
"headers": { "Server": "^ECS " }
},
"EPiServer": { "EPiServer": {
"cats": [ 1 ], "cats": [ 1 ],
"meta": { "generator": "EPiServer" }, "meta": { "generator": "EPiServer" },
@ -539,7 +553,7 @@
"eZ Publish": { "eZ Publish": {
"cats": [ 1, 6 ], "cats": [ 1, 6 ],
"meta": { "generator": "eZ Publish" }, "meta": { "generator": "eZ Publish" },
"headers": { "X-Powered-By": "^eZ Publish$" }, "headers": { "X-Powered-By": "^eZ Publish" },
"implies": [ "PHP" ] "implies": [ "PHP" ]
}, },
"Fact Finder": { "Fact Finder": {
@ -622,6 +636,10 @@
"cats": [ 22 ], "cats": [ 22 ],
"headers": { "Server": "Google Frontend" } "headers": { "Server": "Google Frontend" }
}, },
"Google Code Prettify": {
"cats": [ 19 ],
"env": "^prettyPrint$"
},
"Google Font API": { "Google Font API": {
"cats": [ 17 ], "cats": [ 17 ],
"script": "googleapis.com/.+webfont", "script": "googleapis.com/.+webfont",
@ -636,6 +654,14 @@
"cats": [ 1 ], "cats": [ 1 ],
"url": "sites.google.com" "url": "sites.google.com"
}, },
"Google Tag Manager": {
"cats": [ 19 ],
"html": "//www\\.googletagmanager\\.com/ns\\.html[^>]+></iframe>"
},
"Google Web Toolkit": {
"cats": [ 18 ],
"env": "^__gwt_"
},
"GoStats": { "GoStats": {
"cats": [ 10 ], "cats": [ 10 ],
"env": "^_go(stats|_track)" "env": "^_go(stats|_track)"
@ -653,6 +679,10 @@
"html": "gravityInsightsParams\\.site_guid = '", "html": "gravityInsightsParams\\.site_guid = '",
"env": "^GravityInsights$" "env": "^GravityInsights$"
}, },
"GX WebManager": {
"cats": [ 1 ],
"meta": { "generator": "GX WebManager" }
},
"Handlebars": { "Handlebars": {
"cats": [ 12 ], "cats": [ 12 ],
"env": "^Handlebars$" "env": "^Handlebars$"
@ -672,7 +702,7 @@
}, },
"Hybris": { "Hybris": {
"cats": [ 6 ], "cats": [ 6 ],
"html": "/sys_master/|/hybr/", "html": "(/sys_master/|/hybr/|/_ui/desktop/)",
"headers": { "Set-Cookie": "_hybris" }, "headers": { "Set-Cookie": "_hybris" },
"implies": [ "Java" ] "implies": [ "Java" ]
}, },
@ -730,7 +760,7 @@
}, },
"iWeb": { "iWeb": {
"cats": [ 20 ], "cats": [ 20 ],
"meta": { "generator": "iWeb" } "meta": { "generator": "^iWeb" }
}, },
"Jalios": { "Jalios": {
"cats": [ 1 ], "cats": [ 1 ],
@ -745,6 +775,11 @@
"script": "jit.*\\.js", "script": "jit.*\\.js",
"env": "^\\$jit$" "env": "^\\$jit$"
}, },
"Jirafe": {
"cats": [ 10, 32 ],
"script": "/jirafe\\.js",
"env": "^jirafe$"
},
"Jo": { "Jo": {
"cats": [ 26, 12 ], "cats": [ 26, 12 ],
"env": "^jo(Cache|DOM|Event)$" "env": "^jo(Cache|DOM|Event)$"
@ -758,7 +793,7 @@
"cats": [ 1 ], "cats": [ 1 ],
"url": "option=com_", "url": "option=com_",
"meta": { "generator": "Joomla" }, "meta": { "generator": "Joomla" },
"html": "(<!-- JoomlaWorks \\\"K2\\\"|<[^>]+(feed|components)/com_)", "html": "(<div[^>]+id=\\\"wrapper_r\\\"|<[^>]+(feed|components)/com_|<table[^>]+class=\\\"pill\\\")",
"headers": { "X-Content-Encoded-By": "Joomla" }, "headers": { "X-Content-Encoded-By": "Joomla" },
"env": "^(jcomments)$" "env": "^(jcomments)$"
}, },
@ -878,6 +913,11 @@
"cats": [ 13 ], "cats": [ 13 ],
"html": "<img[^>]+ alt=\\\"Powered by Mantis Bugtracker" "html": "<img[^>]+ alt=\\\"Powered by Mantis Bugtracker"
}, },
"Marketo": {
"cats": [ 32 ],
"script": "munchkin\\.marketo\\.net/munchkin\\.js",
"env": "^Munchkin$"
},
"MaxSite CMS": { "MaxSite CMS": {
"cats": [ 1 ], "cats": [ 1 ],
"meta": { "generator": "MaxSite CMS" } "meta": { "generator": "MaxSite CMS" }
@ -999,6 +1039,11 @@
"script": "netmonitor\\.fi/nmtracker\\.js", "script": "netmonitor\\.fi/nmtracker\\.js",
"env": "^netmonitor" "env": "^netmonitor"
}, },
"New Relic": {
"cats": [ 10 ],
"html": "<script[^>]+>var NREUMQ=NREUMQ",
"env": "^NREUMQ$"
},
"Nginx": { "Nginx": {
"cats": [ 22 ], "cats": [ 22 ],
"headers": { "Server": "nginx" } "headers": { "Server": "nginx" }
@ -1014,13 +1059,19 @@
"cats": [ 6 ], "cats": [ 6 ],
"html": "(<!--Powered by nopCommerce|Powered by: <a[^>]+nopcommerce)" "html": "(<!--Powered by nopCommerce|Powered by: <a[^>]+nopcommerce)"
}, },
"Open Web Analytics": {
"cats": [ 10 ],
"html": "<!-- (Start|End) Open Web Analytics Tracker -->",
"env": "^_?owa_"
},
"OneStat": { "OneStat": {
"cats": [ 10 ], "cats": [ 10 ],
"html": "var p=\\\"http\\\"\\+\\(d\\.URL\\.indexOf\\('https:'\\)==0\\?'s':''\\)\\+\\\"://stat\\.onestat\\.com/stat\\.aspx\\?tagver" "html": "var p=\\\"http\\\"\\+\\(d\\.URL\\.indexOf\\('https:'\\)==0\\?'s':''\\)\\+\\\"://stat\\.onestat\\.com/stat\\.aspx\\?tagver"
}, },
"OpenCart": { "OpenCart": {
"cats": [ 6 ], "cats": [ 6 ],
"html": "(Powered By <a href=\\\"[^>]+OpenCart|route = getURLVar\\(\\\"route)" "html": "(Powered By <a href=\\\"[^>]+OpenCart|route = getURLVar\\(\\\"route|OpenCart is open source software and you are free to remove the powered by OpenCart if you want)",
"implies": [ "PHP" ]
}, },
"openEngine": { "openEngine": {
"cats": [ 1 ], "cats": [ 1 ],
@ -1040,10 +1091,10 @@
"cats": [ 1 ], "cats": [ 1 ],
"headers": { "X-Powered-By": "OpenNemas" } "headers": { "X-Powered-By": "OpenNemas" }
}, },
"Open Web Analytics": { "OpenText Web Solutions": {
"cats": [ 10 ], "cats": [ 1 ],
"html": "<!-- (Start|End) Open Web Analytics Tracker -->", "html": "<!--[^>]+published by Open Text Web Solutions",
"env": "^_?owa_" "implies": [ "Microsoft ASP.NET" ]
}, },
"Optimizely": { "Optimizely": {
"cats": [ 10 ], "cats": [ 10 ],
@ -1132,6 +1183,11 @@
"cats": [ 3 ], "cats": [ 3 ],
"html": "(<title>phpPgAdmin</title>|<span class=\\\"appname\\\">phpPgAdmin)" "html": "(<title>phpPgAdmin</title>|<span class=\\\"appname\\\">phpPgAdmin)"
}, },
"phpSQLiteCMS": {
"cats": [ "1" ],
"meta": { "generator": "^phpSQLiteCMS" },
"implies": [ "PHP" ]
},
"Piwik": { "Piwik": {
"cats": [ 10 ], "cats": [ 10 ],
"html": "var piwikTracker = Piwik\\.getTracker\\(", "html": "var piwikTracker = Piwik\\.getTracker\\(",
@ -1286,6 +1342,10 @@
"script": "(scriptaculous|protoaculous)\\.js", "script": "(scriptaculous|protoaculous)\\.js",
"env": "^Scriptaculous$" "env": "^Scriptaculous$"
}, },
"SDL Tridion": {
"cats": [ 1 ],
"html": "mfinfo\\.application='Tridion"
},
"Sencha Touch": { "Sencha Touch": {
"cats": [ 26, 12 ], "cats": [ 26, 12 ],
"script": "sencha-touch.*\\.js" "script": "sencha-touch.*\\.js"
@ -1308,7 +1368,6 @@
"cats": [ 6 ], "cats": [ 6 ],
"meta": { "application-name": "Shopware" }, "meta": { "application-name": "Shopware" },
"script": "shopware\\.js", "script": "shopware\\.js",
"env": "^Shopify$",
"implies": [ "PHP" ] "implies": [ "PHP" ]
}, },
"sIFR": { "sIFR": {
@ -1348,7 +1407,8 @@
}, },
"Snoobi": { "Snoobi": {
"cats": [ 10 ], "cats": [ 10 ],
"script": "snoobi\\.com/snoop\\.php" "script": "snoobi\\.com/snoop\\.php",
"env": "^snoobi$"
}, },
"SOBI 2": { "SOBI 2": {
"cats": [ 19 ], "cats": [ 19 ],
@ -1360,8 +1420,12 @@
}, },
"SPDY": { "SPDY": {
"cats": [ 19 ], "cats": [ 19 ],
"headers": { "headers": { "X-Firefox-Spdy": ".*" }
"X-Firefox-Spdy": ".*" } },
"Sphinx": {
"cats": [ 4 ],
"env": "^DOCUMENTATION_OPTIONS$",
"implies": [ "Python" ]
}, },
"SPIP": { "SPIP": {
"cats": [ 1 ], "cats": [ 1 ],
@ -1434,6 +1498,10 @@
"cats": [ 24 ], "cats": [ 24 ],
"env": "^tinyMCE$" "env": "^tinyMCE$"
}, },
"Tealeaf": {
"cats": [ 10 ],
"env": "^TeaLeaf$"
},
"TomatoCart": { "TomatoCart": {
"cats": [ 6 ], "cats": [ 6 ],
"meta": { "generator": "TomatoCart" }, "meta": { "generator": "TomatoCart" },
@ -1585,7 +1653,7 @@
}, },
"WebPublisher": { "WebPublisher": {
"cats": [ 1 ], "cats": [ 1 ],
"meta": { "generator": "WEB|Publisher" } "meta": { "generator": "WEB\\|Publisher" }
}, },
"Websale": { "Websale": {
"cats": [ 6 ], "cats": [ 6 ],

@ -92,6 +92,8 @@ var wappalyzer = (function() {
analyze: function(hostname, url, data) { analyze: function(hostname, url, data) {
w.log('w.analyze'); w.log('w.analyze');
url = url.split('#')[0];
data.url = url; data.url = url;
if ( w.apps == null || w.categories == null ) { if ( w.apps == null || w.categories == null ) {
@ -156,7 +158,7 @@ var wappalyzer = (function() {
} }
regex = new RegExp(w.apps[app][type].replace('/', '\\\/'), 'i'); regex = new RegExp(w.apps[app][type].replace('/', '\\\/'), 'i');
regexScript = new RegExp('<script[^>]+src=("|\')([^"\']+)\1', 'ig'); regexScript = new RegExp('<script[^>]+src=("|\')([^"\']+)', 'ig');
profiler.regexCount ++; profiler.regexCount ++;
@ -266,7 +268,7 @@ var wappalyzer = (function() {
} }
} }
w.log(apps.length + ' apps detected: ' + apps.join(', ')); w.log(apps.length + ' apps detected: ' + apps.join(', ') + ' on ' + url);
// Keep history of detected apps // Keep history of detected apps
var i, app, match; var i, app, match;

@ -30,7 +30,8 @@
"28": "operating-systems", "28": "operating-systems",
"29": "search-engines", "29": "search-engines",
"30": "web-mail", "30": "web-mail",
"31": "cdn" "31": "cdn",
"32": "marketing-automation"
}, },
"apps": { "apps": {
"1C-Bitrix": { "1C-Bitrix": {
@ -96,6 +97,10 @@
"env": "amp_js_init", "env": "amp_js_init",
"implies": [ "PHP" ] "implies": [ "PHP" ]
}, },
"AngularJS": {
"cats": [ 12 ],
"env": "^angular$"
},
"AOLserver": { "AOLserver": {
"cats": [ 22 ], "cats": [ 22 ],
"headers": { "Server": "AOLserver" } }, "headers": { "Server": "AOLserver" } },
@ -225,6 +230,10 @@
"CFML": { "CFML": {
"cats": [ 27 ] "cats": [ 27 ]
}, },
"CacheFly": {
"cats": [ "31" ],
"headers": { "Server": "^CFS ", "X-CF1": ".+", "X-CF2": ".+" }
},
"Chameleon": { "Chameleon": {
"cats": [ 1 ], "cats": [ 1 ],
"meta": { "generator": "chameleon-cms" }, "meta": { "generator": "chameleon-cms" },
@ -468,8 +477,9 @@
"implies": [ "PHP" ] "implies": [ "PHP" ]
}, },
"DotNetNuke": { "DotNetNuke": {
"cats": [ 1 ], "cats": [ "1" ],
"meta": { "generator": "DotNetNuke" }, "meta": { "generator": "DotNetNuke" },
"headers": { "X-Compressed-By": "DotNetNuke-Compression", "Set-Cookie": "DotNetNukeAnonymous=.+" },
"html": "<!-- by DotNetNuke Corporation", "html": "<!-- by DotNetNuke Corporation",
"env": "^DotNetNuke", "env": "^DotNetNuke",
"implies": [ "Microsoft ASP.NET" ] "implies": [ "Microsoft ASP.NET" ]
@ -506,6 +516,10 @@
"script": "e107\\.js", "script": "e107\\.js",
"implies": [ "PHP"] "implies": [ "PHP"]
}, },
"EdgeCast": {
"cats": [ "31" ],
"headers": { "Server": "^ECS " }
},
"EPiServer": { "EPiServer": {
"cats": [ 1 ], "cats": [ 1 ],
"meta": { "generator": "EPiServer" }, "meta": { "generator": "EPiServer" },
@ -539,7 +553,7 @@
"eZ Publish": { "eZ Publish": {
"cats": [ 1, 6 ], "cats": [ 1, 6 ],
"meta": { "generator": "eZ Publish" }, "meta": { "generator": "eZ Publish" },
"headers": { "X-Powered-By": "^eZ Publish$" }, "headers": { "X-Powered-By": "^eZ Publish" },
"implies": [ "PHP" ] "implies": [ "PHP" ]
}, },
"Fact Finder": { "Fact Finder": {
@ -622,6 +636,10 @@
"cats": [ 22 ], "cats": [ 22 ],
"headers": { "Server": "Google Frontend" } "headers": { "Server": "Google Frontend" }
}, },
"Google Code Prettify": {
"cats": [ 19 ],
"env": "^prettyPrint$"
},
"Google Font API": { "Google Font API": {
"cats": [ 17 ], "cats": [ 17 ],
"script": "googleapis.com/.+webfont", "script": "googleapis.com/.+webfont",
@ -636,6 +654,14 @@
"cats": [ 1 ], "cats": [ 1 ],
"url": "sites.google.com" "url": "sites.google.com"
}, },
"Google Tag Manager": {
"cats": [ 19 ],
"html": "//www\\.googletagmanager\\.com/ns\\.html[^>]+></iframe>"
},
"Google Web Toolkit": {
"cats": [ 18 ],
"env": "^__gwt_"
},
"GoStats": { "GoStats": {
"cats": [ 10 ], "cats": [ 10 ],
"env": "^_go(stats|_track)" "env": "^_go(stats|_track)"
@ -653,6 +679,10 @@
"html": "gravityInsightsParams\\.site_guid = '", "html": "gravityInsightsParams\\.site_guid = '",
"env": "^GravityInsights$" "env": "^GravityInsights$"
}, },
"GX WebManager": {
"cats": [ 1 ],
"meta": { "generator": "GX WebManager" }
},
"Handlebars": { "Handlebars": {
"cats": [ 12 ], "cats": [ 12 ],
"env": "^Handlebars$" "env": "^Handlebars$"
@ -672,7 +702,7 @@
}, },
"Hybris": { "Hybris": {
"cats": [ 6 ], "cats": [ 6 ],
"html": "/sys_master/|/hybr/", "html": "(/sys_master/|/hybr/|/_ui/desktop/)",
"headers": { "Set-Cookie": "_hybris" }, "headers": { "Set-Cookie": "_hybris" },
"implies": [ "Java" ] "implies": [ "Java" ]
}, },
@ -730,7 +760,7 @@
}, },
"iWeb": { "iWeb": {
"cats": [ 20 ], "cats": [ 20 ],
"meta": { "generator": "iWeb" } "meta": { "generator": "^iWeb" }
}, },
"Jalios": { "Jalios": {
"cats": [ 1 ], "cats": [ 1 ],
@ -745,6 +775,11 @@
"script": "jit.*\\.js", "script": "jit.*\\.js",
"env": "^\\$jit$" "env": "^\\$jit$"
}, },
"Jirafe": {
"cats": [ 10, 32 ],
"script": "/jirafe\\.js",
"env": "^jirafe$"
},
"Jo": { "Jo": {
"cats": [ 26, 12 ], "cats": [ 26, 12 ],
"env": "^jo(Cache|DOM|Event)$" "env": "^jo(Cache|DOM|Event)$"
@ -758,7 +793,7 @@
"cats": [ 1 ], "cats": [ 1 ],
"url": "option=com_", "url": "option=com_",
"meta": { "generator": "Joomla" }, "meta": { "generator": "Joomla" },
"html": "(<!-- JoomlaWorks \\\"K2\\\"|<[^>]+(feed|components)/com_)", "html": "(<div[^>]+id=\\\"wrapper_r\\\"|<[^>]+(feed|components)/com_|<table[^>]+class=\\\"pill\\\")",
"headers": { "X-Content-Encoded-By": "Joomla" }, "headers": { "X-Content-Encoded-By": "Joomla" },
"env": "^(jcomments)$" "env": "^(jcomments)$"
}, },
@ -878,6 +913,11 @@
"cats": [ 13 ], "cats": [ 13 ],
"html": "<img[^>]+ alt=\\\"Powered by Mantis Bugtracker" "html": "<img[^>]+ alt=\\\"Powered by Mantis Bugtracker"
}, },
"Marketo": {
"cats": [ 32 ],
"script": "munchkin\\.marketo\\.net/munchkin\\.js",
"env": "^Munchkin$"
},
"MaxSite CMS": { "MaxSite CMS": {
"cats": [ 1 ], "cats": [ 1 ],
"meta": { "generator": "MaxSite CMS" } "meta": { "generator": "MaxSite CMS" }
@ -999,6 +1039,11 @@
"script": "netmonitor\\.fi/nmtracker\\.js", "script": "netmonitor\\.fi/nmtracker\\.js",
"env": "^netmonitor" "env": "^netmonitor"
}, },
"New Relic": {
"cats": [ 10 ],
"html": "<script[^>]+>var NREUMQ=NREUMQ",
"env": "^NREUMQ$"
},
"Nginx": { "Nginx": {
"cats": [ 22 ], "cats": [ 22 ],
"headers": { "Server": "nginx" } "headers": { "Server": "nginx" }
@ -1014,13 +1059,19 @@
"cats": [ 6 ], "cats": [ 6 ],
"html": "(<!--Powered by nopCommerce|Powered by: <a[^>]+nopcommerce)" "html": "(<!--Powered by nopCommerce|Powered by: <a[^>]+nopcommerce)"
}, },
"Open Web Analytics": {
"cats": [ 10 ],
"html": "<!-- (Start|End) Open Web Analytics Tracker -->",
"env": "^_?owa_"
},
"OneStat": { "OneStat": {
"cats": [ 10 ], "cats": [ 10 ],
"html": "var p=\\\"http\\\"\\+\\(d\\.URL\\.indexOf\\('https:'\\)==0\\?'s':''\\)\\+\\\"://stat\\.onestat\\.com/stat\\.aspx\\?tagver" "html": "var p=\\\"http\\\"\\+\\(d\\.URL\\.indexOf\\('https:'\\)==0\\?'s':''\\)\\+\\\"://stat\\.onestat\\.com/stat\\.aspx\\?tagver"
}, },
"OpenCart": { "OpenCart": {
"cats": [ 6 ], "cats": [ 6 ],
"html": "(Powered By <a href=\\\"[^>]+OpenCart|route = getURLVar\\(\\\"route)" "html": "(Powered By <a href=\\\"[^>]+OpenCart|route = getURLVar\\(\\\"route|OpenCart is open source software and you are free to remove the powered by OpenCart if you want)",
"implies": [ "PHP" ]
}, },
"openEngine": { "openEngine": {
"cats": [ 1 ], "cats": [ 1 ],
@ -1040,10 +1091,10 @@
"cats": [ 1 ], "cats": [ 1 ],
"headers": { "X-Powered-By": "OpenNemas" } "headers": { "X-Powered-By": "OpenNemas" }
}, },
"Open Web Analytics": { "OpenText Web Solutions": {
"cats": [ 10 ], "cats": [ 1 ],
"html": "<!-- (Start|End) Open Web Analytics Tracker -->", "html": "<!--[^>]+published by Open Text Web Solutions",
"env": "^_?owa_" "implies": [ "Microsoft ASP.NET" ]
}, },
"Optimizely": { "Optimizely": {
"cats": [ 10 ], "cats": [ 10 ],
@ -1132,6 +1183,11 @@
"cats": [ 3 ], "cats": [ 3 ],
"html": "(<title>phpPgAdmin</title>|<span class=\\\"appname\\\">phpPgAdmin)" "html": "(<title>phpPgAdmin</title>|<span class=\\\"appname\\\">phpPgAdmin)"
}, },
"phpSQLiteCMS": {
"cats": [ "1" ],
"meta": { "generator": "^phpSQLiteCMS" },
"implies": [ "PHP" ]
},
"Piwik": { "Piwik": {
"cats": [ 10 ], "cats": [ 10 ],
"html": "var piwikTracker = Piwik\\.getTracker\\(", "html": "var piwikTracker = Piwik\\.getTracker\\(",
@ -1286,6 +1342,10 @@
"script": "(scriptaculous|protoaculous)\\.js", "script": "(scriptaculous|protoaculous)\\.js",
"env": "^Scriptaculous$" "env": "^Scriptaculous$"
}, },
"SDL Tridion": {
"cats": [ 1 ],
"html": "mfinfo\\.application='Tridion"
},
"Sencha Touch": { "Sencha Touch": {
"cats": [ 26, 12 ], "cats": [ 26, 12 ],
"script": "sencha-touch.*\\.js" "script": "sencha-touch.*\\.js"
@ -1308,7 +1368,6 @@
"cats": [ 6 ], "cats": [ 6 ],
"meta": { "application-name": "Shopware" }, "meta": { "application-name": "Shopware" },
"script": "shopware\\.js", "script": "shopware\\.js",
"env": "^Shopify$",
"implies": [ "PHP" ] "implies": [ "PHP" ]
}, },
"sIFR": { "sIFR": {
@ -1348,7 +1407,8 @@
}, },
"Snoobi": { "Snoobi": {
"cats": [ 10 ], "cats": [ 10 ],
"script": "snoobi\\.com/snoop\\.php" "script": "snoobi\\.com/snoop\\.php",
"env": "^snoobi$"
}, },
"SOBI 2": { "SOBI 2": {
"cats": [ 19 ], "cats": [ 19 ],
@ -1360,8 +1420,12 @@
}, },
"SPDY": { "SPDY": {
"cats": [ 19 ], "cats": [ 19 ],
"headers": { "headers": { "X-Firefox-Spdy": ".*" }
"X-Firefox-Spdy": ".*" } },
"Sphinx": {
"cats": [ 4 ],
"env": "^DOCUMENTATION_OPTIONS$",
"implies": [ "Python" ]
}, },
"SPIP": { "SPIP": {
"cats": [ 1 ], "cats": [ 1 ],
@ -1434,6 +1498,10 @@
"cats": [ 24 ], "cats": [ 24 ],
"env": "^tinyMCE$" "env": "^tinyMCE$"
}, },
"Tealeaf": {
"cats": [ 10 ],
"env": "^TeaLeaf$"
},
"TomatoCart": { "TomatoCart": {
"cats": [ 6 ], "cats": [ 6 ],
"meta": { "generator": "TomatoCart" }, "meta": { "generator": "TomatoCart" },
@ -1585,7 +1653,7 @@
}, },
"WebPublisher": { "WebPublisher": {
"cats": [ 1 ], "cats": [ 1 ],
"meta": { "generator": "WEB|Publisher" } "meta": { "generator": "WEB\\|Publisher" }
}, },
"Websale": { "Websale": {
"cats": [ 6 ], "cats": [ 6 ],

Binary file not shown.

Before

Width:  |  Height:  |  Size: 428 B

After

Width:  |  Height:  |  Size: 497 B

@ -92,6 +92,8 @@ var wappalyzer = (function() {
analyze: function(hostname, url, data) { analyze: function(hostname, url, data) {
w.log('w.analyze'); w.log('w.analyze');
url = url.split('#')[0];
data.url = url; data.url = url;
if ( w.apps == null || w.categories == null ) { if ( w.apps == null || w.categories == null ) {
@ -156,7 +158,7 @@ var wappalyzer = (function() {
} }
regex = new RegExp(w.apps[app][type].replace('/', '\\\/'), 'i'); regex = new RegExp(w.apps[app][type].replace('/', '\\\/'), 'i');
regexScript = new RegExp('<script[^>]+src=("|\')([^"\']+)\1', 'ig'); regexScript = new RegExp('<script[^>]+src=("|\')([^"\']+)', 'ig');
profiler.regexCount ++; profiler.regexCount ++;
@ -266,7 +268,7 @@ var wappalyzer = (function() {
} }
} }
w.log(apps.length + ' apps detected: ' + apps.join(', ')); w.log(apps.length + ' apps detected: ' + apps.join(', ') + ' on ' + url);
// Keep history of detected apps // Keep history of detected apps
var i, app, match; var i, app, match;

Loading…
Cancel
Save