Fsecurity | HH
2.01K subscribers
1.77K photos
108 videos
64 files
6.44K links
Канал про ИБ
Наш Discord: https://discord.gg/Eg8aDS7Hn7
Пожертвовать:
> https://www.donationalerts.com/r/xackapb
Download Telegram
Forwarded from REDtalk (Alexey)
👨‍💻 Привет!

Представим ситуацию — Вы сидите, проводите пентест, и в какой-то момент к вам приходит злой заказчик и говорит, что вы положили его инфру. Вы опешили, всё отрицаете, ведь во время тестирования атаки не было деструктивных методов. Но заказчик всё не успокаивается, показывает логи, мол, вот, в это время на нас упало куча трафика.

И в этот момент очень пригодились бы логи всех действий во время проведения тестирования. Поэтому вот простой лайфхак, который автоматически будет записывать 90% действий и поможет понять, были ли пентестеры причастны к инциденту или нет.

1️⃣ Для начала стоит добавить дату и время при каждом выполнении команды в терминале. Для этого можно модифицировать промпт вашего командного интерпретатора.

Тут ничего сложного, открываем rc файл и меняем соотсутсвующую переменную.

zsh (kali linux): Заменить PROMPT в ~/.zsh_rc

PROMPT=$'%F{%(#.blue.green)}┌──%{$fg[yellow]%}[%D{%d.%m.%y} %D{%H:%M}]\n%F{%(#.blue.green)}├──${debian_chroot:+($debian_chroot)─}${VIRTUAL_ENV:+($(basename $VIRTUAL_ENV))─}(%B%F{%(#.red.blue)}%n'$prompt_symbol$'%m%b%F{%(#.blue.green)})-[%B%F{reset}%(6~.%-1~/…/%4~.%5~)%b%F{%(#.blue.green)}]\n└─%B%(#.%F{red}#.%F{blue}$)%b%F{reset} ' 



bash (kali linux): Заменить PS1 в ~/.bash_rc

PS1=$prompt_color'┌──[\D{%d.%m.%Y %H:%M}]\n'$prompt_color'├──${debian_chroot:+($debian_chroot)──}${VIRTUAL_ENV:+(\[\033[0;1m\]$(basename $VIRTUAL_ENV)'$prompt_color')}('$info_color'\u'$prompt_symbol'\h'$prompt_color')-[\[\033[0;1m\]\w'$prompt_color']\n'$prompt_color'└─'$info_color'\$\[\033[0m\] ';; 



Теперь в листинге каждая команда будет иметь дату и время начала и конца выполнения (как на скриншоте к посту)

2️⃣ Далее нужно настроить автоматическую запись листинга. Тут на помощь придет TMUX. Правильно настроенный терминальный мультиплексор может стать мощным инструментом по сравнению с ГУИшными терминалами.

Для записи истории команд нужно установить плагин и добавить конфигурацию при каждом запуске tmux.

$> git clone https://github.com/tmux-plugins/tpm ~/.tmux/plugins/tpm 

# Конфиг должен выглядить так
$> cat .tmux.conf

# Список плагинов
set -g @plugin 'tmux-plugins/tpm'
set -g @plugin 'tmux-plugins/tmux-sensible'
set -g @plugin 'tmux-plugins/tmux-logging'
set -g history-limit 500000

# Запуск Tmux Plugin Manager
run '~/.tmux/plugins/tpm/tpm'

$> tmux source ~/.tmux.conf



Осталось зайти в tmux и нажать CTRL + b и SHIFT + i. Теперь при каждом запуске tmux можно начать запись с помощью CTRL + b, SHIFT + p и сразу после выхода из терминала запись будет сохранена в домашнюю директорию в виде текстового файла.

Теперь мы точно будем уверены, что во время инцидента со стороны пентестеров активности не было и мы не в чем не виноваты. Конечно, листинг команд работает только для CLI. С GUI нужно разбираться отдельно.

#redteam #ToolTricks
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3
Forwarded from HaHacking
🗂 #заметки #offense #web

➡️Полезный репозиторий на случай тестирования функциональности загрузки файлов – сборник маленьких, но синтаксически валидных файлов самых разных форматов, готовых для встраивания в них Ваших пейлоадов:

   🧩 mathiasbynens/small

▪️Краткий список расширений:
adb, appcache, avi, awk, bat, bf, bmp, bpg, bz2, c, chicken, chm, class, clj, cljc, cljs, clp, cob, coffee, com, cpp, cr, cs, css, dcm, dol, e, ex, exe, f, f90, flv, gif, go, groovy, gz, h, heif, hs, html, i, i7x, icc, ico, inf, java, jp2, jpg, js, json, jsonp, jxl, lua, m, macho, macho-ml, malbolge, md, ml, mng, mp3, mp4, ni, nim, o, opa, pas, pbm, pdf, pgm, php, pl, pml, png, ppm, py, rar, rb, rs, rtf, scala, sh, svg, swf, swift, t, tar, tga, tif, toml, ts, vs, wasm, wav, webm, webp, wmf, wmv, ws, xbm, xhtml, xml, yml, zip


