Создаём скрытый 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

Заключение

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

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

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

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