Разработка малвари. Уроки

Уроки Разработка малвари-6. Процессы Windows

  • 1 496
  • 7
Безымянный.png


В предыдущих версиях статей, было очень краткое ознакомление каких-то базовых вещей, без которых вообще проблематично вести разработку.
Понятно что этого недостаточно, но какое-то направление может дать.

Думаю это последняя статья, по теории и следующие статьи будут уже предметные, посвященные конкретно малвари...

Что такое процесс Windows?

Процесс Windows
- это программа или приложение, выполняющееся на машине с Windows. Процесс может быть запущен как пользователем, так и самой системой. Процесс потребляет ресурсы, такие как память, дисковое пространство и процессорное время, чтобы выполнить задачу.

Потоки процесса

Процессы Windows состоят из одного или нескольких потоков, которые выполняются одновременно. Поток — это набор инструкций, которые могут выполняться независимо в рамках процесса. Потоки внутри процесса могут обмениваться данными. Потоки планируются к выполнению операционной системой и...

Уроки Разработка малвари - 5. Изучаем динамические библиотеки

  • 1 716
  • 8
1692450669523.png


В этой статье предлагаю рассмотреть создание динамических библиотек, в винде это всем наверное известные DLL.)

И .exe, и .dll файлы считаются исполняемыми файлами, в формате PE, сам PE уже описан много где, нет не времени не желание описывать архитектуру, если интересно всё в сети есть и очень разжованно.)

Что такое DLL?

DLL - это общие библиотеки исполняемых функций или данных, которые могут использоваться несколькими приложениями одновременно. Они используются для экспорта функций, которые будут использоваться процессом. В отличие от EXE файлов, DLL файлы не могут исполнять код самостоятельно. Вместо этого библиотеки DLL необходимо загрузить другими программами для выполнения кода.

Например функция createFile экспортирована из kernel32.dll, поэтому если процесс хочет вызвать эту функцию, ему сначала нужно загрузить kernel32.dll в свое адресное пространство.

Некоторые DLL автоматически загружаются в каждый...

Использование Internet-функций Win32 API

  • 1 859
  • 0
Интернет так сильно вошел в нашу жизнь, что программа, так или иначе не использующая его возможности, обречена на “вымирание” почти как динозавры. Поэтому всех программистов, вне зависимости от квалификации и специализации так и тянет дописать до порой уж е готовой программы какой-то модуль для работы с Internet. Но тут и встает вопрос – как это сделать? Давайте рассмотрим, что нам предлагает среда Borland Delphi и Win32 API.
Во-первых, можно использовать компоненты с вкладки FastNet. Все они написаны фирмой NetMasters и поставляются без исходного кода. По многочисленным откликам различных разработчиков можно сказать, что большинство из них не выдерживает никакой критики, особ енно “отличились” компоненты для работы с почтой. Большинство проблем можно было бы исправить, но так как исходные тексты закрыты, то это вряд ли удастся. Даже если вы будете использовать такие вроде...​

Уроки Разработка малвари - 4. Шпаргалка по архитектуре винды

  • 1 645
  • 2
Архитектура любой ОС, очень сложная система, так наскоком не изучишь.

Тут на форуме есть целый раздел:Системное программирование и разработка

Но т.к. разработка малвари - Это системная разработка, какое-то понимание этой самой архитектуры нужно иметь, поэтому данная шпаргалка даст небольшое понимание, но к сожалению не более того.:(

Процессор внутри компьютера, на которой работает операционная система Windows, может работать в двух разных режимах: режиме пользователя и режиме ядра.

Приложения работают в режиме пользователя, а компоненты операционной системы работают в режиме ядра.

Когда приложение хочет выполнить задачу, например, создать файл, оно не может сделать это самостоятельно.

Единственная сущность, которая может выполнить задачу - это ядро, поэтому приложения должны следовать определенному порядку вызова функций.
Ниже представлена диаграмма, показывающая высокий уровень этого потока...

Уроки Разработка малвари - 3. Так какой-же язык выбрать !?

  • 1 596
  • 4
1689926666478.png


Вообще в сети много холиваров на это тему.

Многие представители старой школы отказываются признавать новые технологии и считают разработку малвари, как низкоуровневую разработку, т.е. что-то там на уровне драйверов системы, какое-то аппаратное взаимодействие низкоуровневое, например работа с процессором, реверс и т.д.

Да, всё это может присутствовать в разработке, но необходимо понимать, что малварь сейчас весьма обширное понятие.

Вот приведу пару примеров:


1)Нам нужно сделать ботнет, что мы будем использовать ?

Клиент - какой язык мы будем выбирать, уж точно не ассемблер, тут на самом деле выбор очень широк, даже тот-же C# подойдёт.
Серверная часть - Тут выбор ещё больше, всякие-там php, питонячие скрипты, а почему-бы и нет, вот даже на Си писать сервер сейчас может-быть затратно с нуля.

Кстати по поводу ботнета, в бытности мы как-то делали небольшой проект для конкурса XSS, вот интересные статьи рекомендую...

Уроки Разработка малвари - 2. Изучаем инструменты

  • 1 554
  • 2
В предыдущей части мы затронули, зачем вообще разрабатывать вредоносное ПО, рассмотрели жизненный цикл такого ПО и немного затронули выбор языка разработки.

Предыдущая часть тут: Зачем изучать разработку вредоносных программ ?

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

Эти инструменты будут полезны в процессе разработки и анализа вредоносного программного обеспечения.

Отмечу что пока мы будем рассматривать ОС Windows, т.к. большинство малвари пишут именно под эту ОС, но также в будущем хочу затронуть Линукс и может-быть несколько статей будут затрагивать обсуждение малвари для мобильных устройств.)

Инструменты разработки/отладки и исследования программ

Установите следующие инструменты:

Visual Studio - это среда...

Зачем изучать разработку вредоносных программ ?

  • 2 438
  • 8
virus.jpg


Посмотрев этот курс:Малварь как искусство - Курс по MalDev [PDF]

Который стоит кстати около 300 баксов, понял что 80% описанного там есть здесь на форуме.)

Да может что-то устарело и что-то тяжело найти тут, но в целом инфа видимо актуальная.

Вот я и решил позаимствовать от туда темы, где-то сделать перевод, но в целом решил создать раздел Введение в разработку вредоносных программ где будет размещаться обновленная информация по теме разработки малвари, темы возьму прям из модулей.)

И вероятно затрону и другие системы, кроме винды, это не будут просто переводы, а темы от меня...

Раздел будет предназначен как для новичков, так и для тех-кто хочет что-то вспомнить, как минимум будет легче искать и бесплатно.)

Также можно завести раздел в гите под такие...
Верх Низ