Микроконтроллеры

Описание: Разработка и отладка приложений. Упор на 3D-графику.

dyvniy M
Автор темы, Администратор
Администратор
Аватара
dyvniy M
Автор темы, Администратор
Администратор
Возраст: 41
Репутация: 1
Лояльность: 1
Сообщения: 3652
Зарегистрирован: Ср, 10 октября 2012
С нами: 11 лет 6 месяцев
Профессия: Программист
Откуда: Россия, Москва
ICQ Сайт Skype ВКонтакте

#1 dyvniy » Чт, 11 сентября 2014, 11:04:00

http://arduino.ru/
Изображение
Спойлер
Arduino?
Arduino — это электронный конструктор и удобная платформа быстрой разработки электронных устройств для новичков и профессионалов. Платформа пользуется огромной популярностью во всем мире благодаря удобству и простоте языка программирования, а также открытой архитектуре и программному коду. Устройство программируется через USB без использования программаторов.

Arduino позволяет компьютеру выйти за рамки виртуального мира в физический и взаимодействовать с ним. Устройства на базе Arduino могут получать информацию об окружающей среде посредством различных датчиков, а также могут управлять различными исполнительными устройствами.

Микроконтроллер на плате программируется при помощи языка Arduino (основан на языке Wiring) и среды разработки Arduino (основана на среде Processing). Проекты устройств, основанные на Arduino, могут работать самостоятельно, либо же взаимодействовать с программным обеспечением на компьютере (напр.: Flash, Processing, MaxMSP). Платы могут быть собраны пользователем самостоятельно или куплены в сборе. Программное обеспечение доступно для бесплатного скачивания. Исходные чертежи схем (файлы CAD) являются общедоступными, пользователи могут применять их по своему усмотрению.

В 2006 Arduino получила признание в категории Digital Communities на фестивале Ars Electronica Prix .

Аппаратная часть платформы Arduino
плата Arduino UnoСуществует несколько версий платформ Arduino. Последняя версия Leonardo базируется на микроконтроллере ATmega32u4. Uno, как и предыдущая версия Duemilanove построены на микроконтроллере Atmel ATmega328 (техническое описание). Старые версии платформы Diecimila и первая рабочая Duemilanoves были разработаны на основе Atmel ATmega168 (техническое описание), более ранние версии использовали ATmega8 (техническое описание). Arduino Mega2560, в свою очередь, построена на микроконтроллере ATmega2560 (техническое описание).

Читать далее
Программирование Ардуино
Язык программирования устройств Ардуино основан на C/C++. Он прост в освоении, и на данный момент Arduino — это, пожалуй, самый удобный способ программирования устройств на микроконтроллерах.
Изображение

dyvniy M
Автор темы, Администратор
Администратор
Аватара
dyvniy M
Автор темы, Администратор
Администратор
Возраст: 41
Репутация: 1
Лояльность: 1
Сообщения: 3652
Зарегистрирован: Ср, 10 октября 2012
С нами: 11 лет 6 месяцев
Профессия: Программист
Откуда: Россия, Москва
ICQ Сайт Skype ВКонтакте

#2 dyvniy » Ср, 22 октября 2014, 06:05:33

Ardruino для брутфорса компа как клавиатура.
http://habrahabr.ru/post/240291
Спойлер
Хабрахабр Geektimes Тостер Brainstorage Фрилансим Habrastorage
14 октября в 11:24
Брутфорсим EFI с Arduino из песочницы
DIY или Сделай Сам, Arduino*, Информационная безопасность*
Приветствую Хабравчан!

Думаю, данной темой не многих удивишь — достаточно набрать в поисковике фразу arduino bruteforce и сразу станет понятно, насколько распространен перебор паролей при помощи платформы Arduino. Я же хочу рассказать о том, как это быстро организовать с наименьшим наборов компонентов, без разводки/травления плат и пайки. Сразу оговорюсь, что описанные мною действия носят ознакомительный характер и никому не причинили вреда, ни морального, ни физического… разве что мошенникам.



Зачем я это делал

