Code
- Subs.php ➔ updateStats()
- Subs.php ➔ updateMemberData()
- Subs.php ➔ updateSettings()
- Subs.php ➔ constructPageIndex()
- Subs.php ➔ comma_format()
- Subs.php ➔ timeformat()
- Subs.php ➔ shorten_subject()
- Subs.php ➔ forum_time()
- Subs.php ➔ permute()
- Subs.php ➔ un_htmlspecialchars()
- Subs.php ➔ parse_bbc()
- Subs.php ➔ parsesmileys()
- Subs.php ➔ highlight_php_code()
- Subs.php ➔ redirectexit()
- Subs.php ➔ obExit()
- Subs.php ➔ url_image_size()
- Subs.php ➔ setupThemeContext()
- Subs.php ➔ setMemoryLimit()
- Subs.php ➔ memoryReturnBytes()
- Subs.php ➔ template_header()
- Subs.php ➔ theme_copyright()
- Subs.php ➔ template_footer()
- Subs.php ➔ template_javascript()
- Subs.php ➔ template_css()
- Subs.php ➔ custMinify()
- Subs.php ➔ getAttachmentFilename()
- Subs.php ➔ ip2range()
- Subs.php ➔ host_from_ip()
- Subs.php ➔ text2words()
- Subs.php ➔ create_button()
- Subs.php ➔ setupMenuContext()
- Subs.php ➔ smf_seed_generator()
- Subs.php ➔ call_integration_hook()
- Subs.php ➔ add_integration_function()
- Subs.php ➔ remove_integration_function()
- Subs.php ➔ call_helper()
- Subs.php ➔ load_file()
- Subs.php ➔ prepareLikesContext()
- Subs.php ➔ sanitizeMSCutPaste()
- Subs.php ➔ replaceEntities__callback()
- Subs.php ➔ fixchar__callback()
- Subs.php ➔ entity_fix__callback()
- Subs.php ➔ get_gravatar_url()
- Subs.php ➔ smf_list_timezones()
- Subs.php ➔ fix_tz_abbrev()
- Subs.php ➔ inet_ptod()
- Subs.php ➔ inet_dtop()
- Subs.php ➔ _safe_serialize()
- Subs.php ➔ safe_serialize()
- Subs.php ➔ _safe_unserialize()
- Subs.php ➔ safe_unserialize()
- Subs.php ➔ smf_chmod()
- Subs.php ➔ smf_json_decode()
- Subs.php ➔ isValidIP()
- Subs.php ➔ smf_serverResponse()
- Subs.php ➔ set_tld_regex()
- Subs.php ➔ build_regex()

