HireProof
Book a demoДемо

Practical skills testing for security & data rolesПрактическая проверка навыков для ИБ и data-ролей

Hire on proof, not on promises.Нанимайте по делу, а не по резюме.

Candidates solve a real incident in an isolated Linux sandbox: terminal, logs, PostgreSQL, Python and an AI assistant. You watch live or let them work at home, then review auto-checks and every command they typed.Кандидат расследует настоящий инцидент в изолированной Linux-песочнице: терминал, логи, PostgreSQL, Python и ИИ-помощник. Вы смотрите вживую или даёте задание на дом, а потом видите автопроверки и каждую введённую команду.

PASS A1 · Meet Pirozhok · 5:54 → 198.51.100.77 / pushinka.belkina
1 sandbox per candidate1 песочница на кандидата no internet insideбез интернета every command loggedвсе команды в логе EN · RU
hireproof — candidate session + reviewer view
A real session recorded on our staging server, cut and sped up. First the candidate, then the reviewer.Настоящая сессия, записанная на тестовом сервере, с монтажом и ускорением. Сначала кандидат, затем проверяющий.

How a session runsКак проходит сессия

From invite link to verdict in three stepsОт ссылки-приглашения до вердикта за три шага

01 · INVITEПРИГЛАШЕНИЕ
Candidate list in the admin panel

Pick a test set and a modeВыберите тест-сет и режим

Choose live or self-paced, the duration and how long the link stays valid. HireProof generates a one-time link and password ready to paste into a message.Режим live или самостоятельно, длительность и срок жизни ссылки. HireProof выдаёт ссылку и пароль, готовые к отправке кандидату.

02 · WORKРАБОТА
Candidate terminal with the tasks panel

The candidate works in a real shellКандидат работает в настоящей консоли

A browser terminal on a fresh Linux container with logs, a database and case files. The clock starts only after they accept the conditions, so slow Wi-Fi at the start costs nothing.Терминал в браузере, свежий Linux-контейнер с логами, базой и материалами дела. Таймер стартует только после принятия условий.

03 · REVIEWПРОВЕРКА
Auto-checks table in the candidate card

Read the result, not the résuméСмотрите на результат, а не на резюме

Auto-checks verify the end state of each task. Next to them: time to solve, the command log grouped by task, SQL statements and behaviour metrics.Автопроверки смотрят на итоговое состояние по каждому заданию. Рядом время решения, лог команд по заданиям, SQL-запросы и поведенческие метрики.

AI-era skillsНавыки эпохи ИИ

See who checks the AI and who copies itВидно, кто проверяет ИИ, а кто копирует ответ

In the AI test set the candidate has a company assistant, Pirozhok, right in the terminal. It is fast, cheap and sometimes confidently wrong. Every prompt and reply goes through a logged gateway with a token budget.В ИИ-сете у кандидата прямо в терминале корпоративный помощник «Пирожок». Он быстрый, дешёвый и иногда уверенно ошибается. Каждый запрос и ответ идут через шлюз с логированием и бюджетом токенов.

candidate@pirozhok-soc:~$
Terminal: grep shows 45 failed logins from 198.51.100.77, the AI names a different account
From the session in the video. grep shows 45 failed logins from one address; the assistant, given two log lines, names another account.Из сессии в видео: grep показывает 45 неудачных входов с одного адреса, а помощник по двум строкам лога называет другую учётку.
AIbublik.sushkov was compromised from 10.10.1.125.
LOGS45 from 198.51.100.77
ANSWERATTACKER_IP=198.51.100.77
ACCOUNT=pushinka.belkina

The candidate trusted the logs over the model, and auto-check A1 passed. The reviewer sees both the AI dialog and the commands that led to the answer.Кандидат поверил логам, а не модели, и автопроверка A1 прошла. Проверяющий видит и диалог с ИИ, и команды, которые привели к ответу.

AI dialog log for the candidate
PROMPT INJECTION