Однажды вечером на мой iPhone пришло уведомление о смене пароля в Apple ID. Заподозря неладное, я кинулся проверять аккаунт Apple ID. Как вы уже догадались, со мной произошла та самая неприятная ситуация. Зайти в аккаунт я уже, естественно, не смог, восстановить пароль тоже не получалось — не приходили письма от Apple на почтовый ящик. Вскоре обнаружил известную фишку хакеров — настройку фильтрации входящей почты на самом ящике. Собственно, изначально взломали почтовый ящик, потом без проблем поменяли пароль на Apple ID. Но когда удалось восстановить доступ к Apple ID, было уже поздно. К тому времени iPhone был заблокирован злоумышленниками через сервис «Найти iPhone», MacBook тоже требовал пароль, ну и как полагается, на экране красовалось сообщение:



И если сброс iPhone на заводские настройки через iCloud не вызвал никаких сложностей, то сбросить блокировку с Mac стандартными средствами невозможно. В Mac устанавливается пароль не на учетную запись, а непосредственно на прошивку EFI. Пароль хранится на отдельном чипе в зашифрованном виде, поэтому компьютер становится заблокированным на уровне железа. Служба поддержки направила меня в авторизированный сервисный центр, где за N-ную сумму и пару дней предлагали сбросить пароль. Кстати сказать, эта сумма почти вдвое больше, чем запрашивают мошенники за пароль. Но я не стал спешить расставаться с деньгами и начал искать в интернете способы сделать все самому. Перелопатив множество форумов пришел к выводу, что нужен полный перебор паролей.

Эврика!

Перебирать вручную 10 000 комбинаций — дело не царское, а ведь и скриптик негде запустить. К счастью, заработала клавиатура, подключенная к MacBook через USB, а значит время создать «умную USB клавиатуру»! Именно для этого случая у меня пылилась платка Arduino Uno, с ней и будет весь концерт.

Небольшое отступление. Позже в интернете я нашел один интересный проект «взломщика» на Arduino, довольно-таки серьезное устройство, считывающее и анализирующее картинку через VGA разъем. Но это для тех, у кого есть желание и много времени.

За дело

Для начала нашел специальную прошивку для микросхемы «ATMEL MEGA16U2», на Arduino Uno бывает еще «ATMEL MEGA8U2». Это USB-контроллер платы Arduino. На фото ниже расположение USB-контроллера Arduino Uno ревизии R3:



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

Примечание: Arduino Leonardo и Arduino Micro поддерживают USB HID штатно

Итак, дело осталось за малым — написать программу для самого контроллера. Сначала проверим нашу «клавиатуру» на заведомо невзломанном рабочем компьютере.

ВНИМАНИЕ! Прошиваем сначала контроллер ATMEGA, только потом USB-контроллер MEGA! Среда разработки Arduino прошивать клавиатуры не умеет.

Загружаем тестовый скетч на контроллер:

uint8_t buf[8] = { 0 }; // байт с информацией о «нажатой» клавише

void setup()
{
Serial.begin(9600); // Устанавливаем скорость соединения
delay(2000); // Пауза, чтобы «клавиатура» успела определиться в системе
}

void loop()
{
int dig1, dig2, dig3, dig4; // Цифры, которые будут последовательно вводиться
int keys[10] = { 39, 30, 31, 32, 33,
34, 35, 36, 37, 38 }; // Массив с ASCII кодами цифер от 0 до 9 соответственно

// Перебираем комбинации, начиная с 0000:

for(dig1=0; dig1<10; dig1++)
{
for(dig2=0; dig2<10; dig2++)
{
for(dig3=0; dig3<10; dig3++)
{
for(dig4=0; dig4<10; dig4++)
{
pressKey(keys[dig1]);
pressKey(keys[dig2]);
pressKey(keys[dig3]);
pressKey(keys[dig4]);
pressKey(40); // Клавиша Enter
delay(1000);
}
}
}
}
}

void pressKey(int dig) // Функция ввода
{
buf[2] = dig;
Serial.write(buf, 8); // Нажать клавишу
buf[0] = 0;
buf[2] = 0;
delay(20);
Serial.write(buf, 8); // Отпустить клавишу
delay(200);
}



Отсоединяем Arduino от компьютера.

Теперь нужно прошить USB-контроллер, для этого скачаем программу FLIP (Windows) c сайта ATMEL и установим ее.
В случае с MacOS отдельные инструкции. Для некоторых версий Arduino Uno есть тонкости при прошивке USB-контроллера, подробности здесь.

