Files
webmin/filemin/create_folder.cgi
Ilia Ross 04ae776e6a
Some checks failed
webmin.dev: webmin/webmin / build (push) Has been cancelled
Fix to validate action paths
* Note: Validate File Manager action name/file parameters as checked paths under the current directory and `allowed_paths` before operations, blocking traversal and symlink escapes.
2026-05-12 01:25:57 +02:00

33 lines
588 B
Perl
Executable File

#!/usr/local/bin/perl
require './filemin-lib.pl';
&ReadParse();
get_paths();
if (!$in{'name'}) {
&redirect("index.cgi?path=".&urlize($path));
return;
}
my $name = $in{'name'};
my $full = &validate_filename_path($name);
if (-e $full) {
print_errors(&html_escape($name).
" ".$text{'error_exists'});
}
else {
my @st = stat($cwd);
if (&make_dir($full, oct(755))) {
&set_ownership_permissions(
$st[4], $st[5], undef, $full);
&redirect("index.cgi?path=".
&urlize($path));
}
else {
print_errors($text{'error_create'}." ".
&html_escape($name).
" : ".$!);
}
}