Home

Advertisement

Customize

Мысли…

Nov. 12th, 2009 | 10:36 pm

Безопасность это не когда у вас высокие стены и ров, а когда вы знаете как отбить атаку и защититься.

Link | Leave a comment {3} | Add to Memories | Tell a Friend

Производственное

Nov. 10th, 2009 | 02:55 am

Начал в тетрадке рисовать структуру системы. Чую что места маловато. Закажу завтра большую доску, метр на полтора. Будет где разгуляться.

Link | Leave a comment {10} | Add to Memories | Tell a Friend

Пару слов о безопасности

Nov. 7th, 2009 | 02:12 am
location: home
mood: сонное сонное
music: Iron Maiden - The Number of The Beast

Обычно во всяких срачах Linux vs Windows всегда находится кучка красноглазых линупсоидов которые уж точно знают почему Linux лучше чем Windows. В основном мне доводилось видеть следующие доводы:

  1. Линукс удобнее потому что есть репозитории в которых очень много разного софта
  2. Линукс безопасная система под которую нет вирусов
  3. Линукс открытая система (open source)

Первые два пункта обсудим немного позже, сейчас же хочу остановиться на третьем. Обычно в качестве пользы «open source» приводят тот факт, что любой специалист (по системам безопасности или любой другой анестезиолог) может взять исходные коды, провести аудит, найти и возможно исправить ошибки. Этот тезис легко опровергает недавний баг в debian-specific патче к openssl, в результате которого все сгенерированные ключи были предсказуемы. Баг жил в Debian больше года, и подозреваю что обнаружился он из-за того что патч не встал на новую версию OpenSSL, и это заставило мейнтейнера таки заглянуть внутрь.

Теперь я хочу рассказать о том как же положить Linux на лопатки, да так чтобы он уже не поднялся. Основной тезис, на котором основан мой метод, прост, известен очень давно и звучит следующим образом: надёжность всей системы равна надёжности самого слабого звена. Если в системе задействованы люди, то самые слабые это они. Мы в свою очередь будем играть на двух полезных (для нас) качествах:

  1. Скорость реакции. Наша задача быстрее среагировать на появление бреши в безопасности чем противник и попытаться пробить дыру раньше чем она будет закрыта
  2. Чувство ложной безопасности. Тов. линупсоиды, признаёмся честно, кто и когда в последний раз проверял ключи и пути к репозиториям, кто на 100% уверен что таскает софт и апдейты из офф. источников, а не с какого-нить Васи Пупкина который в каждый пакет кладёт по троянчику? ;)

Этап первый: подготовка

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

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

Необходим сервер на котором будут лежать инфицированые копии репозиториев.

Этап второй: основная работа

Здесь всё просто: читаем рассылки относительно новый уязвимостях. Для необходимых ошибок пишем эксплоиты и выкладываем обновление для нашего червя.

 

Технология заражения

Человек активно пользующий GNU/Linux и читающий opennet/LOR/etc. знает что ошибки находят регулярно. Благодаря мониторингу багтреков, наш червь всегда будет в курсе последних ошибок в ядре и различных сервисах. С некоторой долей вероятности мы можем «пробить» один из публично доступных сервисов и ждать пока не появится эксплоит для повышения привилегий (Local Privilege Escalation). А после того как мы стали рутом делаем следующие вещи:

  • регистрируем себя в бот-нет сети и отправляем информацию о машине/системе куда нужно
  • если данный подвид линукса нам неизвестен – ждём апдейт
  • если же известен, то:
    • подменяем ключи и пути к репозиторию на наш фейковый
    • с помощью UPX-like техники внедряем себя во все бинари, при этом не забыв подправить где нужно (chucksum-ы пакетов, setuid.today, etc., это всё информация известная для конкретного дистрибутива)
    • качаем/ставим модули ядра, патчи на софт, etc., в общем всё что нужно для того чтобы нас никак не могли найти (в рамках конкретного дистрибутива задача решаема). Сюда также можно добавить патчи для iptables & co предназначенные для сокрытия «нашей» сетевой активности.
    • собираем как можно больше полезной и бесполезной информации о машине и отправляем куда нужно. Дистрибутив хоть и знаком, но не известно какие тараканы живут в голове у админа.

 

В общем где-то так, если чего-нить ещё вспомню (а то время позднее), то напишу ещё. Буду благодарен за замечатения, пожелания, исправления :)

Link | Leave a comment {33} | Add to Memories | Tell a Friend

Свинячий грипп

Nov. 4th, 2009 | 09:05 pm

Я считаю что ВОЗ, МОЗ, ООН и КПСС масштабы эпидемии либо специально занижают, либо не учитывают все случаи. Несколько дней назад кто-то выбросил пакет с мусором за лавочкой возле подъезда. Ежу понятно что этот индивид болен свинячим гриппом и поэтому он просто свинья. И я больше чем уверен что данных людей не мало и их статистика, к сожалению, не учитывает.
Tags:

Link | Leave a comment {1} | Add to Memories | Tell a Friend

Liebe ist für alle da