Создадим hex-файл прошивки USB-контроллера. Код можно просто скопировать в текстовый редактор типа Блокнота и сохранить с расширением .hex
«Arduino-Uno-keyboard.hex»
Дальше необходимо перевести Arduino в режим DFU. Для этого открываем «Диспетчер устройств» на Windows, подключаем плату к компьютеру, убеждаемся, что Windows видит ее как устройство COM-порта, затем закорачиваем какой-нибудь железкой контакты Arduino как показано на картинке ниже:



Через 5-10 секунд контакты размыкаем. Если в диспетчере появилось новое USB устройство — отлично! Нет — замыкаем контакты еще раз, можно попробовать подержать подольше.

Итак, Arduino в режиме DFU, теперь ее можно превращать в клавиатуру. Далее пойдет описание работы под Windows.

1. Запускаем FLIP. Во вкладке «Device» нажимаем «Select» или нажимаем на микросхемку, ищем в списке «ATmega16U2» (или «8U2»), нажимаем «ОК».



2. Далее вкладка «Settings» > «Communication» или нажимаем на USB шнурок > «USB» > «Open». Если не выскочило никаких ошибок, значит пока все делаем правильно. В противном случае пробуем заново ввести Arduino в режим DFU.





3. Теперь вкладка «File» > «Load HEX File…» или нажимаем книжку со стрелочкой, ищем созданный ранее файл «Arduino-Uno-keyboard.hex», проверяем галочки и нажимаем «Run».





Пару мгновений и Arduino превращается… в элегантную клавиатуру! Отсоединяем плату от компьютера. На компьютере открываем любой текстовый редактор, затем подключаем Arduino вновь. Через пару секунд кто-то начнет печатать:

0000
0001
0002
…

Наш полтергейст перебощик паролей практически готов!

Все бы хорошо, но когда Arduino будет вводить пароли на MacBook, мы не сможем узнать, какой из них оказался правильным. Мы будем точно знать, что подошли какие-то четыре звездочки. Поэтому сделаем так, чтобы текущий пароль выводился на 28-сегментный индикатор. У меня как раз был такой:



Модуль индикатора уже распаян на плате с ключами и резисторами, поэтому, в моем случае, схема подключения простая: вход VCC индикатора подключаем к выводу 5V Аrduino, остальные от D1 до G — к цифровым выводам Arduino с 12 по 2 соответственно.

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



Мне остается только приклеить индикатор куда-нибудь изолентой:



Финишная прямая

Пишем скетч с поддержкой модульного индикатора и необходимыми настройками ввода. Замеры показали, что время задержки ввода пароля у MacBook до загрузки ОС составляет 12 секунд после 5-ти попыток неверного ввода. Чтобы прошить «клавиатуру», нужно вернуть USB-контроллер Arduino к первоначальному состоянию. Для этого создадим hex-файл родной прошивки USB-контроллера. Код так же просто копируем в текстовый редактор типа Блокнота и сохраняем с расширением .hex
«Arduino-Uno-R3-usbserial.hex»
Для всех Arduino родные прошивки USB-контроллера лежат здесь

Чтобы вернуться на родную прошивку USB-контроллера, делаем все с помощью программы FLIP (или по инструкции для Mac), как и ранее, в конце отключаем плату от компьютера. Затем вновь подключаем плату к компьютеру и загружаем на контроллер новый, усовершенствованный скетч с поддержкой индикатора.

uint8_t buf[8] = { 0 }; // байт с информацией о «нажатой» клавише

void setup()
{
Serial.begin(9600); // Устанавливаем скорость соединения
pinMode(2, OUTPUT); // G
pinMode(3, OUTPUT); // F
pinMode(4, OUTPUT); // E
pinMode(5, OUTPUT); // D
pinMode(6, OUTPUT); // C
pinMode(7, OUTPUT); // B
pinMode(8, OUTPUT); // A
pinMode(9, OUTPUT); // D4
pinMode(10, OUTPUT); // D3
pinMode(11, OUTPUT); // D2
pinMode(12, OUTPUT); // D1

// Так как модуль сегментных индикаторов имеет общий анод, то для того, чтобы
// светился сегмент, вывод Arduino должно быть в высокоимпедансном состоянии
// и наоборот

// Выключаем все сегменты:

digitalWrite(12, HIGH);
digitalWrite(11, HIGH);
digitalWrite(10, HIGH);
digitalWrite(9, HIGH);
delay(2000); // Пауза, чтобы «клавиатура» успела определиться в системе
}

