Безопасность в OS X

Carding

Professional
Messages
2,831
Reputation
17
Reaction score
2,034
Points
113
Базовые настройки после свежей установки (явные моменты для многих, но не всех).

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

Вы купили новый мак или только переустановили ось, сразу ориентируемся на то, что это "белая" система, не стоит работать даже с шифрованной хостовой ОС! Банальные вещи, которые должны быть сделаны само собой: отключаем геолокацию, включаем FileVault, не разрешаем восстанавливать ключ диска или пароль аккаунта через Apple ID. Не забудьте поставить пароль на прошивку своего макбука! Без него можно будет запустить ОС в режиме single user или консоль переустановки, а так же провести так называемую DMA атаку, чтоб вытащить пароль диска из памяти. Поставить его можно через Command + R при включеннии компа, далее вверху будет в меню пункт "Установить пароль прошивки". Главное не забудьте или не потеряйте этот пароль, тк без него ось начисто уже не переставить, а так же если что-то поломается в текущей ос (или ключ файлволта убьёте) - ноут станет кирпичем!

Обязательно ставим Little Snitch 3, в котором уже можем отдельно настроить сетевое поведение каждого отдельного софта. Так же снитч поддерживает профилирование: например вы работаете через впн только с 3G модема, а с домашнего провайдера лазиете только по белым сайтам - тогда делаем два профиля, в одном из которых ставим что при подключении через 3G сеть пускать в инет только демон виртуальной машины, а при подключении к локальному вайфаю пускаем в сеть всех, кроме виртуальных машин.

Не стоит ставить ВПН соединение на главную ОС, тк это дополнительное палево наличия "спецсофта" на компе, а так же прочие проблемы ввиде отваливания впн в ненужный момент и попыток ось лезть на сервера эпл через рабочий канал, достаточно поставить впн внутри виртуальной машины. (Ищите впн провайдера, который разрешает более 1 соединения со своим впн, такие бывают). Таким образом убиваем несколько зайцев - нет присутствия спецсофта на "белой" ОС, а так же в связке с Литтл снитчем защищаемся от внезапных разрывов ВПН(в Снитче указываем правило пускать виртуальную машину ТОЛЬКО на IP впн провайдера)

Работать само собой лучше с виртуальных машин, как говорилось выше. Машины в идеале держать на внешних носителях, либо на крайний случай в трукрипт/corestorage контейнере на диске. Просто в таком сценарии можно безопасно использовать комп не только для работы, но и для того , чтоб в отпуск повезти , не боясь если что проверок Я лично использую Parallels, тк при должной настройке он все же самый быстрый из всех(по тестам из инета). Так же на него без бубнов можно поставить как виртуальную машину - OS X.

"Палевные" пути в системе, за которыми надо следить:

/private/var/log/ - полные логи системы, пишется ВСЕ! какой софт с флешки запускали, куда маунтили трукрипт диск и тд. отключить полностью нельзя, можно либо чистить иногда, либо направить в "пустоту" ввиде мелкого диска в ОЗУ
/private/var/tmp/ - временные системы, возможно не опасны
/private/tmp/ - временные системы, возможно не опасны
/Library/Logs/ - логи демонов и агентов, у которых root права (в том числе параллелс, снитч, виртуалбокс и тд)
/Library/Application Support/CrashReporter/ - пишет отчеты о падениях привелегерованного софта (тот что с рут доступом)
/Library/Preferences/ - настройки привелегерованного софта. Например как раз тут Параллелс хранит список виртуальных машин, лицензию, DHCP лизы и прочую мелочь

/private/var/vm/ - тут сидят свопфайлы и файл "гибернации" оси. вариантов 2: выключить своп, если не пользуетесь виртуалками, либо чистить периодически файлы swapfile. Не стоит чистить эти файлы когда запущена вируалка! Лучше это делать перед выключением ОС или до ее старта через скрипты автозапуска
/.Spotlight-V100 - база данных файлов в системе , для поисковой Spotlight, не очень страшная хрень, если выключить спотлайт(хоть раз пользовались? я - нет)

$HOME/.bash_history - история командной строки
$HOME/.ssh/ - ключи подключения по SSH к дедам например
$HOME/Library/Logs/ - логи софта без рут доступа и не только
$HOME/Library/Application Support/CrashReporter/ - отчеты о падениях обычного софта
$HOME/Library/Caches/ - кеш програм
$HOME/Library/Containers/ - sandbox содержимое софта, тут хранит свое содержимое в 99% случаев только софт из Апстора(настройки, ресурсы, скачиваемое содержимое и тд)
$HOME/Library/Application Support/ - почти то же что и Containers, но без sandbox. Тут например Psi и Psi+ хранят логи, настройки, ключи ОТР (подозреваю Адиум там же сидит)
$HOME/Library/Preferences/ - настройки софта, чаще всего это просто расположение окон , локализация и тд. Но бывает и больше.
$HOME - домашняя папка, например /Users/Vasia

Так же многих волнует такой вопрос: "Даже когда виртуальные машины находятся на отключенном зашифрованом диске, то при включении Parallels(VirtualBox) виден весь список!"
Опишу что делать на примере Parallels, тк с VirtualBox не сталкивался очень давно:
Список виртуальных машин находится в /Library/Preferences/Parallels/ (все файлы(3) кроме лицензии). Так же настройка окон и кеш дефолтов сидит в /$HOME/Library/Preferences/com.parallels.* (5 файлов по маске). Достаточно написать скрипт или "следящую" программу, либо делать вручную: после выключения Parallels с "черными" машинами указанные выше файлы переместить в трукрипт контейнер. Потом перед запуском опять же вернуть все файлы назад.