Oct. 13th, 2009 | 02:31 pm

Про новый рамштайн не писал только ленивый. :)

До конца осталось несколько песен, но в целом мне нравится. Не особо впечатлило только Ich Tu Dir Weh и B****, но послушаем ещё, может я чем-то не проникся ещё ;)

Link | Leave a comment {2} | Add to Memories | Tell a Friend

Железячное

Oct. 4th, 2009 | 12:16 pm

Ну что за жопа с железом то творится:

  • Система на базе Atom 330 аля Zotac IONITX-A-E: мелкий БП, 2C4T, up to 4G мосха, но нет поддержки VT-x
  • Система на базе Atom Z5xx: всё примерно как у предыдущего, только ядро одно/2T, зато есть поддержка VT-x
  • Система на базе какого-нить Pentium DC E5300: производительность выше, 2C без HT, поддержка VT-x, но блин БП размером как вся система, впрочем можно подключить несколько таких систем к одному достаточно мощному

почему нельзя было просто добавить в 330 атом поддержку VT-x? Получился бы в итоге просто замечательный проц для домашнего и не совсем применения.

PS думаю на неё впендюрить OpenSolaris и Xen пользовать.

Link | Leave a comment {15} | Add to Memories | Tell a Friend

Катя :)

Sep. 28th, 2009 | 02:47 pm



UPD: Кате год и 10 мес

Link | Leave a comment {1} | Add to Memories | Tell a Friend

Птичка

Sep. 13th, 2009 | 01:21 pm

За окном на дереве сидел дятел когда-то...

Link | Leave a comment {1} | Add to Memories | Tell a Friend

FreeBSD + ZFS: zfs only system

Aug. 3rd, 2009 | 03:27 pm
location: home at work
mood: довольное довольное
music: Liv Kristine - In the Heart of Juliet

Появилась другая задача: поставить FreeBSD на zfs без каких либо разделов и прочего – zpool размером с винчестер и всё на нём. В предыдущем посте есть ссылки на инструкции по установке на различные конфигурации, а вот установку на zfs only пришлось додумывать самаму, ибо местами были разбросаны камни о которых никто не упоминал.

И как же это делать? )
Tags: ,

Link | Leave a comment {9} | Add to Memories | Tell a Friend

FreeBSD + ZFS: ZPool migration

Aug. 3rd, 2009 | 04:03 am
mood: :) :)

Есть у меня машинка под FreeBSD. Выполняет она роль домашнего сервера со всеми возможными и невозможными функциями. Пережила она уже много всяких переездов и апгрейдов, включая недавний переезд с ufs на zfs-root (вместе с ufs-boot, почитать о подробностях такого можно тут: Root on ZFS configuration with UFS /boot). Всё бы ничего, но вдруг в одном из страйпов забарахлил веник – начали сыпаться DMA timeout-ы, редко, но метко. На замену был куплен веник и появилась другая проблема: корректно перенести пока ещё живой zpool на другой веник. Заодно было решено отказаться от ufs-boot и перейти полностью на загрузку с zfs, благо фряха это позволяет с некотрых пор. В принципе документации на эту тему не то чтобы много, но что-то найти можно. Относительно zfsboot разные решения можно посмотреть здесь: ZFS boot on zfs mirror, Root on ZFS configuration (zfsboot), Setting up a zfs-only system.

Итак, исходные данные: два zpool-а построенные поверх gstripe: luna (system, 2x320, одна из которых сыпется) и tera (2x500). Переехать нужно будет на uranus (1TB, сюда переедет tera) и neptune (mirror, 2x500, на него переедет luna). При этом необходимо сохранить все свойства навешанные на файловые системы.

Этап первый, tera –> uranus.

Для этого пришлось написать небольшой скрипт. Работа достаточно проста: берём датасет из исходного пула, создаём аналогичный в приёмнике, переносим все нужные свойства и данные. Не переопределяются только mountpoint-ы, но в данном случае это было не смертельно, т.к. в данном случае dataset-ы не переопределяли точку монтирования. После переноса оставалось только поправить ссылки на новые mountpoint-ы и всё. Судя по ману всё подобную работу может сделать ключик –R у zfs send (если верить ману), но у меня было выпадение в корку где-то в дебрях libzfs и особо разбираться желания не было, проще было скрипт написать.

  1. #! /bin/sh
  2.  
  3. SRC=tera
  4. DST=uranus
  5.  
  6. ZFS=zfs
  7.  
  8. zfs list -H | grep "^$SRC" | while read line
  9. do
  10. SRCDSET=`echo $line | cut -f 1 -d ' '`
  11. SIZE=`echo $line | cut -f 2 -d ' ' | sed -E -e 's/(,[[:digit:]]+)//'`
  12.  
  13. echo Processing dataset $SRCDSET
  14. DSTDSET=`echo $SRCDSET | sed -E -e "s/^$SRC/$DST/"`
  15.  
  16. echo '==>' Creating dataset $DSTDSET
  17. $ZFS create $DSTDSET
  18.  
  19. echo '==>' Moving props
  20. zfs get -H all $SRCDSET | grep -E -v '(-|default|temporary)$' | grep -E -v 'inherited from' | while read prop
  21. do
  22. NAME=`echo $prop | cut -f 2 -d ' '`
  23. VALUE=`echo $prop | cut -f 3 -d ' '`
  24.  
  25. if [ "$NAME" = "mountpoint" ]
  26. then
  27. VALUE=`echo $VALUE | sed -E -e s/$SRC/$DST/`
  28. continue
  29. fi
  30.  
  31. echo '====>' Seting prop "$NAME" to "$VALUE"
  32. $ZFS set $NAME=$VALUE $DSTDSET
  33. done
  34.  
  35. echo '==>' Moving data
  36. echo '====>' Creating snapshot
  37. $ZFS snapshot $SRCDSET@migration
  38.  
  39. echo '====>' Copy data
  40. $ZFS send $SRCDSET@migration | pv -s $SIZE | $ZFS receive -F $DSTDSET
  41.  
  42. echo '====>' Cleanup
  43. $ZFS destroy $SRCDSET@migration
  44. $ZFS destroy $DSTDSET@migration
  45.  
  46. echo 'Done!'
  47. echo
  48. done



