ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2
Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей. Здесь обсуждаются безопасность, программирование, технологии и многое другое. Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
Вернуться   Форум АНТИЧАТ > Оффтоп > Болталка
   
 
 
Опции темы Поиск в этой теме Опции просмотра

вебхак - защита
  #1  
Старый 19.12.2009, 20:48
[QwyZ]
Banned
Регистрация: 07.07.2009
Сообщений: 109
Провел на форуме:
766927

Репутация: 67
По умолчанию вебхак - защита

хелло ворлд, вот написал тут скриптик для своего сайта - чтобы филтровал запросы:

PHP код:
<?php
function split_req($s){$s=explode("&",$s);return($s);}
$request=$_SERVER['QUERY_STRING'];
$prequest=$_POST;
foreach(
$prequest as $pv => $pn){$preq=$preq.$pv."=".$pn;}
$request=stripslashes($preq).$request;
$request=urldecode($request);
$request=strtolower($request);
$vars=split_req($request);
$xss_attack = array("<script","</script>","location.href","document.cookie","src=",".js","http://","alert(","%3E","%3C");
$rfi_attack = array("../","./","etc/passwd","%00","http://","ftp://","://","data:");
$sql_attack = array("'","union","select","from","%27");
foreach(
$vars as $kk=>$vv)
{
$cvd=explode("=",$vv);$cvn=$cvd[0];$cvv=$cvd[1];

    foreach(
$xss_attack as $kkk=>$vvv){if (strstr($cvv,$vvv)){$xss_inf=1;$xss_poison=$vv;break;}}
    foreach(
$rfi_attack as $kkkk=>$vvvv){if (strstr($cvv,$vvvv)){$rfi_inf=1;$rfi_poison=$vv;break;}}
    foreach(
$sql_attack as $kkkkk=>$vvvvv){if (strstr($cvv,$vvvvv)){$sql_inf=1;$sql_poison=$vv;break;}}
    if (
$xss_inf=="1")
    {
        
$report="<br><b>".$_SERVER['REMOTE_ADDR'] . "</b> tried to attack system by <i>XSS attack</i> via this request:<br>&nbsp;&nbsp;&nbsp;&nbsp;<font color=red>" stripslashes(htmlspecialchars($xss_poison)) . "</font><br>By date: ".date("F j, Y, g:i a")."<br>on page: <font color=blue>".htmlspecialchars($_SERVER['HTTP_REFERER'])."</font><br><br>";
        
$logfile=fopen("./logs/edbe01a269a70b0780c47bf6e11792a9.php","a+");
        
fputs($logfile,base64_encode($report)."\n");
        echo(
"<center><font color=red size=-1 face=tahoma>Request denied because of infected as XSS - Attack</font></center>");
        exit;
    }
    if (
$rfi_inf=="1")
    {
        
$report="<br><b>".$_SERVER['REMOTE_ADDR'] . "</b> tried to attack system by <i>PHP Include</i> via this request:<br>&nbsp;&nbsp;&nbsp;&nbsp;<font color=red>" stripslashes(htmlspecialchars($rfi_poison)) . "</font><br>By date: ".date("F j, Y, g:i a")."<br>on page: <font color=blue>".htmlspecialchars($_SERVER['HTTP_REFERER'])."</font><br><br>";
        
$logfile=fopen("./logs/edbe01a269a70b0780c47bf6e11792a9.php","a+");
        
fputs($logfile,base64_encode($report)."\n");
        echo(
"<center><font color=red size=-1 face=tahoma>Request denied because of infected as RFI / LFI attack</font></center>");
        exit;
    }
    if (
$sql_inf=="1")
    {
        
$report="<br><b>".$_SERVER['REMOTE_ADDR'] . "</b> tried to attack system by <i>SQL Injection</i> via this request:<br>&nbsp;&nbsp;&nbsp;&nbsp;<font color=red>" stripslashes(htmlspecialchars($sql_poison)) . "</font><br>By date: ".date("F j, Y, g:i a")."<br>on page: <font color=blue>".htmlspecialchars($_SERVER['HTTP_REFERER'])."</font><br><br>";
        
$logfile=fopen("./logs/edbe01a269a70b0780c47bf6e11792a9.php","a+");
        
fputs($logfile,base64_encode($report)."\n");
        echo(
"<center><font color=red size=-1 face=tahoma>Request denied because of infected as SQL - Injection attack</font></center>");
        exit;
    }
    
$xss_inf=0;
    
$rfi_inf=0;
    
$sql_inf=0;
}
?>
ну и логфайл - вьювер:

PHP код:
<html>
<style>
.ffl
{

border: solid 1px orange;
background-color:FFF0C6;
padding:3px;
margin-left:20px;
margin-right:20px;
}
</style>
<center><h3>Attacks logfile viewer:</h3></center><br><br>
<font face=verdana size=-1>
<?php
@$logfile=file("./logs/edbe01a269a70b0780c47bf6e11792a9.php");
$i=0;
for(
$i=0;$i<count($logfile);$i++)
{
    
$crep=stripslashes(trim(base64_decode(trim($logfile[$i]))));
    echo(
"<div class=ffl>".$crep."</div><br><br>");
}
?>
</font>
</html>

если че-нить пропустил или есть какие - то советы/пожелания, отпишитесь
 
Ответить с цитированием
 



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Совершенная атака и совершенная защита chatlanin Болталка 2 31.10.2009 15:34
Защита от Win32.Induc (Delphi) flacs С/С++, C#, Delphi, .NET, Asm 7 21.08.2009 20:39
Железная защита Dmitriy507 Защита ОС: вирусы, антивирусы, файрволы. 1 18.06.2006 12:21
Защита информации против защиты данных dinar_007 Мировые новости 0 26.02.2006 20:02



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