Как узнать, что кто-то пытался воспользоваться вашим MacBook

Константин Докучаев
Константин Докучаев
Как узнать, что кто-то пытался воспользоваться вашим MacBook

Оставлять свой компьютер в общественных местах — так себе решение. Но даже в офисе или в гостинице кто-то может попытаться заглянуть в ваш ноутбук в попытке выяснить что-нибудь. Этой «уязвимости» даже есть название — «Атака горничной». Но как же выяснить, что кто-то ел вашу кашу?

Не беспокоить

Для этого можно воспользоваться бесплатной утилитой Do Not Disturb, которая может определить, что крышку ноутбука поднимали или другим способом пытались получить физический доступ к вашему устройству.

Как всё настроить

Для полноценной работы приложения требуется скачать iOS-версию в дополнение к десктопной. Так вы сможете получать оповещения на iPhone без необходимости мониторинга почты.

У меня аккаунт Apple привязан к ОАЭ региону, и в нём приложение Do Not Disturb недоступно в AppStore. Как и в регионах РФ. Поэтому такую связку я проверить не смог. Да и версия для macOS всё равно отказалась генерировать коды для соединения со смартфоном.

Сам же установщик macOS-версии можно скачать из репозитория по этой ссылке. Сразу предупрежу, что приложение заработает только на MacBook. На iMac оно сообщит, что устройство не поддерживается.

После установки в Строке меню появится иконка Do Not Disturb, где через пункт меню Preferences можно открыть настройки приложения. Здесь есть четыре вкладки. Link нужна для настройки связи с iOS-версией, но, как я говорил, она не работает. Поэтому двигаем дальше.

На вкладке General можно настроить базовое поведение Do Not Disturb. Здесь можно активировать тихий запуск, то есть при запуске системы приложение не будет отображать оповещения. Дополнительно можно скрыть иконку из Строки меню, отключить оповещение при попытке воспользоваться Touch ID, запретить удалённое отслеживание через iOS-приложение.

Поскольку связи с iOS нам не видать, то остаётся вкладка Action, на которой можно запилить собственные действия при определении несанкционированного доступа. Для этого нужно активировать чекбокс Execute Action и прописать выполнение скрипта.

Самый простой скрипт, который можно настроить, — это отправка оповещений в Telegram-бота. Поднять своего бота можно через официального бота Telegram @BotFather. Там всё довольно просто.

После настройки бота укажите приложению выполнение скрипта ниже. Перед этим не забудьте активировать чекбокс Monitor, который будет автоматически в течение трёх минут фиксировать выполняемые процессы и подключаемые USB-устройства к вашему компьютеру.

#!/bin/bash

set -e

# !!! Нужно поменять на свой telegram токен
API_TOKEN="589612351:AAFbC0GM0UTFehCgife13tr3vER3eBbEzaX"
# !!! Нужно поменять на свой идентификатор telegram чата
CHAT_ID="-1042193212345"

# Как быстро узнать CHAT_ID? 
# Нужно добавить бота в чат, написать ему там сообщение,
# после чего выполнить команду `curl $API_URL/getUpdates`, 
# в тексте ответу будет идентификатор чата.

API_URL="https://api.telegram.org/bot$API_TOKEN"
ABS_LOG_PATH="/Library/Objective-See/DND/DND.log"
LOG_FILE="/tmp/.capture.output.txt"
MESSAGE="ALARM: $@"

echo "$(date)" > $LOG_FILE

# Сразу уведомляем об открытии крышки!
curl -s -X POST "$API_URL/sendMessage" -d "chat_id=$CHAT_ID" -d "text=$MESSAGE" >> $LOG_FILE 2>&1

# ждем 1 секунду перед отправкой логов
sleep 1

# Отправляем логи собранные DND, можно повторно отправить через некоторое время
curl -F "chat_id=$CHAT_ID" -F "document=@$ABS_LOG_PATH" "$API_URL/sendDocument"

Источник https://habr.com/

Если всё настроено правильно, то при следующей попытке воспользоваться MacBook вы сразу же получите оповещения в Telegram.



Great! Next, complete checkout for full access to All-In-One Person
Welcome back! You've successfully signed in
You've successfully subscribed to All-In-One Person
Success! Your account is fully activated, you now have access to all content
Success! Your billing info has been updated
Your billing was not updated