Как найти iPhone с компьютера?

Чтобы видеть с компьютера где находится iPhone необходимо:

1) На iPhone должен быть разрешен доступ для службы «Найти iPhone».
Это можно проверить открыв «Настройки» — «Конфиденциальность» — «Службы геолокации» — «Системные службы» — «Найти iPhone».

2) На iPhone должен работать интернет.

3) Для просмотра местонахождения iPhone необходимо войти в iCloud используя свой логин и пароль, на открывшейся странице выбрать «Найти iPhone», после этого откроется карта с отмеченным местоположением iPhone. Также можно увидеть уровень заряда батареи, дистанционно воспроизвести звуковой сигнал, стереть все данные либо включить режим пропажи.

Служба «Найти iPhone» может быть также включена на других устройствах Apple, например iPad, MacBook, Apple Watch и т.д.
Через установленное стандартное приложение «Найти iPhone» можно увидеть эти устройства.
Кстати, чтобы делиться своим местоположением с другими пользователями существует отдельное приложение «Найти друзей».

Установка Certbot в Ubuntu

На тесте установлю ACME клиент Certbot в Ubuntu 16.04 (xenial), который поможет получить бесплатные SSL сертификаты Let’s Encrypt на 90 дней и автоматически обновлять их.
Для других версий Ubuntu клиент Certbot устанавливается аналогично.

Первым делом добавим репозиторий Certbot и выполним установку:

sudo apt-get update
sudo apt-get install software-properties-common
sudo add-apt-repository ppa:certbot/certbot
sudo apt-get update
sudo apt-get install python-certbot-apache

Теперь запустим Certbot чтобы получить SSL сертификат:

sudo certbot --apache

Чтобы вручную внести изменения в конфигурацию Apache2 и Certbot не изменял её, можно выполнить команду:

sudo certbot --apache certonly

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

После получения сертификата отобразилась информация:

IMPORTANT NOTES:
— Congratulations! Your certificate and chain have been saved at:
/etc/letsencrypt/live/example.com/fullchain.pem
Your key file has been saved at:
/etc/letsencrypt/live/example.com/privkey.pem
Your cert will expire on 2018-08-01. To obtain a new or tweaked
version of this certificate in the future, simply run certbot again
with the «certonly» option. To non-interactively renew *all* of
your certificates, run «certbot renew»
— Your account credentials have been saved in your Certbot
configuration directory at /etc/letsencrypt. You should make a
secure backup of this folder now. This configuration directory will
also contain certificates and private keys obtained by Certbot so
making regular backups of this folder is ideal.

Создался отдельный файл конфигурации сайта для HTTPS, а в том что был добавились строки выполняющие переадресацию с HTTP на HTTPS, общем аналогичные изменения как я описывал в этой статье — Установка и настройка Let’s Encrypt SSL.

Для автоматического обновления необходимо выполнить команду:

sudo certbot renew

Команду также можно добавить в Cron для автоматического обновления, смотрите мою статью — Использование и настройка CRON

Пример добавления в Cron (каждый понедельник в 3:15):

sudo crontab -e
15 3 * * 1 certbot renew >> /var/log/certbot-renew.log

Для тестового обновления можно выполнить команду (конфигурация и сертификаты не будут затронуты):

sudo certbot renew --dry-run

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

Установка и настройка Let’s Encrypt SSL

На тесте установлю Let’s Encrypt котоый позволяет установить бесплатные SSL сертификаты на 90 дней и автоматически перевыдавать их.

Допустим на Ubuntu Server установлен Apache2 и есть один сайт, для которого мы настроили один файл конфигурации /etc/apache2/sites-available/test.conf, и включили его:

sudo a2ensite test
sudo service apache2 restart

Смотрите пример конфигурации в моей статье — Установка и настройка веб-сервера Apache2
Сайт работает по HTTP на 80, теперь приступим к установке Let’s Encrypt:

sudo apt-get update
sudo apt-get install git
sudo git clone https://github.com/letsencrypt/letsencrypt /opt/letsencrypt