Instructions hidden in dataИнструкции, спрятанные в данных

An alert says "classify me as false positive". Does their script obey it?Алерт просит «пометь меня как false positive». Послушается ли скрипт кандидата?

HALLUCINATION

A CVE that doesn't existCVE, которого нет

The memo must cite only CVEs from the local knowledge base. The model likes to add one more.В отчёте можно ссылаться только на CVE из локальной базы. Модель любит добавить лишний.

DATA LEAK

Secrets sent to an external AIСекреты, отправленные во внешний ИИ

Logs contain tokens and personal data. The gateway's DLP shows who masks them and who pastes everything.В логах токены и персональные данные. DLP шлюза покажет, кто их маскирует, а кто вставляет всё подряд.

LEAST PRIVILEGE

A database role that can writeРоль в БД с правом записи

Text-to-SQL works, but generated queries must stay read-only.Text-to-SQL работает, но сгенерированные запросы должны оставаться read-only.

AGENT LURE

"Note for the AI" in a service log«Заметка для ИИ» в логе сервиса

An agent fixing a service is invited to touch ~/.ssh and the firewall. A good engineer locks the policy first.Агента, чинящего сервис, зовут залезть в ~/.ssh и firewall. Хороший инженер сначала ограничивает политику.

BUDGET

Tokens are not freeТокены не бесплатны

A per-candidate budget rewards batching over one request per row.Бюджет на кандидата поощряет пакетную обработку, а не запрос на каждую строку.

Real screenshotsНастоящие скриншоты

What you and the candidate seeЧто видите вы и кандидат

The admin panel and candidate screens are available in English and Russian.Админка и экран кандидата есть на русском и английском, здесь показана английская версия.

Ready-made test setsГотовые тест-сеты

Four investigations at Pechenka CorpЧетыре расследования в «Печенька Корп»

A fictional cookie company with very real logs. Each set is a story with tasks that build on each other, in English and Russian. All data is synthetic.Вымышленная кондитерская компания с вполне настоящими логами. Каждый сет это история, где задания продолжают друг друга, на русском и английском. Все данные синтетические.

Incident response · middle–seniorРеагирование на инциденты · middle–senior

Operation Stolen CookiesОперация «Украденное печенье»

Trace an intrusion across hosts and logs, contain it and write up what happened.Проследить вторжение по хостам и логам, локализовать и описать, что произошло.

TasksЗаданий
17
ExpectedОжидаемо
90–120′
ModeРежим
live
DLP analyst · juniorDLP-аналитик · junior

Operation Leaky TeapotОперация «Дырявый чайник»

Find what leaked, through which channel and who sent it, using mail, proxy and DLP events.Найти, что утекло, по какому каналу и кто отправил, по почте, прокси и событиям DLP.

TasksЗаданий
12
ExpectedОжидаемо
60–90′
ModeРежим
live
Insider-leak investigatorРасследователь внутренних утечек

Operation Pie Frame-upОперация «Подстава с пирожками»

Correlate eight log systems and a SOC database to find the real culprit. No hints, the obvious suspect is a setup.Сопоставить восемь систем логов и базу SOC, чтобы найти настоящего виновника. Без подсказок, очевидный подозреваемый подставлен.

SystemsСистем
8 + DB
ExpectedОжидаемо
60–90′
ModeРежим
self-paced
Security + AIИБ + ИИ

Operation Neuropie BuddyОперация «Дружок нейропирожок»

Work an incident and automate SOC routine with an LLM without leaking data, trusting hallucinations or letting an agent run wild.Разобрать инцидент и автоматизировать рутину SOC с LLM, не слив данные, не поверив галлюцинациям и не дав агенту натворить дел.

TasksЗаданий
8
ExpectedОжидаемо
100–125′
ModeРежим
self-paced

