Простой скрипт мониторинга cs 1.6 на php....

Разработка своих веб-приложений и страничек

Простой скрипт мониторинга cs 1.6 на php....

Сообщение JavaExport » 02 фев 2009, 02:22

Вот искал адекватные скрипты мониторинга на cs 1.6 и наткнулся на этот не замудрёный простой скрипт каторый не использует mysql и т.п.
Внёс незначительные изменения,в плане отоброжение карты в виде картинки так как это не за чем.
Проверил на пару серваках работает отлично.
+ в том что он отображает игроков находящихся в даный момент на сервере и даже фраги.
Вот код:
Код: Выделить всёРазвернуть
<?PHP 
   /*
   ########################################################
   #Скрипт мониторинга Counter Strike серверов.           #
   # Скрипт написал unknown - Видимо автор или не         #
   #пеодписал скрипт или его стёр не добросовестный       #
   #пользователь.                                         #
   #Внёс незначительные изменение "JavaExport"            #
   ########################################################
   */
$server="ip adres ";
$port='port'; 

// hl new query part

$qw=chr(32);
$fp = fsockopen ("udp://".$server,$port);
if (!$fp)
    {
      echo "ERROR: $errno - $errstr<br>\n";   
    }
    else
    {
        fwrite($fp,"\xFF\xFF\xFF\xFFTSource Engine Query\x00".chr(10));
        $st=fread($fp,1);
        if (!$st)
        {
            echo("<b>Сервер отключен ,причина не известна.</b>");
            $address=$server.$port;
            $max="0";
            $current="0";
            $name="Unknown";
            $map="unknownmap";
        }
        else
        { 
            $r=socket_get_status($fp);
            $r=$r["unread_bytes"];
            $st.=fread($fp,$r);
            $st=substr($st,5);
            $address=SubStr($st,0,StrPos($st,chr(0)));
            $address=str_replace(chr(0),"|",$address);
            $st=SubStr($st,StrPos($st,chr(0))+1);
            $name=SubStr($st,0,StrPos($st,chr(0)));
            $st=SubStr($st,StrPos($st,chr(0))+1);
            $map=SubStr($st,0,StrPos($st,chr(0)));
            $st=SubStr($st,StrPos($st,chr(0))+1);
            $st=SubStr($st,StrPos($st,chr(0))+1);
            $st=SubStr($st,StrPos($st,chr(0))+1);
            $current=ord(SubStr($st,0,1));
            $max=ord(SubStr($st,1,1));
        };
    };
fclose($fp);   