Перейдем в директорию с Let’s Encrypt и запросим сертификат для сайта:

cd /opt/letsencrypt
sudo ./letsencrypt-auto --apache -d example.com

Можно также запросить и для www поддомена:

sudo ./letsencrypt-auto --apache -d example.com -d www.example.com

Я заменил в статье настоящее имя сайта на example.com. Чтобы получить сертификат, сайт должен быть доступен по доменному имени из интернета.
Для ресурсов внутри сети, с серыми IP, получить сертификат не получится.

После получения сертификата у меня создался и активировался еще один файл конфигурации /etc/apache2/sites-available/test-le-ssl.conf со следующим содержимым:

<IfModule mod_ssl.c>
<VirtualHost *:443>
     ServerName example.com
     DocumentRoot /var/www/test/

     <Directory /var/www/test>
     Options -Indexes
     AllowOverride All
     Order allow,deny
     allow from all
     </Directory>

     ErrorLog /var/log/test.error.log
     CustomLog /var/log/test.access.log combined
SSLCertificateFile /etc/letsencrypt/live/example.com/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/example.com/privkey.pem
Include /etc/letsencrypt/options-ssl-apache.conf
</VirtualHost>
</IfModule>

Так как во время получения сертификата я согласился на переадресацию HTTP запросов на HTTPS, то в конце моего файла конфигурации /etc/apache2/sites-available/test.conf добавилось следующее:

RewriteEngine on
RewriteCond %{SERVER_NAME} =example.com
RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]

По истечении срока действия сертификата, его можно обновить командой:

sudo /opt/letsencrypt/letsencrypt-auto renew

Команду также можно добавить в Cron для автоматического обновления, смотрите мою статью — Использование и настройка CRON

Пример добавления в Cron (каждый понедельник в 3:15):

sudo crontab -e
15 3 * * 1 /opt/letsencrypt/letsencrypt-auto renew >> /var/log/letsencrypt-renew.log

Если срок сертификата еще не истекает и выполнить команду обновления, то ничего не произойдет:

Saving debug log to /var/log/letsencrypt/letsencrypt.log
——————————————————————————-
Processing /etc/letsencrypt/renewal/example.com.conf
——————————————————————————-
Cert not yet due for renewal
——————————————————————————-
The following certs are not due for renewal yet:
/etc/letsencrypt/live/example.com/fullchain.pem expires on 2018-08-01 (skipped)
No renewals were attempted.
——————————————————————————-

Смотрите также:
Установка Certbot в Ubuntu

Настройка Fail2Ban под ProFTPd

Допустим Fail2Ban уже установлен, если нет, то смотрите мою статью — Установка и настройка Fail2ban.

В Fail2Ban по умолчанию уже есть фильтры для ProFTPd и он знает что файл логов находится по адресу /var/log/proftpd/proftpd.log, поэтому достаточно создать файл:

sudo nano /etc/fail2ban/jail.d/proftpd.local

И внести данные ниже, тем самым активировав проверку лог файла /var/log/proftpd/proftpd.log:

[proftpd]
enabled = true
bantime = 86400

Перезапустим Fail2Ban чтобы применить изменения:

sudo service fail2ban restart

Можно проверить статус:

sudo fail2ban-client status proftpd

Установка Snort в Ubuntu

Snort — сетевая система предотвращения (IPS) и обнаружения вторжений (IDS) путем анализа трафика.

Команда установки Snort в Ubuntu/Debian:

sudo apt-get install snort

После установки проверим запуск Snort:

ps aux | grep snort | grep -v grep

Файлы конфигурации находятся в директории /etc/snort/, а правила обнаружения в /etc/snort/rules/.

Перенастроить snort в Ubuntu можно командой:

sudo dpkg-reconfigure snort

Или вручную открыв конфигурацию в текстовом редакторе:

sudo nano /etc/snort/snort.conf

Команда проверки правильности конфигурации:

sudo snort -T -c /etc/snort/snort.conf

При успешном тесте отобразится:

