[ Avaa Bypassed ]




Upload:

Command:

www-data@3.145.57.4: ~ $
#!/usr/bin/perl
# run.cgi
# Run some command with the given parameters

require './custom-lib.pl';
$theme_no_table = 1;
if ($ENV{'CONTENT_TYPE'} =~ /multipart\/form-data/i) {
	&ReadParse(\%getin, "GET");
	&ReadParseMime(undef, \&read_parse_mime_callback, [ $getin{'id'} ]);
	}
else {
	&ReadParse();
	}
$| = 1;
&error_setup($text{'run_err'});
$cmd = &get_command($in{'id'}, $in{'idx'});
&can_run_command($cmd) || &error($text{'run_ecannot'});
if (&supports_users()) {
	$user = $cmd->{'user'} eq '*' ? $remote_user : $cmd->{'user'};
	@user_info = getpwnam($user);
	@user_info || &error(&text('run_ecmduser', $user));
	}
else {
	@user_info = ( "root", undef, 0, 0 );
	}

# substitute parameters into command
($env, $export, $str, $displaystr) = &set_parameter_envs(
					$cmd, $cmd->{'cmd'}, \@user_info);

# work out hosts
@hosts = @{$cmd->{'hosts'}};
@hosts = ( 0 ) if (!@hosts);
@servers = &list_servers();

# Run and display output
if ($cmd->{'format'} ne 'redirect' && $cmd->{'format'} ne 'form') {
	if ($cmd->{'format'}) {
		my ($f, $e) = $cmd->{'cmd'} =~ /([\p{L}\_\-\.0-9]+)\.(tar\..*?|[^.]*)$/;
		my $filename = $f || 'download';
		my $extension = $e || 'unknown';
		my $ctype = 'inline';
		if ($cmd->{'format'} =~ /^application/) {
			$ctype = 'attachment';
			}
		print "Content-Disposition: $ctype; filename=\"$filename.$extension\"\n";
		print "Content-type: ",$cmd->{'format'},"\n";
		print "\n";
		}
	else {
		&ui_print_unbuffered_header(
			&html_escape($cmd->{'desc'}), $text{'run_title'},
			"", -d "help" ? "run" : undef);
		}
	}

&remote_error_setup(\&remote_custom_handler);

foreach $h (@hosts) {
	($server) = grep { $_->{'id'} eq $h } @servers;
	next if (!$server);
	$txt = $cmd->{'noshow'} ? 'run_out2' : 'run_out';
	if (@{$cmd->{'hosts'}}) {
		$txt .= 'on';
		}
	if (!$cmd->{'format'}) {
		print &text($txt, "<tt>".&html_escape($displaystr)."</tt>",
		    $server->{'desc'} || "<tt>$server->{'host'}</tt>"),"\n";
		print "<pre>" if (!$cmd->{'raw'});
		}
	$remote_custom_error = undef;
	if ($h == 0) {
		# Run locally
		($got, $out, $timeout, $ex) = &execute_custom_command(
					$cmd, $env, $export, $str,
					$cmd->{'format'} ne 'redirect' &&
					$cmd->{'format'} ne 'form');
		}
	else {
		# Remote foreign call
		eval {
			$SIG{'ALRM'} = sub { die "timeout" };
			alarm($cmd->{'timeout'} ? $cmd->{'timeout'} + 5 : 60);
			&remote_foreign_require($server->{'host'}, "custom",
						"custom-lib.pl");
			&remote_foreign_call($server->{'host'}, "custom",
				     "set_parameter_envs", $cmd, $cmd->{'cmd'},
				     \@user_info, \%in, 1);
			($got, $out, $timeout, $ex) = &remote_foreign_call(
			   $server->{'host'}, "custom",
			   "execute_custom_command", $cmd, $env, $export, $str);
			};
		if ($@ =~ /timeout/) {
			$timeout = 1;
			}
		alarm(0);
		}
	if ($h == 0) {
		&additional_log('exec', undef, $displaystr);
		}
	if (!$remote_custom_error) {
		print $out if ($h != 0 && $cmd->{'format'} ne 'redirect' &&
					  $cmd->{'format'} ne 'form');
		if (!$got && !$cmd->{'format'}) {
			print "<i>$text{'run_noout'}</i>\n";
			}
		}

	if (!$cmd->{'format'}) {
		print "</pre>\n" if (!$cmd->{'raw'});
		if ($remote_custom_error) {
			print "<b>$remote_custom_error</b><p>\n";
			}
		elsif ($timeout) {
			print "<b>",&text('run_timeout',
					  $cmd->{'timeout'} || 60),"</b><p>\n";
			}
		elsif ($ex) {
			print "<b>",&text('run_failed', $ex),"</b><p>\n";
			}
		}

	# Only log non-upload inputs
	%cmdin = ( %$cmd );
	foreach $i (keys %in) {
		($arg) = grep { $_->{'name'} eq $i } @{$cmd->{'args'}};
		if ($arg->{'type'} != 10) {
			$cmdin{$i} = $in{$i};
			}
		}
	}
&webmin_log("exec", "command", $cmd->{'id'}, \%cmdin);
unlink(@unlink) if (@unlink);
if (!$cmd->{'format'}) {
	&ui_print_footer("", $text{'index_return'});
	}
elsif ($cmd->{'format'} eq 'redirect') {
	&redirect("");
	}