void loop()
{
int dig1, dig2, dig3, dig4; // Цифры, которые будут последовательно вводиться
int keys[10] = { 39, 30, 31, 32, 33,
34, 35, 36, 37, 38 }; // Массив с ASCII кодами цифер от 0 до 9 соответственно

// Перебор с 0000 до 9999:

for(dig1=0; dig1<10; dig1++)
{
for(dig2=0; dig2<10; dig2++)
{
for(dig3=0; dig3<10; dig3++)
{
for(dig4=0; dig4<10; dig4++)
{
pressKey(keys[dig1]);
pressKey(keys[dig2]);
pressKey(keys[dig3]);
pressKey(keys[dig4]);
pressKey(40); // Клавиша Enter

// Текущий пароль будет отображаться в течение примерно 15-ти секунд (чуть больше времени задержки ввода)

for(int i=0; i<1200; i++)
{
digLED(12, dig1);
digLED(11, dig2);
digLED(10, dig3);
digLED(9, dig4);
}
}
}
}
}
}

void pressKey(int dig) // Функция ввода
{
buf[2] = dig;
Serial.write(buf, 8); // Нажать клавишу
buf[0] = 0;
buf[2] = 0;
delay(20);
Serial.write(buf, 8); // Отпустить клавишу
delay(300);
}

// Возможно, существуют библиотеки для сегментных индикторов, но мне не захотелось с ними разбираться,
// поэтому набросал свой алгоритм обхода сегментов индикатора

void digLED(int pin, int dig) // Функция отображения цифер на индикаторе
{
digitalWrite(pin, LOW);
switch(dig)
{
case 0:
digitalWrite(8, LOW);
digitalWrite(7, LOW);
digitalWrite(6, LOW);
digitalWrite(5, LOW);
digitalWrite(4, LOW);
digitalWrite(3, LOW);
digitalWrite(2, HIGH);
break;
case 1:
digitalWrite(8, HIGH);
digitalWrite(7, LOW);
digitalWrite(6, LOW);
digitalWrite(5, HIGH);
digitalWrite(4, HIGH);
digitalWrite(3, HIGH);
digitalWrite(2, HIGH);
break;
case 2:
digitalWrite(8, LOW);
digitalWrite(7, LOW);
digitalWrite(6, HIGH);
digitalWrite(5, LOW);
digitalWrite(4, LOW);
digitalWrite(3, HIGH);
digitalWrite(2, LOW);
break;
case 3:
digitalWrite(8, LOW);
digitalWrite(7, LOW);
digitalWrite(6, LOW);
digitalWrite(5, LOW);
digitalWrite(4, HIGH);
digitalWrite(3, HIGH);
digitalWrite(2, LOW);
break;
case 4:
digitalWrite(8, HIGH);
digitalWrite(7, LOW);
digitalWrite(6, LOW);
digitalWrite(5, HIGH);
digitalWrite(4, HIGH);
digitalWrite(3, LOW);
digitalWrite(2, LOW);
break;
case 5:
digitalWrite(8, LOW);
digitalWrite(7, HIGH);
digitalWrite(6, LOW);
digitalWrite(5, LOW);
digitalWrite(4, HIGH);
digitalWrite(3, LOW);
digitalWrite(2, LOW);
break;
case 6:
digitalWrite(8, LOW);
digitalWrite(7, HIGH);
digitalWrite(6, LOW);
digitalWrite(5, LOW);
digitalWrite(4, LOW);
digitalWrite(3, LOW);
digitalWrite(2, LOW);
break;
case 7:
digitalWrite(8, LOW);
digitalWrite(7, LOW);
digitalWrite(6, LOW);
digitalWrite(5, HIGH);
digitalWrite(4, HIGH);
digitalWrite(3, HIGH);
digitalWrite(2, HIGH);
break;
case 8:
digitalWrite(8, LOW);
digitalWrite(7, LOW);
digitalWrite(6, LOW);
digitalWrite(5, LOW);
digitalWrite(4, LOW);
digitalWrite(3, LOW);
digitalWrite(2, LOW);
break;
case 9:
digitalWrite(8, LOW);
digitalWrite(7, LOW);
digitalWrite(6, LOW);
digitalWrite(5, LOW);
digitalWrite(4, HIGH);
digitalWrite(3, LOW);
digitalWrite(2, LOW);
break;
}
delay(3);
digitalWrite(pin, HIGH);
}


