25 декабря состоялся выпуск 0.19.0 ELinks – программы для просмотра веб-страниц в текстовом режиме. С самого начала целью проекта было создание многофункционального текстового браузера с открытой политикой включения патчей и функций, и активной разработкой. Одной из таких функций является включение в ELinks Links-Lua, который добавляет в ELinks возможность использования пользовательских скриптов.
Ровно 30 лет назад, 4 декабря 1995 года компании Netscape и Sun совместно анонсировали новый язык программирования – JavaScript, впервые доступный в браузере Netscape 2.0, вышедшем на следующий день после анонса. С тех пор JavaScript сумел распространиться повсюду, его реализация содержится в каждом популярном браузере, на нём пишут серверный и десктопный софт, и спустя 30 лет он считается самым популярным языком программирования на планете.
Поздравляем всех причастных, работающих с этим языком, и желаем им в дальнейшем успешной карьеры и процветания.
Серво – экспериментальный веб-движок на языке Rust.
Так как проект находится в зачаточной стадии разработки,
то адекватного ченджлога нет, но основные изменения можно посмотреть тут.
В данном выпуске появился servoshell – это демо-браузер,
запускаемый и конфигурируемый из командной строки.
Для его сборки требуется rustc-1.88 (отсутствует в
убунту старше 25.10) и набор библиотек X11
(последнее, вероятно, можно считать косвенным свидетельством отсутствия поддержки Wayland).
На конференции DEF CON 33 представлен метод атаки на браузерные дополнения, подставляющие свои элементы интерфейса в просматриваемую страницу. Применение атаки к дополнениям с менеджерами паролей может привести к утечке хранимой в менеджерах паролей информации, такой как параметры аутентификации, параметры кредитных карт, персональные данные и одноразовые пароли для двухфакторной аутентификации. Проблема затрагивает все протестированные менеджеры паролей, включая 1Password, Bitwarden, LastPass, KeePassXC-Browser, NordPass, ProtonPass и Keeper.
Vivaldi — веб-браузер, разрабатываемый Vivaldi Technologies. Он вдохновлён классической Opera Presto и включает в себя множество уникальных функций и возможностей для тонкой настройки.
Открытому лёгкому веб-браузеру Dillo исполнилось 25 лет, и он был обновлён до версии 3.2. Этот браузер, написанный с использованием FLTK 1.3 GUI toolkit, был возрождён разработчиком Родриго Ариасом Малло после более чем девяти лет забвения.
В новой версии добавлена начальная поддержка SVG-изображений для математических формул и простых SVG-графиков, поддержка изображений WebP и новый режим навигации по страницам с помощью полосы прокрутки. Теперь можно пролистывать страницы как книги, используя левую кнопку мыши для прокрутки вниз и правую для прокрутки вверх. Также можно настроить перекрытие страниц с помощью новой опции scroll_page_overlap.
По данным сервиса Statcounter, отслеживающего рыночную долю веб-браузеров, операционных систем, поисковых движков и др., доля ОС Linux на ПК достигла рекордных значений, превысив 4%. Хотя на первый взгляд это немного, на деле речь идёт о десятках миллионов пользователей по всему миру. При этом сервис отдельно учитывает данные ChromeOS, тоже построенной на Linux.
Можно также отметить, что согласно статистике сайта w3schools.com, доля линукс-клиентов уже довольно давно колеблется в районе 4%, однако следует учитывать специфику этого ресурса, основной аудиторией которого являются Web-разработчики.
Вышел очередной релиз Thalassa CMS, сочетающей генератор статического HTML и CGI-программу для поддержки пользовательских комментариев. Thalassa CMS написана на C++ и, по заявлению автора, не имеет внешних зависимостей, не использует СУБД и не генерирует страниц со скриптами.
Опубликована 83-я версия кэширующего и антиспамного прокси-сервера для персонального использования c гибкими настройками.
Основные функции (всё настраивается):
фильтрация нежелательного контента (белые/чёрные списки на урлы, запрет кук);
принудительное и бессрочное кеширование полученных данных (в основном удобно для картинок и скриптов);
исправление содержимого веб-страниц на лету (правкой исходника на Си, есть пример для замены содержания страниц-клонов stackoverflow ссылкой на оригинал);
чёрные/белые списки сертификатов и certificate pinning по списку;
подмена айпи-адреса/домена/пути/протокола http-запроса по конфигу (такой расширенный вариант /etc/hosts);
http/https-сниффер.
Прекрасно подходит для просмотра сайтов через медленный интернет или с медленного устройства (благодаря п.1 и 2, ради которых изначально всё и затевалось), но вообще полезно в любом случае.
Прокси-сервер в целях безопасности и упрощения логики работы разделён на три части: TLS-сервер (терминирующий браузерные подключения), центральный модуль прокси и клиент, терминирующий исходящие подключения.
Программа рассчитана на персонализированное использование, то есть все конфиги и директория с текущими данными прокси-сервера привязана к конкретному пользователю, или даже к конкретному профилю браузера. Запустить прокси в качестве общесистемного демона технически возможно, но в таком виде затруднительно использовать одну из его главных функций - агрессивное кеширование всего подряд, поскольку закешированные данные у каждого профиля браузера могут быть свои, и должны быть изолированы друг от друга в целях безопасности.
https://my.local.site
set proxy none
set target http://127.0.0.1:1234/localsite
set http_host new.host:1234
.intel.com
resolve off
set proxy socks5://127.0.0.1:3333
В случае обновления с версии более старой чем 78 следует сконвертировать кеш: зайти в рабочую директорию прокси-сервера от юзера (uid/gid) прокси-сервера и выполнить fproxy-cacheconv-78 (по умолчанию эта программа не компилируется).
fproxy-dashboard теперь имеет опцию для показа размеров контента в байтах а не кбайтах;
поддержка багнутых серверов, игнорирующих заголовок «Connection: close»;
поддержка багнутых серверов, отдающих некорректный заголовок «Content-Encoding: identity»;
отправка TLS-опции ALPN;
улучшение работы TLS-терминатора внешней стороны (клиента): он теперь поддерживает не только TLS, но и обычные соединения,
поддерживает работу в виде независимого демона с приёмом запросов от основного прокси по сети, а также может пробрасывать свои
исходящие соединения через другое прокси, таким образом позволяя гибко разделять задачи между узлами в условиях плохого
интернет-соединения и/или необходимости организовать «выход» трафика где-то на удалённом сервере разной степени доверенности;
так же новая версия более удобна для использования вручную из командной строки в качестве консольного TLS-клиента с поддержкой
проксирования;
упрощена сборка, теперь есть Makefile вместо шелл-скриптов
организованы предсобранные .deb-пакеты в репозитории (для версий Debian 8-12)
изменения файла конфигурации, обратно-несовместимые
новый конфиг для управления роутингом запросов, объединивший ранее бывшие отдельными конфиги resolv и включения проброса
исходящих соединений на удалённый сервер, а так же получивший ряд новых опций: теперь можно для каждого url-а (протокол,
домен, порт, путь) выбирать через какой клиент, какое прокси он будет отправлен, через чей днс-сервер будет проводиться
определение его айпи-адреса (включая опциональное делегирование этой задачи внешнему прокси-серверу http или socks5), либо
прописать адрес вручную, а так же заменить протокол, порт или префикс пути url-а
добавлена поддержка SAN-сертификатов для ip-адресов и в клиенте и в сервере (браузеры с некоторых пор перестали принимать
ip-адреса в CommonName)
В планах на будущее:
поддержка CGI/FastCGI/.so хуков для mitm-обработки полученного от сайтов контента
менеджер профилей и конфигураций прокси
интерактивное управление проверкой сертификатов удалёных сайтов и списками блокировок
После семи месяцев разработки выпущено мажорное обновление сервера комментариев Comentario 3.0.0.
Comentario — это быстрый и мощный свободный сервер комментариев для веб-страниц, написанный на Go и Angular. Изначально он появился в виде форка Commento, популярного сервера комментариев, ныне заброшенного.
После 11 месяцев разработки представлена новая стабильная ветка высокопроизводительного HTTP-сервера и многопротокольного прокси-сервера nginx 1.24.0, которая вобрала в себя изменения, накопленные в основной ветке 1.23.x. В дальнейшем все изменения в стабильной ветке 1.24 будут связаны с устранением серьёзных ошибок и уязвимостей. В скором времени будет сформирована основная ветка nginx 1.25, в которой будет продолжено развитие новых возможностей. Для обычных пользователей, у которых нет задачи обеспечить совместимость со сторонними модулями, рекомендуется использовать основную ветку, на базе которой раз в три месяца формируются выпуски коммерческого продукта Nginx Plus.
nginx - это простой, быстрый и надёжный Web-сервер, написанный на языке Си.
Основные изменения в этой версии:
Изменен внутренний API, строки заголовков теперь передаются в форме связанного списка.
Строки заголовков с идентичными именами теперь объединяются при передаче в бэкенды FastCGI, SCGI и uwsgi, в методе $r->header_in() модуля ngx_http_perl_module и в переменных $http_..., $sent_http_..., $sent_trailer_..., $upstream_http_... и $upstream_trailer_....
Уровень логов для ошибок SSL application data after close notify понижен с crit до info.
Исправлена проблема с зависанием соединений в nginx, собранном на Linux-системах с ядром 2.6.17 и новее, но используемом на системах без поддержки EPOLLRDHUP (к примеру, при применении эмуляции epoll).
Исправлена проблема с кэшированием ответов, если заголовок Expires запрещал кэширование, а Cache-Control разрешал.
Исправлены проблемы, проявляющиеся, если бэкенд выдавал в ответе в несколько заголовков Vary и WWW-Authenticate.
Разработчики проекта GNOME представили новый каталог приложений apps.gnome.org, на котором предложена подборка лучших приложений, созданных в соответствии с философией сообщества GNOME и без проблем интегрируемых с рабочим столом. Предложены три раздела: основные приложения, дополнительные приложения от сообщества, развиваемые в рамках инициативы GNOME Circle, и приложения для разработчиков. В каталоге также предложены мобильные приложения, созданные с использованием технологий GNOME, которые помечены в списках специальным значком.
Из особенностей каталога отмечаются:
ориентация на привлечение пользователей к процессу разработки через отправку отзывов, участие в переводе интерфейса на разные языки и оказание финансовой поддержки;
наличие переводов описаний для большого числа языков, в том числе для русского, белорусского и украинского;
предоставление актуальной информации о версиях, основанной на метаданных, используемых в GNOME Software и Flathub;
возможность размещения приложений, отсутствующих в каталоге Flathub (например, приложений из базовой поставки).
9 марта 2021 года Apache Software Foundation представила шестую версию сервера web-конференций Apache OpenMeetings 6.0. Сервер позволяет организовывать аудио и видеоконференции через интернет, а также обмен сообщениями между участниками. Поддерживается как режим конференции, когда все слышат всех, так и режим вебинара, где ведет один участник, а другие только смотрят.
На сервере можно поднять множество онлайн-комнат с конференциями, в каждом из которых будут свои правила и свой набор участников. Поддерживаются гибкие настройки доступа, модерации и управления контентом.
Из основных нововведений:
Протокол OAuth теперь использует TLS 1.2
Возможность глобального отключения записи конференций
Повышена стабильность передачи аудио и видео потоков
Интерфейс пользователя теперь использует API Web Notification, что позволяет использовать системные способы вывода уведомлений
Добавлена возможность генерации метрик с помощью Prometheus
Началась замена реализации протокола QUIC на вариант, развиваемый в спецификации IETF, вместо Google-варианта QUIC.
Кроме нововведений и исправления ошибок в новой версии устранено 35 уязвимостей. Многие из уязвимостей выявлены в результате автоматизированного тестирования инструментами AddressSanitizer, MemorySanitizer, Control Flow Integrity, LibFuzzer и AFL. Одна уязвимость (CVE-2020-15967, обращение к освобождённой области памяти в коде для взаимодействия с Google Payments) помечена как критическая, т.е. позволяет обойти все уровни защиты браузера и выполнить код в системе за пределами sandbox-окружения. В рамках программы по выплате денежного вознаграждения за обнаружение уязвимостей для текущего релиза компания Google выплатила 27 премий на сумму 71500 долларов США (одна премия $15000, три премии $7500, пять премий $5000, две $3000, одна $200 и две премии $500). Размер 13 вознаграждений пока не определён.
24 марта, в своём блоге компания Mozilla предложила пользователям Firefox стать участниками тестирования сервиса «Firefox Better Web with Scroll», который нацелен на новую модель финансирования сайтов.
Цель проекта — возможность использования платной подписки для финансирования создания контента. Это должно позволить владельцам сайтов обойтись без рекламы. Сервис организован совместно с проектом Scroll.
Модель выглядит примерно так: пользователь оплачивает подписку на сервис и может просматривать сайты, присоединившиеся к Scroll, без рекламы. Около 70% от полученных средств перечисляется владельцам сайтов (что на 40% превышает их обычный доход от рекламы).
В настоящее время тестирование доступно только для пользователей из США. Чтобы стать участником программы, необходима установка специального расширения в браузер.