$fp = fsockopen ("udp://".$server,$port);
if (!$fp)
    {
        echo "ERROR: $errno - $errstr<br>\n";
    }
    else
    {
        fwrite($fp,"\xFF\xFF\xFF\xFFW\x00".chr(10)); 
        $st=fread($fp,1);
        if ($st)
        {
            $r=socket_get_status($fp);
            $r=$r["unread_bytes"];
            $st.=fread($fp,$r); 
            $sbstr=substr($st,5,5);
            fwrite($fp,"\xFF\xFF\xFF\xFFU".$sbstr."\x00".chr(10)); 
            $st=fread($fp,1);
            if ($st)
            { 
                $r=socket_get_status($fp);
                $r=$r["unread_bytes"];
                $st.=fread($fp,$r);
                $playersn=ord(substr($st,5,1));
                $st=substr($st,6);
               
                echo("<body> \n \n");
                echo("  <table>\n\n");
                echo("      <tr>\n");
                echo("          <td width=\"100\"><b>Сервер:</b></td><td width=\"250\">".$name."</td>\n");
                echo("      </tr>\n");
                echo("      <tr>\n");
                echo("          <td width=\"100\"><b>IP:</b></td><td>".$address."</td>\n");
                echo("      </tr>\n");   
                echo("      <tr>\n");
                echo("          <td width=\"100\"><b>Карта:</b></td><td>".$map."</td>\n");
                echo("      </tr>\n");
                echo("      <tr>\n");
                echo("          <td width=\"100\"><b>Игроков:</b></td><td>".$current."/".$max."</td>\n");
                echo("      </tr>\n\n");
                echo("  </table>\n\n");
                echo("  <p>$show_map</p>\n\n");
                echo("  <table border=1 cellspacing=1 cellpadding=1 >\n\n");   
                echo("      <tr>\n");
                echo("          <td align=\"center\" width=\"15\">#</td>\n");
                echo("          <td align=\"center\" width=\"250\"><b>Имя игрока</b></td>\n");
                echo("          <td align=\"center\" width=\"70\"><b>Фрагов</b></td>\n");
                echo("      </tr>\n");
                for ($i=1;$i<=$playersn;$i++)
                {
                    $n=ord(substr($st,0,1));
                    $st=substr($st,1);
                    $name=SubStr($st,0,StrPos($st,chr(0)));
                    $kills=ord(substr($st,StrPos($st,chr(0))+1,1));
                    if ($kills==255){$kills=-1;}
                    if ($kills==254){$kills=-2;}
                    if ($kills==253){$kills=-3;}
                    if ($kills==252){$kills=-4;}
                    $st=substr($st,StrPos($st,chr(0)));
                    $st=substr($st,9);
                    echo("      <tr>\n");
                    echo("          <td width=\"15\">$n</td>\n");
                    echo("          <td width=\"250\">&nbsp;&nbsp;$name</td>\n");
                    echo("          <td align=\"center\" width=70>$kills</td>\n");
                    echo("      </tr>\n");
                };
                echo("\n  </table>\n\n");   
                echo("</body>\n");   
            };
        };
};

echo "<br><br><hr>Игровые сервера на <a href='http://vfose.ru'>vfose.ru</a>";
?> 

Также сразу выложу исходник.
Вложения
cs.rar
(1.11 Кб) Скачиваний: 616
Последний раз редактировалось JavaExport 03 фев 2009, 01:28, всего редактировалось 3 раз(а).
JavaExport
Активный участник
 
Сообщения: 937
Зарегистрирован: 15 сен 2008, 18:45
Домен: http://mobilephone.ixbb.r

Re: Простой скрипт мониторинга cs 1.6 на php....

Сообщение JavaExport » 02 фев 2009, 20:01

Что н кто не нуждается в скрипте?
Или вопросов нету? :)
JavaExport
Активный участник
 
Сообщения: 937
Зарегистрирован: 15 сен 2008, 18:45
Домен: http://mobilephone.ixbb.r

Re: Простой скрипт мониторинга cs 1.6 на php....

Сообщение Rostov114 » 02 фев 2009, 20:26

Код: Выделить всёРазвернуть
if (file_exists(".$map.")) $show_map = "<img src=\"maps/".$map.".jpg\">";

Эт как?
Некоммерческий проект «HSDN»
Аватара пользователя
Rostov114
Автор
 
Сообщения: 3198
Зарегистрирован: 18 окт 2007, 02:21

Re: Простой скрипт мониторинга cs 1.6 на php....

Сообщение JavaExport » 02 фев 2009, 20:48

Rostov114 писал(а):
Код: Выделить всёРазвернуть
if (file_exists(".$map.")) $show_map = "<img src=\"maps/".$map.".jpg\">";

Эт как?
Ой забыл это из кода убрать.
Просто исходник отображает ещё и картинку мапы.
Но я это убрал. Зачем это нужно. Да и искать картинки касяк.
JavaExport
Активный участник
 
Сообщения: 937
Зарегистрирован: 15 сен 2008, 18:45
Домен: http://mobilephone.ixbb.r

Re: Простой скрипт мониторинга cs 1.6 на php....

Сообщение Rostov114 » 02 фев 2009, 21:47