И снова прошиваем USB-контроллер прошивкой Arduino-Uno-keyboard.hex



Можно запускать!

Хотя… Я бы лично не смог до 42-х часов подряд смотреть на индикатор и монитор, ожидая подходящего пароля. Для этих целей отлично подойдет одноглазый свидетель — видеокамера. Запись будет вестись со старенькой SONY через miniDV (IEEE-1394) при помощи бесплатной программы SplitCam на другой компьютер. В качестве альтернативы можно использовать веб-камеру или видеорегистратор для автомобиля.

Запускаем MacBook с нажатой клавишей «alt», подсодиняем «клавиатуру», включаем видеозапись и идем по своим делам, переодически визуально контролируя процесс.

Система в действии:



В моем случае пароль нашелся на вторые сутки. Этот торжественный момент на видео:



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

В свою очередь, желаю всем избегать подобных ситуаций, поэтому чаще обновляйте пароли на почтовых ящиках и удачи!

Источники иллюстраций, использованных в публикации
брут-форс, brute-force, взлом, iCloud, Apple ID, MacBook
+74 38523
395shmegor 64,9
Похожие публикации
Эй, iCloud, где мои заметки? 6 октября в 11:35
Apple перестала хранить криптоключи пользователей на своём сервере 18 сентября в 13:17
Всплеск brute-force атак направленный на легко подбираемые доступные для записи snmp community 20 июня в 17:30
Задержаны хакеры, которые использовали похищенные Apple ID для блокирования iDevice 9 июня в 13:56
Украденные Apple ID используются для блокировки iDevice 28 мая в 12:34
Как защитить связку ключей iCloud от АНБ 22 мая в 13:01
Apple расширила двухфакторную верификацию на весь мир 14 мая 2013 в 15:52
Защита Citrix Web Interface от brute-force атак с помощью CAPTCHA 30 апреля 2013 в 15:43
Apple представила двухфакторную верификацию для Apple ID и iCloud аккаунтов 22 марта 2013 в 09:06
Конкурсный подход к взлому ОС 13 февраля 2008 в 18:12
Комментарии (23)

0 isden,14 октября 2014 в 11:48#
Подождите. Про айфон понятно — его можно заблокировать удаленно. А вот насчет мака — как это сделать??
0 isden,14 октября 2014 в 11:54#↵↑
Вопрос снимается, нашел инструкции. Странно, но у меня в icloud мака так и не видно.
+1 Ashot,14 октября 2014 в 11:56#↵↑
Нужно включить Find My Mac в настройках iCloud на маке, тогда всё заработает.
0 j_wayne,14 октября 2014 в 11:55 (комментарий был изменён)#
Красиво! И ничего ломать разбирать в сервисном центре не надо. Долго конечно, но никуда не денешься.
А на ардуино нано такое можно сделать? USB контроллер вроде есть.
+3 bougakov,14 октября 2014 в 12:32#
Наверное, надо упомянуть, что Arduino Leonardo и Micro поддерживают USB HID гораздо проще — arduino.cc/en/Reference/KeyboardBegin

