(требует root/админских прав для raw sockets)
1) Цель:
Быстрый массовый порт-сканнер для больших диапазонов.
Отлично подходит для поиска открытых портов на /8–/16. Для детальной проверки используйте nmap.
2) Общие примеры — указание целей
# одиночный IP
sudo masscan 10.0.0.1
# несколько подсетей
sudo masscan 10.0.0.0/24 192.168.1.0/24
# исключить IP(из файла)
sudo masscan 10.0.0.0/16 --excludeFile exclude.txt
# исключить один IP
sudo masscan 10.0.0.0/16 --exclude 10.0.122.120
3) Порты
# один порт
sudo masscan 10.0.0.1 -p80
# диапазон портов
sudo masscan 10.0.0.1 -p0-65535
# несколько портов
sudo masscan 10.0.0.1 -p80,443,8080
# UDP
sudo masscan 10.0.0.1 -pU:53
4) Тайминги и производительность
# оценить время без отправки пакетов
sudo masscan 0.0.0.0/24 --offline
# задать скорость (пакетов в секунду)
sudo masscan 10.0.0.0/16 --rate 10000
# включить ping (ICMP)
sudo masscan 10.0.0.1 --ping
# сохранить захваченые пакеты в pcap
sudo masscan 10.0.0.1 --pcap results.pcap
# печать пакетов в терминал (только при низком rate)
sudo masscan 10.0.0.1 --packet-trace
Примечание: высокая `--rate` может вызвать потерю пакетов и ложные отрицательные — начните с комфортного уровня для вашей сети.
5) Banner grabbing и source-ip
# попытка баннер-граббинга (ограниченно)
sudo masscan 10.0.0.1 --banners
# указать исходный IP (если у вас есть несколько адресов)
sudo masscan 10.0.0.1 --source-ip 192.168.100.200
Примечание: masscan использует собственный стек — баннеры иногда не получаются. Для надёжного баннер-граббинга используйте nmap -sV или ncat после обнаружения открытых портов.
6) Выводы/форматы
# grepable
sudo masscan 10.0.0.0/24 -p80 -oG out.grep
# XML (подходит для импорта в Metasploit)
sudo masscan 10.0.0.0/24 -p22 -oX out.xml
# JSON
sudo masscan 10.0.0.0/24 -p80 -oJ out.json
# простой список
sudo masscan 10.0.0.0/24 -p80 -oL out.list
# бинарный формат masscan (быстро читать/конвертировать)
sudo masscan 10.0.0.0/24 -p80 -oB out.bin
# прочитать бинарный файл и вывести
sudo masscan --readscan out.bin
# конвертация бинарного скана в XML
sudo masscan --readscan out.bin -oX out_from_bin.xml
7) Полные примеры (реальные one-liners)
# быстрый полный порт-скан /24, высокий rate, только открытые
sudo masscan 10.1.1.0/24 -p0-65535 --rate 100000 --open-only -oL open_ports.txt
# несколько целей, баннеры, source-ip, конкретные порты
sudo masscan target1 target2 -p80,443 --rate 100000 --banners --open-only \
--source-ip 192.168.100.200 -oL output.txt
# top-20 ports, средний rate
sudo masscan 10.0.0.0/16 -p21,22,23,25,53,80,110,135,139,143,443,445,993,995,1723,3306,3389,5900,8080 \
--rate 50000 -oL top20.txt
# поиск SSH в большом диапазоне (пример internal pentest)
sudo masscan 10.0.0.0/16 -p22 --rate 2000 -oX ssh_22.xml
😍 Полезные советы и ограничения
- masscan требует root/админ прав (raw sockets).
- masscan быстрый, но неточный в детализации; после обнаружения открытых портов запускайте nmap для верификации и баннер-граббинга.
- для UDP-сканов ожидайте медленнее rate и больше ложных результатов.
- при внешних сканах — согласуйте scope, используйте умеренный `--rate`, и добавьте `--excludeFile` для черных/нецелевых хостов.
- храните результаты в формате XML/JSON для автоматического импорта в SIEM / базы данных.#cheat_sheet
Please open Telegram to view this post
VIEW IN TELEGRAM
❤3🥰2👍1
Сценарий: обычный пользователь
ctfuser на Linux-VM (пароль ctfpass123`). На VM есть устаревшие пакеты и ошибочные конфигурации.Цель
— поднять привилегии до `root и прочитать /root/flag.txt.Ключевые факты:
* В системе есть несколько SUID-бинарников.
* В `/etc/cron.d/` есть cron, который вызывает скрипт от root; сам скрипт хранится в директории, куда `ctfuser` может писать.
* Работает локальный daemon, слушающий только127.0.0.1.
* Установлены старые пакеты — возможен известный локальный CVE.
* В домашней директории `ctfuser` есть `backup/old_script.sh` и `.bash_history` с намёками.
sudo -l, find / -perm -4000 -type f, просмотрите cron'ы и права на скрипты.🔥 — SUID-эксплойт: найти SUID-бинарник, позволяющий исполнить shell/прочитать файлы root
👾 — Cron + writable script: подменить root-скрипт, который запускается по cron
❤️ — Sudo misconfig:
NOPASSWD или небезопасные шаблоны в sudoers дают shell#ctf_challenge
Please open Telegram to view this post
VIEW IN TELEGRAM
👾15❤2🔥2🥰1
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥3🤔2😁1