▪️Полный список форматов:
ada.adb, manifest.appcache, AudioVideoInterleave.avi, awk.awk, batch.bat, brainfuck.bf, bmp.bmp, bpg.bpg, bzip2.bz2, c.c, chicken.chicken, compiledhtml.chm, java-class.class, clojure.clj, clojure.cljc, clojurescript.cljs, jess.clp, cobol.cob, coffeescript.coffee, doscommand-empty.com, doscommand.com, cpp.cpp, crystal.cr, csharp.cs, css.css, dicom.dcm, dolphin.dol, eiffel.e, elixir.ex, dosexecutable.exe, linearexecutable.exe, newexecutable.exe, portableexecutable-xp.exe, portableexecutable.exe, fortran-77.f, fortran-90.f90, FlashVideo.flv, gif-transparent.gif, gif.gif, go.go, groovy.groovy, gzip-name.gz, gzip.gz, c.h, heif.heif, haskell_loop.hs, haskell_term.hs, html-2.0.html, html-3.2.html, html-4.0-strict.html, html-4.01-frameset.html, html-4.01-strict.html, html-4.01-transitional.html, html5.html, iso-html.html, xhtml-1.0-frameset.html, intercal.i, i.i7x, icc.icc, ico.ico, inform-6.inf, java.java, jpeg2.jp2, jpeg.jpg, javascript.js, json.json, json-p.jsonp, jxl.jxl, lua.lua, objective-c.m, macho, macho-ml, malbolge.malbolge, markdown.md, ocaml.ml, mng.mng, mp3.mp3, Mpeg4.mp4, mp4-with-audio.mp4, story.ni, nim.nim, elf.o, opa.opa, pascal.pas, pbm.pbm, pbmb.pbm, pdf.pdf, pgm.pgm, pgmb.pgm, php.php, perl.pl, promela.pml, png-transparent.png, png-truncated.png, ppm.ppm, ppmb.ppm, python.py, rar14.rar, rar4.rar, rar5.rar, ruby.rb, rust.rs, rtf.rtf, scala.scala, shell.sh, svg.svg, flash.swf, swift.swift, tads-3.t, tar.tar, targa.tga, tiff.tif, toml.toml, typescript.ts, vertex-shader.vs, webassembly.wasm, wav.wav, webm.webm, webp.webp, WindowsMetafile.wmf, WindowsMediaVideo.wmv, whitespace.ws, x-bitmap.xbm, xhtml-1.0-strict.xhtml, xhtml-1.1.xhtml, xhtml-basic-1.0.xhtml, xhtml-basic-1.1.xhtml, xhtml5.xhtml, xml-1.0-valid.xml, xml-1.0.xml, xml-1.1-valid.xml, xml-1.1.xml, yaml.yml, zip.zip



Полезный репозиторий на случай тестирования такой функциональности (и браузеров) на уязвимость к Denial-of-Service – большая картинка PNG формата минимального размера;

   🧩 korczis/big-png
🧩  bamsoftware.com/hacks/deflate

▪️PNG изображение 6_132_534 байта (5.8 Мб)
▪️225_000 × 225_000 пикселей
▪️при представлении в качестве буфера пикселей по 3 байта / пиксель➡️141.4 Гб



@HaHacking 🐇
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from haxx
🛠 Как-то незаметно прошел релиз NetExec 1.3.0, а туда тем временем добавили несколько интересных вещей.

Вывод инфы по доступным интерфейсам, так что поиск пивота стал гораздо приятнее.
nxc smb 192.168.13.37 -u 'USERNAME' -p 'LOLKEKPOHEK' --interfaces


Проверка на всякие Coerce штуки (PetitPotam, DFSCoerce, PrinterBug, MSEven, ShadowCoerce). Подробнее тут
nxc smb 192.168.13.37 -u 'USERNAME' -p 'LOLKEKPOHEK' -M coerce_plus


Энум SCCM через LDAP (RECON-1) . Подробнее тут
nxc ldap 192.168.13.37 -u 'USERNAME' -p 'LOLKEKPOHEK' -M sccm -o REC_RESOLVE=TRUE


Извлечение паролей из истории команд PowerShell
nxc smb 192.168.13.37 -u 'USERNAME' -p 'LOLKEKPOHEK' -M powershell_history -o export=True


Статус Bitlocker по дискам
nxc smb 192.168.13.37 -u 'USERNAME' -p 'LOLKEKPOHEK' -M bitlocker

nxc wmi 192.168.13.37 -u 'USERNAME' -p 'LOLKEKPOHEK' -M bitlocker