JavaExport писал(а):Ой забыл это из кода убрать.
Просто исходник отображает ещё и картинку мапы.
Но я это убрал. Зачем это нужно. Да и искать картинки касяк.
:D А нафиг выкладывать...притом...я не увидел не одной функции экранирования спец символов...тоесть в этом скрипте реально организовать активную XSS...
Некоммерческий проект «HSDN»
Аватара пользователя
Rostov114
Автор
 
Сообщения: 3198
Зарегистрирован: 18 окт 2007, 02:21

Re: Простой скрипт мониторинга cs 1.6 на php....

Сообщение JavaExport » 02 фев 2009, 22:10

Rostov114 писал(а)::D А нафиг выкладывать...притом...я не увидел не одной функции экранирования спец символов...тоесть в этом скрипте реально организовать активную XSS...
Скрипт не мой так что мне пофигу на XSS. :roll:
JavaExport
Активный участник
 
Сообщения: 937
Зарегистрирован: 15 сен 2008, 18:45
Домен: http://mobilephone.ixbb.r

Re: Простой скрипт мониторинга cs 1.6 на php....

Сообщение Rostov114 » 03 фев 2009, 00:34

JavaExport писал(а):Скрипт не мой так что мне пофигу на XSS. :roll:

Тогда появляются вопросы:
1. Почему вверху скрипта не указан автор который написал скрипт и тот кто его изменил.
2. Зачем выкладывать сырой и опасный для конечного пользователя скрипт. Например как бы ты отнесся к phpBB Group если бы они выпустили двиг с XSS, удаленным иклудингом и SQL иньекциями? А теперь подумай как к тебе отнесутся...
Некоммерческий проект «HSDN»
Аватара пользователя
Rostov114
Автор
 
Сообщения: 3198
Зарегистрирован: 18 окт 2007, 02:21

Re: Простой скрипт мониторинга cs 1.6 на php....

Сообщение Rostov114 » 03 фев 2009, 00:36

Код: Выделить всёРазвернуть
                if (file_exists(".$map.")) ;
                else $show_map = "<img src=\"maps/none.jpg\">";
:lol: Еще лучше...ппц
Некоммерческий проект «HSDN»
Аватара пользователя
Rostov114
Автор
 
Сообщения: 3198
Зарегистрирован: 18 окт 2007, 02:21

Re: Простой скрипт мониторинга cs 1.6 на php....

Сообщение JavaExport » 03 фев 2009, 01:29

Rostov114 писал(а):
Код: Выделить всёРазвернуть
                if (file_exists(".$map.")) ;
                else $show_map = "<img src=\"maps/none.jpg\">";
:lol: Еще лучше...ппц
Что смешного не увидал просто. :(
JavaExport
Активный участник
 
Сообщения: 937
Зарегистрирован: 15 сен 2008, 18:45
Домен: http://mobilephone.ixbb.r

Re: Простой скрипт мониторинга cs 1.6 на php....

Сообщение JavaExport » 03 фев 2009, 01:31

Rostov114 писал(а):
JavaExport писал(а):Скрипт не мой так что мне пофигу на XSS. :roll:

Тогда появляются вопросы:
1. Почему вверху скрипта не указан автор который написал скрипт и тот кто его изменил.
2. Зачем выкладывать сырой и опасный для конечного пользователя скрипт. Например как бы ты отнесся к phpBB Group если бы они выпустили двиг с XSS, удаленным иклудингом и SQL иньекциями? А теперь подумай как к тебе отнесутся...
Не приставая ко мне. :sorry:
Я очень мало понимаю что ты несёш . :)
Я тя канешно понимаю частями, но я незнаю не XSS не SQL иньекций.
Последний раз редактировалось JavaExport 03 фев 2009, 01:32, всего редактировалось 1 раз.
JavaExport
Активный участник
 
Сообщения: 937
Зарегистрирован: 15 сен 2008, 18:45
Домен: http://mobilephone.ixbb.r

След.

Вернуться в PHP, HTML, CSS...

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 158