Вирус Petya или не Петя? И как защититься?

Вы наверняка уже слышали о вирусе Петя (Ransom:Win32/Petya). Новый вирус, который уже успели окрестить и NoPetya и NotPetya, официально носит название Petya.C. Этот вирус модифицирует MBR (Master Boot Record – главная загрузочная запись), прописывает в него свой код и при перезагрузке шифрует файлы, требуя выкуп. Но еще он “научился” распространяться по локальной сети и использовать существующие уязвимости. Подробнее можно почитать в статье компании Майкрософт, где рассматривается случай с распространением через обновление бухгалтерского ПО MeDoc.

Как же спасти свой ПК от заражения подобным вирусом? Можно ли защитить MBR от перезаписи или запретить удаленный запуск приложений на ПК под управлением ОС Windows? Короткий ответ — можно. Как именно – читайте далее.

Читать далее

PHP и побитовый сдвиг

PHP, как известно, язык не имеющий строгой типизации переменных, как, например, С или С++. Объявляете переменную, пихаете в нее данные, а интерпретатор сам решает, в каком виде их хранить. Однако так же присутствует и механизм, позволяющий специально преобразовать переменную из одного типа в другой – так называемое приведение типов.

Что касается целых чисел, интерпретатор может определить, что результат операции не поместится в переменную и конвертирует ее в другой тип. В PHP нет поддержки беззнаковых чисел (uint, unsigned integer) и результат операции может быть автоматически помещен в float (double).

Но во время операции побитового сдвига (bitwise shift) влево (<<) мы легко можем выйти за границы integer и неожиданно получить отрицательное число. Приведу пример кода:

Читать далее

Глюки в OS X App Store

На моем MacBook Pro установлено две OS X – El Capitan и Mavericks. Последняя была установлена при покупке и я решил ее оставить. В El Capitan в App Store у меня зависло одно обновление – El Capitan Recovery Update 1.0. Каким только боком я ни пытался его установить – ни в какую. При чем в списке обновлений оно числится установленным уже раз пять. Раньше я особо не парился, но в итоге надоело и я нагуглил тред с якобы решением данной проблемы. Автор поста рекомендует просто удалить следующий каталог:

/var/folders/zz

Ну, я так и сделал. Хотя нет, я же умный типа 🙂 , я не удалил, а переименовал его. И убил OS X El Capitan. Она перестала загружаться.

Дальше я полез сюда:

Читать далее

PythonDialogBug на FreeBSD в Letsencrypt

Многие наверняка слышали об инициативе по выдаче бесплатных сертификатов Let’s Encrypt (которую скоро переименуют и она будет жить на EFF). Выдаются они всего на 3 месяца, но обновление можно автоматизировать. Я тоже решил попробовать этого зверя, установил из портов и… обломался. Получил ошибку PythonDialogBug (полный лог см. ниже). Быстро найти решение не удалось, поэтому я забросил это дело на несколько месяцев. Когда снова “дошли руки”, начал гуглить информацию по питону. На одном форуме нашел предложение попробовать маленький скрипт:

Читать далее

Использование сетевых портов в Виндовс

Иногда возникает необходимость узнать, какие сетевые соединения установлены на  ПК с ОС Виндовс или какие порты “слушаются” теми или иными процессами. “Слушает порт” – означает, что программа ожидает сообщений на том или ином порту, например, стандартный веб-сервер слушает 80-й (HTTP) и/или 443 (HTTPS) порт.

Для просмотра подобной статистики можно использовать стандартную программу netstat.

netstat

Из всех опций используем ключи a и o:

netstat -ao
или
netstat -a -o

В начале выводятся порты в состоянии LISTENING (прослушивание) и ESTABLISHED (соединение установлено), затем порты в состоянии CLOSE_WAIT (ожидание закрытия соединения). Если у вас работает какая-нибудь программа, которая постоянно открывает/закрывает соединения, статистика может выводиться, пока вы не нажмете CTRL+C.

Читать далее

iPod vs Windows 10 (driver issue)

iTunes внезапно© не узнала мой iPod (после обновления с Windows 8 до Windows 10 я ни разу его не подключал). Любые советы, найденные в сети, не делали ровно ничего, устройство открывалось как флешка, но iTunes по-прежнему утверждал, что он не может узнать устройство. Подключил к MBP – без вопросов все работает.

Методом тыка нашел такое решение:
— в диспетчере устройств нужно среди USB-девайсов найти все девайсы Apple и… удалить. При удалении нужно поставить галочку удалить вместе с драйверами.
— когда iPod снова подключите, укажите драйвер по этому пути:
C:\Program Files\Common Files\Apple\Mobile Device Support\Drivers
В принципе, думаю, можно после удаления драйверов просто зайти туда и запустить *.inf-файл и произойдет то же самое, т.е. по-новой установится драйвер. Такие дела.