Till Brehm
2016-03-29 b5f6a1a03de9343ffc718ce253f7730e4d8d6c19
Fix for #3812 Insufficient validation of PHP version selector for ISPConfig 3.1 branch.
1 files modified
26 ■■■■■ changed files
interface/web/sites/web_vhost_domain_edit.php 26 ●●●●● patch | view | raw | blame | history
interface/web/sites/web_vhost_domain_edit.php
@@ -1304,6 +1304,32 @@
            $this->dataRecord['folder_directive_snippets'] = trim($this->dataRecord['folder_directive_snippets']);
        }
        
        // Check custom PHP version
        if(isset($this->dataRecord['fastcgi_php_version']) && $this->dataRecord['fastcgi_php_version'] != '') {
            // Check php-fpm mode
            if($this->dataRecord['php'] == 'php-fpm'){
                $tmp = $app->db->queryOneRecord("SELECT * FROM server_php WHERE CONCAT(name,':',php_fpm_init_script,':',php_fpm_ini_dir,':',php_fpm_pool_dir) = '".$app->db->quote($this->dataRecord['fastcgi_php_version'])."'");
                if(is_array($tmp)) {
                    $this->dataRecord['fastcgi_php_version'] = $tmp['name'].':'.$tmp['php_fpm_init_script'].':'.$tmp['php_fpm_ini_dir'].':'.$tmp['php_fpm_pool_dir'];
                } else {
                    $this->dataRecord['fastcgi_php_version'] = '';
                }
                unset($tmp);
            // Check fast-cgi mode
            } elseif($this->dataRecord['php'] == 'fast-cgi') {
                $tmp = $app->db->queryOneRecord("SELECT * FROM server_php WHERE CONCAT(name,':',php_fastcgi_binary,':',php_fastcgi_ini_dir) = '".$app->db->quote($this->dataRecord['fastcgi_php_version'])."'");
                if(is_array($tmp)) {
                    $this->dataRecord['fastcgi_php_version'] = $tmp['name'].':'.$tmp['php_fastcgi_binary'].':'.$tmp['php_fastcgi_ini_dir'];
                } else {
                    $this->dataRecord['fastcgi_php_version'] = '';
                }
                unset($tmp);
            } else {
                // Other PHP modes do not have custom versions, so we force the value to be empty
                $this->dataRecord['fastcgi_php_version'] = '';
            }
        }
        parent::onSubmit();
    }