ShellBanner
System:Linux MiraNet 3.0.0-14-generic-pae #23-Ubuntu SMP Mon Nov 21 22:07:10 UTC 2011 i686
Software:Apache. PHP/5.3.6-13ubuntu3.10
ID:uid=65534(nobody) gid=65534(nogroup) groups=65534(nogroup)
Safe Mode:OFF
Open_Basedir:OFF
Freespace:27.63 GB of 70.42 GB (39.24%)
MySQL: ON MSSQL: OFF Oracle: OFF PostgreSQL: OFF Curl: OFF Sockets: ON Fetch: OFF Wget: ON Perl: ON
Disabled Functions: pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,

/ http/ root/ live/ - drwxrwxrwx

Directory:
Viewing file:     index.cgi (7.97 KB)      -rwxr-xr-x
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
#!/usr/bin/perl

use CGI::Cookie;
use CGI qw(:standard);
use Time::Piece;

require "users.cgi";
require "cams.cgi";
use String::CRC32;

$lvl = "0";

$date = time();
$date=Time::Piece -> new($date);
$year = $date -> strftime ( "%Y" ),"\n";
$month = $date -> strftime ( "%m" ),"\n";
$day = $date -> strftime ( "%d" ),"\n";
$hour = $date -> strftime ( "%H" ),"\n";
$min = $date -> strftime ( "%M" ),"\n";
$sec = $date -> strftime ( "%S" ),"\n";
$date = sprintf("%s.%s.%s %s:%s:%s", $day, $month, $year, $hour, $min, $sec);

########## Part of auth ###########
$rip = $ENV{'REMOTE_ADDR'};
$non = substr(crc32($ENV{HTTP_USER_AGENT}),0,8);
authconfig();
$authl = param("authl");
$authp = param("authp");
$logout = param("logout");
$i = 0; $ok = "0";
getcooke($secr);
if ($secr <"1" and $authl ne "")
    {
    while ($i < $usr) { if ( @usrn[$i] eq $authl and @usrp[$i] eq $authp ) { $ok = "1"; $secr = @usrl[$i]; last } $i++; }
    if ($ok ne "1") {system ("echo \"$date Auth error:   $rip  Login=$authl  Password=$authp  User Agent=$ENV{HTTP_USER_AGENT}\" >> $logfile"); sleep(5); }
    setcooke();
    }
logout();
if ($non ne $non1 and $non1 ne "") {system ("echo \"$date Wrong cookie: $rip  Cookie=$cookie  User Agent=$ENV{HTTP_USER_AGENT}\" >> $logfile"); $secr = "0"; $logout="1"; logout(); }
print $ct;
###################################
$lvl = $secr;
$num = $ARGV[0];

