Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей.
Здесь обсуждаются безопасность, программирование, технологии и многое другое.
Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
 |
|

12.03.2008, 13:08
|
|
Участник форума
Регистрация: 27.08.2006
Сообщений: 223
Провел на форуме: 2154209
Репутация:
341
|
|
shells search
Ищу программу для поиска шеллов(php), если такая есть.
Если нет, то актуально ли будет её закодить?
-
Только не надо говорить, что это для ньюбисов и любой дурак спокойно обойдет её. У меня есть идеи КАК сделать=)
|
|
|

12.03.2008, 14:41
|
|
Banned
Регистрация: 27.06.2006
Сообщений: 1,614
Провел на форуме: 3887520
Репутация:
2996
|
|
убей себя нах!!!
google.com
зы первый нах!
|
|
|

12.03.2008, 14:49
|
|
Участник форума
Регистрация: 05.07.2006
Сообщений: 285
Провел на форуме: 3295822
Репутация:
117
|
|
Сообщение от [ cash ]
убей себя нах!!!
google.com
зы первый нах!
Кто-то ломанул акк кэша )))) to TC действительно гуглом можно нарыть шеллов и такой вопрос уже поднимался. Единственная польза от создания такой тулзы - практика кодинга )))
|
|
|

12.03.2008, 16:27
|
|
Участник форума
Регистрация: 27.08.2006
Сообщений: 223
Провел на форуме: 2154209
Репутация:
341
|
|
Бля я имел ввиду поиска шелЛов на своем сайте! например каспер детектит р57 и madnet и на этом его детект шеллов заканчиваеца=)
|
|
|

12.03.2008, 16:40
|
|
Умиротворенн
Регистрация: 09.12.2004
Сообщений: 996
Провел на форуме: 2386719
Репутация:
1384
|
|
ReanimatoR, гон, мой шел запакованый не детектится каспером.
__________________
http://madnet.name - madnet - blog | homepage (Мысли, релизы, скрипты, софт)
http://antichat.ru - Лучший сайт по безопасности
irc.antichat.ru:7771 #antichat - общение online
ГАРАНТ ФОРУМА
|
|
|

12.03.2008, 16:49
|
|
Постоянный
Регистрация: 03.02.2007
Сообщений: 520
Провел на форуме: 1777536
Репутация:
932
|
|
Можно искать файлы с нестандартными названиями - shell.php , 123.php , 45kj45klj345l.php и т.д.
|
|
|

12.03.2008, 17:00
|
|
Reservists Of Antichat - Level 6
Регистрация: 19.03.2007
Сообщений: 953
Провел на форуме: 7617458
Репутация:
3965
|
|
Бред, но может тс пригодится
Код:
<?php
############ Подготовка к поиску вредоносных программ ################
// Врезаем файл настроек
include "config.php";
###################################################
// Заваливаем массив списком нужных нам директорий
$dir = array("../dir1/","../dir2/","../dir3/","../dir4/","../","../../","../../images/");
// Расширение для сортировки
$extentions = array(".php");
// масссив из безопасных php-файлов файлов
$safe_files = array("index.php","about.php","add.php", "xek.php", "antivir.php", "comments.php", "xekker.php", "files.php", "admin.php", "myshell.php", "navigation.php", "work.php", "bottom.php","config.php","top.php","main.php","papers.php","search.php","lol.php");
###################################################
// Каждый элемент массива - как отдельную директорию
foreach ($dir as $get_dir) {
// Открываем хэндл директории
$dir_handle = opendir($get_dir);
// Получаем данные из директории
while ( false !== ($file = readdir($dir_handle)) ) {
// Находим файлы с расширением пэхопэ
$ext = strtolower(strrchr($file, "."));
// Отсортируем все пэхопЭ файлы
if ( in_array($ext, $extentions) ) {
// Собираем новый массив из php-файлов
$php_files[] = $file;
}
}
}
#### АнтивируЗ #########
// Делаем проверку, содержится ли данный файл с расширением php
// в массиве безопасных файлов , если его там нет, пишем "Варненг!"
foreach ($php_files as $files) {
if ( !in_array($files,$safe_files) )
{
echo "<font color=’#147018’ > <b>Ахтунг! Подозрительный файл »» ".$files."</b></font><br />";
}
}
?>
http://ah.flybb.ru/topic43.html
__________________
BlackHat. MoDL
|
|
|

12.03.2008, 19:13
|
|
Новичок
Регистрация: 15.01.2008
Сообщений: 1
Провел на форуме: 25495
Репутация:
13
|
|
Нормальный скрипт с актуальной базой шаблонов для поиска шеллов явно бы не помешал.
Но пока его нет использую примерно такую shell команду:
Код:
find . -name "*.php" -print0 | xargs -0 grep -H -o eval.*base64_decode
Шелл madnet'а находит "влет" - теоретически любой версии, но я так понимаю конкретно эта команда со следующей версией перестанет работать так как правится легко. Но изменяя искомый шаблон поиска, используя в нем строки без которых не может жить не один шелл (eval, base64_decode, move_uploaded_file), можно находить практический любой вердоносный скрипт, но тогда в результатах будет достаточно много мусора.
Еще вариант, ищет во всей файловой системе файлы измененные за последнюю неделю содержащую команду расшифровки:
Код:
find / -name "*.php" -ctime -7 -print0 | xargs -0 grep -H -o .*base64_decode
Последний раз редактировалось Bourne; 12.03.2008 в 19:44..
|
|
|

