⚝
One Hat Cyber Team
⚝
Your IP:
216.73.216.93
Server IP:
65.108.141.171
Server:
Linux server.heloix.com 5.4.0-214-generic #234-Ubuntu SMP Fri Mar 14 23:50:27 UTC 2025 x86_64
Server Software:
Apache
PHP Version:
7.4.33
Buat File
|
Buat Folder
Eksekusi
Dir :
~
/
usr
/
share
/
webmin
/
usermin
/
View File Name :
clone_mod.cgi
#!/usr/bin/perl # clone_mod.cgi # Clone an existing usermin module under a new name require './usermin-lib.pl'; &ReadParse(); &error_setup($text{'clone_err'}); $access{'umods'} || &error($text{'acl_ecannot'}); # Filter out potentially dangerous strings $in{'desc'} = &filter_javascript($in{'desc'}); # Symlink the code directory &get_usermin_miniserv_config(\%miniserv); $src = $in{'mod'}; %minfo = &get_usermin_module_info($src); $count = 2; do { $dst = $src.$count; $count++; } while(-d "$miniserv{'root'}/$dst"); &symlink_logged($src, "$miniserv{'root'}/$dst") || &error(&text('clone_elink', $!)); # Copy the config directory mkdir("$config{'usermin_dir'}/$dst", 0755); $out = &backquote_logged("( (cd $config{'usermin_dir'}/$src ; tar cf - .) | (cd $config{'usermin_dir'}/$dst ; tar xpf -) ) 2>&1"); if ($?) { &error(&text('clone_ecopy', $out)); } $in{'desc'} = &text('clone_desc', $minfo{'desc'}) if (!$in{'desc'}); &open_tempfile(CLONE, ">$config{'usermin_dir'}/$dst/clone"); &print_tempfile(CLONE, "desc=$in{'desc'}\n"); &close_tempfile(CLONE); # Grant access to the clone to this user &read_usermin_acl(undef, \%acl); @mods = &unique(@{$acl{"user"}}, $dst); &save_usermin_acl("user", \@mods); if ($in{'cat'} ne '*') { # Assign to category &lock_file("$config{'usermin_dir'}/webmin.cats"); &read_file("$config{'usermin_dir'}/webmin.cats", \%cats); $cats{$dst} = $in{'cat'}; &write_file("$config{'usermin_dir'}/webmin.cats", \%cats); &unlock_file("$config{'usermin_dir'}/webmin.cats"); } &webmin_log("clone", undef, $in{'mod'}, { 'desc' => $minfo{'desc'}, 'dst' => $dst, 'dstdesc' => $in{'desc'} }); &redirect("");