LP-MSH-Scanner/cms-vss.php
2020-01-27 16:16:19 +01:00

418 lines
26 KiB
PHP
Raw Permalink Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#!/usr/bin/php
<?php
/*
* CMS Version Scanner Script - shell mode
* Version 1.0
* by Malin Cenusa
* Send bugz, ideas, beers, flowers, nudes or whatever to malin@cenusa.me
*
* TODO:
* - Fix remaining script versions
* - Add the rest of the scripts from Softaculous - work in progress
* - Add scripts from outside Softaculous - work in progress
* - Add "Current Status" - work in progress
* - get Cake.PHP version from /cake/asari/lib/Cake/VERSION.txt using this snippet?
==================
$versionFile = file(CAKE . 'VERSION.txt');
$config['Cake.version'] = trim(array_pop($versionFile));
return $config;
==================
* - add SunShop if possible > creat167
*/
if ($_SERVER['argc'] >= 2) {
echo "Scanning for CMS scripts under /home/".$argv[1]."/public_html/\n";
} else {
die("You must specify the username for this to work out!\n");
}
$versions = array(
array("Wordpress", "/wp-includes/version.php", "\$wp_version =", "Maintained"),
array("Drupal 6/7", "/modules/system/system.info", "version = ", "EOL"),
array("Drupal 8", "/core/modules/system/system.info.yml", "version: '", "Maintained"),
array("osCommerce", "/includes/application_top.php", "define('PROJECT_VERSION', 'osCommerce", "Maintained"),
array("phpBB", "/includes/constants.php", "define('PHPBB_VERSION',", "Maintained"),
array("SMF", "/index.php", "\$forum_version = 'SMF", "Maintained"),
array("Gallery2", "/modules/gallery/helpers/gallery.php", "const VERSION =", "EOL"),
array("Gallery", "/config.php", "\$gallery->app->config_version =", "EOL"),
array("Gallery2", "/modules/core/module.inc", "\$this->setGalleryVersion(", "EOL"),
array("Coppermine", "/versioncheck.inc.php", "Coppermine version:", ""),
array("Coppermine", "include/init.inc.php", "define('COPPERMINE_VERSION", "Maintained"),
array("4images", "/includes/constants.php", "define('SCRIPT_VERSION',", ""),
array("MediaWiki", "/includes/DefaultSettings.php", "\$wgVersion =", ""),
array("PHPlist", "/admin/init.php", "define(\"VERSION\",", "Maintained"),
array("PHPlist", "/admin/connect.php", "define(\"VERSION\",", "Maintained"),
array("RoundCube", "/program/include/iniset.php", "define('RCMAIL_VERSION',", "Maintained"),
array("Squirrel Mail", "/functions/strings.php", "\$version =", ""),
array("Dede CMS", "/include/config_base.php", "\$cfg_soft_enname\|\$cfg_version", ""),
array("Dede CMS", "/index.php", "Power by DedeCms", "Maintained"),
array("Sugar CRM", "/sugar_version.php", "\$sugar_version", ""),
array("XOOPS", "/version.php", "XOOPS_VERSION", ""),
array("Concrete5", "/config/concrete.php", "version_installed", ""),
array("Concrete5", "/concrete/config/version.php", "\$APP_VERSION =", ""),
array("Serendipity", "/serendipity_config.inc.php", "\$serendipity\['version'\] =", ""),
array("OpenBlog", "/application/config/open_blog.php", "\$config\['version'\] =", ""),
array("b2evolution", "/conf/_application.php", "\$app_version =", ""),
array("Nucleus", "/nucleus/libs/globalfunctions.php", "\$nucleus\['version'\] =", "EOL"),
array("Dotclear", "/inc/prepend.php", "define('DC_VERSION',", ""),
array("TextPattern", "/textpattern/index.php", "\$thisversion =", ""),
array("NibbleBlog", "/admin/boot/rules/98-constants.bit", "define('NIBBLEBLOG_VERSION',", "EOL"),
array("Lifetype", "/version.php", "\$version = \"lifetype", "EOL"),
array("Chyrp", "/includes/common.php", "define('CHYRP_VERSION',", "EOL"),
array("PivotX", "/pivotx/lib.php", "\$version =", "EOL"),
array("FlatPress", "/fp-includes/core/core.system.php", "define('SYSTEM_VER',", "EOL"),
array("Status.Net", "/lib/framework.php", "define('STATUSNET_BASE_VERSION',", ""),
array("Sharetronix", "/system/conf_main.php", "\$C->VERSION", ""),
array("PageCookery", "/global.php", "\$pcm_version =", ""),
array("StoryTLR", "/index.php", "define(\"STORYTLR_VERSION\",", ""),
array("PHP-Fusion", "/administration/upgrade.php", "WHERE settings_name='version'", ""),
array("e107", "/e107_admin/ver.php", "\$e107info\['e107_version'\] =", ""),
array("Open Real Estate", "/index.php", "define('ORE_VERSION',", ""),
array("Zikula", "/lib/Zikula/Core.php", "const VERSION_NUM =", ""),
array("Website Baker", "/pages/posts/index.php", "by WebsiteBaker Ver.", ""),
array("Subrion", "/index.php", "define('IA_VERSION', '", ""),
array("Pligg", "/languages/lang_english.conf", "//<VERSION>", "EOL"),
array("PyroCMS", "/system/cms/config/constants.php", "define('CMS_VERSION',=", ""),
array("Contao", "/system/config/localconfig.php", "\$GLOBALS\['TL_CONFIG'\]\['latestVersion'\] =", ""),
array("Geeklog", "/siteconfig.php", "define('VERSION',", ""),
array("sNews", "/snews.php", "sNews Version:", ""),
array("jCore", "/config.inc.php", "@define('JCORE_VERSION',", ""),
array("ImpressPages", "/Ip/Application.php", "; //CHANGE_ON_VERSION_UPDATE", ""),
array("Quick.CMS", "/database/config.php", "\$config\['version'\] =", ""),
array("ImpressCMS", "/include/version.php", "define('ICMS_VERSION_NAME',", ""), /* triggers false positive for XOOPS as it's a fork of it */
array("Monstra", "/engine/Monstra.php", "const VERSION =", ""),
array("phpwcms", "/include/inc_lib/revision/revision.php", "define('PHPWCMS_VERSION'", ""),
array("Redaxscript", "/languages/en.json", "version", ""),
array("Silex", "/version.txt", "version=v", ""),
array("Mahara", "/lib/version.php", "\$config->release =", ""),
array("Saurus", "/classes/site.class.php", "\$this->script_version =", ""),
array("Jamroom", "/modules/jrCore/include.php", "'version' =>", ""),
array("Bolt", "/src/Application.php", "\$values\['bolt_version'\] =", ""),
array("Pluck", "/data/inc/security.php", "define('PLUCK_VERSION',", ""),
array("Kirby", "/kirby/kirby.php", "static public \$version =", ""),
array("Zenario", "/zenario/admin/db_updates/latest_revision_no.inc.php", "define('ZENARIO_CMS_VERSION',", ""),
array("Cotonti", "/system/functions.php", "\$cfg\['version'\] =", ""),
array("appRain", "/development/definition/system_configuration/config.xml", "<appRainversion>", ""),
array("ClipperCMS", "/manager/includes/version.inc.php", "define('CMS_RELEASE_VERSION',", ""), // forked from ModX
array("MyBB", "/inc/class_core.php", "public \$version =", ""),
array("Vanilla", "/conf/config.php", "\$Configuration\['Vanilla'\]\['Version'\] =". ""),
array("PunBB", "/include/constants.php", "define('FORUM_VERSION',", ""),
array("FluxBB", "/include/common.php", "define('FORUM_VERSION',", ""),
array("Phorum", "/common.php", "define( \"PHORUM\",", ""),
array("MiniBB", "/bb_functions.php", "\$version=", ""),
array("Piwigo", "/include/constants.php", "define('PHPWG_VERSION", "Maintained"),
array("TinyWebGallery", "/config.php", "TWG version:", ""),
array("phpAlbum", "/main.php", "\$phpalbum_version=", ""),
array("iGalerie", "/includes/classes/system.class.php", "public static \$galleryVersion =", ""),
array("Oxwall", "/ow_version.xml", "<version>", ""),
array("Etano", "/includes/defines.inc.php", "define('_INTERNAL_VERSION_',", ""),
array("PeoplePods", "/peoplepods/lib/etc/options.php", "\$this->setLibOptions('last_database_update','", ""),
array("Family Connections", "/install.php", "\$_POST\['contact'\], 'Family Connections", ""),
array("OSClass", "/oc-load.php", "define('OSCLASS_VERSION',", ""),
array("Revive AdServer", "/constants.php", "define('VERSION',", ""),
array("WebCalendar", "/includes/config.php", "\$PROGRAM_VERSION =", ""),
array("Booked", "/lib/Config/Configuration.php", "const VERSION =", ""),
array("PHP iCalendar", "/default_config.php", "\$this->phpicalendar_version =", ""),
array("Piwik", "/core/Version.php", "const VERSION =", ""),
array("Little Poll", "/lp_admin.php", "Little Poll Admin Center v", ""),
array("Sphider", "/settings/conf.php", "\$version_nr", ""),
array("BigTree CMS", "/core/version.php", "define(\"BIGTREE_VERSION\",\"", ""),
array("Quick Cart", "/database/config/general.php", "\$config\['version'\] =", ""),
array("gpEasy", "/include/common.php", "define('gpversion','", ""),
array("Elxis", "/includes/version.php", "\$elxis_version = array(", ""),
array("CMSimple", "/cmsimple/cms.php", "define('CMSIMPLE_VERSION', '", ""),
array("CRE Loaded", "/includes/version.php", "define('PROJECT_VERSION', '\[CRE Loaded v", ""),
array("Expression Engine", "/config/config.php", "\$config['app_version']", "Maintained"), // not detected correctly
array("Pydio", "/conf/VERSION.php", "define(\"AJXP_VERSION\", \"", ""),
array("Aardvark Topsites", "/index.php", "\$TMPL['version'] =", ""),
array("Open Web Analytics", "/owa_env.php", "define('OWA_VERSION', '", ""),
array("CJ Dynamic Poll", "/poll_config.php", "\$version = \"", ""),
array("Logaholic", "/includes/version.php", "define(\"LOGAHOLIC_VERSION_NUMBER\", \"", ""),
array("Little Software Stats", "/inc/version.php", "define( 'VERSION'", ""),
array("qdPM", "/core/apps/qdPM/templates/_footer.php", "target=\"_blank\">qdPM", ""),
array("eyeOS", "/settings.php", "define('EYE_VERSION', '", ""),
array("Collabtive", "/init.php", "\$template->assign(\"myversion\"", ""),
array("ProjectPier", "/version.php", "return '", ""),
array("PHProjekt", "/VERSION", "PHProjekt", ""),
array("TaskFreak", "/include/config.php", "define('FRK_VERSION','", ""),
array("todoyu", "/core/inc/version.php", "define('TODOYU_VERSION', '", ""),
array("FlySpray", "/includes/class.flyspray.php", "public \$version =", ""),
array("Traq", "/vendor/traq/version.php", "define(\"TRAQ_VER\",", ""),
array("Eventum", "/init.php", "define('APP_VERSION',", ""),
array("Burden", "/config.php", "define('VERSION',", ""), /* could produce too many false positives but there's no other way */
array("Livezilla", "/_definitions/definitions.inc.php", "define(\"VERSION\",", ""),
array("Perch", "/admin/core/lib/Perch.class.php", "public \$version =", ""),
array("Elefant CMS", "/conf/version.php", "ELEFANT_VERSION", ""),
array("Wolf CMS", "/index.php", "define('CMS_VERSION\', '", ""),
array("Anchor CMS", "/index.php", "define('VERSION', '", ""),
array("CodeIgniter", "/CodeIgniter.php", "define('CI_VERSION', '", ""),
array("GotCMS", "/library/Gc/Version.php", "const VERSION =", ""),
array("Frog CMS", "/admin/index.php", "define('FROG_VERSION', '"," "),
array("Pulse CMS", "/admin/index.php", "class=\"ver\">Pulse CMS"),
array("Couch CMS", "/header.php", "define( 'K_COUCH_VERSION', '", ""),
array("Kanboard", "/app/constants.php", "define('APP_VERSION', '", ""),
array("XpressEngine", "/config/config.inc.php", "define('__XE_VERSION__',", ""),
array("Hesk", "/hesk_settings.inc.php", "\$hesk_settings['hesk_version']=", ""),
array("PHPWiki", "/lib/config.php", "define('PHPWIKI_VERSION',", ""),
array("PixelPost", "/includes/pixelpost.php", "Pixelpost version ", ""),
array("PrestaShop", "/config/settings.inc.php", "define('_PS_VERSION_',", "Maintained"),
array("tDah Webmail", "/config.system.php", "\/SW_VERSION\/", ""),
array("Agora Cart", "/agora.cgi", "\$versions{'agora.cgi'}", ""),
array("CKeditor", "/ckeditor/CHANGES.html", "CKEditor Changelog", ""),
array("Dokeos", "main/inc/installedVersion.inc.php", "\$dokeos_version", ""),
array("CakePHP","cake/config/config.php","\$config['Cake.version'] =", ""),
array("phpFormGenerator", "/fields.php", "<title>phpFormGenerator v", ""), // does not escape correctly in browser, but works great via SSH
array("ZenPhoto", "/zp-core/functions.php", "define('ZENPHOTO_VERSION',", ""),
array("ZenPhoto", "/zp-core/version.php","define('ZENPHOTO_VERSION',", ""),
array("Eventum Issue Tracker", "/init.php", "define('APP_VERSION',", ""),
array("PHPDevShell", "/includes/PHPDS.inc.php", "define('phpdevshell_version', 'PHPDevShell V", ""),
array("phpAds", "/libraries/lib-dbconfig.inc.php", "\$phpAds_version_readable =", ""),
array("Smarty Framework", "/smarty/libs/Smarty.class.php", "var \$_version", ""),
array("phpDealerLocator", "/config.php", "phpDealerLocator v", ""),
array("CraftySyntax", "/admin_common.php", "CVS will be released with version", ""),
array("NextCloud/OwnCloud", "/version.php", "\$OC_VersionString =", "Not Allowed"),
array("Timthumb", "/thumb.php", "define ('VERSION',", "EOL"),
array("Timthumb", "/image.php", "define ('VERSION',", "EOL"),
array("Timthumb", "/timthumb.php", "define ('VERSION',", "EOL"),
array("phpMyAdmin", "/libraries/defines.lib.php", "define('PMA_VERSION',", "Not Allowed"),
array("phpMyAdmin", "/libraries/Config.php", "\$this->set('PMA_VERSION',", "Not Allowed"),
array("phpMyAdmin", "/libraries/Config.class.php", "\$this->set('PMA_VERSION',", "Not Allowed"),
array("CubeCart", "/ini.inc.php", "define('CC_VERSION',", "Maintained"),
array("Simple PHP Blog", "/scripts/sb_functions.php", "\$sb_info[ 'version' ] =", "EOL"),
array("Claroline", "/inc/installedVersion.inc.php", "\$new_version =", "EOL"),
array("Moodle", "/version.php", "\$release =", "Maintained"),
array("WebAsyst", "/kernel/wbs.xml", "<WBS VERSION=", "EOL"),
array("Invision Power Board", "/admin.php", "| Invision Power Board v", "EOL"),
array("Easy PHP Calendar", "/config.inc.php", "\$epcCheckVersion=", "EOL"),
array("MediaWiki", "/includes/DefaultSettings.php", "\$wgVersion", "Maintained"),
array("YapGB", "/gbconfig.php", "\$cfgYapGBVersion", "EOL"),
array("PowerPhlogger", "/main.php", "\$curr_ver", "EOL"),
array("Invision Power Board", "/index.php", " * IP.Board v", "EOL"),
array("phpWebSite", "/conf/core_info.php", "\$version =", "EOL"),
array("Achievo ATK", "/atk/version.inc", "\$atk_version =", "EOL"),
array("CRE Loaded/Loaded Commerce", "/includes/version.php", "define('PROJECT_VERSION', 'Loaded Commerce", "EOL"),
array("CodeIgniter", "/system/codeigniter/core/CodeIgniter.php", "define('CI_VERSION',", "Maintained"),
array("LimeSurvey", "/application/config/version.php", "\$config['versionnumber'] =", "Maintained"),
array("ELGG", "/vendor/elgg/elgg/composer.json", "\"version\":", "Maintained"),
array("Grav CMS", "/system/defines.php", "define('GRAV_VERSION',", "Maintained"),
array("CuteNews", "/inc/functions.inc.php", "\$config_version_name = \"CuteNews v", "EOL"),
array("UCenter", "/index.php", "define('UC_VERSION',", "EOL"),
array("Discuz!", "/discuz_version.php", "define('DISCUZ_VERSION',", "EOL"),
array("PH7CMS", "/_protected/app/configs/config.ini", "version =", "EOL"),
array("Chamilo", "/app/config/configuration.php", "\$_configuration['system_version'] =", "Maintained"),
array("CodeIgniter", "/system/core/CodeIgniter.php", "define('CI_VERSION',", "Maintained"),
array("Reportico", "/reportico.php", "\$version =", "EOL"),
array("YetiForce", "/config/version.php", "'appVersion' =>", "Maintained"),
array("e107", "/e107_admin/ver.php", "\$e107info['e107_version']", "EOL"),
array("Glype", "/includes/settings.php","\$CONFIG['version'] =", "EOL"),
array("ListMail", "/admin.php", "\$current_version =", "EOL"),
array("phpGedView", "/config.php", "\$CONFIG_VERSION =", "EOL"),
array("Dolphin", "/inc/header.inc.php", "\$site['ver']", "Maintained"),
array("SQLBuddy", "/functions.php", "define(\"VERSION_NUMBER\"", "EOL"),
array("Dolibarr", "/filefunc.inc.php", "if (! defined('DOL_VERSION')) define('DOL_VERSION',", "EOL"),
array("Mambo", "/version.php", "DEFINE( '_RELEASE',", "EOL"),
array("ViArt Shop", "/index.php", "*** ViArt Shop", "EOL"),
array("PHPMyList", "/readme.txt", "PHPMyList V", "EOL"),
array("Download Engine", "/include/config.inc.php", "define('APP_VERSION',", "EOL"),
array("GBook - PHP Guestbook", "/gbook.php", "\$settings['verzija'] =", "EOL"),
array("The Next Generation of Genealogy Sitebuilding", "/version.php", "\$tng_version", "EOL"),
array("Pluck", "/data/inc/variables.all.php", "\$pluck_version", "EOL"),
array("ph7cms", "/_protected/app/system/config/config.ini", "version =". "EOL"),
array("EGroupWare", "/header.inc.php", "\$GLOBALS['egw_info']['server']['versions']['header'] ", "Maintained"),
array("FrontAccounting", "/version.php", "\$src_version =", "EOL"),
array("vTiger CRM", "/vtigerversion.php", "\$vtiger_current_version =", "Maintained"),
array("ZenTaoPHP", "/config/config.php", "\$config->version", "EOL"),
array("Glype", "/includes/settings.php", "\$CONFIG['version'] =", "EOL"),
array("Kohana", "/system/core/Kohana.php", "const VERSION", "EOL"),
array("Form Tools Core", "/global/library.php", "\$g_current_version", "EOL"),
// still need to work on these
array("Silverstripe", "/cms/silverstripe_version", "*"), //needs review
array("Croogo", "/Vendor/croogo/croogo/VERSION.txt", "*"), // needs further review
array("WebMail Lite", "/adminpanel/VERSION", "*"), // needs further review
array("PHPCollab", "/includes/settings.php", "# PhpCollab version"), // needs second line as well
array("Admidio", "/adm_program/system/constants.php", "define('ADMIDIO_VERSION_MAIN',"), // needs two more lines
array("Get Simple CMS", "/admin/inc/configuration.php", "\$site_full_name"), // needs one more line
array("SquirrelCart", "/squirrelcart/functions/base/sc_version.func.php", "function sc_version() {"), //needs one more line
array("DataLife Engine", "/index.php", "dle_version ="), //needs one more line
array("phpCoin", "/version.php", "ThisVersion"), //needs one more line
array("Avactis", "/version.php", "PRODUCT_VERSION_NUMBER"), // needs one more line
array("AccountLab Plus", "/version.php", "ALPversion="), // needs one more line
array("Flynax Classifieds", "/control.inc.php", "VERSION:"), // may need one more line
array("vBulletin", "/version.php", "fr_version ="), // may need one more line
array("PHP Pro Bid", "/index.php", "PHP Pro Bid v"), // needs one more line
array("ITLPoll", "/index.php", "ITLPoll Version"), // needs one more line
array("Openads", "/index.php", "\/\* Openads"), // needs one more line
array("LightMon Engine", "/index.php", "* LightMon v"), // needs one more line
array("Kasseler CMS", "/index.php", "by Kasseler CMS"), // needs 4 more lines
array("Silurus Classifieds Builder", "/index.php", "* Silurus Classifieds Builder"), // needs 7 more lines
array("Bitweaver", "/config_defaults_inc.php", "BIT_MAJOR_VERSION"), // needs 3 more
array("phpFoX", "/version.php", "\$_CONF\[\'info.version\'\] ="), // needs one more
array("Open Conference System", "/version.xml", "<release>"), // needs one more
array("SPIP", "/svn.revision", "Origine: svn:"), // needs one more
array("Oxy Classifieds", "/version", "*"), // two from the head
array("Anova Pro", "/version.txt", "Anova Pro :"), // one more
);
foreach($versions as $row){
// scripts installed in subdirectories/subdomains
foreach(glob("/home/".$argv[1]."/public_html/{**/*,*}".$row[1], GLOB_BRACE) as $versionfile){
$file = file_get_contents($versionfile);
$pattern = preg_quote($row[2], '/');
$pattern = "/^.*$pattern.*\$/m";
if(preg_match_all($pattern, $file, $matches)){
echo "\n";
echo "\n".$row[0]." found - (".$row[3]."):\n";
echo implode("\n", $matches[0]);
echo "\n";
$location = $versionfile;
$trim = str_replace($row[1], '', $location);
print_r ("location:".$trim)."\n";
echo "\n";
}
}
// scripts installed in docroot
foreach(glob("/home/".$argv[1]."/public_html/".$row[1], GLOB_BRACE) as $versionfile){
$file = file_get_contents($versionfile);
$pattern = preg_quote($row[2], '/');
$pattern = "/^.*$pattern.*\$/m";
if(preg_match_all($pattern, $file, $matches)){
echo "\n";
echo "\n".$row[0]." found - (".$row[3]."):\n";
echo implode("\n", $matches[0]);
echo "\n";
$location = $versionfile;
$trim = str_replace($row[1], '', $location);
print_r ("location:".$trim)."\n";
echo "\n";
}
}
}
$versiondouble = array (
array("Joomla 1.0/Mambo", "/includes/version.php", "var \$RELEASE", "var \$DEV_LEVEL", "EOL"),
array("Joomla 1.5", "/libraries/joomla/version.php", "var \$RELEASE", "var \$DEV_LEVEL", "EOL"),
array("Joomla 1.6/1.7", "/libraries/cms/version.php", "\$RELEASE =", "\$DEV_LEVEL =", "EOL"),
array("Joomla 2.5/3.x", "/libraries/cms/version/version.php", "\$RELEASE =", "\$DEV_LEVEL =", "EOL"),
array("Joomla 3.5+", "/libraries/cms/version/version.php", "const RELEASE =", "const DEV_LEVEL =","Maintained"),
array("CS-Cart", "/config.php", "define('PRODUCT_NAME',", "define('PRODUCT_VERSION',", "Maintained"),
array("SohoLaunch", "/sohoadmin/version.php", "## Soholaunch(R)", "## Version", "EOL"),
array("XMB", "/db/mysql.php", "* eXtreme Message Board", " * XMB ", "EOL"),
array("AEF", "/globals.php", "// AEF : Advanced Electron Forum", "// Version", "EOL"),
);
foreach($versiondouble as $raw){
// scripts installed in subdirectories/subdomains
foreach(glob("/home/".$argv[1]."/public_html/{**/*,*}".$raw[1], GLOB_BRACE) as $versionfiles){
$file = file_get_contents($versionfiles);
$pattern1 = preg_quote($raw[2], '/');
$pattern2 = preg_quote($raw[3], '/');
$pattern = "/^.*$pattern1.*\$|^.*$pattern2.*\$/m";
if(preg_match_all($pattern, $file, $matches)){
echo "\n";
echo "\n".$raw[0]." found - (".$raw[4]."):\n";
echo implode("\n", $matches[0]);
echo "\n";
$location = $versionfiles;
$trim = str_replace($raw[1], '', $location);
print_r ("location:".$trim)."\n";
echo "\n";
}
}
// scripts installed in docroot
foreach(glob("/home/".$argv[1]."/public_html/".$raw[1], GLOB_BRACE) as $versionfiles){
$file = file_get_contents($versionfiles);
$pattern1 = preg_quote($raw[2], '/');
$pattern2 = preg_quote($raw[3], '/');
$pattern = "/^.*$pattern1.*\$|^.*$pattern2.*\$/m";
if(preg_match_all($pattern, $file, $matches)){
echo "\n";
echo "\n".$raw[0]." found - (".$raw[4]."):\n";
echo implode("\n", $matches[0]);
echo "\n";
$location = $versionfiles;
$trim = str_replace($raw[1], '', $location);
print_r ("location:".$trim."\n");
echo "\n";
}
}
}
$versiontriple = array (
array("Joomla 3.8.x", "/libraries/src/Version.php", "const MAJOR_VERSION =", "const MINOR_VERSION =", "const PATCH_VERSION =", "Maintained"),
array("Exponent", "/exponent_version.php", "EXPONENT_VERSION_MAJOR", "EXPONENT_VERSION_MINOR", "EXPONENT_VERSION_REVISION", ""),
array("CMS Made Simple", "version.php", "\$CMS_VERSION =", "\$CMS_VERSION_NAME =", "\$CMS_SCHEMA_VERSION =", ""),
array("ZenCart", "/includes/version.php", "define('PROJECT_VERSION_NAME', 'Zen Cart');", "define('PROJECT_VERSION_MAJOR',", "define('PROJECT_VERSION_MINOR',", ""),
array("Magento", "/app/Mage.php", "'major' =>", "'minor' =>", "'revision' =>", ""),
array("AbanteCart", "/core/version.php", "define('MASTER_VERSION',", "define('MINOR_VERSION',", "define('VERSION_BUILT',", ""),
array("DotProj", "/includes/version.php", "\$dp_version_major", "\$dp_version_minor", "\$dp_version_patch", ""),
array("web2project", "/includes/version.php", "\$w2p_version_major =", "\$w2p_version_minor =", "\$w2p_version_patch =", "EOL"),
array("CMSAdmin", "/cmsAdmin/lib/init.php", "'version'", "'build'", "'id'", "EOL"),
array("Etomite", "manager/includes/version.inc.php", "\$small_version", "\$patch_level", "\$release", "EOL"),
array("Akaunting", "/config/version.php", "'major'", "'minor'", "'patch'", "EOL"),
);
foreach($versiontriple as $rxw){
// scripts installed in subdirectories/subdomains
foreach(glob("/home/".$argv[1]."/public_html/{**/*,*}".$rxw[1], GLOB_BRACE) as $versionfilex){
$file = file_get_contents($versionfilex);
$pattern1 = preg_quote($rxw[2], '/');
$pattern2 = preg_quote($rxw[3], '/');
$pattern3 = preg_quote($rxw[4], '/');
$pattern = "/^.*$pattern1.*\$|^.*$pattern2.*\$|^.*$pattern3.*\$/m";
if(preg_match_all($pattern, $file, $matches)){
echo "\n";
echo "\n".$rxw[0]." found - (".$rxw[5]."):\n";
echo implode("\n", $matches[0]);
echo "\n";
$location = $versionfilex;
$trim = str_replace($rxw[1], '', $location);
print_r ("location:".$trim."\n");
echo "\n";
}
}
// scripts installed in docroot
foreach(glob("/home/".$argv[1]."/public_html/".$rxw[1], GLOB_BRACE) as $versionfilex){
$file = file_get_contents($versionfilex);
$pattern1 = preg_quote($rxw[2], '/');
$pattern2 = preg_quote($rxw[3], '/');
$pattern3 = preg_quote($rxw[4], '/');
$pattern = "/^.*$pattern1.*\$|^.*$pattern2.*\$|^.*$pattern3.*\$/m";
if(preg_match_all($pattern, $file, $matches)){
echo "\n";
echo "\n".$rxw[0]." found - (".$rxw[5]."):\n";
echo implode("\n", $matches[0]);
echo "\n";
$location = $versionfilex;
$trim = str_replace($rxw[1], '', $location);
print_r ("location:".$trim."\n");
echo "\n";
}
}
}