Поэтому сложностей с flip не потребуется.
+2 shmegor,14 октября 2014 в 13:46#↵↑
Пока писал публикацию, хотел это указать, но увлекся и забыл. Пояснение добавил. Спасибо за замечание!
+5 dkuzevanov,14 октября 2014 в 13:01#
Сударь, Вы шикарны!
Снимаю шляпу!
+1 shmegor,14 октября 2014 в 17:36#↵↑
Ой, ну не надо так, спасибо!
0 anticyclope,14 октября 2014 в 13:50 (комментарий был изменён)#
Интересно, как скоро бы нашелся данный конкретный пароль, если бы использовался не последовательный перебор, а что-нибудь типа Монте-Карло?
+9 shmegor,14 октября 2014 в 17:46#↵↑
Не хочу показаться невеждой, но я думаю, что в данном случае все комбинации имеют равнозначную вероятность 1/10000 быть верными. Поэтому нелинейный перебор не имеет смысла.
–4 anticyclope,14 октября 2014 в 17:52#↵↑
Да, я имел ввиду конкретный пароль. Ведь если бы автор начал перебор с конца, он бы потратил в три раза меньше времени.
+4 shmegor,14 октября 2014 в 17:58#↵↑
С таким же успехом можно начать с конца, а пароль окажется 1234. Другое дело, если бы была какая-нибудь статистика заблокированных злоумышленниками устройств, чтобы прикинуть мат. ожидание и сделать ставку на тот или иной интервал.
+3 jar_ohty,14 октября 2014 в 14:58#
Повезло, что в маках не предусмотрена полная блокировка при вводе нескольких неправильных паролей.
0 VorobyevEvgeny,14 октября 2014 в 15:28#↵↑
А мне совсем не ясно почему она не предусмотрена? Так же как и не ясно, зачем вообще нужна такая «блокировка»?
0 NickyX3,14 октября 2014 в 16:00#↵↑
Потому что если бы она была — Apple пришлось бы менять «запоротые» девайсы (при наличии документов о покупке).
Примерно подобным образом на американском Sony SZ разблокировали GPRS модем. Он требовал ввода 6-ти значного пароля, который можно было получить и бесплатно, позвонив в США в Sony, но тогд адаже скайпа не было. В результате оказалось, что на правильную последовательность модем отвечает OK, а не правильную ничего. Ну AT-команды перебором слать вообще оказалось проще простого
0 shmegor,14 октября 2014 в 17:23#↵↑
На самом деле в СЦ Apple и, скорее всего, в авторизированных СЦ делают так www.ernieflores.net/osx-page-5/recovering-a-lost-firmware-password/ Суть в том, что набрав определенную комбинацию клавиш на включенном MAcBook, можно узнать одноразовый HASH-ключ. Этот ключ нужно отправить некой службе TSPS, они генерируют по нему бинарник, который особым образом заливается на Mac. Ну и конечно, простым смертным TSPS бинанрники не генерирует.
0 shmegor,14 октября 2014 в 17:17#↵↑
Сам был очень приятно удивлен, когда понял, что блокировки нет. Но перебор прокатывает только до запуска ОС. Если дать системе загрузиться, то неверный ввод влечет за собой прогрессирующую по времени блокировку, примерно как на смартфонах при вводе неверного пароля на начальном экране.
0 acmer,14 октября 2014 в 23:43#
supportapplerus@nm.ru не кажется странным адресом?
+2 TheRipper,15 октября 2014 в 00:04#↵↑
Я думаю под мошенниками, которые просили меньшую сумму, чем сервис, автор имел в виду именно их.
+1 baadf00d,15 октября 2014 в 00:02 (комментарий был изменён)#
А еще можно было взять фотодиод, приклеить его скотчем к экрану в зону, которая после разблокировки заведомо должна поменять яркость и подключить его к ардуине. Перебор пароля останавливать после того, как яркость изменилась сильнее порога. Метод менее надежный, зато более брутальный что ли… и камера не нужна :)
0 shmegor,15 октября 2014 в 09:06 (комментарий был изменён)#↵↑
Прям прочел мои первые мысли! Но фотодиода не было под рукой, еще не был уверен, что экран не заснет. Хотя вариант интересный.
0 monah_tuk,15 октября 2014 в 11:32#↵↑
А он не должен заснуть. Ты ведь постоянно что-то с клавиатуры «вводишь».
–1 safinaskar,19 октября 2014 в 00:10#
Нда. С компьютерами Mac владелец компьютера вынужден взламывать собственный компьютер.

Ясно, конечно, что здесь «постарались» некие злоумышленники, но всё равно неправильно, что на компе предусмотрен некий неотключаемый механизм «безопасности», который может вот так сыграть против владельца компа.

Правильно ли я понимаю, что этот механизм «безопасности» на Mac похож на «Secure Boot», продвигаемый Microsoft на PC? Если да, то вот вам дополнительный аргумент против «Secure Boot».

