Как стать автором
Обновить
12
0

Пользователь

Отправить сообщение

Браузеры и app specific security mitigation. Часть 2. Internet Explorer и Edge

Время на прочтение25 мин
Количество просмотров6.1K

Internet Explorer & Edge


Целью данной статьи является обзор специфичных, интегрированных в браузеры Internet Explorer и Edge, механизмов защиты от эксплойтов.


Мы решили объединить обзор механизмов безопасности IE и Edge в одну статью, поскольку, во-первых, оба они являются продуктами небезызвестной компании Microsoft, а, во-вторых, такой подход позволяет отследить, как менялся подход к защите и, соответственно, само развитие механизмов защиты у данных браузеров. Ну и также по той причине, что у IE и Edge общая кодовая база.


ie_success_story


Читать дальше →
Всего голосов 34: ↑33 и ↓1+32
Комментарии3

Браузеры и app specific security mitigation. Часть 1

Время на прочтение6 мин
Количество просмотров6.7K

Данная статья является вводной для небольшого цикла, посвященного механизмам безопасности, предназначенным для противодействия успешной эксплуатации уязвимостей класса memory corruption в web-браузерах. В рамках этого цикла мы рассмотрим, какие механизмы и с какой целью внедряются разработчиками браузеров, и поговорим о том, как их можно было или до сих пор можно обойти.

Если вам интересна тема защиты приложений или то, как разработчики эксплоитов преодолевают защиту, добро пожаловать под кат.
Читать дальше →
Всего голосов 31: ↑30 и ↓1+29
Комментарии0

Введение в TLS для п̶р̶а̶к̶т̶и̶к̶о̶в̶ Патриков (часть 2)

Время на прочтение18 мин
Количество просмотров17K
Сегодня мы продолжаем разбираться, как устроен TLS и чем он может быть полезен Патрику и его друзьям. Первую часть истории можно прочитать тут.

Мы остановились на том, что сервер отправил свою часть TLS-handshake клиенту. Теперь клиент должен прежде всего проверить сертификаты – и это самая тяжелая из вещей, которые ему обязательно надо сделать.



Certificate verification: chain


Возможно, вы обратили внимание на формулировку: посылается не сертификат, а сертификаты – сейчас станет понятно, почему (в общем-то, догадаться нетрудно).



Итак, поехали!
Всего голосов 10: ↑10 и ↓0+10
Комментарии7

Введение в TLS для п̶р̶а̶к̶т̶и̶к̶о̶в̶ Патриков (часть 1)

Время на прочтение11 мин
Количество просмотров25K
Как вы, возможно, уже знаете, это Патрик. Он морская звезда, а значит, можно, не оскорбляя его, сказать, что руки у него растут из одного места. Еще Патрик очень практичный и сразу забывает всё, что ему не нужно – но если что-то ему нужно, он хочет это знать (потому что ему это нужно!). Спойлер: здесь Патрик пытается сделать TLS Handshake.



Эта статья написана для Патрика и таких, как он. Она родилась из презентации, впервые показанной на нашем внутреннем образовательном Plesk TechTalk, где сотрудники в доступной форме делятся друг с другом информацией об интересных технологиях, процессах и решениях. Поэтому картинки в этой статье будут похожи на слайды :) Автор оригинального текста доклада — program manager Plesk Руслан Косолапов.

Обычно все материалы по TLS охватывают какой-то маленький аспект, но не общую картину. Это не очень практично и у Патрика от такого болит голова. Здесь всё будет по-другому: коротко, применимо «в быту» и по возможности исчерпывающе.
Итак, поехали!
Всего голосов 27: ↑27 и ↓0+27
Комментарии10

Как root-права и альтернативные прошивки делают ваш android смартфон уязвимым

Время на прочтение54 мин
Количество просмотров125K

Если вы являетесь регулярным читателем Хабра, то должно быть заметили что за последние несколько лет вышло немало статей о сборе персональных данных с мобильных устройств, и о попытках противодействия этому, было несколько отличных статей с детальными инструкциями по превращению своего смартфона на базе ОС Android в настоящую цитадель приватности и безопасности. 

Часто для этого рекомендуется получение прав суперпользователя в системе (root-права), удаление системных приложений от Google и от производителя устройства, или даже полная замена стандартной ОС на альтернативные сборки, чаще всего LineageOS (бывший CyanogenMod). При этом первым шагом в этом процессе всегда будет так называемая "разблокировка загрузчика". Во время её выполнения устройство несколько раз покажет нам страшные предупреждения о том, что теперь оно станет более уязвимо для злоумышленников, но мы смело нажимаем "подтвердить" и шьём root или самую свежую сборку кастомной прошивки, не задумываясь о том какие проблемы создаёт нам незаблокированный загрузчик. 

