Как стать автором
Обновить
0
@Heianread⁠-⁠only

Источник истины

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

Ломаем сбор мусора и десериализацию в PHP

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


Эй, PHP, эти переменные выглядят как мусор, согласен?
Нет? Ну, посмотри-ка снова…


tl;dr:
Мы обнаружили две use-after-free уязвимости в алгоритме сбора мусора в PHP:

  • Одна присутствует во всех версиях PHP 5 ≥ 5.3 (исправлена в PHP 5.6.23).
  • Вторая — во всех версиях PHP ≥ 5.3, включая версии PHP 7 (исправлена в PHP 5.6.23 и PHP 7.0.8).

Уязвимости могут удалённо применяться через PHP-функцию десериализации. Используя их, мы отыскали RCE на pornhub.com, за что получили премию в 20 000 долларов плюс по 1000 долларов за каждую из двух уязвимостей от комитета Internet Bug Bounty на Hackerone.
Читать дальше →

Трёхпозиционный checkbox (aka tristate) без скриптов и смс

Время на прочтение2 мин
Количество просмотров32K
Понадобилось мне недавно реализовать трёхпозиционный переключатель. Ну это такой, у которого вместо двух состояний «включено/выключено», есть ещё промежуточное состояние. Это часто используется, например, в чекбоксе «выбрать всё», для того чтобы показать, что выбраны не все элементы, а только часть. В общем, захотелось такое реализовать, да чтобы без скриптов.
Читать дальше →

Зачем гнуть дорожки?

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


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

Читать дальше →

Деанонимизируем пользователей Windows и получаем учетные данные Microsoft и VPN-аккаунтов

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

Если вы не видите эту картинку, то данные вашей учетной записи Windows уже скомпрометированы.

Введение

Давным-давно, когда компьютеры были одноядерными и прекрасно работали с 256 МБ RAM, а сети под управлением Windows уже использовались очень широко, ребята из Microsoft подумали, что было бы удобно аутентифицироваться только один раз, при загрузке компьютера, а доступ на внутренние ресурсы происходил бы автоматически, без ввода пароля, и сделали так называемую технологию единого входа (Single Sign-on). Единый вход работает очень просто: когда пользователь пытается получить доступ к какому-либо ресурсу с NTLM-аутентификацией (стандартный способ аутентификации в сетях Windows), ОС сразу передает название домена, имя учетной записи и хеш пароля текущего пользователя, и если под этими данными войти не удалось, показывает диалог ввода имени пользователя и пароля. Шли годы, проблемы с безопасностью реализации технологии единого входа давали о себе знать, одни из которых успешно исправляли, другие исправляли менее успешно, а о третьих почему-то совсем забыли. Так и забыли о проблеме передачи учетных данных для единого входа на SMB-ресурсы (сетевые ресурсы: файлы и папки, принтеры, и т.д.) через интернет, которую можно эксплуатировать во всех современных ОС, включая Windows 10 со всеми последними обновлениями. Об этой особенности работы стека аутентификации вспоминают каждые 1-2 года, последний раз о ней рассказывали на Blackhat US 2015, но Microsoft не спешит что-либо менять.
Читать дальше →

Инкремент в PHP

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


Возьмите переменную и увеличьте её на 1. Звучит просто, верно? Ну… С точки зрения PHP-разработчика, наверное, да. Но так ли это на самом деле? Здесь могут возникнуть некоторые трудности. Существует несколько способов инкрементировать значения, они могут выглядеть равноценными, но под капотом PHP работают по-разному, что может привести к, так сказать, интересным результатам.
Читать дальше →

Дайджест последних достижений в области криптографии. Выпуск первый

Время на прочтение3 мин
Количество просмотров21K
Привет, %username%

Пришло время для свежей пачки криптоновостей, пока они еще не перестали быть новостями. В этом выпуске:
  • Новый рекорд вычисления дискретного логарифма
  • VPN сервер и клиент, использующие Noise протокол
  • Постквантовая криптография в Chrome уже сегодня!
  • Чего вы не знаете о новом E2E шифровании в Facebook
  • RLWE избавляется от R и это идет ему на пользу
  • Comodo хотел поиметь Let`s Encrypt, но сфейлил. А Let`s Encrypt с завтрашнего дня будет поддерживать ddns
  • Появились минимальные требования к реализациям алгоритмов RSA, DSA, DH, устойчивым к side-channel атакам


Предыдущий выпуск тут
Поехали

Мужчина, который живёт без 90% мозга, озадачил учёных

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

Магнитно-резонансная томограмма пациента с практически отсутствующим мозгом, но ведущим нормальную социальную жизнь. Фото: Feuillet et al./The Lancet

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

