Создаём скрытый TeamViewer #1

Добро пожаловать в новый tutorial! В нём мы познакомимся с основами реверса и рассмотрим как пользоваться такими инструментами как: Hiew, IDA, Visual Studio, API Monitor. Конечным результатом будет готовый шпионский инструмент, который мы будем разрабатывать поэтапно, вникая в каждый шаг. Будет интересно =)

Настройка рабочего окружения

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

Нужно скачать и установить:

  • API Monitor – понадобится для анализа активности программы, с ней мы сможем понять какие файлы создает TeamViewer, читает, какие ветки реестра использует, какие winapi функции вызывает.
  • Hiew – им будем просматривать содержимое файлов MZ PE (обычные исполняемые файлы), их структуру. Имеет hex редактор, ассемблер
  • Far – очень удобный инструмент в сочетании с Hiew
  • IDA Pro 6.8 – очень мощный дизассемблер
  • Visual Stidio 2010 – среда для разработки нашего бота, бота будем писать на языке СИ.
  • 7-Zip – всеядный архиватор, нужен для распаковки файлов TeamViewer
  • NSIS – Понадобится для написания билдера
  • Process Monitor  – будем наблюдать за программой

Знакомство с Hiew

Для начала, его необходимо настроить, для этого открываем Far и жмем F9

hiew

Задаём удобные нам характеристики:

edit

Теперь выбираем любой исполняемый файл, например notepad.exe, и нажимаем Alt+F4

notepad

Enter переключает режим просмотра

hex

F8+F5+Enter и мы на точке входа в файл

ep

F5+F6 и мы видим секции исполняемого файла

sec

Минимальный проект

Перед разработкой бота, мы сделаем минимальный проект в Visual Studio:

  • Создадим папку для наших проектов в FAR:
    • c:\
    • F7 – имя “projects”
  • Запускаем студию и выбираем:
    prj
  • Заходим в свойства проекта -> General -> Configuration Type -> Makefile
    prj_prop
  • Заполняем Nmake->Build Command Line -> nmake
    debug
  • Укажем какой файл будем исполнять при отладке Debugging -> Command -> test.exe
    dbg
  • добавляем файл main.c
  • в FAR переходим в папку проекта “C:\projects\tv\tv” и жмем Shift+F4 задаем имя Makefile

Содержание Makefile

И нажимаем F2 – сохранить

Структура файла проста: он состоит из переменных таких как SRC, OUT, CFLAGS и команд которые отделяются табуляцией.

Наш файл содержит две раздела: all – секция компиляции по умолчанию и bdebug – параметры компиляции для отладочной сборки

Опции компилятора cl.exe:

  • /c – создавать obj файлы
  • /MT – crt библиотеку компилировать статически
  • /GS- отключить проверку стека

Отладочная сборка отличается флагами

  • /Zi – создает отладочную информацию при компиляции
  • /DEBUG добавляет отладочные символы

Если все сделали правильно, то при сборке проекта по F7 в Visual Studio, будет собран исполняемый файл “test.exe”

Об отладке в Visual Studio читай здесь!

Ставим бряк в функции main и жмем F5

start

Заключение

Мы установили весь необходимый софт и создали заготовку будущего бота. В следующей части мы немного пореверсим!

До скорых встреч, друзья =)

2 thoughts on “Создаём скрытый TeamViewer #1

Добавить комментарий