В общем, есть с чем поиграться. Более подробно можно посмотреть тут или тут
Наш Discord сервер
👆🏻Тут можно пообщаться и найти много полезной информации 🦈
Forwarded from AP Security
#pentest

Windows Persistence

Пополняемый сборник традиционных и новых методов закрепа в системе.
👍1
Forwarded from Хатка бобра
В этом посте кратко познакомимся с инструментом atexec-pro (https://github.com/Ridter/atexec-pro). Позволяет выполнять команды (в том числе powershell), загружать-скачивать файлы и выполнять .NET в памяти. Для последних трех ограничение в размере - 1 МБ.

Atexec-pro под капотом использует сервис TSCH против привычного ATSVC и работает через TCP (т.е. пайпы не используем). На мой взгляд примечательно то, что в своей работе он файловую систему практически не трогает (кроме создания самой таски), но при этом позволяет получать нам вывод. Обычно подобные инструменты для этих целей используют промежуточный файл на диске, который затем удаляют (atexec, smbexec, wmiexec). AtExec-pro же для хранения вывода команды использует описание задачи :)

Давайте разберем принцип выполнения отдельной произвольной команды в этом инструменте:
1) Формируются рандомное имя задачи (состоит из 8 символов [A-Za-z]) и рандомный ключ
2) Команда, которую мы хотим исполнить шифруется этим ключом (AES) и в дальнейшем будет записана в описание задачи, думаю этим и вызван максимальный размер.
3) Далее берется шаблон PS скрипта, в нём мы указываем ключ из шага 1, который предварительно конвертировали в base64, и указываем имя задачи. В случае обычной команды это будет https://github.com/Ridter/atexec-pro/blob/main/libs/powershells/cmd.ps1. Сам скрипт по имени задачи дергает описание, расшифровывает его, выполняет команду и далее обновляет описание с выводом этой команды.
4) Далее полученный PS скрипт переводим в base64. Этот скрипт будем выполнять в самой задаче при выполнении через powershell -enc.
5) Создаём задачу и запускаем её.
6) Далее в цикле дергаем задачу, ждём её остановки и забираем результат.
7) Удаляем задачу.

Что в итоге имеем на хосте?

Событие 4698 на создание задачи (будет в Action команда powershell.exe -NonInteractive -enc <...>)
События 4688 на запуск процесса
Событие 4104 на выполнение скрипта powershell
Событие 4702 на обновление задачи после выполнения команды (запись вывода)
Событие 4699 на удаление задачи

Наибольшую ценность в плане детекта имеют события 4698 и 4104.
4698 содержит описание созданной задачи, в ней мы можем зацепиться за фиксированное для atexec и atexec-pro строку <StartBoundary>2015-07-15T20:35:13.2757294</StartBoundary> в поле TaskContent.
4104 в данном случае будет содержать переведенную из Base64 строку (то есть не обфусцированную), именно в ней можно увидеть ранее рассмотренный выше шаблон с заполненными полями. 4104 включается через Script Block Logging, если явно он не включен, то будет логироваться через AMSI (будет логировать только подозрительные на своё усмотрение в журнал Powershell/Operational). На основе этого события можно надергать ключевых элементов для детекта из поля script_block_text.

Если у вас используются RPC-фильтры, то действуем аналогично SCShell (https://t.me/beaverdreamer/169), в данном случае у сервиса UUID 86D35949-83C9-4044-B424-DB363231FD0C.


#rpc #atexec #schtasks
Forwarded from Proxy Bar
MyQ Print Server Unauthenticated RCE (CVE-2024-28059)
*
😆
Forwarded from Proxy Bar
PendingFileRenameOperations + Junctions EDR Disable
*
PendingFileRenameOperations позволяет приложениям создавать операции переименования файлов, создавая запись реестра в HKLM\\SYSTEM\\CurrentControlSet\\Control\\Session Manager.
*
Link

#win #edr
Forwarded from Proxy Bar
OpenBAS — это платформа с открытым исходным кодом, позволяющая организациям и проводить кампании и тесты по моделированию киберпреступлений.
*
Link
🔥1
Forwarded from Заметки Слонсера (Slonser)
HTML Universal Identifier
На VK Security Confab анонсировал свою тулзу для идентификации Html
Вот собственно и она:
https://github.com/Slonser/hui
Что можно делать сейчас:
- Идентифицировать flattening
- Находить неправильный mutation payloads
- Смотреть на разрешенные атрибуты и теги
- Идентифицировать библиотеку которая работает с html на бекенде
Нужно ещё много доработать но можно пользоваться уже сейчас
P.S. массово прописываем
python -m pip install hui
Наш Discord сервер
👆🏻Тут можно пообщаться и найти много полезной информации 🦈
Forwarded from Proxy Bar
CVE-2024-38819
*
Spring Boot 3.3.4, based on Spring Framework 6.1.13 path traversal exploit
*
POC + docker