From 3f9f3563c0dea8939fb117dc77e3b97b57e3a65c Mon Sep 17 00:00:00 2001 From: rockeynebhwani Date: Wed, 1 Sep 2021 01:30:39 +0100 Subject: [PATCH 01/12] Added 'Suiteshare' & 'Cloudflare bot managment' https://github.com/AliasIO/wappalyzer/issues/4302 https://github.com/AliasIO/wappalyzer/issues/4290 --- .../webextension/images/icons/Suiteshare.png | Bin 0 -> 1157 bytes src/technologies.json | 23 ++++++++++++++++++ 2 files changed, 23 insertions(+) create mode 100644 src/drivers/webextension/images/icons/Suiteshare.png diff --git a/src/drivers/webextension/images/icons/Suiteshare.png b/src/drivers/webextension/images/icons/Suiteshare.png new file mode 100644 index 0000000000000000000000000000000000000000..a24416501c9b4e4b4d89921f6ebe8ae319174977 GIT binary patch literal 1157 zcmV;01bX|4P)7goGc1L@*?T=!>MKq3x}|F+RAPtZ0K(q3v9A3#~J4XQtInJa04ieBb%* zxj*Mzg8$h_G4W+teoPRA2>{PA#%chRUEmpjy8ylcaGO&4Nuj(22~bt_b;j5f0I^VF z084@(+z5q2zguA}1=QEqyG2p_iZNDFL|}s}A>{pVIQ)(o-c*39s&6yK-ut(Kvv5CC zN~;0zr7{Z47eJQfPYEF}KA_-fngpd($`+B60Yy>X0`S2D4xXZ8jQtjgM4WnVg8-My z^|YpGM^?crD=RTQJ&l%@7K7W~-W~=A2a!xBEwvLuJ`RV&ucVy}0u)9013CcuB1BQF3kHMVa;J;{MNwV_uxN!mJUoOX@ntl(kn+&yDr=zCiO?H#9Wl)jB*pjE#*AyLn{B z^#b^oEx6#+*4AQkb2D!szELM8c*V9iy?`iyN_&XWgJ)uCX$hsJrG|mV#zrI(30pe7 zfFJ;uEyBcMc6JtBU0s<`{yjCt+XrjY3%CQ|H9G(w_jl zeRgy)O6ld)DR8-5k87ItqZOjJw-;k$V=0%NogEAf4Q1RN4hMWbAEMDH1VO;+>MF*^ z$L$2{QcADsYe7!4pl9GW9WO>{;{|7CW(HMNRp{^UM{{#C?p?nE@>dd9KR?dNP_`OD z5FQPMLU;87-UTpfCYum~Kp=pUlH9}M@p$07T?-~$&}j_H8^JvN&pErkFVL4`q9}^x zCGK=OvAesAva)nDd`|e#%`V)3>0yKRC&#~o<0oF<^4bfO($Dxvc0+Pq)3p2tT*uSh z-Ho1}9#mIX`s@(v;7dAl8y zJ^uBi3z|d7{LUwUF_w%(BK*e9WIAtGEX#6~5K{ETq+Jq`EI)rbltkko3FE$&B z5HOT|)3#hulmh_I7MlqZ|AZh2&U}v)%ZG`os&6vJKKzd&e3a5=ecJVWwokLBrlyK` zJbs5U)?1_yezEmYO24$i*$U8uRaG5hjPX16DHGCP0em4z(#zRvZ6=~90Yzq@Aosrk XY~+V9T6DW900000NkvXXu0mjfOY9Wp literal 0 HcmV?d00001 diff --git a/src/technologies.json b/src/technologies.json index 9a86f501c..544103da3 100644 --- a/src/technologies.json +++ b/src/technologies.json @@ -5102,6 +5102,19 @@ }, "website": "http://www.cloudflare.com" }, + "Cloudflare Bot Management": { + "cats": [ + 16 + ], + "cookies": { + "__cf_bm": "" + }, + "description": "Cloudflare bot management solution identifies and mitigates automated traffic to protect websites from bad bots.", + "icon": "CloudFlare.svg", + "implies": "Cloudflare", + "saas": true, + "website": "https://www.cloudflare.com/en-gb/products/bot-management/" + }, "Cloudflare Browser Insights": { "cats": [ 10, @@ -21953,6 +21966,16 @@ "requires": "WordPress", "website": "https://sucuri.net/" }, + "Suiteshare": { + "cats": [ + 52 + ], + "description": "Suiteshare powers conversational shopping experiences.", + "icon": "Suiteshare.png", + "saas": true, + "scripts": "static\\.suiteshare\\.com", + "website": "https://suiteshare.com/" + }, "Sulu": { "cats": [ 1 From 4bd901d4acc40233a0777577a21b14b275c27b06 Mon Sep 17 00:00:00 2001 From: rockeynebhwani Date: Thu, 2 Sep 2021 13:16:46 +0100 Subject: [PATCH 02/12] Fixed 'Wheelio' detection and recategorised 'Zonos' https://github.com/AliasIO/wappalyzer/issues/4550 --- src/technologies.json | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/src/technologies.json b/src/technologies.json index 544103da3..673ea2719 100644 --- a/src/technologies.json +++ b/src/technologies.json @@ -25018,15 +25018,12 @@ ], "description": "Wheelio is gamified pop-up/widget for ecommerce sites.", "icon": "Wheelio.png", - "js": { - "WheelEvent": "" - }, "pricing": [ "low", "recurring" ], "saas": true, - "scripts": "wheelio\\.azureedge\\.net", + "scripts": "wheelioapp\\.azureedge\\.net", "website": "https://wheelio-app.com/" }, "Whooshkaa": { @@ -26150,7 +26147,7 @@ }, "Zonos": { "cats": [ - 5 + 6 ], "description": "Zonos is a cross-border ecommerce software and app solution for companies with international business.", "icon": "Zonos.svg", From 60c4e3c7d44b9a529bca61f966257f0ceda29160 Mon Sep 17 00:00:00 2001 From: rockeynebhwani Date: Thu, 2 Sep 2021 21:23:10 +0100 Subject: [PATCH 03/12] Added 'Zoominfo chat', 'Attraqt', 'Gumstack' https://github.com/AliasIO/wappalyzer/issues/4549 https://github.com/AliasIO/wappalyzer/issues/4542 https://github.com/AliasIO/wappalyzer/issues/4541 --- .../webextension/images/icons/Attraqt.png | Bin 0 -> 25666 bytes .../webextension/images/icons/Gumstack.svg | 6 +++ src/technologies.json | 36 ++++++++++++++++++ 3 files changed, 42 insertions(+) create mode 100644 src/drivers/webextension/images/icons/Attraqt.png create mode 100644 src/drivers/webextension/images/icons/Gumstack.svg diff --git a/src/drivers/webextension/images/icons/Attraqt.png b/src/drivers/webextension/images/icons/Attraqt.png new file mode 100644 index 0000000000000000000000000000000000000000..b1921db07e1ea6e756deca89402f1bf924e9d0ba GIT binary patch literal 25666 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 + + + + + diff --git a/src/technologies.json b/src/technologies.json index 673ea2719..c308ec19e 100644 --- a/src/technologies.json +++ b/src/technologies.json @@ -2778,6 +2778,19 @@ "scripts": "cdn\\.attn\\.tv", "website": "https://www.attentivemobile.com" }, + "Attraqt": { + "cats": [ + 29, + 76 + ], + "description": "Attraqt provides AI-driven search, merchandising and personalisation solutions.", + "icon": "Attraqt.png", + "js": { + "_attraqt": "" + }, + "scripts": "cdn\\.attraqt\\.io", + "website": "https://www.attraqt.com/" + }, "AudioEye": { "cats": [ 68 @@ -9855,6 +9868,19 @@ "saas": true, "scripts": "cdn\\.gumlet\\.com", "website": "https://www.gumlet.com/" + }, + "Gumstack": { + "cats": [ + 5 + ], + "description": "Gumstack provides a live video shopping solution for eCommerce.", + "icon": "Gumstack.svg", + "js": { + "Gumstack": "" + }, + "saas": true, + "scripts": "w\\.gumstack\\.com", + "website": "https://gumstack.com/" }, "HCL Commerce": { "cats": [ @@ -26172,6 +26198,16 @@ "saas": true, "scripts": "ws\\.zoominfo\\.com", "website": "https://www.zoominfo.com/" + }, + "Zoominfo Chat": { + "cats": [ + 52 + ], + "description": "ZoomInfo chat is a live chat solution.", + "icon": "Zoominfo.svg", + "saas": true, + "scripts": "madstreetden\\.widget\\.insent\\.ai", + "website": "hhttps://www.zoominfo.com/chat" }, "Zope": { "cats": [ From 4149bb4b17c7ea0a18ddd823be9870491ad2ec45 Mon Sep 17 00:00:00 2001 From: Elbert Alias <77259+AliasIO@users.noreply.github.com> Date: Fri, 3 Sep 2021 07:04:42 +1000 Subject: [PATCH 04/12] Fix merge --- .../webextension/images/icons/newspack.png | Bin 0 -> 20461 bytes src/technologies.json | 78 +++++++++++------- 2 files changed, 47 insertions(+), 31 deletions(-) create mode 100644 src/drivers/webextension/images/icons/newspack.png diff --git a/src/drivers/webextension/images/icons/newspack.png b/src/drivers/webextension/images/icons/newspack.png new file mode 100644 index 0000000000000000000000000000000000000000..5f62202b24e290a7b5a68365304387c5889ab66e GIT binary patch literal 20461 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 Date: Fri, 20 Aug 2021 13:15:10 -0600 Subject: [PATCH 05/12] Improve link definition --- src/technologies.json | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/technologies.json b/src/technologies.json index 617a24758..4f6f15bbf 100644 --- a/src/technologies.json +++ b/src/technologies.json @@ -14902,7 +14902,13 @@ "host-header": "Newspack" }, "icon": "newspack.png", - "dom": "link[href*='newspack.pub']", + "dom": { + "link[href*='newspack.pub']": { + "attributes": { + "class": "imprint" + } + } + }, "pricing": [ "mid", "recurring" From 148f2c4c2c4698f39ca4e818fd9f38456e81de2e Mon Sep 17 00:00:00 2001 From: Adam Silverstein Date: Fri, 20 Aug 2021 13:18:03 -0600 Subject: [PATCH 06/12] Correct typo in description --- src/technologies.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/technologies.json b/src/technologies.json index 4f6f15bbf..19b30710d 100644 --- a/src/technologies.json +++ b/src/technologies.json @@ -14897,7 +14897,7 @@ "cats": [ 88 ], - "description": "Automattic's Newspack is an all-in-one platform designed for small and edium-sized news organizations that simplifies publishing and drives audience and revenue right out of the box.", + "description": "Automattic's Newspack is an all-in-one platform designed for small and medium-sized news organizations that simplifies publishing and drives audience and revenue right out of the box.", "headers": { "host-header": "Newspack" }, From 1d35f1ae866faa6852229ebe36e93c89a90a1351 Mon Sep 17 00:00:00 2001 From: Elbert Alias <77259+AliasIO@users.noreply.github.com> Date: Fri, 3 Sep 2021 07:05:31 +1000 Subject: [PATCH 07/12] Fix merge --- .../webextension/images/icons/newspack.png | Bin 20461 -> 0 bytes src/technologies.json | 9 +++++++++ 2 files changed, 9 insertions(+) delete mode 100644 src/drivers/webextension/images/icons/newspack.png diff --git a/src/drivers/webextension/images/icons/newspack.png b/src/drivers/webextension/images/icons/newspack.png deleted file mode 100644 index 5f62202b24e290a7b5a68365304387c5889ab66e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 20461 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 2c090ee2 (Improve Newspack hosting platform detection) "pricing": [ "mid", "recurring" From e6e84b6cbdedb9ffca5ed76ce6730737e8363cb1 Mon Sep 17 00:00:00 2001 From: Elbert Alias <77259+AliasIO@users.noreply.github.com> Date: Wed, 1 Sep 2021 09:49:47 +1000 Subject: [PATCH 08/12] Update Puppeteer options in NPM driver --- src/drivers/npm/driver.js | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/drivers/npm/driver.js b/src/drivers/npm/driver.js index 10412f193..cbf828d52 100644 --- a/src/drivers/npm/driver.js +++ b/src/drivers/npm/driver.js @@ -19,6 +19,8 @@ const { AWS_LAMBDA_FUNCTION_NAME, CHROMIUM_BIN, CHROMIUM_DATA_DIR } = let puppeteer let chromiumArgs = [ '--no-sandbox', + '--single-process', + '--no-zygote', '--disable-gpu', '--ignore-certificate-errors', '--allow-running-insecure-content', From 38aaffd23cec197cf1bbd53731db9a656280060d Mon Sep 17 00:00:00 2001 From: Elbert Alias <77259+AliasIO@users.noreply.github.com> Date: Fri, 3 Sep 2021 07:07:50 +1000 Subject: [PATCH 09/12] Fix merge --- src/drivers/npm/package.json | 2 +- src/drivers/webextension/manifest.json | 2 +- src/package.json | 2 +- src/technologies.json | 583 +++++++++++++------------ 4 files changed, 296 insertions(+), 293 deletions(-) diff --git a/src/drivers/npm/package.json b/src/drivers/npm/package.json index 238094c36..1c0fc7b80 100644 --- a/src/drivers/npm/package.json +++ b/src/drivers/npm/package.json @@ -13,7 +13,7 @@ "software" ], "homepage": "https://www.wappalyzer.com/", - "version": "6.8.1", + "version": "6.8.2", "author": "Wappalyzer", "license": "MIT", "repository": { diff --git a/src/drivers/webextension/manifest.json b/src/drivers/webextension/manifest.json index 496b3166f..c6bf77ca1 100644 --- a/src/drivers/webextension/manifest.json +++ b/src/drivers/webextension/manifest.json @@ -4,7 +4,7 @@ "author": "Wappalyzer", "homepage_url": "https://www.wappalyzer.com/", "description": "Identify web technologies", - "version": "6.8.1", + "version": "6.8.2", "default_locale": "en", "manifest_version": 2, "icons": { diff --git a/src/package.json b/src/package.json index 277120117..d74d6762d 100644 --- a/src/package.json +++ b/src/package.json @@ -13,7 +13,7 @@ "software" ], "homepage": "https://www.wappalyzer.com/", - "version": "6.8.1", + "version": "6.8.2", "author": "Wappalyzer", "license": "MIT", "repository": { diff --git a/src/technologies.json b/src/technologies.json index 7404aa170..1e0778f5e 100644 --- a/src/technologies.json +++ b/src/technologies.json @@ -2320,19 +2320,6 @@ "implies": "Node.js", "website": "http://apostrophecms.org" }, - "Appcues": { - "cats": [ - 58 - ], - "description": "Appcues is a solution for measuring and improving product adoption.", - "icon": "Appcues.png", - "js": { - "Appcues": "" - }, - "saas": true, - "scripts": "fast\\.appcues\\.com", - "website": "https://www.appcues.com/" - }, "AppDynamics": { "cats": [ 10, @@ -2369,6 +2356,19 @@ "website": "http://appnexus.com", "xhr": "prebid\\.adnxs\\.com" }, + "Appcues": { + "cats": [ + 58 + ], + "description": "Appcues is a solution for measuring and improving product adoption.", + "icon": "Appcues.png", + "js": { + "Appcues": "" + }, + "saas": true, + "scripts": "fast\\.appcues\\.com", + "website": "https://www.appcues.com/" + }, "Appian": { "cats": [ 62 @@ -2384,12 +2384,15 @@ 41 ], "description": "Apple Pay is a mobile payment and digital wallet service by Apple that allows users to make payments in person, in iOS apps, and on the web.", - "dom": [ "[aria-labelledby='pi-apple_pay']", "script#apple-pay" ], + "dom": [ + "[aria-labelledby='pi-apple_pay']", + "script#apple-pay" + ], "icon": "Apple.svg", "js": { "ApplePay": "", - "enableApplePay": "", - "dw.applepay": "" + "dw.applepay": "", + "enableApplePay": "" }, "website": "https://www.apple.com/apple-pay" }, @@ -5642,16 +5645,6 @@ "scripts": "\\.convertexperiments\\.com/js", "website": "https://www.convert.com" }, - "Convertcart": { - "cats": [ - 32 - ], - "description": "SConvertCart helps online businesses deliver outstanding experiences to customers throughout their journey.", - "icon": "Convertcart.svg", - "saas": true, - "scripts": "cdn\\.convertcart\\.com", - "website": "https://www.convertcart.com/" - }, "ConvertFlow": { "cats": [ 10, @@ -5688,6 +5681,16 @@ "scripts": "\\.convertkit\\.com", "website": "https://convertkit.com" }, + "Convertcart": { + "cats": [ + 32 + ], + "description": "SConvertCart helps online businesses deliver outstanding experiences to customers throughout their journey.", + "icon": "Convertcart.svg", + "saas": true, + "scripts": "cdn\\.convertcart\\.com", + "website": "https://www.convertcart.com/" + }, "ConveyThis": { "cats": [ 89 @@ -5807,21 +5810,6 @@ ], "website": "https://corebine.com" }, - "core-js": { - "cats": [ - 59 - ], - "description": "core-js is a modular standard library for JavaScript, with polyfills for cutting-edge ECMAScript features.", - "js": { - "__core-js_shared__": "", - "__core-js_shared__.versions[0].version": "^(.+)$\\;version:\\1", - "core": "", - "core.version": "^(.+)$\\;version:\\1", - "_babelPolyfill": "" - }, - "oss": true, - "website": "https://github.com/zloirock/core-js" - }, "Cosmoshop": { "cats": [ 6 @@ -6268,8 +6256,8 @@ "icon": "DataTables.png", "implies": "jQuery", "js": { - "jQuery.fn.dataTable.version": "^(.+)$\\;version:\\1", - "$.fn.dataTable.version": "^(.+)$\\;version:\\1" + "$.fn.dataTable.version": "^(.+)$\\;version:\\1", + "jQuery.fn.dataTable.version": "^(.+)$\\;version:\\1" }, "oss": true, "scripts": "dataTables.*\\.js", @@ -7137,16 +7125,16 @@ ], "description": "EasyStore is a multi sales channel ecommerce platform.", "icon": "EasyStore.svg", - "saas": true, "js": { "EasyStore": "" }, - "scripts": "\\.easystore\\.co/", "pricing": [ "freemium", "low", "recurring" ], + "saas": true, + "scripts": "\\.easystore\\.co/", "website": "https://www.easystore.co" }, "Ecwid": { @@ -7768,8 +7756,8 @@ "implies": "jQuery", "js": { "$.fancybox.version": "^(.+)$\\;version:\\1", - "jQuery.fancybox.version": "^(.+)$\\;version:\\1", - "Fancybox.version": "^(.+)$\\;version:\\1" + "Fancybox.version": "^(.+)$\\;version:\\1", + "jQuery.fancybox.version": "^(.+)$\\;version:\\1" }, "scripts": "jquery\\.fancybox(?:\\.pack|\\.min)?\\.js(?:\\?v=([\\d.]+))?$\\;version:\\1", "website": "http://fancyapps.com/fancybox" @@ -8358,33 +8346,6 @@ "scripts": "cartjs\\.php\\?(?:.*&)?s=[^&]*myfortune3cart\\.com", "website": "http://fortune3.com" }, - "Four": { - "cats": [ - 41, - 91 - ], - "description": "Pay with four is a Buy now pay later solution.", - "icon": "Four.svg", - "js": { - "Four": "" - }, - "saas": true, - "scripts": "scripts\\.paywithfour\\.com", - "website": "https://paywithfour.com/" - }, - "Foursixty": { - "cats": [ - 5 - ], - "description": "Foursixty is a widget which turns Instagram content and UGC into shoppable galleries.", - "icon": "Foursixty.png", - "js": { - "FoursixtyEmbed": "" - }, - "saas": true, - "scripts": "foursixty\\.com", - "website": "https://foursixty.com/" - }, "Foswiki": { "cats": [ 8 @@ -8413,6 +8374,33 @@ }, "website": "http://foswiki.org" }, + "Four": { + "cats": [ + 41, + 91 + ], + "description": "Pay with four is a Buy now pay later solution.", + "icon": "Four.svg", + "js": { + "Four": "" + }, + "saas": true, + "scripts": "scripts\\.paywithfour\\.com", + "website": "https://paywithfour.com/" + }, + "Foursixty": { + "cats": [ + 5 + ], + "description": "Foursixty is a widget which turns Instagram content and UGC into shoppable galleries.", + "icon": "Foursixty.png", + "js": { + "FoursixtyEmbed": "" + }, + "saas": true, + "scripts": "foursixty\\.com", + "website": "https://foursixty.com/" + }, "Foxy.io": { "cats": [ 6 @@ -8532,18 +8520,6 @@ ], "website": "http://froala.com/wysiwyg-editor" }, - "Frontastic": { - "cats": [ - 51 - ], - "description": "Frontastic is a Commerce Frontend Platform that unites business and development teams to build commerce sites on headless.", - "headers": { - "frontastic-request-id": "" - }, - "icon": "Frontastic.png", - "saas": true, - "website": "https://www.frontastic.cloud/" - }, "FrontPage": { "cats": [ 20 @@ -8557,6 +8533,18 @@ }, "website": "http://office.microsoft.com/frontpage" }, + "Frontastic": { + "cats": [ + 51 + ], + "description": "Frontastic is a Commerce Frontend Platform that unites business and development teams to build commerce sites on headless.", + "headers": { + "frontastic-request-id": "" + }, + "icon": "Frontastic.png", + "saas": true, + "website": "https://www.frontastic.cloud/" + }, "Frontity": { "cats": [ 12, @@ -9404,8 +9392,8 @@ "js": { "webVitals.getCLS": "" }, - "scripts": "web-vitals@([\\d.]+)/dist/web-vitals.*\\.js\\;version:\\1", "oss": true, + "scripts": "web-vitals@([\\d.]+)/dist/web-vitals.*\\.js\\;version:\\1", "website": "https://github.com/GoogleChrome/web-vitals" }, "Google Font API": { @@ -11560,12 +11548,12 @@ ], "description": "Justo is a subscription-based software that allows anyone to set up an online store and sell their products with delivery options.", "icon": "Justo.svg", - "scripts": "\\.getjusto\\.com/", - "saas": true, "pricing": [ "high", "recurring" ], + "saas": true, + "scripts": "\\.getjusto\\.com/", "website": "https://www.getjusto.com" }, "K2": { @@ -11900,16 +11888,16 @@ ], "description": "Kiwi Sizing is a size chart and a recommender plugin on the Shopify platform.", "icon": "Kiwi Sizing.png", - "saas": true, "js": { "KiwiSizing": "" }, - "scripts": "cdn\\.static\\.kiwisizing\\.com/", "pricing": [ "freemium", "low", "recurring" ], + "saas": true, + "scripts": "cdn\\.static\\.kiwisizing\\.com/", "website": "https://www.kiwisizing.com" }, "Klarna Checkout": { @@ -12871,36 +12859,36 @@ "scripts": "lodash.*\\.js", "website": "http://www.lodash.com" }, + "LogRocket": { + "cats": [ + 10 + ], + "description": "LogRocket records videos of user sessions with logs and network data.", + "icon": "LogRocket.svg", + "scripts": [ + "cdn\\.logrocket\\.(com|io)", + "cdn\\.lr-ingest\\.io" + ], + "website": "https://logrocket.com/" + }, "Loggly": { "cats": [ 10 ], "description": "Loggly is a cloud-based log management service provider.", - "icon": "Loggly.svg", "dom": "link[href*='.loggly.com']", + "icon": "Loggly.svg", "js": { "LogglyTracker": "" }, - "scripts": "\\.loggly\\.com/", - "saas": true, "pricing": [ "mid", "recurring" ], + "saas": true, + "scripts": "\\.loggly\\.com/", "website": "https://www.loggly.com" }, - "LogRocket": { - "cats": [ - 10 - ], - "description": "LogRocket records videos of user sessions with logs and network data.", - "icon": "LogRocket.svg", - "scripts": [ - "cdn\\.logrocket\\.(com|io)", - "cdn\\.lr-ingest\\.io" - ], - "website": "https://logrocket.com/" - }, "Login with Amazon": { "cats": [ 69 @@ -14897,27 +14885,12 @@ "cats": [ 88 ], -<<<<<<< HEAD - "description": "Automattic's Newspack is an all-in-one platform designed for small and medium-sized news organizations that simplifies publishing and drives audience and revenue right out of the box.", - "headers": { - "host-header": "Newspack" - }, - "icon": "newspack.png", - "dom": { - "link[href*='newspack.pub']": { - "attributes": { - "class": "imprint" - } - } - }, -======= "description": "Automattic's Newspack service is an all-in-one platform designed for small and medium-sized news organizations that simplifies publishing and drives audience and revenue right out of the box.", "headers": { "host-header": "Newspack" }, "icon": "NewspackLogo.png", "implies": "Newspack", ->>>>>>> 2c090ee2 (Improve Newspack hosting platform detection) "pricing": [ "mid", "recurring" @@ -15947,8 +15920,8 @@ ], "description": "Orckestra is a provider of cloud-based digital unified and omnichannel commerce solutions for retail and manufacturing industries.", "headers": { - "x-powered-by": "Orckestra", - "x-orckestra-commerce": ".NET Client" + "x-orckestra-commerce": ".NET Client", + "x-powered-by": "Orckestra" }, "icon": "Orckestra.svg", "implies": "Microsoft ASP.NET", @@ -15969,16 +15942,16 @@ 6 ], "description": "OrderYOYO is an online ordering, payment, and marketing software solution provider.", - "icon": "OrderYOYO.png", "dom": "a[href*='.orderyoyo.com/'][target='_blank']", + "icon": "OrderYOYO.png", "js": { "SmartBannerOY": "" }, - "saas": true, "pricing": [ "low", "recurring" ], + "saas": true, "website": "https://orderyoyo.com" }, "Oribi": { @@ -16484,17 +16457,6 @@ "scripts": "app\\.paykickstart\\.com", "website": "https://paykickstart.com" }, - "Payl8r": { - "cats": [ - 41, - 91 - ], - "description": "PayL8r.com offers repayment plans and online finance which allow you to purchase products online.", - "icon": "Payl8r.svg", - "saas": true, - "scripts": "payl8r\\.com", - "website": "https://payl8r.com/" - }, "PayPal": { "cats": [ 41 @@ -16528,6 +16490,17 @@ "website": "https://paypal.com", "xhr": "\\.paypal\\.com" }, + "Payl8r": { + "cats": [ + 41, + 91 + ], + "description": "PayL8r.com offers repayment plans and online finance which allow you to purchase products online.", + "icon": "Payl8r.svg", + "saas": true, + "scripts": "payl8r\\.com", + "website": "https://payl8r.com/" + }, "Peek": { "cats": [ 5, @@ -17284,16 +17257,29 @@ "description": "Postscript is an SMS and MMS marketing platform for Shopify stores.", "icon": "Postscript.svg", "js": { - "postscript.getSubscriberId": "", - "Postscript.isSubscriberInputChecked": "" + "Postscript.isSubscriberInputChecked": "", + "postscript.getSubscriberId": "" }, - "scripts": "sdk\\.postscript\\.io/", - "saas": true, "pricing": [ "payg" ], + "saas": true, + "scripts": "sdk\\.postscript\\.io/", "website": "https://www.postscript.io" }, + "PowerReviews": { + "cats": [ + 90 + ], + "description": "Powerreviews is a provider of UGC solutions like ratings and reviews.", + "icon": "PowerReviews.png", + "js": { + "POWERREVIEWS": "" + }, + "saas": true, + "scripts": "ui\\.powerreviews\\.com", + "website": "https://www.powerreviews.com/" + }, "Powerboutique": { "cats": [ 6 @@ -17487,17 +17473,17 @@ "description": "Privy is a all-in-one marketing automation platform for ecommerce.", "icon": "Privy.svg", "js": { + "Privy": "", "PrivyWidget": "", - "privySettings": "", - "Privy": "" + "privySettings": "" }, - "scripts": "\\.privy\\.com/", - "saas": true, "pricing": [ "low", "freemium", "recurring" ], + "saas": true, + "scripts": "\\.privy\\.com/", "website": "https://www.privy.com" }, "Profitwell": { @@ -17886,8 +17872,8 @@ "description": "Quicklink is a JS library which aims to be a drop-in solution for sites to prefetch links based on what is in the user's viewport", "icon": "Quicklink.svg", "js": { - "quicklink": "", - "drupalSettings.quicklink": "" + "drupalSettings.quicklink": "", + "quicklink": "" }, "scripts": "quicklink@([\\d.]+)/dist/quicklink.*\\.js\\;version:\\1", "website": "https://getquick.link/" @@ -18168,6 +18154,21 @@ }, "website": "http://www.rayo.ir" }, + "Razorpay": { + "cats": [ + 41 + ], + "description": "Razorpay is a provider of an online payment gateway that allows businesses to accept, process, and disburse payments.", + "icon": "Razorpay.svg", + "js": { + "Razorpay": "" + }, + "pricing": [ + "payg" + ], + "scripts": "checkout\\.razorpay\\.com", + "website": "https://razorpay.com/" + }, "ReDoc": { "cats": [ 4 @@ -19024,10 +19025,10 @@ "].*hybris.*.js" ], "icon": "SAP.svg", + "implies": "Java", "js": { "smartedit": "" }, - "implies": "Java", "pricing": [ "poa" ], @@ -19107,7 +19108,18 @@ }, "website": "http://www.simplemachines.org" }, - "SOBI 2": { + "SMSBump": { + "cats": [ + 32 + ], + "description": "SMS Bump is a SMS marketing and automations app.", + "icon": "Smsbump.png", + "js": { + "SMSBumpForm": "" + }, + "website": "https://smsbump.com/" + }, + "SOBI 2": { "cats": [ 19 ], @@ -19366,8 +19378,8 @@ 6 ], "cookies": { - "dwsid": "", - "dw_dnt": "" + "dw_dnt": "", + "dwsid": "" }, "description": "Salesforce Commerce Cloud is a cloud-based software-as-a-service (SaaS) ecommerce solution.", "headers": { @@ -19822,17 +19834,17 @@ 75 ], "description": "Sendinblue is an email marketing solution for small and medium-sized businesses that want to send and automate email marketing campaigns.", - "icon": "Sendinblue.svg", "dom": "iframe[src*='sibautomation.com/']", + "icon": "Sendinblue.svg", "js": { "sendinblue": "" }, - "scripts": "sib(?:automation|forms)\\.com/", - "saas": true, "pricing": [ "freemium", "payg" ], + "saas": true, + "scripts": "sib(?:automation|forms)\\.com/", "website": "https://www.sendinblue.com" }, "Sensors Data": { @@ -19996,8 +20008,8 @@ "description": "Sezzle offers a buy-now-pay-later solution.", "icon": "Sezzle.svg", "js": { - "sezzle_footer_images": "", - "AwesomeSezzle": "" + "AwesomeSezzle": "", + "sezzle_footer_images": "" }, "saas": true, "scripts": "widget\\.sezzle\\.in", @@ -20581,6 +20593,25 @@ "icon": "Simplebo.png", "website": "https://www.simplebo.fr" }, + "Sirclo": { + "cats": [ + 6 + ], + "description": "Sirclo offers online business solutions.", + "headers": { + "X-Powered-By": "Sirclo" + }, + "icon": "Sirclo.svg", + "pricing": [ + "low", + "freemium", + "recurring" + ], + "saas": true, + "scripts": "template\\.sirclocdn\\.com/", + "url": "^https?//.+\\.sirclo\\.me", + "website": "https://sirclo.com/" + }, "Site Kit": { "cats": [ 10, @@ -20643,6 +20674,16 @@ "icon": "siteground.svg", "website": "https://www.siteground.com" }, + "SiteJabber": { + "cats": [ + 90 + ], + "description": "Sitejabber is the leading destination for customer ratings and reviews of businesses. Consumers find ratings and read reviews to ensure they buy from the best companies.", + "icon": "SiteJabber.svg", + "saas": true, + "scripts": "biz\\.sitejabber\\.com", + "website": "https://www.sitejabber.com/" + }, "SiteMinder": { "cats": [ 5, @@ -20722,16 +20763,6 @@ "scripts": "siteglide\\.js", "website": "https://www.siteglide.com" }, - "SiteJabber": { - "cats": [ - 90 - ], - "description": "Sitejabber is the leading destination for customer ratings and reviews of businesses. Consumers find ratings and read reviews to ensure they buy from the best companies.", - "icon": "SiteJabber.svg", - "saas": true, - "scripts": "biz\\.sitejabber\\.com", - "website": "https://www.sitejabber.com/" - }, "Sitevision CMS": { "cats": [ 1 @@ -21008,17 +21039,6 @@ "scripts": "js\\.smile\\.io/v([\\d.]+)/\\;version:\\1", "website": "https://smile.io" }, - "SMSBump": { - "cats": [ - 32 - ], - "description": "SMS Bump is a SMS marketing and automations app.", - "icon": "Smsbump.png", - "js": { - "SMSBumpForm": "" - }, - "website": "https://smsbump.com/" - }, "SmugMug": { "cats": [ 7 @@ -21536,20 +21556,6 @@ "icon": "Splunk.png", "website": "http://splunk.com" }, - "Spotii": { - "cats": [ - 41, - 91 - ], - "description": "Spotii is a tech-enabled payments platform where anyone can Shop Now and Pay Later with absolutely zero interest or cost.", - "icon": "Spotii.svg", - "js": { - "spotiiConfig": "" - }, - "saas": true, - "scripts": "widget\\.spotii\\.me", - "website": "https://www.spotii.com/" - }, "SpotX": { "cats": [ 36 @@ -21571,6 +21577,20 @@ "website": "https://www.spotx.tv", "xhr": "\\.spotx(?:change|cdn)\\.com" }, + "Spotii": { + "cats": [ + 41, + 91 + ], + "description": "Spotii is a tech-enabled payments platform where anyone can Shop Now and Pay Later with absolutely zero interest or cost.", + "icon": "Spotii.svg", + "js": { + "spotiiConfig": "" + }, + "saas": true, + "scripts": "widget\\.spotii\\.me", + "website": "https://www.spotii.com/" + }, "Spree": { "cats": [ 6 @@ -22408,6 +22428,27 @@ "scripts": "secure\\.ap\\.tnspayments\\.com", "website": "https://tnsi.com/products/payments/" }, + "TRUENDO": { + "cats": [ + 67 + ], + "description": "TRUENDO is a GDPR compliance software.", + "icon": "TRUENDO.svg", + "js": { + "Truendo": "", + "TruendoCookieControlCallback": "" + }, + "pricing": [ + "low", + "recurring" + ], + "saas": true, + "scripts": [ + "cdn\\.priv\\.center/", + "cdn\\.truendo\\.com/" + ], + "website": "https://truendo.com" + }, "TWiki": { "cats": [ 8 @@ -22894,6 +22935,20 @@ ], "website": "http://thelia.net" }, + "Thimatic": { + "cats": [ + 90 + ], + "description": "Thimatic is a Shopify app for product reviews.", + "icon": "Thimatic.png", + "pricing": [ + "low", + "recurring" + ], + "saas": true, + "scripts": "thimatic-apps\\.com/product_review/.*?v=([\\d.]+)\\;version:\\1", + "website": "https://thimatic-apps.com/" + }, "ThinkPHP": { "cats": [ 18 @@ -23304,36 +23359,6 @@ "website": "https://triplelift.com", "xhr": "\\.3lift\\.com" }, - "TRUENDO": { - "cats": [ - 67 - ], - "description": "TRUENDO is a GDPR compliance software.", - "icon": "TRUENDO.svg", - "js": { - "Truendo": "", - "TruendoCookieControlCallback": "" - }, - "scripts": [ - "cdn\\.priv\\.center/", - "cdn\\.truendo\\.com/" - ], - "saas": true, - "pricing": [ - "low", - "recurring" - ], - "website": "https://truendo.com" - }, - "TrueCommerce": { - "cats": [ - 6 - ], - "description": "TrueCommerce is an eCommerce platform.", - "icon": "Truecommerce.svg", - "scripts": "cdn\\.nexternal\\.com/", - "website": "https://www.truecommerce.com" - }, "TruValidate": { "cats": [ 16, @@ -23351,6 +23376,15 @@ ], "website": "https://www.transunion.com/solution/truvalidate" }, + "TrueCommerce": { + "cats": [ + 6 + ], + "description": "TrueCommerce is an eCommerce platform.", + "icon": "Truecommerce.svg", + "scripts": "cdn\\.nexternal\\.com/", + "website": "https://www.truecommerce.com" + }, "TrustArc": { "cats": [ 67 @@ -24015,9 +24049,9 @@ ], "cookies": { "VtexFingerPrint": "", + "VtexStoreVersion": "", "VtexWorkspace": "", - "vtex_session": "", - "VtexStoreVersion": "" + "vtex_session": "" }, "description": "VTEX is an ecommerce software that manages multiple online stores.", "headers": { @@ -24466,6 +24500,22 @@ "saas": true, "website": "https://www.voracio.co.uk" }, + "Vue-Storefront": { + "cats": [ + 6, + 12 + ], + "description": "Vue Storefront is a frontend platform for headless commerce.", + "icon": "vue-storefront.svg", + "implies": "Vue.js", + "meta": { + "generator": "^Vue Storefront\\ [0-9.]+?$;version=2" + }, + "scripts": [ + "(?:\\/([\\d.]+))?\\/vsf-layout;version=1" + ], + "website": "https://www.vuestorefront.io/" + }, "Vue.js": { "cats": [ 12 @@ -24482,23 +24532,7 @@ ], "website": "https://vuejs.org" }, - "Vue-Storefront": { - "cats": [ - 6, - 12 - ], - "description": "Vue Storefront is a frontend platform for headless commerce.", - "icon": "vue-storefront.svg", - "implies": "Vue.js", - "scripts": [ - "(?:\\/([\\d.]+))?\\/vsf-layout;version=1" - ], - "meta": { - "generator": "^Vue Storefront\\ [0-9.]+?$;version=2" - }, - "website": "https://www.vuestorefront.io/" - }, - "VuePress": { + "VuePress": { "cats": [ 57 ], @@ -26098,11 +26132,6 @@ "description": "Zip is a payment service that lets you receive your purchase now and spread the total cost over a interest-free payment schedule.", "dom": "link[href*='widgets.quadpay.com/'], div[data-quadpay-src*='.quadpay.com/']", "icon": "zip_pay.svg", - "scripts": [ - "quadpay\\.com", - "static\\.zipmoney\\.com\\.au", - "zip\\.co" - ], "js": { "QuadPayShopify": "", "quadpayID": "" @@ -26111,6 +26140,11 @@ "payg" ], "saas": true, + "scripts": [ + "quadpay\\.com", + "static\\.zipmoney\\.com\\.au", + "zip\\.co" + ], "website": "https://www.zip.co/" }, "Zipkin": { @@ -26408,6 +26442,21 @@ "website": "https://commercelayer.io", "xhr": "\\.commercelayer\\.io" }, + "core-js": { + "cats": [ + 59 + ], + "description": "core-js is a modular standard library for JavaScript, with polyfills for cutting-edge ECMAScript features.", + "js": { + "__core-js_shared__": "", + "__core-js_shared__.versions[0].version": "^(.+)$\\;version:\\1", + "_babelPolyfill": "", + "core": "", + "core.version": "^(.+)$\\;version:\\1" + }, + "oss": true, + "website": "https://github.com/zloirock/core-js" + }, "db-ip": { "cats": [ 79 @@ -27749,20 +27798,6 @@ "website": "https://www.thetradedesk.com", "xhr": "adsvr\\.org" }, - "Thimatic": { - "cats": [ - 90 - ], - "description": "Thimatic is a Shopify app for product reviews.", - "icon": "Thimatic.png", - "scripts": "thimatic-apps\\.com/product_review/.*?v=([\\d.]+)\\;version:\\1", - "saas": true, - "pricing": [ - "low", - "recurring" - ], - "website": "https://thimatic-apps.com/" - }, "three.js": { "cats": [ 25 @@ -27979,38 +28014,6 @@ "generator": "xt:Commerce" }, "website": "https://www.xt-commerce.com" - }, - "Razorpay" : { - "cats": [ - 41 - ], - "description": "Razorpay is a provider of an online payment gateway that allows businesses to accept, process, and disburse payments.", - "icon": "Razorpay.svg", - "js": { - "Razorpay": "" - }, - "scripts": "checkout\\.razorpay\\.com", - "pricing": ["payg"], - "website": "https://razorpay.com/" - }, - "Sirclo" : { - "cats": [ - 6 - ], - "description": "Sirclo offers online business solutions.", - "icon": "Sirclo.svg", - "headers": { - "X-Powered-By": "Sirclo" - }, - "scripts": "template\\.sirclocdn\\.com/", - "pricing": [ - "low", - "freemium", - "recurring" - ], - "saas": true, - "url": "^https?//.+\\.sirclo\\.me", - "website": "https://sirclo.com/" } } } From 24045b3821e41f9d29513baeb28bb7bae6da492c Mon Sep 17 00:00:00 2001 From: Elbert Alias <77259+AliasIO@users.noreply.github.com> Date: Fri, 3 Sep 2021 07:08:25 +1000 Subject: [PATCH 10/12] Fix merge --- src/drivers/npm/package.json | 2 +- src/drivers/webextension/manifest.json | 2 +- src/package.json | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/drivers/npm/package.json b/src/drivers/npm/package.json index 1c0fc7b80..402f6cfb5 100644 --- a/src/drivers/npm/package.json +++ b/src/drivers/npm/package.json @@ -13,7 +13,7 @@ "software" ], "homepage": "https://www.wappalyzer.com/", - "version": "6.8.2", + "version": "6.8.3", "author": "Wappalyzer", "license": "MIT", "repository": { diff --git a/src/drivers/webextension/manifest.json b/src/drivers/webextension/manifest.json index c6bf77ca1..41becdbf4 100644 --- a/src/drivers/webextension/manifest.json +++ b/src/drivers/webextension/manifest.json @@ -4,7 +4,7 @@ "author": "Wappalyzer", "homepage_url": "https://www.wappalyzer.com/", "description": "Identify web technologies", - "version": "6.8.2", + "version": "6.8.3", "default_locale": "en", "manifest_version": 2, "icons": { diff --git a/src/package.json b/src/package.json index d74d6762d..1461fd74e 100644 --- a/src/package.json +++ b/src/package.json @@ -13,7 +13,7 @@ "software" ], "homepage": "https://www.wappalyzer.com/", - "version": "6.8.2", + "version": "6.8.3", "author": "Wappalyzer", "license": "MIT", "repository": { From 31d8574f295b676e52ad31dd45bf6618d14d6615 Mon Sep 17 00:00:00 2001 From: Elbert Alias <77259+AliasIO@users.noreply.github.com> Date: Thu, 2 Sep 2021 11:03:14 +1000 Subject: [PATCH 11/12] Fix for too many technologies detected --- src/drivers/npm/driver.js | 9 +++++++-- src/drivers/webextension/js/inject.js | 6 +++--- 2 files changed, 10 insertions(+), 5 deletions(-) diff --git a/src/drivers/npm/driver.js b/src/drivers/npm/driver.js index cbf828d52..de45d7727 100644 --- a/src/drivers/npm/driver.js +++ b/src/drivers/npm/driver.js @@ -67,11 +67,16 @@ function getJs(page, technologies = Wappalyzer.technologies) { const value = chain .split('.') .reduce( - (value, method) => (value ? value[method] : undefined), + (value, method) => + value && + value instanceof Object && + Object.prototype.hasOwnProperty.call(value, method) + ? value[method] + : '__UNDEFINED__', window ) - if (typeof value !== 'undefined') { + if (value !== '__UNDEFINED__') { technologies.push({ name, chain, diff --git a/src/drivers/webextension/js/inject.js b/src/drivers/webextension/js/inject.js index 63d81ec45..c554dccfb 100644 --- a/src/drivers/webextension/js/inject.js +++ b/src/drivers/webextension/js/inject.js @@ -14,7 +14,7 @@ postMessage({ wappalyzer: { js: technologies.reduce((technologies, { name, chains }) => { - chains.forEach((chain) => { + chains.forEach((chain, index) => { const value = chain .split('.') .reduce( @@ -23,11 +23,11 @@ value instanceof Object && Object.prototype.hasOwnProperty.call(value, method) ? value[method] - : undefined, + : '__UNDEFINED__', window ) - if (value !== undefined) { + if (value !== '__UNDEFINED__') { technologies.push({ name, chain, From dfb3a195912109cafe975be17602f6a1321bf241 Mon Sep 17 00:00:00 2001 From: Elbert Alias <77259+AliasIO@users.noreply.github.com> Date: Thu, 2 Sep 2021 11:08:59 +1000 Subject: [PATCH 12/12] Build v6.8.4 --- src/drivers/npm/package.json | 2 +- src/drivers/webextension/js/driver.js | 8 ++++---- src/drivers/webextension/manifest.json | 2 +- src/package.json | 2 +- src/technologies.json | 2 +- 5 files changed, 8 insertions(+), 8 deletions(-) diff --git a/src/drivers/npm/package.json b/src/drivers/npm/package.json index 402f6cfb5..cca7c90c9 100644 --- a/src/drivers/npm/package.json +++ b/src/drivers/npm/package.json @@ -13,7 +13,7 @@ "software" ], "homepage": "https://www.wappalyzer.com/", - "version": "6.8.3", + "version": "6.8.4", "author": "Wappalyzer", "license": "MIT", "repository": { diff --git a/src/drivers/webextension/js/driver.js b/src/drivers/webextension/js/driver.js index eadd1abe8..3e498f62a 100644 --- a/src/drivers/webextension/js/driver.js +++ b/src/drivers/webextension/js/driver.js @@ -102,10 +102,10 @@ const Driver = { 'https://www.wappalyzer.com/installed/?utm_source=installed&utm_medium=extension&utm_campaign=wappalyzer' ) } else if (version !== previous && upgradeMessage) { - open( - `https://www.wappalyzer.com/upgraded/?utm_source=upgraded&utm_medium=extension&utm_campaign=wappalyzer`, - false - ) + // open( + // `https://www.wappalyzer.com/upgraded/?utm_source=upgraded&utm_medium=extension&utm_campaign=wappalyzer`, + // false + // ) } await setOption('version', version) diff --git a/src/drivers/webextension/manifest.json b/src/drivers/webextension/manifest.json index 41becdbf4..9d66dd2c7 100644 --- a/src/drivers/webextension/manifest.json +++ b/src/drivers/webextension/manifest.json @@ -4,7 +4,7 @@ "author": "Wappalyzer", "homepage_url": "https://www.wappalyzer.com/", "description": "Identify web technologies", - "version": "6.8.3", + "version": "6.8.4", "default_locale": "en", "manifest_version": 2, "icons": { diff --git a/src/package.json b/src/package.json index 1461fd74e..757afd30a 100644 --- a/src/package.json +++ b/src/package.json @@ -13,7 +13,7 @@ "software" ], "homepage": "https://www.wappalyzer.com/", - "version": "6.8.3", + "version": "6.8.4", "author": "Wappalyzer", "license": "MIT", "repository": { diff --git a/src/technologies.json b/src/technologies.json index 1e0778f5e..763c66725 100644 --- a/src/technologies.json +++ b/src/technologies.json @@ -28016,4 +28016,4 @@ "website": "https://www.xt-commerce.com" } } -} +} \ No newline at end of file