Глубоко в системной папке XProtect содержит два файла под названием "XProtect.plist" и "XProtect.meta.plist", которые содержат информацию о версии блокированного плагина во время обновления XProtect, и определения новых вредоносных программ. Используя эти файлы, вы можете создать небольшой фоновый скрипт, который будет регулярно проверять любые изменения, а затем отправит вам уведомление, если это происходит.
Как и другие системы мониторинга, эта установка включает в себя создание простого скрипта, который выдает уведомление, а затем устанавливает агент запуска для периодического запуска самого скрипта.
Установка терминала-уведомителя Для того, чтобы получать уведомления из сценариев оболочки, необходимо сначала загрузить
инструмент терминал-уведомитель и поместить его в папку /Applications/Utilities на вашем компьютере. Эта программа не может быть запущена непосредственно, но содержит все функции, необходимые для использования центра уведомлений в Mountain Lion.
Создать сценарий оповещенияСледующим шагом будет создание скрипта, который будет выдавать уведомления, поэтому, чтобы сделать это сперва откройте утилиту терминал OS X и введите следующую команду, чтобы создать файл сценария под названием "xprotectnotify.sh» в глобальной папке Library (введите свой пароль при появлении запроса):
sudo pico /Library/xprotectnotify.shЗатем скопируйте следующий скрипт и вставьте его в текстовый редактор терминала:
#!/bin/bash
if [ `md5 -q /System/Library/CoreServices/CoreTypes.bundle/Contents/Reso\
urces/XProtect.meta.plist` == `md5 -q ~/.XProtect.meta.plist` ] ; then
echo "No change"
else
UPDATED=`defaults read /System/Library/CoreServices/CoreTypes.b\
undle/Contents/Resources/XProtect.meta.plist LastModification`
/Applications/Utilities/terminal-notifier.app/Contents/MacOS/ter\
minal-notifier -title "XProtect Updated" -message "$UPDATED"
cp /System/Library/CoreServices/CoreTypes.bundle/Contents/Resour\
ces/XProtect.meta.plist ~/.XProtect.meta.plist
fiНаконец нажмите Ctrl-O для сохранения, потом Control-X, чтобы выйти. А затем выполните следующую команду, чтобы сделать скрипт исполняемым:
sudo chmod +x /Library/xprotectnotify.shНа этом этапе скрипт может быть запущен непосредственно в терминале, с введением полного пути к нему (/Library/xprotectnotify.sh), что должно сделать попытку сравнить XProtect "мета"-файл системы со скрытой копией в домашнем каталоге. Если копия не существует, или отличается от официального, то он сообщит вам, что изменения произошли, а затем обновит копию, чтобы использовать одну и ту же в системе.
Создать агент запускаПоследним шагом является создание агента запуска, который будет загружать и запускать скрипт уведомления на регулярной основе. Для этого в терминале выполните следующую команду для создания и редактирования файлов агента:
pico ~/Library/LaunchAgents/local.XProtectNotify.plistТеперь скопируйте следующие строки и вставьте в текстовый редактор терминала, который должен быть открыт, а затем снова нажмите Control-O, а затем Control-X, чтобы сохранить и выйти:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "//www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>local.XProtectNotify</string>
<key>ProgramArguments</key>
<array>
<string>/Library/xprotectnotify.sh</string>
</array>
<key>QueueDirectories</key>
<array/>
<key>StartInterval</key>
<integer>3600</integer>
</dict>
</plist>В этом агенте запуска число "3600" показывает, что он будет запускаться каждый час, но вы можете изменить это число на любое нужное вам количество секунд, так что вы можете установить скрипт для запуска каждые несколько часов, только один или два раза в день, или в любом другом интервале.
После сохранения выйдите из системы и снова войдите в свою учетную запись, и всё. Этот скрипт является очень легкой процедурой, он будет оказывать незначительное влияние на систему, даже если запускать каждые несколько секунд. Однако, если в любой момент вы захотите отменить эти изменения, выполните следующие три команды отдельно(по очереди) в терминале:
sudo rm /Library/xprotectnotify.sh
rm ~/Library/LaunchAgents/local.XProtectNotify.plist
rm ~/.XProtect.meta.plistЭтот скрипт будет просто уведомлять вас, когда обновляется XProtect, однако вы также можете использовать такой инструмент, как
XProtect Plugin Checker либо вместо, либо в дополнение к нашему скрипту, чтобы дать вам информацию о версиях плагинов, которые XProtect блокировал.