Этап второй, luna –> neptune, будет немного позже. Stay tuned.

Tags: ,

Link | Leave a comment {2} | Add to Memories | Tell a Friend

Document-centric desktop

Jun. 4th, 2009 | 07:47 am

Вот интересно, а существуют ли какие-то desktop environment ориентированные на работу с документами.

Link | Leave a comment {4} | Add to Memories | Tell a Friend

Дочурка

May. 10th, 2009 | 06:44 pm

Катька

Link | Leave a comment {3} | Add to Memories | Tell a Friend

Катруська

May. 5th, 2009 | 01:48 am

Катруська

Link | Leave a comment {3} | Add to Memories | Tell a Friend

PCM и S/PDIF

May. 3rd, 2009 | 10:31 pm

Вот меня один вопрос интересует. Если через S/PDIF вполне себе пролазит Stereo 24-bit 192kHz, тобишь ~9.2mb/s, то почему через него нельзя пропихнуть скажем 5.1 16-bit 44.1kHz? Или таки можно но я об это не знаю?

Link | Leave a comment {5} | Add to Memories | Tell a Friend

flac

May. 3rd, 2009 | 08:05 pm

На дворе 21й век, а flac имеет ограничение на размер файла в 2GB. А я уже надеялся вместо одного dvd-audio (iso) получить один flac с вшитым cue. Последний хоть можно в foobar засунуть. Ых.

Link | Leave a comment {6} | Add to Memories | Tell a Friend

рабочее

Mar. 20th, 2009 | 12:42 am
location: home
mood: сонное сонное
music: Rammstein - Links, 2,3,4

Словил себя на мысли что мне проще написать кравлер для сайта что-бы вытащить всю интересующую меня инфу чем найти кнопку download (за которую, как оказалось, просят деньги)
Tags:

Link | Leave a comment | Add to Memories | Tell a Friend

О нарушениях

Mar. 17th, 2009 | 04:25 pm
location: home
mood: довольное довольное
music: Эпидемия - Сказание на Все Времена

Хех, сегодня получил своё первое административное правонарушение по статье 197:
Стаття 197. Проживання без паспорта
Проживання громадян, зобов'язаних мати паспорт, без паспорта або за недійсним паспортом, проживання без реєстрації - тягне за собою попередження або накладення штрафу від одного до трьох неоподатковуваних мінімумів доходів громадян.


Стоило это 50 грн денег, и около часа времени. Зато фотку в паспорт вклеил. Вот теперь думаю, когда пойду загранпаспорт через две недели делать, мне сразу через кассу идти что-бы два раза не бегать, или как?
Tags:

Link | Leave a comment {16} | Add to Memories | Tell a Friend

Windows Writer

Mar. 13th, 2009 | 01:13 pm

постим тестовое мессаго

Link | Leave a comment {4} | Add to Memories | Tell a Friend

Реалии

Mar. 8th, 2009 | 02:44 pm
location: Барышевка
mood: праздничное праздничное
music: чота с last.fm

Большинство линуксоидов - нищеброды. Обратное не верно.
Tags:

Link | Leave a comment {11} | Add to Memories | Tell a Friend

Пара гневных слов об RSS

Feb. 25th, 2009 | 08:00 pm
location: Барышевка
mood: больное больное

Посмотрим на век прошедший. Для обмена новостями он предлагал замечательный протокол NNTP. Протокол свои функции выполнял, сообщениями позволял обмениваться, получать новые и публиковат свои. Одной из вкусняшек была возможность получить все сообщения начиная с определённой даты (а чего ж нового произошло со времён рождения христа? ;)

Век сегодняшний принёс в нашу жизнь RSS. Читать свежие новости он конечно позволяет, а вот вытащить все с определённой даты - нет. Вот такая фигня.
Tags:

Link | Leave a comment {3} | Add to Memories | Tell a Friend

Advertisement

Customize