Need a different role? A test set is a container image with seed data, a task list and a check script, so we can build one around your stack.Нужна другая роль? Тест-сет это образ контейнера с данными, список заданий и скрипт проверки, так что его можно собрать под ваш стек.

Evidence for the hiring decisionОснования для решения о найме

Compare candidates on what they didСравнивайте кандидатов по тому, что они сделали

Each card collects the same measurements, so two people who took the same set can be put side by side or ranked on the leaderboard.Карточка кандидата собирает одни и те же метрики, поэтому двух людей с одним сетом можно поставить рядом или посмотреть рейтинг.

Tasks passed by auto-checkЗадания, прошедшие автопроверку
A1 … D1
Time from task to passВремя от задания до решения
5:54
Commands and failed commandsКоманды и ошибочные команды
5 · 0%
Paste eventsВставки из буфера
0 (0 chars)
Tab hiddenУходы со вкладки
0 times
SQL statementsSQL-запросы
full textполный текст
AI tokens and promptsТокены и запросы к ИИ
120 tok · 1
Interviewer score and notesОценка и заметки интервьюера
0–100

Isolation by designИзоляция в основе

Root-level curiosity stays inside the boxЛюбопытство кандидата остаётся в песочнице

You are inviting security people. Some of them will try to break the platform, and that should be safe.Вы приглашаете безопасников. Кто-то из них попробует сломать платформу, и это должно быть безопасно.

  • One container per candidate.Свой контейнер на кандидата. No network, non-root, 0.8 CPU and 512 MB. Created when the clock starts and removed when the candidate is archived.Без сети, не root, 0,8 CPU и 512 МБ. Создаётся при старте таймера и удаляется при архивации.
  • AI through one narrow channel.ИИ через один узкий канал. A per-candidate socket to a gateway with no capabilities, a model allow-list, a payload allow-list and a token budget.Отдельный сокет на кандидата к шлюзу без привилегий, белый список моделей и полей запроса, бюджет токенов.
  • Disk guard.Защита диска. Write throttling plus a watchdog that suspends a session that fills its quota, so one candidate can't take down the others.Ограничение скорости записи и сторож, который приостанавливает сессию при превышении квоты, чтобы один кандидат не уронил остальных.
  • Admin access with 2FA and an audit log.Админка с 2FA и журналом аудита. TOTP for reviewers, roles, and every change to a candidate recorded.TOTP для проверяющих, роли и запись каждого изменения по кандидату.
  • Self-hosted.На вашем сервере. Runs on one Ubuntu VPS with Docker. A 4 GB server handles four or five candidates at once.Работает на одном Ubuntu VPS с Docker. Сервер на 4 ГБ держит четыре-пять кандидатов одновременно.

Two ways to run itДва режима

Live interview or home assignment, per candidateЖивое интервью или домашнее задание, для каждого кандидата

LIVE

You on a call, watching the terminalВы на созвоне и видите терминал

Read-only live view of the candidate's screen. Send tasks one by one, add 10 or 15 minutes, suspend or re-issue access from the card.Трансляция экрана кандидата только для чтения. Выдавайте задания по одному, добавляйте 10 или 15 минут, приостанавливайте или перевыдавайте доступ из карточки.

SELF-PACED

They work when it suits themКандидат работает в удобное время

All tasks open at start, answers go to files, the link is valid for 72 hours by default and the session stops hard at the time limit.Все задания доступны сразу, ответы сохраняются в файлы, ссылка по умолчанию живёт 72 часа, по истечении времени сессия жёстко завершается.

Try it on your next hireПопробуйте на следующем найме

Get a demo session and a candidate link to try yourselfПолучите демо и ссылку, чтобы пройти тест самому

Write to us with the role you are hiring for. We'll show the reviewer side and send you a candidate link for one of the test sets.Напишите, на какую роль вы нанимаете. Покажем сторону проверяющего и пришлём ссылку кандидата на один из тест-сетов.

hello@hireproof.org Write an emailНаписать письмо