Open Hardware нас спасёт
Только зарегистрированные пользователи могут оставлять комментарии. Войдите, пожалуйста.
Популярное за сутки
Простые догмы при работе с цветом в интерфейсах
Хак радара
Набор иконок Material Design от Google
Недостающие карты: как проект расшифровки генома человека, только для городов
Как мы делаем World of Warships: автоматизация экспорта и верификация контента
Рушим капчу SilkRoad
Как правильно приготовить Skype-4.3 под Linux
Этот пудель кусается: использование дыр в протоколе SSL 3.0
Mastercard выпускает платёжную карту со сканером отпечатков пальцев
BlackHole.js с привязкой к картам leaflet.js
Доброе утро, Вьетнам!
Git as Subversion
Новая услуга: виртуальное приватное облако
Основатель PayPal признал важность биткоинов
Анализ эксплойта Dianti.A
Что мы знаем и чего не знаем об оценке трудозатрат в разработке ПО
Перевод книги «The Little Book on CoffeeScript»
Мобильные приложения для веб-разработчиков
Как создать интересный игровой сеттинг? Уровень четвертый: звукошумовые эффекты
Как я делал управленческий учет в Excel
все лучшие
Лучшее на Geektimes
Как Lenovo ноутбук на ARM изобретала, и почему в итоге передумала
Министр связи РФ настаивает на государственных границах в Сети
Аналог Skype от Ростелекома за 73 млн руб с блэкджеком и закладками
В университете Вандербильта создали робота, который может делать операции на мозге внутри аппарата МРТ
Путь Ли Хонга. Как мы придумали спортивный тотализатор
Роскомнадзор может получить право запрашивать информацию о переписке в почте «Яндекса», Mail.Ru и Gmail
Снижение порога беспошлинной покупки за границей до 150 евро поставлено под вопрос
Русский Steam — зачем?
ZBOX PI320: микро-ПК от Zotac с 4-х ядерным Intel Atom за 200 долларов
«Умный туалет» в обычной квартире
все посты
Вопросы по теме
Где найти платную помощь в "кряке" андроид приложения?
Защита In-App Purchase для Android совершенна, почему работает Freedom?
Как узнать как именно взломали сайт, и как защитить?
Универсальный ключ от домофона, это реально?
Возможно ли объединить два Apple ID ?
Сертификат vk.com подделан, как поймать (Провайдер, прокси, хак-программы) кто это делает?
Взлом сайта на Joomla злоумышленником, как понять - где дыра?
Как перехватить и отредактировать TCP пакет на лету ?
Как защитить свой сервер ubuntu от взломов и различных атак ?
Взлом wifi во время перезагрузки маршрутизатора - реальность или быль ?
Пишу тест, который требует аутентификацию на стороне. Какой HTTP анализатор трафика под Linux посоветуете?
Что сможет сделать хакер, если украдет SSL сертификат сайта ?
Как восстановить пароль ISPManager?
Как обновить операционку OS X на б\у Macbook Pro без старого apple ID?
Что нужно знать, чтобы стать хакером?
Как бороться со взломами и спамом?
Что прописать в .htaccess, чтобы сервер не выдавал исполняемый файл на скачивание?
Код безопасности по смс. Определить сайт
Существует ли актуальный способ получения пароля Wi-Fi?
Угроза учетных записtq HomeGroupUser$
Что обсуждают?
Новый мультфильм «Диснея» рендерили на 55 000 ядрах 11
Как мы делаем World of Warships: автоматизация экспорта и верификация контента 17
Что ускоряет принудительная сверхурочная работа 29
Как рубисту пережить апдейт OSX 10.10 Yosemite 57
Набор иконок Material Design от Google 10
Mastercard выпускает платёжную карту со сканером отпечатков пальцев 92
BlackHole.js с привязкой к картам leaflet.js 4
Никогда не «не делай» того, о чем пожалеешь или умный дом с CCU.IO 78
Страсти вокруг systemd и его использования по умолчанию в Debian 161
ФБР против шифрования на смартфонах 85
все публикации
Компания дня
Компания, чья публикация набрала максимальное количество баллов<br>
среди всех опубликованных в корпоративных блогах публикаций за <br>
прошедшие сутки. Учитываются публикации, для которых истек срок голосования <br>(3 дня с момента публикации).
НПО «Компьютер»
НПО «Компьютер»
Последняя публикация: Классификация видов тестирования