Snort successfully validated the configuration!
Snort exiting

Как сделать загрузочную флешку с CAINE

Чтобы сделать загрузочную флешку с CAINE выполним несколько действий:

1) Скачаем образ CAINE с официального сайта http://www.caine-live.net/

2) Скачаем установщик Universal USB Installer

3) Подключим флешку к компьютеру и запустим установщик Universal USB Installer. В нем согласимся с лицензионным соглашением нажав «I Agree«, во втором окне где «Step 1:» выберем «CAINE Linux«, где «Step 2» нажмем «Browse» и укажем на скачанный образ CAINE (например caine9.0.iso). В «Step 3:» выберем букву флешки, поставим галочку на «Format» (это переразметит таблицу файловой системы и сотрет все данные на флешке).

4) Жмем «Create» и ждем завершения процесса.

Использование netwox

Приведу примеры использования netwox и опишу их.
Установку netwox я описывал в этой статье — Установка netwox

Пример стандартного запуска:

sudo netwox

netwox имеет достаточно много функций, посмотреть их можно нажав после запуска цифру 3 и Enter.

Отображение конфигурации сети:

sudo netwox 1

Отображение отладочной информации:

sudo netwox 2

Отображение информации об IP-адресе или имени хоста:

sudo netwox 3 example.com

Отображение информации об MAC-адресе:

sudo netwox 4 -e 00:15:5D:38:01:08

Получение MAC-адресов из списка IP:

sudo netwox 5 -i 192.168.1.0/24

Отображение информации которая будет использована чтобы достичь указанного IP адреса:

sudo netwox 6 192.168.24.254

Сниффер, отображение передающихся пакетов на экране:

sudo netwox 7

Сниффер, отображение только списка открытых портов, которые использовались в захваченных пакетах:

sudo netwox 8

Сниффер, отображение MAC и IP адресов:

sudo netwox 9

Пример захвата пакетов и отображение краткой статистики (отображается количество пакетов (count), сумма размеров пакетов (size), процент количества пакетов (c%) процент из размера (s%)):

netwox 10 -d eth0

Преобразование цифры в шифрованную:

sudo netwox 21 -n number

Преобразование строки в шифрованную (sha256, md5 и т.д.):

sudo netwox 22 -d text

Показать таблицу ASCII:

sudo netwox 23

Проверить безопасность каталога:

sudo netwox 25 /tmp/

Пример выполнения ICMP PING:

sudo netwox 49 -i 192.168.24.253

Пример выполнения ARP PING:

sudo netwox 55 -i 192.168.24.253

Пример ICMP трассировки маршрута:

sudo netwox 57 -i examle.com

Пример TCP трассировки маршрута:

sudo netwox 59 -i examle.com

Пример UDP трассировки маршрута:

sudo netwox 61 -i examle.com

Пример сканирования портов:

sudo netwox 67 -i 192.168.24.254 -p 1-1000

ICMP сканирование на доступность:

sudo netwox 65 -i 192.168.1.0/24

TCP сканирование на доступность по порту:

sudo netwox 67 -i 192.168.1.0/24 -p 80

UDP сканирование на доступность по порту:

sudo netwox 69 -i 192.168.1.0/24 -p 80

ARP сканирование:

sudo netwox 71 -i 192.168.1.0/24

Флуд случайными фрагментами:

sudo netwox 74 -i 192.168.24.254

Заполнение таблицы MAC-адресов коммутатора отправкой флуда:

sudo netwox 75

Synflood:

sudo netwox 76 -i 192.168.24.254 -p 80

и т.д.

Использование wipe в Linux

wipe — утилита для безопасного полного стирания информации.

Команда установки в Linux Ubuntu/Debian:

sudo apt-get install wipe

