Примеры отчётов

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

Пример 1

Отчёт для руководства

Краткое резюме на 1-2 страницы для принятия решения по сделке. Без технических деталей.

Executive Summary
Технический аудит — Финтех-платформа
Общая оценка
Требует доработки
Продукт не готов к production. Критические проблемы в безопасности и отсутствие тестов создают высокие риски. Архитектура спроектирована грамотно, но реализация отстаёт от плана на 40-50%.

Ключевые риски

  • Критический Уязвимости в системе аутентификации — возможен несанкционированный доступ к аккаунтам
  • Критический Отсутствие автоматических тестов — любое изменение может сломать работающий функционал
  • Высокий Финансовая логика реализована частично — ключевые операции существуют только в виде заглушек
  • Высокий Зависимость от одного разработчика — 80% кода написано одним человеком

Состояние по областям

Архитектура
8/10
Качество кода
5/10
Безопасность
2/10
Тестирование
1/10
Инфраструктура
6/10
Документация
7/10

Рекомендация

При текущем состоянии инвестирование связано с высокими техническими рисками. Рекомендую либо отложить сделку до устранения критических проблем, либо учесть в оценке стоимость доработки: ориентировочно 3-4 месяца работы команды из 3-4 разработчиков.

Пример 2

Сводный отчёт

Обзор всех аспектов проекта с детализацией по каждому направлению.

Сводный отчёт по результатам аудита
E-commerce платформа — Маркетплейс

Прогресс разработки

Заявленный срок до запуска: 8 недель. Фактическое состояние: выполнено 35-40% от плана.

Каталог товаров
70%
Корзина и оформление
40%
Платежи
20%
Личный кабинет продавца
25%
Админ-панель
50%

Реалистичный срок до production-ready: 16-20 недель при текущей команде.

Анализ сметы

Заявленная смета: 8 500 часов. Результаты проверки:

4 200 ч
Обосновано
49%
2 800 ч
Требует уточнения
33%
1 500 ч
Завышено
18%

Выявлено: дублирование задач (управление пользователями описано в 3 разделах), завышенные оценки на типовые операции (CRUD-операции по 40-60 часов), шаблонные оценки без учёта сложности.

Команда

Размер команды 6 человек (4 разработчика, 1 тестировщик, 1 PM)
Bus factor 1 — критическая зависимость от ведущего разработчика
Code review Проводится, но формально (среднее время ревью < 5 минут)
Документация API задокументирован, архитектурная документация отсутствует
Пример 3

Технические проблемы

Детальный список находок с приоритизацией, примерами кода и рекомендациями.

Технические находки
SaaS-платформа — B2B сервис

Сводка по критичности

3 Критических
7 Высоких
12 Средних
8 Информационных
Критический SEC-001

Небезопасная генерация токенов сессий

Файл: src/auth/session.service.ts, строки 45-52

Проблема: Для генерации токенов сессий используется Math.random(), который не является криптографически стойким. Токены предсказуемы.

Текущий код:
const token = Math.random().toString(36).substring(2);
Рекомендация:
import { randomBytes } from 'crypto';
const token = randomBytes(32).toString('hex');

Риск: Злоумышленник может предсказать токены других пользователей и получить доступ к их аккаунтам.

Оценка исправления: 1-2 часа

Критический SEC-002

SQL-инъекция в поиске

Файл: src/search/search.repository.ts, строки 23-31

Проблема: Пользовательский ввод подставляется в SQL-запрос без экранирования.

Текущий код:
const query = `SELECT * FROM products WHERE name LIKE '%${searchTerm}%'`;

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

Оценка исправления: 2-3 часа

Высокий ARCH-001

Отсутствие rate limiting на API

Все публичные эндпоинты

Проблема: API не ограничивает количество запросов. Возможны brute-force атаки на авторизацию и DDoS.

Рекомендация: Внедрить rate limiting (например, 100 запросов в минуту для авторизации, 1000 для обычных эндпоинтов).

Оценка исправления: 4-8 часов

Высокий TEST-001

Полное отсутствие автоматических тестов

Весь проект

Проблема: В проекте 0 файлов с тестами. Код покрытия: 0%.

Риск: Любое изменение может сломать существующий функционал. Рефакторинг невозможен без ручного регрессионного тестирования.

Рекомендация: Начать с интеграционных тестов критичных сценариев (авторизация, платежи, основные бизнес-операции).

Оценка исправления: 80-120 часов для базового покрытия

Средний CODE-001

Захардкоженные конфигурационные значения

Множественные файлы (найдено 23 вхождения)

Проблема: URL-адреса сервисов, таймауты и лимиты указаны прямо в коде, а не в конфигурации.

Риск: Сложность развёртывания в разных окружениях, риск случайного использования production-данных в dev-окружении.

Оценка исправления: 8-16 часов

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

Нужен аудит вашего проекта?

Расскажите о сделке — обсудим, что именно нужно проверить.

Обсудить проект