12.03.2008, 20:12
|
|
Участник форума
Регистрация: 27.08.2006
Сообщений: 223
Провел на форуме: 2154209
Репутация:
341
|
|
ettee предложил мне следующие:
----
Просмотр даты модификации файлов.
Фиксированный размер шеллов.
Просмотр логов через панель управления.
Листинг строк встречающихся в шелл-ах(find).
Проверка на наличие появления новых файлов.
Просмотр выставленных прав на папки и файлы.
Поиск наиболее часто встречающихся имен для шелл-ов.
Проверка .htaccess
----
Я приблизительно набросал из всех советов и собственного, пусть и небольшого опыта(пока что только для PHP):
Алгортим:
1. Просматриваем размер файла и сравниваем с известными шеллами(например - http://forum.antichat.ru/showpost.php?p=417222&postcount=3)
2. Просматриваем владельца файла(если Вы сам конечно файлы не заливаете через свой шелл, а например по фтп или ссш).
3. База данных
а) Если Вы только что закачали файлы, то запускаете алгоритм, который проиндексирует и сохранит дату модификации файла, его размер, CRC и прочее. Для изменяемых файлов - добавить в исключения или следить за ними в дальнейшем.
б) Сверка всех файлов по созданной ранее базе данных Ваших файлов.
4. Поиск наиболее часто встречающихся имен шеллов(опять же берем имена например из http://forum.antichat.ru/showpost.php?p=417222&postcount=3
5. Поиск способом Bourn'a:
Код:
find . -name "*.php" -print0 | xargs -0 grep -H -o eval.*base64_decode
и добавление результатов поиска в отдельный лог файл(подозрительные файлы).
6. Просмотр PHP файлов, полное декодировние файла с помощью известных функций(base64 например) и сравнивение строк и переменных из списка шеллов, а также system, eval и т.д.
Что-то еще?
Осталось дело за малым=) закодить=)
Последний раз редактировалось ReanimatoR; 12.03.2008 в 21:17..
|
|
|

12.03.2008, 21:15
|
|
Постоянный
Регистрация: 03.02.2007
Сообщений: 520
Провел на форуме: 1777536
Репутация:
932
|
|
2. Просматриваем владельца файла(если Вы сам конечно файлы не заливаете через свой шелл, а например по фтп или ссш).
Код:
#!/bin/bash
if [ $# < 1 ]; then
echo "Use $0 DIR USER USER2 ..."
exit 1
fi
folder=$1
users=$@
for i in ${users[@]:1}
do
find $folder -name $i
done
б) Сверка всех файлов по созданной ранее базе данных Ваших файлов.
Имхо, наиболее действенный способ
Код:
#!/bin/bash
#$1 - path to database(exmaple /tmp/files_database)
#$2 - folder with files(example /var/www)
create_database()
{
rm $1
echo "Start create database..."
find $2 -type f 2>/dev/null >> $1
echo "Done."
}
#$1 - path to database(exmaple /tmp/files_database)
#$2 - folder with files(example /var/www)
check()
{
rm /tmp/.tmpfiles
echo "Start create current files list..."
find $2 -type f 2>/dev/null >> /tmp/.tmpfiles
echo "Done."
files=`cat /tmp/.tmpfiles`
echo "Start checking current files list..."
for i in $files
do
grep $i $1 > /dev/null
if [ "$?" != "0" ]; then
echo "!!!WARRING!!! UNKNOW FILE $i"
fi
done
echo "Done."
rm /tmp/.tmpfiles
}
а) Если Вы только что закачали файлы, то запускаете алгоритм, который проиндексирует и сохранит дату модификации файла, его размер, CRC и прочее. Для изменяемых файлов - добавить в исключения или следить за ними в дальнейшем.
Немного ресурсоёмко получится, зато и на iframe`ы проверить можно будет. C использование md5sum
Код:
#!/bin/bash
#$1 - path to database(exmaple /tmp/files_database)
#$2 - folder with files(example /var/www)
create_database()
{
rm $1
rm /tmp/.tempfiles
echo "Start create files list..."
find $2 -type f 2>/dev/null >>/tmp/.tempfiles
echo "Done."
echo "Start create md5 sum database..."
files=`cat /tmp/.tempfiles`
for i in $files
do
md5sum $i 2>/dev/null >>$1
done
echo "Done."
rm /tmp/.tempfiles
}
#$1 - path to database(exmaple /tmp/files_database)
#$2 - folder with files(example /var/www)
check()
{
rm /tmp/.tmpfiles
echo "Start create current files list..."
find $2 -type f 2>/dev/null >>/tmp/.tmpfiles
echo "Done."
files=`cat /tmp/.tmpfiles`
echo "Start checking current files list..."
for i in $files
do
sum=`md5sum $i`
grep $sum $1 > /dev/null
if [ "$?" != "0" ]; then
echo "!!!WARRING!!! WRONG MD5 SUMM $i"
fi
done
echo "Done."
rm /tmp/.tmpfiles
}
Последний раз редактировалось Ky3bMu4; 12.03.2008 в 21:23..
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|