Несмотря на десятилетия исследований, специалисты до сих пор не могут объяснить феномен сознания — фундаментального способа, каким человек соотносится с миром. Нам известно, что это нечто формируется в головном мозге, на базе нейронов. Но каким образом сохраняется сознание, если отсутствует подавляющее большинство нейронов?
Читать дальше →

DRM-защиту игровой приставки Sega Saturn взломали спустя 20 лет

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

Теперь игры загружаются в обход привода CD-ROM




Опытные геймеры наверняка помнят Sega Saturn — 32-битную игровую приставку от компании Sega. Она начала продаваться 22 ноября 1994 года, на две недели раньше главного конкурента — первой модели Sony Playstation. Это была настоящая бомба. В первый же день фанаты выкупили 170 000 экземпляров новой «Сеги». В 1995 году приставка появилась в продаже в Европе и США, где её тоже ждал успех: на неё портировали Quake, C&C, Tomb Raider, Duke Nukem 3D и другие игры.

На момент выхода архитектура Sega Saturn была гораздо более продвинутой, чем у любой другой игровой приставки. Saturn была очень мощной системой для своего времени: два центральных RISC-процессора (Hitachi SuperH-2 7604), два видеопроцессора (собственной разработки), 32-битный звук (звуковой DSP-процессор Yamaha FH1), CD-привод двойной скорости.
Читать дальше →

32c3 — Интернет-цензура, возможное будущее рунета

Время на прочтение4 мин
Количество просмотров23K
Вчера закончилась крупнейшая конференция в своем роде — 32с3 — Chaos Communication Congress.
тема конфы- Gated communities. Лекций четыре потока, нонстоп с 11 утра до 12 ночи + 189 побочных мероприятий — различные воркшопы и прочая и прочая. Если вдруг однажды соберетесь — обязательно купите билеты заранее — они быстро заканчиваются онлайн, а оффлайн нужно стоять в очереди два часа КАЖДЫЙ день, тк продаются только однодневные проходки. Очередь БОЛЬШАЯ и на всех билетов может не хватить :)

image

подробности

Откуда пошло ГМО-мракобесие

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

Типичный пример ГМО-мракобесия

Тема того, что генномодифицированные продукты хуже или, того более, опасны для здоровья, активно культивируется на протяжении последних двух десятилетий. Истерию против ГМО подхватили СМИ по всему миру, и теперь мы имеем то, что имеем, а именно разговоры на уровне «если ты съешь яблоко модифицированное геном рыбы, то у тебя начнут расти жабры». Почему у нас не растут жабры, когда мы просто едим рыбу, в которой рыбного генного материала значительно больше, чем в модифицированной пшенице, противники ГМ-продукции стыдливо умалчивают.

ГМО-мракобесие привело к тому, что, например, в России выращивание ГМ-культур запрещают на законодательном уровне.

Всегда виноваты деньги, или убийца — садовник


Ко многим детективным историям часто применяют стандартную «кальку», что убийцей, с большей долей вероятности, будет либо садовник, либо жена убитого, с этим садовником водившая шашни. Так и в любой более-менее крупной анти-пиар компании чаще замешана не борьба за здоровье населения, а банальная выгода тех или иных производителей.
Читать дальше →

Vulners — Гугл для хакера. Как устроен лучший поисковик по уязвимостям и как им пользоваться

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


Часто нужно узнать всю информацию о какой-нибудь уязвимости: насколько найденный баг критичен, есть ли готовые сплоиты, какие вендоры уже выпустили патчи, каким сканером проверить наличие бага в системе. Раньше приходилось искать вручную по десятку источников (CVEDetails, SecurityFocus, Rapid7 DB, Exploit-DB, базы уязвимостей CVE от MITRE/NIST, вендорские бюллетени) и анализировать собранные данные. Сегодня эту рутину можно (и нужно!) автоматизировать с помощью специализированных сервисов. Один из таких — Vulners, крутейший поисковик по багам, причем бесплатный и с открытым API. Посмотрим, чем он может быть нам полезен.
Читать дальше →

Атака «evil maid» на зашифрованный жесткий диск

Время на прочтение2 мин
Количество просмотров39K
Вчера была опубликована статья, в которой, не без помощи Microsoft, раскрываются интересные подробности о внутренностях BitLocker. Статья длинная и ее содержимое можно резюмировать как «в целом выглядит адекватно, явных уязвимостей вроде не видно». Зато по ссылкам много интересной информации о разных атаках на зашифрованный жесткий диск. Полагаю, хабражителям будет интересно краткое изложение атаки с романтичным названием «evil maid» и ее логическое продолжение. Надежно ли защищена ваша деловая переписка от молодых любопытных таможенников, если в аэропорту солнечной Испании у вас на 10 минут попросили досмотреть ноутбук с зашифрованным жестким диском?
Ответ под катом

Ликбез: методы ресайза изображений