$filecan contain request data and is used in file manipulation context(s) leading to a potential security vulnerability.22 paths for user data to reach this point
$_FILES,and$_FILES['package']['name']is passed through strtolower(), andstrtolower($_FILES['package']['name'])is passed through strrchr(), andstrrchr(strtolower($_FILES['package']['name']), '.')is passed through substr(), and$extensionis assigned in Sources/PackageGet.php on line 656$_FILES,and$_FILES['package']['name']is passed through strtolower(), andstrtolower($_FILES['package']['name'])is passed through strrchr(), andstrrchr(strtolower($_FILES['package']['name']), '.')is passed through substr(), and$extensionis assignedin Sources/PackageGet.php on line 656
$extensionis assignedin Sources/PackageGet.php on line 663
$packageNameis assignedin Sources/PackageGet.php on line 664
$destinationis assignedin Sources/PackageGet.php on line 667
$destinationis passed to smf_chmod()in Sources/PackageGet.php on line 674
$_GET,and$packagesdir . '/' . $_GET['package']is passed to smf_chmod() in Sources/Packages.php on line 1342$_GET,and$packagesdir . '/' . $_GET['package']is passed to smf_chmod()in Sources/Packages.php on line 1342
$_POST,and$contextis assigned in Sources/Packages.php on line 2444$_POST,and$contextis assignedin Sources/Packages.php on line 2444
$contextis assignedin Sources/Packages.php on line 2455
$pathis assignedin Sources/Packages.php on line 2509
$pathis passed to smf_chmod()in Sources/Packages.php on line 2522
$_POST,and$statusis assigned in Sources/Packages.php on line 2465$_POST,and$statusis assignedin Sources/Packages.php on line 2465
$contextis assignedin Sources/Packages.php on line 2486
$contextis assignedin Sources/Packages.php on line 2488
$pathis assignedin Sources/Packages.php on line 2509
$pathis passed to smf_chmod()in Sources/Packages.php on line 2522
$_GET,and$contextis assigned in Sources/ManageLanguages.php on line 792$_GET,and$contextis assignedin Sources/ManageLanguages.php on line 792
$contextis assignedin Sources/ManageLanguages.php on line 797
$images_dirsis assignedin Sources/ManageLanguages.php on line 839
$curPathis assignedin Sources/ManageLanguages.php on line 912
$curPathis passed to deltree()in Sources/ManageLanguages.php on line 914
$dir . '/' . $entrynameis passed to smf_chmod()in Sources/Subs-Package.php on line 1788
$_GET,and$packagesdir . '/' . $_GET['package']is passed to deltree() in Sources/Packages.php on line 1339$_GET,and$packagesdir . '/' . $_GET['package']is passed to deltree()in Sources/Packages.php on line 1339
$dir . '/' . $entrynameis passed to smf_chmod()in Sources/Subs-Package.php on line 1788
$_REQUEST,and$_REQUEST['file']is passed to read_tgz_file() in Sources/Packages.php on line 1285$_REQUEST,and$_REQUEST['file']is passed to read_tgz_file()in Sources/Packages.php on line 1285
$destinationis passed to read_tgz_data()in Sources/Subs-Package.php on line 35
$destinationis passed to mktree()in Sources/Subs-Package.php on line 90
$strPathis passed to smf_chmod()in Sources/Subs-Package.php on line 1834
$_REQUEST,and$_REQUEST['file']is passed to read_tgz_file() in Sources/Packages.php on line 1309$_REQUEST,and$_REQUEST['file']is passed to read_tgz_file()in Sources/Packages.php on line 1309
$destinationis passed to read_tgz_data()in Sources/Subs-Package.php on line 35
$destinationis passed to mktree()in Sources/Subs-Package.php on line 90
$strPathis passed to smf_chmod()in Sources/Subs-Package.php on line 1834
$_POST,and$contextis assigned in Sources/Packages.php on line 2536$_POST,and$contextis assignedin Sources/Packages.php on line 2536
$contextis assignedin Sources/Packages.php on line 2538
$contextis assignedin Sources/Packages.php on line 2539
$contextis assignedin Sources/Packages.php on line 2541
$contextis assignedin Sources/Packages.php on line 2586
$pathis assignedin Sources/Packages.php on line 2617
$path . '/' . $entryis passed to package_chmod()in Sources/Packages.php on line 2630
$chmod_fileis assignedin Sources/Subs-Package.php on line 2843
$chmod_fileis passed to smf_chmod()in Sources/Subs-Package.php on line 2868
$_POST,and$fileis assigned in Sources/ManageLanguages.php on line 223$_POST,and$fileis assignedin Sources/ManageLanguages.php on line 223
$chmod_filesis assignedin Sources/ManageLanguages.php on line 229
$chmod_filesis passed to create_chmod_control()in Sources/ManageLanguages.php on line 234
$fileis assignedin Sources/Subs-Package.php on line 842
$fileis passed to package_chmod()in Sources/Subs-Package.php on line 853
$chmod_fileis assignedin Sources/Subs-Package.php on line 2843
$chmod_fileis passed to smf_chmod()in Sources/Subs-Package.php on line 2868
$_GET,and$contextis assigned in Sources/ManageLanguages.php on line 209$_GET,and$contextis assignedin Sources/ManageLanguages.php on line 209
$contextis assignedin Sources/ManageLanguages.php on line 210
$contextis assignedin Sources/ManageLanguages.php on line 211
$contextis assignedin Sources/ManageLanguages.php on line 261
$contextis assignedin Sources/ManageLanguages.php on line 265
$context['make_writable']is passed to create_chmod_control()in Sources/ManageLanguages.php on line 382
$fileis assignedin Sources/Subs-Package.php on line 842
$fileis passed to package_chmod()in Sources/Subs-Package.php on line 853
$chmod_fileis assignedin Sources/Subs-Package.php on line 2843
$chmod_fileis passed to smf_chmod()in Sources/Subs-Package.php on line 2868
$_POST,and$_POST['basedirectory_for_attachments']is passed to automanage_attachments_create_directory() in Sources/ManageAttachments.php on line 222$_POST,and$_POST['basedirectory_for_attachments']is passed to automanage_attachments_create_directory()in Sources/ManageAttachments.php on line 222
in vendor/Sources/Subs-Attachments.php on line 260
$treeis assignedin Sources/Subs-Attachments.php on line 138
$treeis passed through array_shift(), and$directoryis assignedin Sources/Subs-Attachments.php on line 146
$directoryis passed to smf_chmod()in Sources/Subs-Attachments.php on line 164
$_POST,and$pathis assigned in Sources/ManageAttachments.php on line 1923$_POST,and$pathis assignedin Sources/ManageAttachments.php on line 1923
$pathis passed to automanage_attachments_create_directory()in Sources/ManageAttachments.php on line 1956
in vendor/Sources/Subs-Attachments.php on line 260
$treeis assignedin Sources/Subs-Attachments.php on line 138
$treeis passed through array_shift(), and$directoryis assignedin Sources/Subs-Attachments.php on line 146
$directoryis passed to smf_chmod()in Sources/Subs-Attachments.php on line 164
$_POST,and$_POST['new_base_dir']is passed to automanage_attachments_create_directory() in Sources/ManageAttachments.php on line 2215$_POST,and$_POST['new_base_dir']is passed to automanage_attachments_create_directory()in Sources/ManageAttachments.php on line 2215
in vendor/Sources/Subs-Attachments.php on line 260
$treeis assignedin Sources/Subs-Attachments.php on line 138
$treeis passed through array_shift(), and$directoryis assignedin Sources/Subs-Attachments.php on line 146
$directoryis passed to smf_chmod()in Sources/Subs-Attachments.php on line 164
$_GET,and$urlis assigned in Sources/PackageGet.php on line 230$_GET,and$urlis assignedin Sources/PackageGet.php on line 230
$url . '/' . $package['filename']is passed to getPackageInfo()in Sources/PackageGet.php on line 497
$packagesdir . '/' . $gzfilename . '/package-info.xml'is passed through file_get_contents(), and$packageInfois assignedin Sources/Subs-Package.php on line 542
$packageInfois passed to xmlArray::__construct()in Sources/Subs-Package.php on line 560
in Sources/Class-Package.php on line 63
$arrayis assignedin Sources/Class-Package.php on line 144
$arrayis assignedin Sources/Class-Package.php on line 102
in Sources/Subs-Package.php on line 1326
in vendor/Sources/Subs-Package.php on line 1735
$this_actionis assignedin Sources/Subs-Package.php on line 1326
$this_action['destination']is passed to mktree()in Sources/Subs-Package.php on line 1334
$strPathis passed to smf_chmod()in Sources/Subs-Package.php on line 1834
$_GET,and$urlis assigned in Sources/PackageGet.php on line 239$_GET,and$urlis assignedin Sources/PackageGet.php on line 239
$url . '/' . $package['filename']is passed to getPackageInfo()in Sources/PackageGet.php on line 497
$packagesdir . '/' . $gzfilename . '/package-info.xml'is passed through file_get_contents(), and$packageInfois assignedin Sources/Subs-Package.php on line 542
$packageInfois passed to xmlArray::__construct()in Sources/Subs-Package.php on line 560
in Sources/Class-Package.php on line 63
$arrayis assignedin Sources/Class-Package.php on line 144
$arrayis assignedin Sources/Class-Package.php on line 102
in Sources/Subs-Package.php on line 1326
in vendor/Sources/Subs-Package.php on line 1735
$this_actionis assignedin Sources/Subs-Package.php on line 1326
$this_action['destination']is passed to mktree()in Sources/Subs-Package.php on line 1334
$strPathis passed to smf_chmod()in Sources/Subs-Package.php on line 1834
$_GET,and$current_urlis assigned in Sources/PackageGet.php on line 358$_GET,and$current_urlis assignedin Sources/PackageGet.php on line 358
$packageis assignedin Sources/PackageGet.php on line 366
$packageis assignedin Sources/PackageGet.php on line 376
$packageis assignedin Sources/PackageGet.php on line 377
$packageis assignedin Sources/PackageGet.php on line 466
$packageis assignedin Sources/PackageGet.php on line 467
$packageis assignedin Sources/PackageGet.php on line 468
$packageis assignedin Sources/PackageGet.php on line 469
$packageis assignedin Sources/PackageGet.php on line 470
$packageis assignedin Sources/PackageGet.php on line 473
$contextis assignedin Sources/PackageGet.php on line 476
$packageSectionis assignedin Sources/PackageGet.php on line 488
$packageis assignedin Sources/PackageGet.php on line 490
$url . '/' . $package['filename']is passed to getPackageInfo()in Sources/PackageGet.php on line 497
$packagesdir . '/' . $gzfilename . '/package-info.xml'is passed through file_get_contents(), and$packageInfois assignedin Sources/Subs-Package.php on line 542
$packageInfois passed to xmlArray::__construct()in Sources/Subs-Package.php on line 560
in Sources/Class-Package.php on line 63
$arrayis assignedin Sources/Class-Package.php on line 144
$arrayis assignedin Sources/Class-Package.php on line 102
in Sources/Subs-Package.php on line 1326
in vendor/Sources/Subs-Package.php on line 1735
$this_actionis assignedin Sources/Subs-Package.php on line 1326
$this_action['destination']is passed to mktree()in Sources/Subs-Package.php on line 1334
$strPathis passed to smf_chmod()in Sources/Subs-Package.php on line 1834
$_GET,and$current_urlis assigned in Sources/PackageGet.php on line 360$_GET,and$current_urlis assignedin Sources/PackageGet.php on line 360
$packageis assignedin Sources/PackageGet.php on line 366
$packageis assignedin Sources/PackageGet.php on line 376
$packageis assignedin Sources/PackageGet.php on line 377
$packageis assignedin Sources/PackageGet.php on line 466
$packageis assignedin Sources/PackageGet.php on line 467
$packageis assignedin Sources/PackageGet.php on line 468
$packageis assignedin Sources/PackageGet.php on line 469
$packageis assignedin Sources/PackageGet.php on line 470
$packageis assignedin Sources/PackageGet.php on line 473
$contextis assignedin Sources/PackageGet.php on line 476
$packageSectionis assignedin Sources/PackageGet.php on line 488
$packageis assignedin Sources/PackageGet.php on line 490
$url . '/' . $package['filename']is passed to getPackageInfo()in Sources/PackageGet.php on line 497
$packagesdir . '/' . $gzfilename . '/package-info.xml'is passed through file_get_contents(), and$packageInfois assignedin Sources/Subs-Package.php on line 542
$packageInfois passed to xmlArray::__construct()in Sources/Subs-Package.php on line 560
in Sources/Class-Package.php on line 63
$arrayis assignedin Sources/Class-Package.php on line 144
$arrayis assignedin Sources/Class-Package.php on line 102
in Sources/Subs-Package.php on line 1326
in vendor/Sources/Subs-Package.php on line 1735
$this_actionis assignedin Sources/Subs-Package.php on line 1326
$this_action['destination']is passed to mktree()in Sources/Subs-Package.php on line 1334
$strPathis passed to smf_chmod()in Sources/Subs-Package.php on line 1834
$_GET,and$current_urlis assigned in Sources/PackageGet.php on line 383$_GET,and$current_urlis assignedin Sources/PackageGet.php on line 383
$packageis assignedin Sources/PackageGet.php on line 421
$packageis assignedin Sources/PackageGet.php on line 422
$packageis assignedin Sources/PackageGet.php on line 461
$packageis assignedin Sources/PackageGet.php on line 462
$packageis assignedin Sources/PackageGet.php on line 466
$packageis assignedin Sources/PackageGet.php on line 467
$packageis assignedin Sources/PackageGet.php on line 468
$packageis assignedin Sources/PackageGet.php on line 469
$packageis assignedin Sources/PackageGet.php on line 470
$packageis assignedin Sources/PackageGet.php on line 473
$contextis assignedin Sources/PackageGet.php on line 476
$packageSectionis assignedin Sources/PackageGet.php on line 488
$packageis assignedin Sources/PackageGet.php on line 490
$url . '/' . $package['filename']is passed to getPackageInfo()in Sources/PackageGet.php on line 497
$packagesdir . '/' . $gzfilename . '/package-info.xml'is passed through file_get_contents(), and$packageInfois assignedin Sources/Subs-Package.php on line 542
$packageInfois passed to xmlArray::__construct()in Sources/Subs-Package.php on line 560
in Sources/Class-Package.php on line 63
$arrayis assignedin Sources/Class-Package.php on line 144
$arrayis assignedin Sources/Class-Package.php on line 102
in Sources/Subs-Package.php on line 1326
in vendor/Sources/Subs-Package.php on line 1735
$this_actionis assignedin Sources/Subs-Package.php on line 1326
$this_action['destination']is passed to mktree()in Sources/Subs-Package.php on line 1334
$strPathis passed to smf_chmod()in Sources/Subs-Package.php on line 1834
$_GET,and$current_urlis assigned in Sources/PackageGet.php on line 385$_GET,and$current_urlis assignedin Sources/PackageGet.php on line 385
$packageis assignedin Sources/PackageGet.php on line 421
$packageis assignedin Sources/PackageGet.php on line 422
$packageis assignedin Sources/PackageGet.php on line 461
$packageis assignedin Sources/PackageGet.php on line 462
$packageis assignedin Sources/PackageGet.php on line 466
$packageis assignedin Sources/PackageGet.php on line 467
$packageis assignedin Sources/PackageGet.php on line 468
$packageis assignedin Sources/PackageGet.php on line 469
$packageis assignedin Sources/PackageGet.php on line 470
$packageis assignedin Sources/PackageGet.php on line 473
$contextis assignedin Sources/PackageGet.php on line 476
$packageSectionis assignedin Sources/PackageGet.php on line 488
$packageis assignedin Sources/PackageGet.php on line 490
$url . '/' . $package['filename']is passed to getPackageInfo()in Sources/PackageGet.php on line 497
$packagesdir . '/' . $gzfilename . '/package-info.xml'is passed through file_get_contents(), and$packageInfois assignedin Sources/Subs-Package.php on line 542
$packageInfois passed to xmlArray::__construct()in Sources/Subs-Package.php on line 560
in Sources/Class-Package.php on line 63
$arrayis assignedin Sources/Class-Package.php on line 144
$arrayis assignedin Sources/Class-Package.php on line 102
in Sources/Subs-Package.php on line 1326
in vendor/Sources/Subs-Package.php on line 1735
$this_actionis assignedin Sources/Subs-Package.php on line 1326
$this_action['destination']is passed to mktree()in Sources/Subs-Package.php on line 1334
$strPathis passed to smf_chmod()in Sources/Subs-Package.php on line 1834
$_REQUEST,and$_REQUEST['package']is passed through preg_replace(), and$contextis assigned in Sources/Packages.php on line 104$_REQUEST,and$_REQUEST['package']is passed through preg_replace(), and$contextis assignedin Sources/Packages.php on line 104
$contextis assignedin Sources/Packages.php on line 107
$contextis assignedin Sources/Packages.php on line 132
$contextis assignedin Sources/Packages.php on line 135
$contextis assignedin Sources/Packages.php on line 141
$context['filename']is passed to getPackageInfo()in Sources/Packages.php on line 193
$packagesdir . '/' . $gzfilename . '/package-info.xml'is passed through file_get_contents(), and$packageInfois assignedin Sources/Subs-Package.php on line 542
$packageInfois passed to xmlArray::__construct()in Sources/Subs-Package.php on line 560
in Sources/Class-Package.php on line 63
$arrayis assignedin Sources/Class-Package.php on line 144
$arrayis assignedin Sources/Class-Package.php on line 102
in Sources/Subs-Package.php on line 1326
in vendor/Sources/Subs-Package.php on line 1735
$this_actionis assignedin Sources/Subs-Package.php on line 1326
$this_action['destination']is passed to mktree()in Sources/Subs-Package.php on line 1334
$strPathis passed to smf_chmod()in Sources/Subs-Package.php on line 1834
$_REQUEST,and$contextis assigned in Sources/Packages.php on line 780$_REQUEST,and$contextis assignedin Sources/Packages.php on line 780
$contextis assignedin Sources/Packages.php on line 783
$contextis assignedin Sources/Packages.php on line 789
$contextis assignedin Sources/Packages.php on line 792
$contextis assignedin Sources/Packages.php on line 798
$contextis assignedin Sources/Packages.php on line 866
$context['filename']is passed to getPackageInfo()in Sources/Packages.php on line 886
$packagesdir . '/' . $gzfilename . '/package-info.xml'is passed through file_get_contents(), and$packageInfois assignedin Sources/Subs-Package.php on line 542
$packageInfois passed to xmlArray::__construct()in Sources/Subs-Package.php on line 560
in Sources/Class-Package.php on line 63
$arrayis assignedin Sources/Class-Package.php on line 144
$arrayis assignedin Sources/Class-Package.php on line 102
in Sources/Subs-Package.php on line 1326
in vendor/Sources/Subs-Package.php on line 1735
$this_actionis assignedin Sources/Subs-Package.php on line 1326
$this_action['destination']is passed to mktree()in Sources/Subs-Package.php on line 1334
$strPathis passed to smf_chmod()in Sources/Subs-Package.php on line 1834
General Strategies to prevent injection
In general, it is advisable to prevent any user-data to reach this point. This can be done by white-listing certain values:
if ( ! in_array($value, array('this-is-allowed', 'and-this-too'), true)) { throw new \InvalidArgumentException('This input is not allowed.'); }For numeric data, we recommend to explicitly cast the data: