KBOT - NT-kernel bot program
----------------------------

Программа предназначена для скачивания, посредством HTTP, файлов, сохрания их на VFS и 
 регистрации в модуле KLDR для инжекта в заданные процессы.
 
Поддерживаемые ОС: XP - WIN7.
Поддерживаемые архитектуры: x86, AMD64(EM64T).

Проект cобирается в статически подключаемую библиотеку(LIB), которая линкуется к драйверу.

При первом запуске программа генерирует 16-битный ID пользователя и сохраняет его на VFS в файл \USER.ID
В дальнейшем ID пользователя не изменяется и передается каждый раз при запросе к серверу управления.

Программа осуществляет два типа HTTP запросов к серверу управления:
- запрос кофиг-файла;
- запрос файла команд;

Программа поддерживает обфускацию HTTP запросов.
Для этого строка каждого запроса шифруется с помощью алгоритма RC6 и переводится в формат BASE64.

Программа поддерживает проверку цифровой подписи и шифрование конфиг-файлов и файлов команд.
Для этого к драйверу прикрепляется файл public.key, содержащий открытый RSA-ключ.
С помощью этого ключа осуществляется расшифровка и проверка подписи полученного файла.
Если файл не проходит проверку, то он игнорируется.


Файл конфигурации

Программа работает на основе настроек прописанных в файле конфигурации (конфиг-файл).
Конфиг-файл может храниться на VFS, либо может быть прикреплен непосредственно к драйверу.
При запуске программы сначала ищется файл на VFS, и если его нет - используется прикрепленный конфиг-файл.
Пример конфиг-файла с описанием: \BkBuild\kbot.ini
При получение нового конфиг-файла он сохраняется на VFS в файл \KBOT.INI Существующий KBOT.INI заменяется.


Файл команд

Текстовый файл содержащий одну или несколько из следующих команд:

	LOAD_FILE <HTTP ссылка> [имя файла на VFS]	- скачивает файл по заданной ссылке и сохраняет на VFS с заданным именем 
	
	DELETE_FILE	<имя файла на VFS>				- удаляет указанный файл с VFS
	
	SET_INJECT <имя файла на VFS> <список процессов> - задает инжект указанного файла (как правило DLL) в
		указанные в списке процессы. Все заданные инжекты применяются немедленно и сохраняются 
		в файле \INJECTS.SYS на VFS, так, чтобы быть активными после перезагрузки ОС.
		Чтобы удалить инжект используется команда "SET_INJECT <имя файла на VFS>" без списка процессов.
		
 Имена команд чувствительны к регистру, параметры - нет.