elsif ($cmd->{'format'} eq 'form') {
	&redirect("form.cgi?id=".$in{'id'}."&idx=".$in{'idx'});
	}

sub remote_custom_handler
{
$remote_custom_error = join("", @_);
}


Filemanager

Name Type Size Permission Actions
help Folder 0755
images Folder 0755
lang Folder 0755
CHANGELOG File 2.9 KB 0644
acl_security.pl File 1.03 KB 0755
backup_config.pl File 683 B 0755
cgi_args.pl File 1.14 KB 0755
config File 42 B 0644
config-ALL-linux File 42 B 0644
config.info File 490 B 0644
config.info.ca File 500 B 0644
config.info.cs File 326 B 0644
config.info.de File 575 B 0644
config.info.es File 338 B 0644
config.info.fr File 669 B 0644
config.info.hr File 0 B 0644
config.info.it File 448 B 0644
config.info.ko File 266 B 0644
config.info.ms File 534 B 0644
config.info.nl File 580 B 0644
config.info.no File 548 B 0644
config.info.pl File 612 B 0644
config.info.ru File 158 B 0644
config.info.sk File 0 B 0644
config.info.tr File 269 B 0644
config.info.uk File 165 B 0644
custom-lib.pl File 16.71 KB 0755
defaultacl File 25 B 0644
edit_cmd.cgi File 3.69 KB 0755
edit_file.cgi File 2.67 KB 0755
edit_sql.cgi File 2.64 KB 0755
feedback_files.pl File 208 B 0755
form.cgi File 1.29 KB 0755
index.cgi File 4.14 KB 0755
log_parser.pl File 553 B 0755
module.info File 165 B 0644
module.info.af File 0 B 0644
module.info.af.auto File 145 B 0644
module.info.ar File 0 B 0644
module.info.ar.auto File 200 B 0644
module.info.be File 0 B 0644
module.info.be.auto File 277 B 0644
module.info.bg File 0 B 0644
module.info.bg.auto File 297 B 0644
module.info.ca File 130 B 0644
module.info.ca.auto File 22 B 0644
module.info.cs File 33 B 0644
module.info.cs.auto File 145 B 0644
module.info.da File 0 B 0644
module.info.da.auto File 158 B 0644
module.info.de File 149 B 0644
module.info.de.auto File 26 B 0644
module.info.el File 0 B 0644
module.info.el.auto File 299 B 0644
module.info.es File 32 B 0644
module.info.es.auto File 116 B 0644
module.info.eu File 0 B 0644
module.info.eu.auto File 147 B 0644
module.info.fa File 0 B 0644
module.info.fa.auto File 223 B 0644
module.info.fi File 0 B 0644
module.info.fi.auto File 170 B 0644
module.info.fr File 34 B 0644
module.info.fr.auto File 142 B 0644
module.info.he File 0 B 0644
module.info.he.auto File 196 B 0644
module.info.hr File 0 B 0644
module.info.hr.auto File 169 B 0644
module.info.hu File 26 B 0644
module.info.hu.auto File 151 B 0644
module.info.it File 31 B 0644
module.info.it.auto File 112 B 0644
module.info.ja File 34 B 0644
module.info.ja.auto File 163 B 0644
module.info.ko File 32 B 0644
module.info.ko.auto File 154 B 0644
module.info.lt File 0 B 0644
module.info.lt.auto File 164 B 0644
module.info.lv File 0 B 0644
module.info.lv.auto File 153 B 0644
module.info.ms File 136 B 0644
module.info.ms.auto File 15 B 0644
module.info.mt File 0 B 0644
module.info.mt.auto File 148 B 0644
module.info.nl File 25 B 0644
module.info.nl.auto File 123 B 0644
module.info.no File 33 B 0644
module.info.no.auto File 120 B 0644
module.info.pl File 139 B 0644
module.info.pl.auto File 16 B 0644
module.info.pt File 32 B 0644
module.info.pt.auto File 129 B 0644
module.info.pt_BR File 0 B 0644
module.info.pt_BR.auto File 170 B 0644
module.info.ro File 0 B 0644
module.info.ro.auto File 168 B 0644
module.info.ru File 48 B 0644
module.info.ru.auto File 253 B 0644
module.info.sk File 33 B 0644
module.info.sk.auto File 136 B 0644
module.info.sl File 0 B 0644
module.info.sl.auto File 146 B 0644
module.info.sv File 23 B 0644
module.info.sv.auto File 119 B 0644
module.info.th File 0 B 0644
module.info.th.auto File 295 B 0644
module.info.tr File 23 B 0644
module.info.tr.auto File 140 B 0644
module.info.uk File 0 B 0644
module.info.uk.auto File 285 B 0644
module.info.ur File 0 B 0644
module.info.ur.auto File 271 B 0644
module.info.vi File 0 B 0644
module.info.vi.auto File 195 B 0644
module.info.zh File 30 B 0644
module.info.zh.auto File 91 B 0644
module.info.zh_TW File 27 B 0644
module.info.zh_TW.auto File 97 B 0644
prefs.info File 26 B 0644
run.cgi File 3.89 KB 0755
save.cgi File 1.5 KB 0755
save_cmd.cgi File 2.44 KB 0755
save_file.cgi File 1.79 KB 0755
save_sql.cgi File 1.53 KB 0755
sql.cgi File 1.5 KB 0755
sqlform.cgi File 962 B 0755
view.cgi File 1.43 KB 0755