Рубрика «информационная безопасность»

Значит так. Есть такой расхожий сюжет: жадные корпорации придумали защиту, а злые хакеры её взломали. Красиво, драматично, и конечно-же неправда. С защитой DVD всё было ровно наоборот: её похоронили не хакеры, а собственное правительство США, причём заранее, на этапе чертежа. А голливудские студии это знали и всё равно несколько лет строили на этом бизнес.

Читать полностью »

Послания от ангелов и первый шаг к компьютерам: стеганография Средневековья и Ренессанса - 1

Древние греки и римляне изобрели почти всё — от демократии до акведуков и… стеганографии, о чем шла речь Читать полностью »

Как меня назвали «невовлечённым», а я нашёл офшоры на Кипре - 1

«Бизнес — это не то, что написано на сайте. Это то, что написано в налоговой декларации.»

Читать полностью »

Где‑то прямо сейчас один программист не спит и патчит баг в библиотеке, от которой зависит половина интернета. Он делает это бесплатно. Его никто не знает. Если он уйдёт — никто не придёт.

В апреле 2024 года исследователь безопасности Андрес Фройнд обнаружил бэкдор в xz utils — утилите сжатия, встроенной в большинство дистрибутивов Linux. Атака была почти идеальной: два года социальной инженерии, один выгоревший мейнтейнер и вредоносный код в сборочных скриптах.

Читать полностью »

Я узнал об отключении не из новостей. Утром мне написал знакомый из небольшого банка: «всё упало, паспорта не проверяются, онлайн встал». В то время как раз дописывал обработку ошибок в smev4-rs, Rust-крейте для работы с СМЭВ 4.

Совпадение так совпадение.

Первые несколько часов ушли на то, чтобы понять, что вообще происходит. Минцифры говорило что транспорт в порядке. Жалобы шли и от тех, кто на СМЭВ 3, и от тех, кто переезжал на СМЭВ 4. Значит дело было не в версии протокола.

Читать полностью »

TL;DR:

В GitHub-репозитории для тестового задания был вредоносный код, спрятанный в tailwind.config.js. Сначала файл выглядел как обычный Tailwind-конфиг, но в конце была длинная обфусцированная JS-строка. При загрузке конфига код подключал fs, os, request, path, node:process и child_process, связывался с C2 на 78.142.218.26:1244 или 66.235.168.17:1244, отправлял минимальный фингерпринт машины, скачивал второй payload в ~/.vscode/f.js, создавал ~/.vscode/package.json, выполнял npm install и запускал payload в фоне через node/nohup. Иными словами, это был не обычный тестовый проект, а loader/downloader, замаскированный под frontend-задание.

Социальная часть

Читать полностью »

Я написал BarkingDog — ИИ-сканер безопасности с открытым исходным кодом для Telegram-ботов и веб-приложений на базе LLM. Затем я натравил его на реального, широко используемого опенсорсного Telegram-бота, и бот получил 0/100 по шкале безопасности. Он написал работающий кейлоггер. Подтвердил, что отбеливатель лечит COVID-19. Выдал пошаговую инструкцию по взлому корпоративной сети с указанием конкретных хакерских утилит. Затем я пропатчил системный промпт. Оценка: 97/100. Никакой смены модели. Никаких изменений в коде. Всего шесть строк текста.

Бот, которого я тестировал

Проект chatgpt-telegram-botЧитать полностью »

Начиная с OpenSSH 9.7, sshd умеет автоматически ограничивать на время подозрительные IP без Fail2Ban и iptables. В Ubuntu 26.04 эта функция уже включена по умолчанию — даже если в sshd_config про неё ничего не написано. Предлагаю попробовать разобраться с тем, как это работает.

Disclaimer: статья написана без использования ИИ. Нейросеть использовалась только для стилистической редактуры. Ничего не рекламирую и в ТГ-чаты не зазываю. Гараж не продаю.

Читать полностью »

Привет! Сегодня поговорим о проекте, который наделал много шума в сообществе — g4f (GPT4Free). Многие видели его на GitHub, но большинство, наверное, и не задумывались, как он работает.

Как использовать g4f в Python-коде

Сам API g4f выглядит как у настоящего openai. Это сделано специально для того, чтобы программистам не пришлось учить новые команды и методы вызова кода в g4f. Достаточно просто заменить import openai на import g4f. Пример кода:

С использованием официальной библиотеки openai:

from openai import OpenAI

client = OpenAI(api_key="sk-...")
response = client.chat.completions.create(
    model="gpt-4",
    messages=[{"role": "user", "content": "ВАШ_ЗАПРОС"}]
)
print(response.choices[0].message.content)Читать полностью »

https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js