Время на прочтение7 мин
Количество просмотров128K
Почему изображение, масштабированное с бикубической интерполяцией, выглядит не как в Фотошопе. Почему одна программа ресайзит быстро, а другая — нет, хотя результат одинаковый. Какой метод ресайза лучше для увеличения, а какой для уменьшения. Что делают фильтры и чем они отличаются.

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


Этот человек сидит среди ромашек, чтобы привлечь ваше внимание к статье.
Читать дальше →

Фиеричная система счисления, или почему 1 + 10 = 100

Время на прочтение9 мин
Количество просмотров64K
«10.01 х 10.01 = 1000.1001»
Джордж Оруэлл. «1010001001001000.1001001000100001»


image


Существует ли позиционная система счисления с иррациональным основанием, в которой все натуральные числа записываются конечным числом цифр? В которой число больше единицы, не имеющее цифр после запятой, наверняка не целое и даже не рациональное? В которой 1 + 10 = 100, а 1 + 1 = 10.01?
Я заинтригован и хочу узнать ответ

Autofill: чего не знают веб-разработчики, хотя должны знать

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


Многим известно, что в мобильной версии Safari можно отсканировать свою банковскую карту. Но многие ли разработчики умеют создавать формы, поддерживающие эту возможность?

Готов поспорить, что немногие.

Дело осложняет полное отсутствие документации от Apple по работе этой функции. Но тут есть один момент. Функция сканирования банковских карт является подмножеством автозаполнения — браузерного функционала, давно игнорируемого веб-разработчиками. Понятно, почему они не уделяли ему должного внимания: когда регулярно заполняешь форму тестовыми данными, автозаполнение обычно мешает. Но для наших пользователей это важная функция. В Google выяснили, что при использовании автозаполнения пользователи на 30% быстрее заполняют формы. Так что давайте изучим работу автозаполнения, разберёмся, как создавать формы, поддерживающие кросс-браузерное автозаполнение, и воспользуемся преимуществами новых возможностей наподобие сканирования банковских карт.
Читать дальше →

Версионная миграция структуры базы данных: основные подходы

Время на прочтение15 мин
Количество просмотров139K
Проблемы контроля версий баз данных и миграций между версиями уже не раз поднимались как на Хабре (1, 2, 3 и др.), так и в Интернете (преимущественно, англоязычном).

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

Время жизни сессии

Время на прочтение2 мин
Количество просмотров125K
Приветствую.
Столкнулся с проблемой убийства сессий раньше назначенного им срока. То есть устанавливаю

ini_set('session.gc_maxlifetime', 120960);
ini_set('session.cookie_lifetime', 120960);


А сессия убивается примерно через 30 минут.
Гуглил долго и тщательно. Не нагуглил ничего, что помогло бы.
Стал читать мануал и нашел причину проблемы. Оказалось всё просто до одурения.
Читать дальше →

Yii: лучшие практики

Время на прочтение8 мин
Количество просмотров29K
В статье будут освещены следующие проблемы разработки и поддержки проектов на базе php-фреймворка Yii:

  1. Главные достоинства и недостатки
  2. Тестирование
  3. Нюансы использования ActiveRecord
  4. Сервис-ориентированный подход
  5. Новшества языка
  6. Расширение фреймворка


Читать дальше →

Еще раз о том, как не сделать из своей сети «решето»

Время на прочтение20 мин
Количество просмотров349K
Здравствуйте! Я почти 10 лет работаю в сфере ИТ и ИБ, всегда интересовался практической безопасностью, в настоящее время работаю пентестером. За все время работы я постоянно сталкивался с типовыми ошибками в настройках и дизайне инфраструктуры. Ошибки эти чаще всего досадные, легко устранимые, однако быстро превращают сеть в полигон для взлома. Порой кажется, что где-то специально учат так настраивать, насколько часто они встречались. Это и побудило меня написать данную статью, собрав все самое основное, что может улучшить защищенность.

В этой статье я не буду рассказывать про использование сложных паролей, максимального ограничения прав доступа, смене учетных записей по умолчанию, обновлению ПО, и других «типовых» рекомендациях. Цель статьи – рассказать о самых частых ошибках в настройках, заставить администраторов и специалистов ИБ задуматься над вопросом – «а все ли в моей сети хорошо?», а также показать, как можно оперативно прикрыть те или иные типовые уязвимости, используя встроенные или бесплатные средства, не прибегая к дополнительным закупкам.

Инструкций-рецептов намеренно не прикладываю, так как многое ищется очень легко по ключевым словам.
Читать далее

Picture — новый элемент, которого нет

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


В девелоперских сборках браузеров Chrome, Firefox и Opera появилась поддержка нового элемета picture, призванного решить ряд проблем возникающих при разработке адаптивных дизайнов. Давайте рассмотрим его подробнее.
Читать дальше →

Информация

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