Сейчас на форуме: site-pro, Rio, johnniewalker, vsv1 (+5 невидимых)

 eXeL@B —› Крэки, обсуждения —› CRC32 Mode FAST
Посл.ответ Сообщение

Ранг: -0.7 (гость)
Активность: 0=0
Статус: Участник

Создано: 08 ноября 2012 00:18
· Личное сообщение · #1

Программа котороя меняет:
md5 random .
random CRC32 Mode .
Random section/table names.
Anti-Leaksystem.
Где можно найти токую программу ктороя при запуске программы все будет менять автоматический?
Полазил в гуле нашел только про md5.
Пожалуйста помогите,и извените за фулд.




Ранг: 469.0 (мудрец), 100thx
Активность: 0.250
Статус: Участник
[www.AHTeam.org]

Создано: 08 ноября 2012 00:26 · Поправил: KingSise
· Личное сообщение · #2

EkzAl пишет:
Программа котороя меняет:

Меняет где? Что то я не догоняю назначение программы... Если нужно в какой то программе поменять алгоритм генерации, то проще по-моему в отладчике/хексредакторе полином сменить, для мд5, мд4, crc они известны...

-----
-=истина где-то рядом=-


| Сообщение посчитали полезным: EkzAl

Ранг: -0.7 (гость)
Активность: 0=0
Статус: Участник

Создано: 08 ноября 2012 00:28
· Личное сообщение · #3

KingSise-как свезаться можно с тобой?



Ранг: -0.7 (гость)
Активность: 0=0
Статус: Участник

Создано: 08 ноября 2012 00:30
· Личное сообщение · #4

У меня есть моя программа ну я бы хотел чтобы при запуске менлся автоматичейски
md5 random .
random CRC32 Mode .
Random section/table names.
Anti-Leaksystem.




Ранг: 158.5 (ветеран), 219thx
Активность: 0.120.01
Статус: Участник

Создано: 08 ноября 2012 00:54
· Личное сообщение · #5

EkzAl
А это тебе зачем, если не секрет?
Вирусню поганую пишешь?

-----
One death is a tragedy, one million is a statistic.





Ранг: 469.0 (мудрец), 100thx
Активность: 0.250
Статус: Участник
[www.AHTeam.org]

Создано: 08 ноября 2012 01:01
· Личное сообщение · #6

EkzAl пишет:
KingSise-как свезаться можно с тобой?


Пиши тут и программу тоже можешь выложить.
P.S. --> Link <--

-----
-=истина где-то рядом=-




Ранг: -0.7 (гость)
Активность: 0=0
Статус: Участник

Создано: 08 ноября 2012 01:39
· Личное сообщение · #7

ZaZa,для этого есть крипторы,мне нужно для другго,это помеожет в обходе одного анти чита



Ранг: 617.3 (!), 677thx
Активность: 0.540
Статус: Участник

Создано: 08 ноября 2012 02:03
· Личное сообщение · #8

бред какой-то, измени вручную имена секций, вслед за этим поменяются md5,crc,checksumm и т.д.
если уж нужна автоматическая прога, то пишется такая за 5 минут максимум.



Ранг: -0.7 (гость)
Активность: 0=0
Статус: Участник

Создано: 08 ноября 2012 02:22
· Личное сообщение · #9

Vovan666,напеши пожалуйста+ жилательно исходник




Ранг: 469.0 (мудрец), 100thx
Активность: 0.250
Статус: Участник
[www.AHTeam.org]

Создано: 08 ноября 2012 03:09 · Поправил: KingSise
· Личное сообщение · #10

EkzAl пишет:
Vovan666,напеши пожалуйста+ жилательно исходник


в соседней теме же http://exelab.ru/f/action=vthread&forum=6&topic=20317


А еще модно лепить секцию и в нее мусорный код ремдомно писать, который ничего не делает,типа inc eax; dec eax и вконце этого прыгаем на нормальную ОEP, хотя ремдомно секции менять тоже можно....

EkzAl Выложи уже свой файл

-----
-=истина где-то рядом=-




Ранг: -0.7 (гость)
Активность: 0=0
Статус: Участник

Создано: 08 ноября 2012 03:18
· Личное сообщение · #11

Да,это хак)



Ранг: 617.3 (!), 677thx
Активность: 0.540
Статус: Участник

Создано: 08 ноября 2012 03:51
· Личное сообщение · #12

ботоводы хреновы, играть честно надо

a919_08.11.2012_EXELAB.rU.tgz - musor1.rar

| Сообщение посчитали полезным: EkzAl


Ранг: 1131.7 (!!!!), 447thx
Активность: 0.670.2
Статус: Участник

