Oracle планирует отказаться от поддержки сериализации в Java

Oracle планирует отказаться от поддержки сериализации в Java

Oracle планирует отказаться от поддержки сериализации в Java

По словам Марка Рейнхолда, одного из главных разработчиков платформы Java, Oracle планирует отказаться от поддержки сериализации/десериализации данных в языке Java. Специалисты считают, что именно в этом кроется причина наличия большинства уязвимостей.

Сериализация представляет собой процесс перевода какой-либо структуры данных в последовательность битов.

Обратной к операции сериализации является операция десериализации (структуризации) — восстановление начального состояния структуры данных из битовой последовательности.

«Сериализация и десериализация данных сами по себе не являются проблемой. Эти операции несут угрозу, когда приложение работает с данными, предоставленными пользователем. Из-за удобства эти функции поддерживаются многими языками программирования высокого уровня, однако именно в Java это настоящая головная боль, так как реализация этих процессов лежит в корне всех недостатков безопасности».

Рейнхолд отметил, что реализация поддержки сериализации в 1997 году было «ужасной ошибкой». Разработчик подчеркнул, что Java в настоящее время работает над тем, чтобы отказаться от поддержки сериализации в основном коре языка Java.

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

На данный момент точная дата окончания поддержки неизвестна.

Вышла утилита RKN Block Checker для диагностики блокировок

Разработчик Дмитрий Виноградов представил утилиту RKN Block Checker с открытым исходным кодом. Она помогает понять, почему конкретный сайт не открывается: это обычная сетевая проблема или блокировка на стороне провайдера / регуляторной инфраструктуры.

Проект написан на Python и опубликован под лицензией MIT. Утилита работает из командной строки и проверяет соединение по цепочке DNS → TCP → TLS → HTTP.

Идея простая: не просто выдать вердикт, что сайт недоступен, а показать, на каком именно уровне всё сломалось. Например, если системный DNS не даёт нормальный ответ, а Cloudflare DoH возвращает корректный адрес, это может указывать на DNS-подмену. Если TCP-соединение на 443-й порт сбрасывается, речь может идти о блокировке на уровне IP.

Если TCP проходит, но соединение рвётся на TLS-рукопожатии с SNI, это уже похоже на работу DPI / ТСПУ. А если сайт открывается, но вместо страницы приходит заглушка провайдера или код 451, утилита фиксирует и такой сценарий.

 

Автор отдельно подчёркивает, что смысл RKN Block Checker не в том, чтобы заменить браузер. Браузер и так сообщает, что сайт не открылся. Здесь задача другая — разложить проблему по слоям и дать пользователю более понятную картину, где именно произошёл сбой и на что это похоже.

Утилита сравнивает ответы системного DNS и DNS over HTTPS через Cloudflare, проверяет обычное TCP-подключение, запускает TLS-handshake с SNI целевого домена и затем делает HTTP-запрос. Вердикт выставляется по первому уровню, на котором возникла ошибка.

 

У проекта есть и ограничения. Пока поддерживается только IPv4. Списки целей жёстко заданы в коде и включают около 20 сайтов на категорию, поэтому инструмент не поймает все частные случаи. Кроме того, это разовая проверка без повторов и долгосрочного мониторинга, хотя JSON-вывод можно использовать в cron для регулярных запусков.

RSS: Новости на портале Anti-Malware.ru