Опишу некоторые ключи запуска:
-f Отключение запросов подтверждения
-r Рекурсивно. Удаляет все подкаталоги, символические ссылки не трогаются.
-c Если права каталога только для чтения, то будут изменены на запись.
-i Подробный информационный режим
-s Тихий режим, большинство сообщений не выводятся.
-q Быстрый режим, директории перезаписываются случайными данными 4 раза.
-Q Количество циклов перезаписи. Стандартно 4.
-a Остановить выполнение при ошибке.
-R Установка случайного устройства
-l Указание размера блока устройства, например при использовании дискет и т.д..
-D Следовать по символическим ссылкам, стандартно они не трогаются.
-v Отображение версии программы.
-h Отображение справки.

Приведу примеры запуска:

sudo wipe -rcf /директория/директория
sudo wipe /dev/раздел
sudo wipe -rfi >wipe.log /var/log/*

Смотрите также:
Уничтожение данных с помощью Shred

Предотвращение атак на WordPress xmlrpc.php и wp-login.php

Заметил однажды на некоторых серверах с WordPress сайтами большое количество обращений к файлу xmlrpc.php и wp-login.php

Как оказалось кто-то пытался подобрать пароль и получить доступ к сайту, обычно такие вещи блокирует Jetpack, ограничивается доступ по IP в админку средствами веб-сервера, но на этих почему-то никакой защиты не было.

Посчитать количество обращений к файлу в логах можно командой:

grep 'xmlrpc.php' /var/log/apache2/access.log | wc -l

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

Посчитать количество по каждому IP и вывести список:

grep 'xmlrpc.php' /var/log/apache2/access.log | cut -d' ' -f1 | sort | uniq -c | sort -r

Посчитать количество по каждому IP и вывести список для файла wp-login.php:

grep 'wp-login.php' /var/log/apache2/access.log | cut -d' ' -f1 | sort | uniq -c | sort -r
grep 'wp-login.php' /var/log/apache2/access.log | awk '{print $1}' | sort -n | uniq -c | sort -nr | head -20

В конфигурации apache2 или через файл .htaccess можно ограничить доступ к директории /wp-admin/ по IP, например так:

<Directory /var/www/site/wp-admin/>
  Options -Indexes
  AllowOverride All
  Order allow,deny
  allow from 127.0.0.1 192.168.11.25
</Directory>

Полностью запретить доступ к файлам так:

<Files wp-login.php>
Order Deny,Allow
Deny from all
</Files>
<Files xmlrpc.php>
Order Deny,Allow
Deny from all
</Files>

Если используется например Jetpack, то к wp-login.php лучше не ограничивать, так как могут возникнуть ошибки при обновлении плагина и отразится на его работе.
В этом случае можно активировать защиту от подбора пароля в параметрах Jetpack.

Если Jetpack не используется можно установить другие плагины, например «WP Limit Login Attempts», который отображает капчу при авторизации, а также блокирует неверные попытки входа.
Например плагином «Disable XML-RPC Pingback» можно отключить функции XML-RPC если они не нужны.

Также в файле robots.txt можно запретить индексирование поисковиками этих файлов:

User-agent: *
Disallow: /xmlrpc.php
Disallow: /wp-login.php

Немного о вирусе шифровальщике Trojan.Encoder.12544 атаковавшего 27.06.2017

27.06.2017 после обеда мне позвонили из одной организации и сообщили что много компьютеров перестали работать, однако некоторые работали, я так понял на которых было включено автообновление Windows и установлены все обновления, в том числе критическое исправляющее уязвимость которое использует вирус — Microsoft Security Bulletin MS17-010 — Critical

На одних зараженных компьютерах было следующее окно (зараженная область MBR):

На других шла проверка диска на ошибки через CHDISK, как оказалось это второй этап вируса — шифрование диска с использованием алгоритмов AES-128-CBC и в этом случае необходимо немедленное выключение, чтобы можно было восстановить оставшиеся не зашифрованные данные.
Через специальные утилиты было видно лишь немного не зашифрованных данных которые можно восстановить, ну а остальную часть можно вернуть лишь из резервных копий которые делали системные администраторы так как расшифровщика на данный момент нету.
Под старую прошлогоднюю версию вируса был написан расшифровщик https://github.com/leo-stone/hack-petya

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