⚝
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
/
acl
/
View File Name :
list_sessions.cgi
#!/usr/bin/perl # list_sessions.cgi # Display current login sessions use strict; use warnings; no warnings 'redefine'; no warnings 'uninitialized'; require './acl-lib.pl'; our (%in, %text, %config, %access, %sessiondb); $access{'sessions'} || &error($text{'sessions_ecannot'}); &ui_print_header(undef, $text{'sessions_title'}, ""); &ReadParse(); my %miniserv; &get_miniserv_config(\%miniserv); &open_session_db(\%miniserv); my $time_now = time(); my %hasuser; foreach my $u (&list_users()) { $hasuser{$u->{'name'}}++; } my $haslog = &foreign_available("webminlog"); print &ui_columns_start([ $text{'sessions_id'}, $text{'sessions_state'}, $text{'sessions_user'}, $text{'sessions_host'}, $text{'sessions_login'}, $text{'sessions_actions'}, ], 100); foreach my $k (sort { my @a = split(/\s+/, $sessiondb{$a}); my @b = split(/\s+/, $sessiondb{$b}); $b[1] <=> $a[1] } (grep { $sessiondb{$_} } keys %sessiondb)) { next if ($k =~ /^1111111/); my ($user, $ltime, $lip) = split(/\s+/, $sessiondb{$k}); next if ($user =~ /^\!/ && !$in{'logouts'}); next if ($miniserv{'logouttime'} && $time_now - $ltime > $miniserv{'logouttime'}*60); my @cols; my $candel = 0; if ($k eq $main::session_id || $k eq &hash_session_id($main::session_id)) { # Cannot self-terminate push(@cols, "<b><tt>$k</tt></b>"); push(@cols, $text{'sessions_this'}); } elsif ($user =~ s/^\!//) { # Already logged out push(@cols, "<tt>$k</tt>"); push(@cols, $text{'sessions_out'}); } else { push(@cols, "<tt>$k</tt>"); push(@cols, $text{'sessions_in'}); $candel = 1; } if ($hasuser{$user}) { push(@cols, ui_link("edit_user.cgi?user=$user", $user)); } elsif ($miniserv{'unixauth'}) { push(@cols, "$user (" . ui_link("edit_user.cgi?user=$miniserv{'unixauth'}", $miniserv{'unixauth'}) . ")"); } else { push(@cols, $user); } push(@cols, $lip); push(@cols, &make_date($ltime)); my @links; if ($haslog) { push(@links, ui_link("../webminlog/search.cgi?uall=1&mall=1&tall=1&wall=1&fall=1&sid=$k", $text{'sessions_lview'})); } if ($candel) { push(@links, ui_link("delete_session.cgi?id=$k", $text{'sessions_kill'})); } push(@cols, ui_links_row(\@links)); print &ui_columns_row(\@cols); } print &ui_columns_end(); if (!$in{'logouts'}) { print &ui_link("list_sessions.cgi?logouts=1", $text{'sessions_logouts'}),"<p>\n"; } &ui_print_footer("", $text{'index_return'});