Создано: 08 ноября 2012 04:27
· Личное сообщение · #13

KingSise, Vovan666, зачем помогаете этим уродам?

| Сообщение посчитали полезным: ClockMan, DimitarSerg, -Sanchez-


Ранг: 469.0 (мудрец), 100thx
Активность: 0.250
Статус: Участник
[www.AHTeam.org]

Создано: 08 ноября 2012 04:31
· Личное сообщение · #14

Gideon Vi, мля, а я тут уже код прокомментировал, ну мож кому приводится:

Code:
  1. // rndSecName.cpp : Defines the entry point for the console application.
  2. //
  3.  
  4. #include "stdafx.h"
  5. #include <fstream>
  6. #include <iomanip>
  7. #include <Windows.h>
  8.  
  9. #define Is2power(x) (!(& (- 1)))
  10. #define ALIGN_DOWN(x, align) (& ~(align - 1))
  11. #define ALIGN_UP(x, align) ((& (align - 1)) ? ALIGN_DOWN(x, align) + align : x) 
  12.  
  13. int _tmain(int argc, _TCHAR* argv[])
  14. {
  15.                  if(argc != 2)
  16.          {
  17.                  std::puts( "Usage: sectons.exe pe_file\0" );
  18.                  std::puts( "Usage: sectons.exe pe_file\0" );
  19.                  return 0;
  20.          }
  21.  
  22.          
  23.  
  24.                  //откроем файл формата PE в бинарном режиме
  25.          std::ifstream pefile;
  26.          pefile.open(argv[1], std::ios::in | std::ios::binary);
  27.          if(!pefile.is_open())
  28.          {
  29. //если вдруг его открыть не удалось, то выведем ошибку и выйдем
  30.                  std::puts("Can't open file\0");
  31.                  return 0;
  32.          }
  33.  
  34. //определим размер файла, он нам пригодится дальше
  35.          pefile.seekg(0, std::ios::end);
  36. //для этого переведем файловый указатель чтения в самый конец файла, получим его позицию
  37.          std::streamoff filesize = pefile.tellg();
  38. //это и будет размер файла в байтах
  39. //затем вернем файловый указатель в начало файла
  40.          pefile.seekg(0);
  41.  
  42.  
  43.  
  44.  
  45.          IMAGE_DOS_HEADER dos_header;
  46.          pefile.read(reinterpret_cast<char*>(&dos_header), sizeof(IMAGE_DOS_HEADER));
  47.          if(pefile.bad() || pefile.eof())
  48.          {
  49. //если вдруг считать не удалось...
  50.                  std::puts("Unable to read IMAGE_DOS_HEADER" );
  51.                  return 0;
  52.          }
  53.  
  54. //Первые два байта структуры должны быть MZ, но, так как в x86 у нас обратный порядок следования байтов,
  55. //мы сравниваем эти байты со значением 'ZM'
  56.          if(dos_header.e_magic != 'ZM')
  57.          {
  58.                  std::puts("IMAGE_DOS_HEADER signature is incorrect" );
  59.                  return 0;
  60.          }
  61.  
  62. //Начало заголовка самого PE-файла (IMAGE_NT_HEADERS) должно быть
  63. //выровнено на величину двойного слова (DWORD)
  64. //убедимся, что это так
  65.          if((dos_header.e_lfanew % sizeof(DWORD)) != 0)
  66.          {
  67. //а иначе наш PE-файл некорректен
  68.                  std::puts("PE header is not DWORD-aligned" );
  69.                  return 0;
  70.          }
  71.  
  72.  
  73.  
  74.          /*Теперь необходимо считать структуру IMAGE_NT_HEADERS. Я программу писал 
  75.                  исключительно под PE32, хотя сделать ее для PE64 или вообще
  76.                  универсальной труда никакого не составляет. Читать будем, 
  77.                  соответственно, структуру IMAGE_NT_HEADERS32 
  78.                  (это 32-разрядная версия IMAGE_NT_HEADERS, они все определены в глубине Windows.h). 
  79.                  Сейчас я пропускаю множество необходимых проверок полей заголовка PE-файла 
  80.                  (например, не проверяю выравнивания), потому что они сейчас не являются критичными.*/
  81.  
  82.          //Переходим на структуру IMAGE_NT_HEADERS и готовимся считать ее
  83.          pefile.seekg(dos_header.e_lfanew);
  84.          if(pefile.bad() || pefile.fail())
  85.          {
  86.                  std::puts( "Cannot reach IMAGE_NT_HEADERS" );
  87.                  return 0;
  88.          }
  89.  
  90. //Читаем
  91. //читать будем только часть структуры IMAGE_NT_HEADERS
  92. //без дата директорий
  93. //они нам и не понадобятся сейчас
  94.          IMAGE_NT_HEADERS32 nt_headers;
  95.          pefile.read(reinterpret_cast<char*>(&nt_headers), sizeof(IMAGE_NT_HEADERS32) - sizeof(IMAGE_DATA_DIRECTORY) * 16);
  96.          if(pefile.bad() || pefile.eof())
  97.          {
  98.                  std::puts( "Error reading IMAGE_NT_HEADERS32" );
  99.                  return 0;
  100.          }
  101. //Проверяем, что наш файл - PE
  102. //сигнатура у него должна быть "PE\0\0"
  103. //помним про обратный порядок байтов и проверяем...
  104.          if(nt_headers.Signature != 'EP')
  105.          {
  106.                  std::puts( "Incorrect PE signature" );
  107.                  return 0;
  108.          }
  109.  
  110. //Проверяем, что это PE32
  111.          if(nt_headers.OptionalHeader.Magic != 0x10B)
  112.          {
  113.                  std::puts( "This PE is not PE32" );
  114.                  return 0;
  115.          }
  116.  
  117.  
  118.          //Теперь нам необходимо переместиться к таблице секций,
  119.          //      которую мы и будем читать, чтобы получить информацию 
  120.          //      о секциях исполняемого файла. 
  121.  
  122.          //позиция в файле таблицы секций - это размер всех заголовков полностью
  123. //(включая дос-стаб, если он есть и все дата директории, если они есть)
  124.          DWORD first_section = dos_header.e_lfanew + nt_headers.FileHeader.SizeOfOptionalHeader + sizeof(IMAGE_FILE_HEADER) + sizeof(DWORD) /* Signature */;
  125.  
  126. //переходим на первую секцию в таблице секций
  127.          pefile.seekg(first_section);
  128.          if(pefile.bad() || pefile.fail())
  129.          {
  130.                  std::puts( "Cannot reach section headers" );
  131.                  return 0;
  132.          }
  133.  
  134.  
  135.          //std::puts( std::hex << std::showbase << std::left);
  136.  
  137.          for(int i = 0; i < nt_headers.FileHeader.NumberOfSections; i++)
  138.          {
  139. //готовим заголовок секции
  140.                  IMAGE_SECTION_HEADER header;
  141. //и читаем его
  142.                  pefile.read(reinterpret_cast<char*>(&header), sizeof(IMAGE_SECTION_HEADER));
  143.                  if(pefile.bad() || pefile.eof())
  144.                  {
  145.                  std::puts(  "Error reading section header");
  146.                         return 0;
  147.                  }
  148.  
  149.  
  150.  
  151.                  //имя секции может иметь размер до 8 символов
  152.                  char name[9] = {0};
  153.                  memcpy(name, header.Name, 8);
  154.           //выводим имя секции
  155.  
  156.          
  157.                         //std::cout << std::setw(20) << "Section: " << name << std::endl << "=======================" << std::endl;
  158.  
  159.                               std::puts("Section:" );
  160.                               std::puts(name);
  161.  
  162.            return 0;
  163.  
  164. }
  165.  
  166.          pefile.close();
  167.           return 0;
  168.          }



размеры, адреса
"Virtual size:" << header.Misc.VirtualSize
"Raw size:" << header.SizeOfRawData
"Virtual address:" << header.VirtualAddress
"Raw address:" << header.PointerToRawData

// важные характеристики

if(header.Characteristics & IMAGE_SCN_MEM_READ)
std::cout << "R ";
if(header.Characteristics & IMAGE_SCN_MEM_WRITE)
std::cout << "W ";
if(header.Characteristics & IMAGE_SCN_MEM_EXECUTE)
std::cout << "X ";
if(header.Characteristics & IMAGE_SCN_MEM_DISCARDABLE)
std::cout << "discardable ";
if(header.Characteristics & IMAGE_SCN_MEM_SHARED)
std::cout << "shared";

-----
-=истина где-то рядом=-





Ранг: 2014.5 (!!!!), 1278thx
Активность: 1.340.25
Статус: Модератор
retired

Создано: 08 ноября 2012 09:58
· Личное сообщение · #15

Чай-кофе ещё не желаете? Или ещё что-нибудь за вас написать?

| Сообщение посчитали полезным: EkzAl
 eXeL@B —› Крэки, обсуждения —› CRC32 Mode FAST
Эта тема закрыта. Ответы больше не принимаются.
   Для печати Для печати