print "<html>
<head>
<meta charset=\"utf-8\">
<title>MiraNet Камеры</title>
    <link href=\"video-js.css\" rel=\"stylesheet\">
    <link href=\"videojs-hls-quality-selector.css\" rel=\"stylesheet\">
    <link href=\"skin.css\" rel=\"stylesheet\">
    <style>
        .v{ width: 960px; height: 540px; margin-left: auto; margin-top: 10px; bg: #000000; }
        body{ background-color: 191919; }
    </style>
<style>
input {
  font: bold 14px \"Arial\", Arial;
  border-radius: 14px;
  border: 1px solid #333333;
  padding: 3px 4px;
  background: #333333;
  color: #dddddd;
}
</style>
<style>
p.pv1 {
  font: bold 14px \"Helvetica Neue\", Helvetica, Arial, sans-serif;
  line-height: 14px;
  height:75px;
  margin: 0px;
  display: table-cell;
  vertical-align: middle;
  padding: 10px;
  border: 1px solid #22ff22;
}
</style>
<style>
p.pv2 {
  font: bold 14px \"Helvetica Neue\", Helvetica, Arial, sans-serif;
  line-height: 14px;
  height:75px;
  margin: 0px;
  display: table-cell;
  vertical-align: middle;
  padding: 10px;
}
</style>
</head>
 
<body link=\"#ffffff\" alink=\"#ffffff\" vlink=\"#ffffff\">
    <table border=0 width=100% valign=\"top\"><tr><td width=60% valign=\"top\">";

if ($lvl < "1") {print "<form name=\"form\" action=\"\" method=\"POST\"><p align=\"right\"><font face=\"Arial\" color=\"#dddddd\"><b>Логин <input type=\"text\" name=\"authl\" size=\"10\">&nbsp&nbspПароль <input type=\"password\" name=\"authp\" size=\"10\">&nbsp&nbsp<input type=\"submit\" value=\" Войти \"></b></font></p></form>";}
else { print "<form name=\"form\" action=\"\" method=\"POST\"><p align=\"right\"><font face=\"Arial\" color=\"#dddddd\"><b>$user&nbsp&nbsp<input type=\"hidden\" name=\"logout\" value=\"1\"><input type=\"submit\" value=\" Выйти \"></b></font></p></form>";}

if ($num eq "") 
    {
    $i = 0;
    while ($i < $cams)
    {
    if (@camr[$i] eq "0" or 
    $lvl eq "1" and @camr[$i] eq "1" or $lvl eq "1" and @camr[$i] eq "l" or 
    $lvl eq "2" and @camr[$i] eq "0" or $lvl eq "2" and @camr[$i] eq "1" or $lvl eq "2" and @camr[$i] eq "h" or
    $lvl eq "3" and @camr[$i] eq "0" or $lvl eq "3" and @camr[$i] eq "1" or $lvl eq "3" and @camr[$i] eq "h" or $lvl eq "3" and @camr[$i] eq "3" ) { $num = $i; last; }
    $i++;
    }
    }

$stream = @cams[$num];



print "    <div class=\"v\">";
    system ("echo \'$date Access:   $rip  Login=$user  Camera=$num  Level=$lvl  Camera level=@camr[$num]  Camera description= \"@camd[$num]\"\' >> $accesslog");
    if (@camr[$num] eq "0" or 
    $lvl eq "1" and @camr[$num] eq "1" or $lvl eq "1" and @camr[$num] eq "l" or 
    $lvl eq "2" and @camr[$num] ne "3" or
    $lvl eq "3")
    {
    print "<video id=\"my-video\" class=\"video-js vjs-16-9\" controls autoplay preload=\"auto\" width=\"960\" height=\"576\" aspectRatio=\"16:9\" data-setup='{}'>
    <source src=\"$stream.m3u8\" type=\"application/vnd.apple.mpegurl\" />
    </video>
    <br><table border=\"1\" cellspacing=\"0\" bordercolor=\"#444444\" width=\"960\"><tr><td border=\"1\" bgcolor=\"#191919\"><font face=\"Arial\" color=\"#dddddd\"><br><b>&nbsp&nbsp&nbsp@camd[$num]</b><br>&nbsp</font></center></td></tr></table>";
    } else {
    print "<center><h1><font color=\"#ff9999\"><br><br>Не достаточно прав<br>для просмотра этой камеры</font></h3></p></center>";
    }

    print "    </div>
    </td><td width=\"2%\"></td>
    <td valign=\"top\"><font color=\"#ffffff\">";
    $i = 0;
    while ($i < $cams) {
    $i1 = $i + 1;
    if ($i eq $num) { $pv = "pv1"; } else { $pv = "pv2"; }
    if (@camr[$i] eq "0" or 
    $lvl eq "1" and @camr[$i] eq "1" or $lvl eq "1" and @camr[$i] eq "l" or 
    $lvl eq "2" and @camr[$i] eq "0" or $lvl eq "2" and @camr[$i] eq "1" or $lvl eq "2" and @camr[$i] eq "h" or
    $lvl eq "3" and @camr[$i] eq "0" or $lvl eq "3" and @camr[$i] eq "1" or $lvl eq "3" and @camr[$i] eq "h" or $lvl eq "3" and @camr[$i] eq "3")
    {
        print "<br><a href=\"?$i\"><p class=\"$pv\"><table border=\"0\"><tr><td><img src=/live/images/@camp[$i] align=\"middle\" hspace=\"10\"></td><td valign=\"center\"><font face=\"Arial\" color=\"#dddddd\">@camd[$i]</font></td></tr></table></p></a>";
    }
    $i++;
    }
print "    </font></td></tr></table>
</body>

<script src=\"video.min.js\"></script>
<script src=\"videojs-contrib-quality-levels.min.js\"></script>
<script src=\"videojs-hls-quality-selector.min.js\"></script>
<script src=\"jquery.js\"></script>
<script src=\"ru.js\"></script>
<script type=\"text/javascript\">
    options = { }
    var player = videojs('my-video', 
    { fluid: true, controlBar: {'pictureInPictureToggle': false },
    fillAlways: true,
    language: 'ru',
    width: '960',
    height: '576',
    aspectRatio: '16:9',
        html5: {hls: { overrideNative: true, } } },
    function onPlayerReady(){ player.autoplay('any'), setTimeout(function() { player.play(); }, 100); } );
    player.hlsQualitySelector({ displayCurrentQuality: true });
</script>

</html>";

################# Auth #####################
sub setcooke {
if ($ok eq "1")
    {
    $secr1 = $secr;
    $secr = sprintf("%s%s%s", $non, $secr, $authl);
    $non1 = $non;
    ##### encode #####
    $secr = `./mkpwd -e $secr`;
    chop ($secr);
    ##################
    system ("echo \"$date Auth success: $rip  Login=$authl  Level=$secr1  Cookie=$secr  User Agent=$ENV{HTTP_USER_AGENT}\" >> $logfile");
    my $cook = cookie(
        -name => $cname,
        -value => $secr,
        -expires => '+3M',
        -domain => $csite,
        -path => '/',
        );
        $cook = sprintf header(-cookie=>$cook);
        ($cook) = split("charset=", $cook);
        $cook = sprintf ("%s charset=UTF8\n\n", $cook);
        print "$cook";
    $ct = "";
    $lvl = $secr1;
    $secr = $secr1;
    $user=$authl;
    return;
    }
}

sub getcooke {
    my $secret = cookie($cname);
    $secr = $secret;
    $cookie = $secret;
    ##### decode #####
    if ($secret ne "") { $secr1 = `./mkpwd -d $secret`; }
    chop($secr1);
    chop($secr1);
    $non1 = substr($secr1, 0 ,8);
    $secr = substr($secr1, 8, 1);
    $user = substr($secr1, 9, 10);
    ##################
}

sub logout {
    if ($logout eq "1")
    {
    $auth="0";
        my $cook = cookie(
    -name => $cname,
        -value => '0',
    -expires => '1',
        -domain => $csite,
    -path => '/',
        );
    $cook = sprintf header(-cookie=>$cook);
        ($cook) = split("charset=", $cook);
    $cook = sprintf ("%s charset=UTF8", $cook);
        print "$cook";
    $secr = "0";
        return;
    }
}

sub authconfig {
    $ct = "Content-type: text/html\n\n";
    ############### CONFIG ###############
    $cname = "cooke.videomiranet";
    $csite = "miranet.ru";
    $logfile = "auth.log";
    $accesslog = "access.log";
    #$secr = "secret";
    ######################################
}
Command:
Quick Commands:
Upload:
[OK] Max size: 100MB
PHP Filesystem: <@ 
Search File:
regexp
Create File:
Overwrite [OK]
View File:
Mass Defacement:
[+] Main Directory: [+] Defacement Url:
LmfaoX Shell - Private Build [BETA] - v0.1 -; Generated: 0.2775 seconds