Ticket #2440: security-2440.patch

File security-2440.patch, 3.4 KB (added by benedikt, 21 months ago)

patch file against ispCP Omega 1.0.6

  • engine/ispcp-dmn-mngr

     
    18601860 
    18611861        $rs = make_dir( 
    18621862                "$www_dir/$dmn_name/backups", 
    1863                 $sys_user, 
    1864                 $httpd_gid, 
    1865                 0770 
     1863                0, 
     1864                0, 
     1865                0555 
    18661866        ); 
    18671867        return $rs if ($rs != 0); 
    18681868 
     
    22332233        } 
    22342234 
    22352235        if(! -d "$www_dir/$dmn_name/backups") { 
    2236                 $rs = make_dir("$www_dir/$dmn_name/backups", $sys_user, $httpd_gid, 0770); 
     2236                $rs = make_dir("$www_dir/$dmn_name/backups", 0, 0, 0555); 
    22372237                return $rs if ($rs != 0); 
    22382238        } 
    22392239 
  • engine/backup/ispcp-backup-all

     
    177177                        return $rs; 
    178178                } 
    179179 
    180                 $rs = setfmode("$db_backup_file", $domain_uid, $domain_gid, 0660); 
     180                $rs = setfmode("$db_backup_file", 0, 0, 0444); 
    181181                if( $rs != 0 ){ 
    182                         push_el(\@main::el, 'backup_sql()', "Domain $dmn_name: ERROR: Can not chmod 0660 uid: $domain_uid gid: $domain_gid file $db_backup_file!"); 
    183                         send_error_mail('backup_sql()', "Domain $dmn_name: ERROR: Can not chmod 0660 uid: $domain_uid gid: $domain_gid file $db_backup_file!"); 
     182                        push_el(\@main::el, 'backup_sql()', "Domain $dmn_name: ERROR: Can not chmod 0444 uid: 0 gid: 0 file $db_backup_file!"); 
     183                        send_error_mail('backup_sql()', "Domain $dmn_name: ERROR: Can not chmod 0444 uid: 0 gid: 0 file $db_backup_file!"); 
    184184                        unlink($db_backup_file); 
    185185                        return $rs; 
    186186                } 
     
    260260                        # 
    261261 
    262262                        if (! -d $dmn_backup_dir) { 
    263                                 $rs = make_dir($dmn_backup_dir, $domain_uid, $domain_gid, 0770); 
     263                                $rs = make_dir($dmn_backup_dir, 0, 0, 0555); 
    264264                                return $rs if ($rs != 0); 
    265265                        } 
    266266 
     267                        #todo test mode and adjust only if necessary 
     268                        $rs = setfmode($dmn_backup_dir, 0, 0, 0555); 
     269                        if ($rs != 0) { 
     270                                push_el(\@main::el, 'backup_all_engine()', "Domain $dmn_name: Error while changing mode to 0555 uid: 0: 0 for $dmn_backup_dir!"); 
     271                                send_error_mail('backup_all_engine()', "Domain $dmn_name: Error while changing mode to 0555 uid: 0 gid: 0 for $dmn_backup_dir!"); 
     272                        } 
     273 
    267274                        if( $zip eq 'bzip2' || $zip eq 'gzip' || $zip eq 'lzma' || $zip eq 'xz') { 
    268275                                $backup_filename = "$dmn_name-backup-$date.tar.".($zip eq 'bzip2' ? 'bz2' : ($zip eq 'gzip' ? 'gz' : $zip)); 
    269276                                if ($allowbackup eq "full" || $allowbackup eq "dmn") { 
     
    300307                                                send_error_mail('backup_all_engine()', "Domain $dmn_name: Error while executing $cmd_mv -f $www_dir/$backup_filename $dmn_backup_dir!"); 
    301308                                        } 
    302309 
    303                                         $rs = setfmode("$dmn_backup_dir/$backup_filename", $domain_uid, $domain_gid, 0660); 
     310                                        $rs = setfmode("$dmn_backup_dir/$backup_filename", 0, 0, 0444); 
    304311                                        if ($rs != 0){ 
    305                                                 push_el(\@main::el, 'backup_all_engine()', "Domain $dmn_name: Error while changing mode to 0660 uid: $domain_uid gid: $domain_gid for $dmn_backup_dir/$backup_filename!"); 
    306                                                 send_error_mail('backup_all_engine()', "Domain $dmn_name: Error while changing mode to 0660 uid: $domain_uid gid: $domain_gid for $dmn_backup_dir/$backup_filename!"); 
     312                                                push_el(\@main::el, 'backup_all_engine()', "Domain $dmn_name: Error while changing mode to 0444 uid: 0 gid: 0 for $dmn_backup_dir/$backup_filename!"); 
     313                                                send_error_mail('backup_all_engine()', "Domain $dmn_name: Error while changing mode to 0444 uid: 0 gid: 0 for $dmn_backup_dir/$backup_filename!"); 
    307314                                        } 
    308315 
    309316                                } else { # some error occurred