Жуткая параноя, похоже сосед из Интерпола/ФБР!

Итак, у вас дикая параноя и ваш ник "Славик" или "Грибодемон"? Тогда начинаем
(ВНИМАНИЕ! В случае кривых рук превратите ноут в кирпич или потеряете всю инфо безвозвратно! Подробностей в статье не будет, чтоб сами себе не навредили! Те кто шарит хоть немного - поймет как сделать. Если у вас мало навыков в UNIX-подобных системах - лучше не лезть! As is)

Представим что имеется и что надо защищать: есть "белый" мак с осью, есть трукрипт или коресторейдж контейнер/раздел на флешке, есть виртуальные машины и куча опасной для посторонних глаз информации в на том же крипторазделе или другом.
Если вам удается понять что вам жопа и маски-шоу начались(по-правде такое сложно предусмотреть...), у вас есть буквально минута до приема, а на компе кипит работа во всю! вручную все это закрывать будет долго, просто потушить систему неэффективно. Так же вы не уверены в своих яйцах и в том, что выдержите терморектальный криптоанализ (Не стоит геройствовать, его если и выдержат, то только единицы)

Способов можно выделить тут два:
1 - Просто завершить все приложения, подчистить логи, закрыть контейнеры и потушить систему. В результате если "доброжелатель" даже и включит комп с ОСью, то увидит просто "белую" систему, в которой все(99%) чистенько и только в хистори максимум сайты с порнушкой)
2 - Вариант №1 + убить флеши и убить ноут, чтоб даже с паяльником в жопе самому нельзя было его открыть! Тут как сами понимаете если спараноили просто по испугу, то как минимум поможет только переустановка ОСи и все с чистого листа.

Идем по-этапно:
1. Получаем список запущенных ВМ prlctl list
2. закрываем виртуальные машины через prlctl stop {UID}
3. закрываем сам параллелс (сначала ищем процессы ps aux | grep "prl_" , а потом делаем killall -9 "номер процесса" ; процессов будет 4-5! основной клиент, пару хелперов и тд)
4. убиваем все по путям /Library/Preferences/Parallels/* $HOME/Library/Preferences/com.parallels.* (ВАЖНО! Файлы надо убивать только после полного закрытия процессов, иначе в папках появятся бекапные копии с текущей датой)
5. Поиск примаунченых разделов TrueCrypt.app/Contents/MacOS/TrueCrypt --text --list
6. Размаунт каждого раздела TrueCrypt.app/Contents/MacOS/TrueCrypt --text --dismount VOLUME --force
7. Удаляем все содержимое по линкам из первой части статьи
=============ОПАСНО!================
8. Убиваем содержимое папок /etc/pam.d/* и можно для верности /usr/lib/pam (Можно убить еще системную связку ключей, но имхо это не столь уже важно)
====================================
9. Делаем shutdown

В результате что получается: если у вас трукрипт на флешках, ключевые файлы от флешек на компе(помимо пароля), комп с FileVault2 или CoreStorage, то получаем в итоге вместе в 8м пунктом бесполезный ноут! Без модулей PAM вы не зайдете в ОС хоть какой пароль не вводите, без входа в ОС не будет ключей от трукриптовых флешек, итого сами флешки бесполезны

По этим пунктам пишете скрипт/программу и в случае шухера исполняете его. С двумя виртуалками на эире выполнение скрипта подобного занимает уж точно не более минуты(точно не засекал). Вариант 2: софт смотрит на токен, если токен пропал - запускается эдакое "самоуничтожение"

Далее как же быть с жабой и партнерами, чтоб точно были уверены что это вы: советую общаться с важными контактами только через ПГП, а ключи держать на смарткарте/токене. Так же и пароль можно держать на токене длинный, который хрен запомнишь.

Если кому будет интересно по поводу использования токенов для входа в ОС, для судо и прочего - пишите о своем интересе, постараюсь раскрыть и это.

Установка firmware password на Mac

Включить EFI-пароль достаточно просто, но в Mavericks это делается несколько иначе, чем в предыдущих версиях OS X.

1. Перезагружаем Mac и удерживая ⌘R для того, чтобы загрузиться в режиме восстановления.
2. На экране Утилиты OS X открываем пункт Утилиты в строке меню и выбираем Утилита пароля прошивки.
3. Нажимаем Включить пароль прошивки.
4. Дважды вводим выбранный пароль и нажимаем Задать пароль (обязательно запомните или запишите пароль, чтобы не потерять доступ к компьютеру).

5. Нажимаем Завершить Утилиту пароля прошивки.

После установки EFI-пароля вы сможете перезагружать и выключать Mac, как обычно. Система будет загружена автоматически, вплоть до экрана входа, где потребуется ввести пароль пользователя.

Обычная перезагрузка или выключение Mac’а будет происходит без ввода firmware пароля, но все альтернативные методы загрузки будут возможны только с обязательным его вводом. То есть, когда кто-то попытается загрузиться с загрузочного диска, в режиме восстановления, в Single User Mode (вход в систему под root-пользователем), Verbose Mode (вывод диагностической информации, необходимой при определении неполадок в момент загрузки), Target Disk Mode (режим в котором один Mac можно использовать в качестве загрузочного диска для другого), сброс PRAM/ VRAM (специальной памяти, в которой хранятся разные настройки «железа»: яркость экрана, громкость звука и т.д.) нужно будет обязательно ввести пароль-прошивки. При чем будет отображаться только поле ввода и картинка замка — никаких подсказок. Если пароль будет введет неверно, ничего не произойдет и система не выдаст никаких ошибок.
 

Similar threads

Top