50 подписчиков
Инженерная культура, которую мы потеряли?! 1 января 1904, 1970, Youtube, международный конфликт и кривые руки Анализ утёкших паролей Gmail, Yandex и Mail.Ru
Brainstorage
Ведущий front-end разработчик (Backbone.js)
Креативный дизайнер
Технический дизайнер
Дизайнер
Senior Frontend Developer
Лидер сисадминов
Сильный РНР-программист (только бэкенд)
PHP–разработчик на Symfony
Старший разработчик Java (Senior Java Developer)
Frontend-разработчик
все вакансии
Доработка и поддержка сайта на cms Django
Написать парсер вопросов и ответов с reshuege.ru
Доработка программы подключения к VPN серверам на QT
SIP-клиент на сайт в виде java-апплета
Сделать свой мини-хостинг с блекджеком и телочками
Разработать игровой макет бомбы
Получение скидки (можно как модуль для joomla 3 или просто скрипты)
Контент и SMM
Одностраничный комикс для одного из ресторанов Subway
Разработка электронных и механических загадок или визуальных эффектов
все заказы
Войти
Регистрация
Разделы
Публикации
Хабы
Компании
Пользователи
Q&A
Песочница
Инфо
О сайте
Правила
Помощь
Соглашение
Услуги
Реклама
Тарифы
Семинары
Спецпроекты
Разное
Приложения
Тест-драйвы
Помощь стартапам
TM © 2006–2014

Служба поддержки

Мобильная версия


Все мозги в одном месте

Q&A-сервис для разработчиков

Заказы для фрилансеров

Уютная и дружелюбная
Изображение

dyvniy M
Автор темы, Администратор
Администратор
Аватара
dyvniy M
Автор темы, Администратор
Администратор
Возраст: 41
Репутация: 1
Лояльность: 1
Сообщения: 3652
Зарегистрирован: Ср, 10 октября 2012
С нами: 11 лет 6 месяцев
Профессия: Программист
Откуда: Россия, Москва
ICQ Сайт Skype ВКонтакте

#3 dyvniy » Пт, 24 октября 2014, 14:28:23

Изображение

dyvniy M
Автор темы, Администратор
Администратор
Аватара
dyvniy M
Автор темы, Администратор
Администратор
Возраст: 41
Репутация: 1
Лояльность: 1
Сообщения: 3652
Зарегистрирован: Ср, 10 октября 2012
С нами: 11 лет 6 месяцев
Профессия: Программист
Откуда: Россия, Москва
ICQ Сайт Skype ВКонтакте

#4 dyvniy » Чт, 30 октября 2014, 15:25:39

Изображение

dyvniy M
Автор темы, Администратор
Администратор
Аватара
dyvniy M
Автор темы, Администратор
Администратор
Возраст: 41
Репутация: 1
Лояльность: 1
Сообщения: 3652
Зарегистрирован: Ср, 10 октября 2012
С нами: 11 лет 6 месяцев
Профессия: Программист
Откуда: Россия, Москва
ICQ Сайт Skype ВКонтакте

#5 dyvniy » Пн, 22 декабря 2014, 15:05:36

Изображение

dyvniy M
Автор темы, Администратор
Администратор
Аватара
dyvniy M
Автор темы, Администратор
Администратор
Возраст: 41
Репутация: 1
Лояльность: 1
Сообщения: 3652
Зарегистрирован: Ср, 10 октября 2012
С нами: 11 лет 6 месяцев
Профессия: Программист
Откуда: Россия, Москва
ICQ Сайт Skype ВКонтакте

#6 dyvniy » Пн, 5 января 2015, 14:07:12

Изображение


Название раздела: Программирование (под Desktop и Android)
Описание: Разработка и отладка приложений. Упор на 3D-графику.

Быстрый ответ


Введите код в точности так, как вы его видите. Регистр символов не имеет значения.
Код подтверждения
:) ;) :hihi: :P :hah: :haha: :angel: :( :st: :_( :cool: 8-| :beee: :ham: :rrr: :grr: :* :secret: :stupid: :music: Ещё смайлики…
   

Вернуться в «Программирование (под Desktop и Android)»

Кто сейчас на форуме (по активности за 15 минут)

Сейчас этот раздел просматривают: 1 гость