![]() |
Пишем конфигуратор[c++]
Итак, вы написали супер-троя.Трой стучит по стате,непалится антивирусами и т.д. Но вот проблема:каждому юзеру юзающему вашего троя компилить из исходников неудобно! В этой статье я расскажу вам как написать конфигуратор для вашего детища. Всё наше действо будет состоять из 2 частей:
I)Готовим тело троя II)Сам конфигуратор Ok, let`s go! (c) I) Готовим тело троя. Компилим трой. Все параметры для отстука по стату(к примеру) должны заканчиваться и начинаться на '_'(нам это нужно будет)Т.е. Код:
#define host "_megasite.megahost.com_"и "переполнять" там что-то очень нежелательно. К примеру: Сделаем site.com, а у кого-нибудь юзера стата на megasite.jino-net.ru , В итоге у него ничего не будет работать. Теперь я советую переименовать откомпиленый трой в virus.dat(к примеру),чтоб всякие ребята не запускали лишний раз наш ехе. II)Сам конфигуратор. Итак тело у нас в virus.datДалее буду просто приводить куски кода с комментами. Объявем 3 глобальные переменные: Код:
char host[]="site.com";элементарно), поэтому рассмотрим всё на частном случае. Размер body в зависимости от размера файла. Лучше брать размер на 2-3кило больше размера файла.К примеру: вирь весит 15кб размер вы берёте 17000; Далее: Код:
DWORD dwBytesRead ,dw ,size , dw1;Код:
void param(void){Код:
param();//параметра у нас 2 |
Идея интересная, но под стандартный трои конфигураторов имхо дофига. И зачем это в статьи, для этого есть раздел кодинг С++, т.к. кроме исходов здесь больше ничего и нет.
А так если я все правильно понял есть вопросы: 1. "_" - таких символов в исполняемом файле дох... и сочетаний с "s" тоже. 2. А если длина ссылки все-таки больше чем length(host+site)? |
Цитата:
|
Цитата:
В своем трое - 23, правда сочетаний с "s" нет, но имхо это на удачу... По-этому лучше использовать сочетание как минимум из трех редко встречаемых символов (те маленькая сигнатура). |
Ну если и есть такие сочитания, то они походу файла первые. Пробовал на bloodknife`е, моём лоадере, и просто проге вызывающей MessageBox - работает.
|
еще недавно ты называл это билдером ;)
|
Цитата:
Ky3bMu4 За старания +! |
Цитата:
ИМХО за такие статьи убивать надо, чтоб билдить бинарник, изменяя его по шаблону. НЕТ СЛОВ ребята, нет слов |
господи, а почему в конкретную позицию бинарника нельзя писать нужные значения? завел глобальную переменную - и пиши в нее спокойно.
зы нормальный парсинг ехе-файла в общем случае сравним с асм-анализом сего, что крайне не нужно для поставленной задачи. а тут очень опасная реализация: что если функция обьявленная как cdeclaration пойдет на экспорт? |
Блин... во умище... напишите мне кто-нибудь задачку на C++ а то я в нем не шарю, а сдать надо. горит :)
|
| Время: 00:34 |