Я хочу рассказать вам как погоня за приватностью и безопасностью может привести к бóльшим проблемам чем использование стоковых устройств, как при физическом доступе к устройству можно установить в android бэкдор который может пережить сброс до заводских настроек, как можно вытащить данные из зашифрованного устройства не зная пин-код, не входя в систему и без запущенного режима отладки в меню разработчика. 

Интересующихся приглашаю под кат.

Читать далее
Всего голосов 127: ↑123 и ↓4+119
Комментарии210

Load Average в Linux: разгадка тайны

Время на прочтение18 мин
Количество просмотров214K


Средние значения нагрузки (Load averages) — это критически важная для индустрии метрика. Многие компании тратят миллионы долларов, автоматически масштабируя облачные инстансы на основании этой и ряда других метрик. Но на Linux она окутана некой тайной. Отслеживание средней нагрузки на Linux — это задача, работающая в непрерываемом состоянии сна (uninterruptible sleep state). Почему? Я никогда не встречал объяснений. В этой статье я хочу разгадать эту тайну, и создать референс по средним значениям нагрузки для всех, кто пытается их интерпретировать.

Читать дальше →
Всего голосов 127: ↑125 и ↓2+123
Комментарии25

Браузеры и app specific security mitigation. Часть 3. Google Chrome

Время на прочтение15 мин
Количество просмотров7.2K

image


Мы продолжаем цикл статей о механизмах защиты браузеров от эксплойтов:



Давайте заглянем под капот браузера Chrome и выясним, что есть в его анти-эксплоит арсенале.


Читать дальше →
Всего голосов 31: ↑31 и ↓0+31
Комментарии2

Как LLVM оптимизирует суммы степеней

Время на прочтение5 мин
Количество просмотров5.2K
LLVM оптимизирует суммы степеней, например:

int sum(int count)
{
  int result = 0;

  for (int j = 0; j < count; ++j)
    result += j*j;

  return result;
}

генерируя код, вычисляющий результат без цикла (godbolt):

sum(int):
        test    edi, edi
        jle     .LBB0_1
        lea     eax, [rdi - 1]
        lea     ecx, [rdi - 2]
        imul    rcx, rax
        lea     eax, [rdi - 3]
        imul    rax, rcx
        shr     rax
        imul    eax, eax, 1431655766
        add     eax, edi
        shr     rcx
        lea     ecx, [rcx + 2*rcx]
        lea     eax, [rax + rcx]
        add     eax, -1
        ret
.LBB0_1:
        xor     eax, eax
        ret

Также обрабатываются более сложные случаи (godbolt) – то есть оптимизация здесь не просто сравнивает паттерны. В этом посте мы рассмотрим, как выполняется эта оптимизация.
Читать дальше →
Всего голосов 36: ↑36 и ↓0+36
Комментарии4

Простой, но умный ход, применяемый в zsh и fish для решения проблемы пропущенного символа перевода строки

Время на прочтение5 мин
Количество просмотров7K
Сегодня я хочу рассказать о том, как командные оболочки zsh и fish обнаруживают пропущенные символы перевода строки и выделяют соответствующие места в выводе программ, делая это в условиях, когда модель программирования Unix не даёт им возможности исследовать то, что выводят программы.

Большинство командных оболочек, включая bash, ksh, dash и ash, выводят приглашение командной строки в той позиции, в которой остался курсор после завершения работы предыдущей команды.



То, что приглашение (почти) всегда выводится в известном всем месте, в самой левой колонке следующей строки, объясняется тем фактом, что Unix-программы единодушно сотрудничают в деле размещения курсора именно в этой позиции после завершения их работы.
Читать дальше →
Всего голосов 77: ↑75 и ↓2+73
Комментарии5

Как готовят пентестеров? Разбор вступительных испытаний для стажеров «Digital Security»

Время на прочтение33 мин
Количество просмотров19K
Summer of Hack 2019 в Digital Security уже идёт полным ходом, а значит самое время рассказать, как мы набирали людей.



Под катом объемный и интересный материал о том, как мы отбираем молодых специалистов к нам на стажировку «Summer of Hack 2019», а конкретно — в департамент аудита защищенности.

Рассмотрим, что должен, на наш взгляд, знать пентестер, чтобы успешно делать свою работу.

Разберём ряд непростых задачек, которыми мы мучали ребят, в том числе и от лица одного из них.
Читать дальше →
Всего голосов 35: ↑34 и ↓1+33
Комментарии8
2

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность