Приветствуем дорогих читателей! Начинаем рубрику посвящённую нейросетям и их применению в сфере ИБ. В этой статье мы сравним 3 самых популярных и одну малоизвестную ИИ в разработке скриптов для эффективного поиска никнеймов и сканирования хостов на уязвимости.
Дисклеймер: Все данные, предоставленные в статье, взяты из открытых источников. Не призывают к действию и предоставлены только для ознакомления и изучения механизмов используемых технологий.
Ваша статья — яркий пример «технологического снобизма», где эмоции подменяют рациональные аргументы. Да, 1С — не идеал. Да, у неё куча недостатков. Но называть её «рудиментом» и «цифровым аппендиксом» — значит демонстрировать непонимание реального бизнеса и экономики.
Давайте разберёмся, почему 1С до сих пор жива, и почему её «архаичность» — это не недостаток, а следствие адаптации под конкретные условия.
Всякий раз, когда Joomla загружает расширение, она создает дочерний Dependency Injection Container (далее контейнер), исключительно для использования этого расширения. Это показано на схеме ниже.
Child DIC
Дочерний контейнер содержит указатель на родительский контейнер и функционирует аналогично основному контейнеру, но с некоторыми отличиями:
При каждом вызове метода set() для этого дочернего контенера пара ключ-значение добавляется в дочерний контейнер;
При каждом вызове метода get() для этого дочернего контейнера ресурс извлекается из дочернего контейнера, но если он там не найден, то поиск выполняется также в родительском контейнере.
Начиная с версии Joomla 4, разработчики Joomla рекомендуют создателям расширений использовать внедрение зависимостей (dependency injection) для своих расширений, определяя файл services/provider.php. Загрузка расширения теперь выполняется в два этапа, которые обрабатываются внутри файла services/provider.php:
Класс расширения регистрируется в дочернем контейнере;
Класс расширения извлекается из дочернего контейнера, создавая экземпляр этого класса.
Давайте рассмотрим минимальный пример этого для компонента com_example с пространством имён Mycompany\Component\Example.
use Joomla\CMS\Extension\ComponentInterface;
use Joomla\DI\Container;
use Joomla\DI\ServiceProviderInterface;
use Mycompany\Component\Example\Administrator\Extension\ExampleComponent;
return new class implements ServiceProviderInterface
{
public function register(Container $container): void
{
$container->set(
ComponentInterface::class,
function (Container $container)
{
$component = new ExampleComponent();
return $component;
}
);
}
};
Мы видим, что когда Joomla выполняет require этого PHP-файла, возвращается экземпляр класса.
$provider = require $path; // $path points to the relevant services/provider.php file
Переменная $provider указывает на объект, который является экземпляром этого анонимного класса. Кроме того, класс реализует интерфейс Joomla\DI\ServiceProviderInterface, что, по сути, означает, что он содержит метод register с указанной выше сигнатурой.
Когда Joomla выполняет
if ($provider instanceof ServiceProviderInterface)
{
$provider->register($container);
будет вызван метод register, который добавит запись в дочерний контейнер с
key - ComponentInterface::class – это сокращённый способ в PHP указать строку 'Joomla\CMS\Extension\ComponentInterface';
value - функция, которая возвращает новый экземпляр класса ExampleComponent (основного класса расширения компонента com_example).
$extension = $container->get($type);
Функция выше будет запущена и вернет новый экземпляр ExampleComponent.
Вы можете самостоятельно изучить код Joomla в файле libraries/src/Extension/ExtensionManagerTrait.php и убедиться, что описанный выше шаблон также применяется к модулям и плагинам.
Обратите также внимание на следующую строку в этом файле:
if ($extension instanceof BootableExtensionInterface)
{
$extension->boot($container);
}
Таким образом, если класс расширения реализует интерфейс BootableExtensionInterface, Joomla немедленно вызовет метод boot() экземпляра расширения, как описано в документации по расширениям.
Особенности формата хранения чисел с плавающей точкой позволяют быстро находить приближённое значение логарифма, и, за счёт этого, выполнять умножение и деление. Результат при этом будет неточным, однако может быть применимым там, где особая точность не требуется.
Личный кабинет налогоплательщика, или как потерять доступ, если бы не длинный буфер обмена Windows 11
Обнаружил сценарий, при котором можно потерять доступ к личному кабинету (ЛК) налогоплательщика, если не сохранять в отдельном месте генерируемые пароли.
Входим в ЛК.
Нажимаем "Изменить пароль" в настройках профиля.
Генерируем пароль сторонним сервисом, назовем его "Пароль 1".
Вводим пароль, сохраняем.
Вдруг система говорит, что в пароле нет цифр!..
Хорошо, генерируем новый пароль, с цифрами.
Вводим новый пароль... О-па, а в поле "Старый пароль" уже неверный пароль.
Нервно ищем Пароль 1. Оказывается, что он применился, несмотря на ругань системы. Если не нашли, то всё... Мне помог длинный буфер обмена Windows 11.
Каждый, кто работал с большими языковыми моделями (LLM), знает про ограничение длины контекста: модель не может напрямую обработать текст, превышающий определённое число токенов. Это накладывает ограничения на работу с длинными документами и обширным контекстом. Но что если бы мы могли упаковать длинный текст в один-единственный вектор и скормить его модели как обычный токен? Звучит фантастично, однако свежие исследования показывают, что это возможно – такие “mem-векторы” позволяют сохранить сотни и даже полторы тысячи токенов информации в одном эмбеддинге. Это принципиально иной подход, нежели классическое сжатие данных, и он сулит интересные применения.
Mem-вектор (от “memory vector”) – это специально обученный вектор, который хранит содержание целого текста. Идея в том, что если модель умеет предсказывать текст, то можно подобрать такой вектор на входе, при котором замороженная (неизменяемая) LLM сама декодирует исходный текст. Иначе говоря, mem-вектор играет роль «семени», из которого предобученная модель порождает заложенное в нём сообщение. В этой статье разберём, как это работает, почему вообще возможно “запихнуть” роман в один вектор и какие ограничения при этом появляются. Также сравним mem-подход с классическими алгоритмами сжатия (Huffman, арифметическое кодирование, zlib и др.), обсудим последние научные работы на эту тему и возможные применения: от Retrieval-Augmented Generation (RAG) до передачи новых знаний замороженным моделям. Центральная мысль: mem-векторы – это не просто компрессия текста, а способ напрямую скормить модели смысл и знания, минуя последовательное чтение токенов.
Перевод внезапной статьи с сайта NASA, которая уже успела наделать много шума
Лучший кандидат на роль неуловимой Девятой планеты был обнаружен в двух глубоких инфракрасных обзорах, проведенных с разницей в 23 года. Если этот загадочный объект действительно Девятая планета, он должен иметь массу больше Нептуна и в настоящее время находиться примерно в 700 раз дальше от Солнца, чем Земля.
Обычно, когда мы говорим о безопасности Kubernetes, мы прежде всего говорим о защите подов от внешних угроз, но в некоторых случаях они сами могут представлять определенную опасность. Для того, чтобы эти угрозы мог реализовать атакующий, у него должны быть доступ к кластеру, разрешение RBAC на создание одного некоторых типов ресурсов (CronJob, DeamonSet, Deployment, Job, Pod, ReplicaSet, ReplicationController, StatefulSet) хотя бы в одном пространстве имен, и также должны отсутствовать политики безопасности.
Если у вас все это есть — тогда мы идем к вам в этой статье мы рассмотрим, какие атаки из подов вам могут грозить. А даже если есть не все, то особенно расслабляться все равно не стоит.
C появлением LLM, инструменты для автоматизации бизнес-процессов получили мощный импульс развития, так как стало возможным решать такие задачи, которые раньше было невозможно или сложно реализовать известными методами.
В этой статье я сравню несколько популярных решений для автоматизации бизнес-процессов в связке с LLM.
Агрегатор такси Lyft развернул опцию Lyft Silver с более удобными автомобилями для пожилых людей и службой поддержки, в которой работают реальные люди. Также сервис переработал дизайн приложения. Компания указывает, что пожилые люди составляют лишь 5,4% от её клиентской базы, но Lyft Silver должна помочь агрегатору увеличить число таких пассажиров.
Привет, Хабр! Ну что, снова я со своей барахолкой в Испании. Сейчас уже жарко, и все больше продавцов появляется на рыночке, постоянным посетителем которого я стал уже давно. На этот раз тоже удалось увидеть много интересного, чем сейчас делюсь и с вами. Если эта тема интересна, вас тоже волнуют случайные находки, прошу под кат.
Мария Телькеш практически неизвестна в России. Хотя она внесла значительный вклад в исследование солнечной энергии за десятилетия научной работы. О ее долгой жизни, изобретениях и солнечных панелях — в нашем материале.
Хакер под ником NullBuldge признал себя виновным в несанкционированном доступе к каналам Disney в Slack и краже 1,1 ТБ внутренних данных компании. Министерство юстиции США указало, что в начале 2024 года 25-летний житель Калифорнии Райан Крамер создал вредоносное программное обеспечение, которое позиционировалось как инструмент на базе искусственного интеллекта для генерации изображений. Злоумышленник разместил свой софт на GitHub и других платформах.
Майские праздники — особый период в жизни нашей страны, сравнимый разве что с новогодними. По сложившейся традиции, в начале января и начале мая россияне больше отдыхают, чем работают (но это не точно). Естественно, по мере всё более повальной интернетизации и развития культуры Рунета стали появляться многочисленные мемы, обыгрывающие стереотипы и противоречия ежегодного периода между Днём труда и Днём Победы. И если последний — совсем особая история, то период с 1 по 8 мая имеет куда более приземлённые ассоциации. Противоречий с майскими хватает: с одной стороны, в День труда на работе почти никто не работает, с другой стороны, для многих майские выходные нередко приходится грустно брать в скобки, ибо дача, рассада и картошка. Давайте выясним, как два праздника «выросли» в целые каникулы, и какие мемные ассоциации с ним связаны.
На протяжении первой, второй и третьей статей мы прошли вместе довольно увлекательный путь: от первого знакомства с Observables, где разобрались с основами реактивного подхода, через освоение операторов, которые позволили нам эффективно преобразовывать и фильтровать данные, до комбинирования потоков, открывшего возможности для синхронизации данных из нескольких источников. Мы постепенно превращали RxJS из интересного инструмента для экспериментов в мощный инструмент для реальных задач.
Теперь, сделав три уверенных шага, пришло время взглянуть на тёмную сторону реактивного программирования. Как и у любой технологии, у RxJS есть свои подводные камни. Один из самых коварных — это незакрытые подписки, которые могут привести к серьёзным проблемам, таким как утечки памяти, деградация производительности и даже краши приложения. Реальная мощь инструментов RxJS требует от разработчиков не только технических знаний, но и настоящего профессионального мастерства, чтобы создавать надёжные и быстрые приложения.
Если первые три шага были о создании и трансформации потоков, то четвёртый шаг — это о том, как брать ответственность за созданное. Это шаг к зрелости в работе с RxJS — понимание того, почему управление подписками важно и как оно влияет на качество ваших приложений.
Присоединяйтесь, чтобы шагнуть дальше в мир RxJS, избежать распространённых ошибок и стать разработчиком, который не только умеет создавать интересный код, но и делает его надёжным, оптимизированным и удобным для любых условий эксплуатации.
В соцсетях пользователи Pinterest сообщают об удалении пинов и приостановке работы аккаунтов, при этом пины удаляются за нарушение правил контента, которого на самом деле в них нет, сообщает The Verge. Пользователи заявили, что не получали никаких предупреждений или объяснений, прежде чем их аккаунты были заблокированы.
2 мая 2025 года вышла новая экспериментальная версия открытой реализации программного интерфейса Windows Win32 API для ОС Linux Wine 10.7. Выпуск Wine 10.0 состоялся в январе этого года.
Когда только-только вкатываешься в ЗОЖ, то моментально сталкиваешься со стигматизацией фастфуда. Есть масса исследований о том, как рацион с высоким содержанием насыщенных жиров и рафинированного сахара влияет на наши тела. Теперь, в новом исследовании на людях, ученые обнаружили, что подобный рацион коррелирует с низкими когнитивными способностями.
Европейская игровая индустрия давно перестала быть «младшим братом» американских и азиатских гигантов. Студии Старого Света создают проекты, которые не просто конкурируют с блокбастерами вроде Call of Duty или Final Fantasy, но и задают новые стандарты в нарративе, дизайне и игровой механике.
Уникальное сочетание культурного наследия, авторского подхода и готовности экспериментировать делает европейские игры узнаваемыми. Рассказываем о пяти хитах, которые подтверждают: Европа — это отдельная вселенная в мире видеоигр.