Shaper – ограничение траффика на Linux

Требовалось ограничить траффик на сервере в 200мбит. При поисках вышел на статью и статью.

Если говорить о второй статье она мне ничуть не понравилась, как и программа, но некоторое я оттуда взял.

Continue reading »

Удаленная замена корневой ФС в GNU/linux

Иногда мне приходится сталкиваться с заменой корневой файловой системы. Имея загрузочный диск и доступ к серверу, это не сложно. Однако, я хочу поделиться опытом замены корневой ФС удаленно, через ssh, без перезагрузки.

Причины для замены коневой ФС бывают разные:

  • перевод / в LVM
  • перевод / в mdraid
  • замена типа файловой системы (ext3 => btrfs)
  • уменьшение размера ФС (resize2fs)

Continue reading »

Оценка методов защиты от сетевых угроз

Владельцы доменных имен оценили эффективность методов защиты от распространенных сетевых угроз

В преддверии Всемирного дня безопасного Интернета, который приходится в 2012 году на 7 февраля, регистратор доменных имен REG.RU провел опрос “Доменные имена и безопасность”. В ходе недельного исследования удалось выявить уровень информированности владельцев доменных имен о существующих угрозах, определить, как часто они с данными угрозами сталкиваются и какие способы защиты и профилактики выбирают. Continue reading »

Повышение привилегий в Linux >=2.6.39

После того, как Линус запатчил ядро 17 января, опубликовано подробное описание уязвимости с повышением привилегий через /proc/pid/mem в suid. Это довольно умный хак, который применим для всех версий ядра >=2.6.39. Можете проверить у себя или на каком-нибудь непропатченном удалённом сервере.

Автор описания уязвимости первоначально не выкладывал готовый код, но поскольку на основе его поста в блоге такие эксплойты всё-таки появились в открытом доступе, то он тоже выложил свой эксплойт Mempodipper. Вот также шелл-код для 32-битной и 64-битной версий. Здесь видео SaveFrom.net с демонстрацией хака.

Появление уязвимости стало возможным благодаря тому, что в ядре 2.6.39 было решено убрать «избыточную» защиту #ifdef.

Источник: Повышение привилегий в Linux >=2.6.39 / Информационная безопасность / Хабрахабр.

В Apache 2.2.21 устранено уязвимости

Доступен корректирующий релиз http-сервера Apache 2.2.21 в котором устранена одна уязвимость и исправлено 8 ошибок. Исправленная проблема безопасности связана с особенностью обработки неподдерживаемых HTTP-методов в модулей mod_proxy_ajp, что может привести к DoS-атаке в конфигурациях, использующих mod_proxy_ajp в сочетании с mod_proxy_balancer.

Некоторые изменения:

  • Исправление регрессивного изменения, внесенного при устранении DoS-уязвимости в выпуске 2.2.20;
  • В mod_filter, вместо отбрасывания заголовка Accept-Ranges в ситуации запроса фильтра с наличием AP_FILTER_PROTO_NO_BYTERANGE, его значение теперь устанавливается в “none”;
  • В mod_dav_fs устранен крах в случае, когда невозможно загрузить apr DBM-драйвер;
  • В mod_rewrite добавлена проверка корректности каждого внутреннего (int:) RewriteMap, даже если отключен RewriteEngine, что позволяет избежать краха при ссылках на несуществующий “int: map” в процессе работы;
  • Возможность указания в директиве MaxRanges значений none|unlimited|default и установки ‘Accept-Ranges: none’ в ситуации, когда игнорируется заголовок Ranges при указании “MaxRanges none”.

Обновление Linux-ядра: 2.6.39.3

Представлен корректирующий релиз Linux-ядра – 2.6.39.3, в котором отмечено 109 исправлений. Как обычно, в анонсе выхода новых версий подчеркивается обязательность проведения обновления. Из подсистем, в которых исправлены ошибки, можно выделить: USB, xhci, drm/i915, drm/radeon, conntrack, KVM, Xen, vlan, netfilter, ipset, FS-Cache, cfq-iosched, NFSv4, nfsd, ALSA, ath9k, ath5k, IPVS.

Среди исправленных проблем: устранение ошибки в ipv4-стеке, приводившей к потере первого пакета в mulicast-потоке; решение проблемы в драйвере USB Hub, которая мешала переходу в спящий режим; устранение зацикливания в подсистеме md, проявляющегося при определенных обстоятельствах в процессе восстановления программного RAID.

Несколько исправлений связаны с безопасностью:

  • Отсутствие должной инициализации структур, обеспечивающих работу блокировок в коде, связанном с файловыми системами может привести к утечке информации из области ядра при использовании FUSE-модулей.
  • Ошибка в реализации функции inet_diag_bc_audit() из состава подсистемы inet_diag может привести к подстановке кода локальным пользователем или инициированию бесконечного цикла.
  • Возможность разыменования NULL-указателя в ksmd.

Примеры использования Awk

Использование сокращений.

Конструкцию, используемую для вывода строк соответствующих заданной маске:
 awk '{if ($0 ~ /pattern/) print $0}' 
можно сократить до
 awk '/pattern/' 
Условие в awk может быть задано вне скобок, т.е. получаем:
 awk '$0 ~ /pattern/ {print $0}' 
По умолчанию, действия производятся со всей строкой, $0 можно не указывать:
 awk '/pattern/ {print}' 
print - является действием по умолчанию, его тоже можно не указывать.
 awk '/pattern/'  Continue reading »