Как стать автором
Обновить

Анализ атаки на Loopscale: манипуляция ценой PTUSDe и её последствия

Уровень сложностиСредний

Исследую атаку на Loopscale: как манипуляция ценой PTUSDe через недостаточную проверку данных оракула позволила вывести миллионы USDC и SOL, что стало причиной этого. И так ли безопасны не openSource проекты.

Читать далее

Анализ уязвимостей POS-терминалов

Уровень сложностиПростой

Пару дней назад стало интересно как работают POST терминалы и какие уязвимости в них бывают. Не советую воспринимать эту статтю как руководство по взлому, скорее просто как поверхностный взгляд на тему.

POS-терминалы (Point of Sale) — это специализированные компьютеры для обработки платежей. Несмотря на их критическую роль, многие из них работают на устаревших ОС (Windows CE, Embedded Linux). Как раз в этих системах и стоит искать уязвимости.

Читать далее

Технологии моей образовательной платформы: осознанный выбор или случайность?

Уровень сложностиПростой

Выбор технологий для создания чего-то по-настоящему мощного играет ключевую роль в развитии каждого проекта. Сегодня я хотел бы поделиться, почему я сделал выбор в сторону PostgreSQL, в чем причина замены Vue на React или почему используется WebSocket вместо REST API.

Читать далее

Оптимизация производительности сайта на Spring Boot: как это влияет на SEO

Уровень сложностиПростой

Привет, коллеги! Меня зовут Сирин Имамов, я backend-разработчик на Java, и сегодня разберём, как оптимизация Spring Boot-приложения может не только ускорить ваш сервис, но и улучшить его ранжирование в поисковиках. Да, SEO — это не только фронтенд и контент. Медленный бэкенд убивает пользовательский опыт, а Google это прекрасно видит.

Читать далее

Шпаргалка по обнаружению и удалению руткитов ядра Linux

Большинство руткитов, которые все еще работают с последними версиями ядра, используют известный метод перехвата ftrace, поскольку перехват таблицы системных вызовов устарел и не работает для большинства последних версий ядер именно из-за защит и изменений, которым подверглось ядро.

Поскольку большинство современных руткитов используют ftrace, почему бы не отключить его?

Читать далее

Как один проект 1С обернулся для моей компании долгами в 72 млн рублей

Уровень сложностиПростой

Меня зовут Калашников Роман, я основатель и руководитель компании «Фобизнес», 17 лет официальный партнёр 1С, более 20 лет в ИТ, десятки внедрённых проектов, в том числе федерального масштаба.

В этой статье я расскажу, как внедрение ZUP 3.1 для крупной нефтесервисной компании превратилось в кризис, который стоил мне команды, недвижимости и почти 3 лет жизни. А ещё — поделюсь выводами, которые могут сберечь вас от тех же ошибок.

Читать далее

Магия шанса в играх: от истории вероятности до ваших игровых механик

Уровень сложностиПростой

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

Я решил глубоко погрузиться в тему случайности и вероятности, чтобы помочь вам.

Читать далее

Стрелочные функции JS, быстро, просто и без проблем

Уровень сложностиСредний

Стрелочные функции JS, быстро, просто и без проблем!

1. Стрелочные функции: arguments, hoisting

2. Работа с контекстом

3. Методы присваивания контекста

4. Обработчик событий

Читать далее

Выгрузка данных в Python: JSON/XML/Excel/CSV

Уровень сложностиПростой

Аннотация
Статья «Выгрузка данных в Python» — это практическое руководство по работе с ключевыми форматами данных в современных проектах. Вы узнаете:

Как выбирать инструменты под разные сценарии:

JSON для интеграции с веб-сервисами

XML для сложных древовидных структур

Excel для бизнес-отчетности

CSV для кросс-платформенной совместимости

Лучшие практики работы с популярными библиотеками:

pandas для табличных данных

xml.etree.ElementTree для парсинга XML

json и кастомные энкодеры

Как избежать критических ошибок:

Обработка кодировок (автоопределение через chardet)

Защита от уязвимостей (XXE-атаки в XML)

Валидация входных данных

🔧 Бонус: Готовые примеры кода, таблицы сравнения форматов и чек-лист выбора инструмента под задачу.

Для кого:

Python-разработчиков

Data Analyst и Data Engineer

Всех, кто работает с импортом/экспортом данных

Результат: Научитесь уверенно работать с любыми форматами данных, оптимизируете процессы выгрузки и избежите типичных ошибок.

Читать

Когда аквариум становится хакером: нестандартные инциденты кибербезопасности и чему они нас учат

Уровень сложностиПростой

Каждый специалист по информационной безопасности регулярно сталкивается с типичными проблемами: фишинг, вирусы, неверно настроенные доступы. Но иногда появляются инциденты, которые выходят за рамки обыденного — такие, что становятся легендами ИБ-сообщества.

От шпионских червей и утечек в отелях до тортов вместо бомб: реальные истории из мира ИБ, которые удивляют даже бывалых специалистов.

Читать далее

Как я ускорил сборку проекта на 25% с помощью кэширования зависимостей

Уровень сложностиПростой

Всем привет! Меня зовут Иван, я backend-разработчик. В этой статье хочу поделиться опытом оптимизации процесса сборки в одном из наших проектов на Node.js. Возможно, мой опыт поможет вам сократить время CI/CD pipeline.

Читать далее

Параллельные миры Python: threading, multiprocessing и asyncio в бою

Уровень сложностиСредний

Или как не запутаться в многозадачности и выбрать правильный инструмент

Вы пишете код на Python и столкнулись с медленной работой приложения? Возможно, вы используете не тот подход для параллельных задач. Один разработчик заменил threading на asyncio и ускорил API в 5 раз, другой — применил multiprocessing и сократил время обработки данных с часов до минут. Но как понять, что подойдёт именно вам? Давайте разберёмся, как работают эти инструменты, и главное — когда их стоит (или не стоит) применять.

Узнать лучшее

Манипуляции в UX. Как онлайн-сервисы реагируют на отписки пользователей

Уровень сложностиПростой

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

Читать далее

Как я сделал GovnoBrowser: легкий браузер на Python и QtWebEngine?

Уровень сложностиПростой

GovnoBrowser: полноценный браузер на Python, легче Chrome в 3 раза. Разбираю архитектуру, тесты и планы по развитию. Для тех, кто хочет скорость без слежки. Открытый код — никаких «волшебных» оптимизаций. Для всех, кто ценит простоту и безопасность.

Читать далее

GIMP: префильтрация перед порогом

Уровень сложностиПростой

В GIMP порог применяется в основном для создания различных масок при работе со слоями. Сам порог в GIMP реализован в виде простого глобального интерактивно настраиваемого глобального порога: "Цвет" -> "Порог".

Читать далее

Как я хотел создать ИИ-ассистента, а в итоге развернул свой первый сервер с n8n, Docker и Nginx

Уровень сложностиПростой

История о том, как попытка автоматизировать рутину привела к открытию и прокачке моих технических навыков в DevOps.

Читать далее

Эмулятор Qemu | Установка и настройка

Уровень сложностиПростой

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

Читать далее

Flashback — хорошая замена Replay? (Minecraft)

Уровень сложностиПростой

Всем, кто снимает видео в Майнкрафте! Устали от глюков Replay Mod? Попробуйте Flashback - новый мод для записи геймплея.

Чем лучше?

✔ Работает на новых версиях.
✔ Не тормозит даже на слабых компах.
✔ Удобнее настраивать камеру.
✔ Подходит для Fabric с оптимизационными модами.

Читать далее