Pull to refresh
0
0

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

Send message

О безопасности UEFI, части нулевая и первая

Reading time9 min
Views87K
Когда-то давно, в начале 2014 года, я назвал состояние безопасности большинства реализаций UEFI "полумифическим". С тех пор минуло полтора года, дело осторожно двигается с мертвой точки, но до сих пор очень многие производители ПК для конечного пользователя не обращают на эту самую безопасность почти никакого внимания — «пипл хавает».
В этой статье речь пойдет о модели угроз и векторах атаки на UEFI, а также о защитах от перезаписи содержимого микросхемы BIOS — самой разрушительной по возможным последствиям атаки.
Если вам интересно, как устроена защита UEFI и какие именно уязвимости в ней так и остаются неисправленными на большинстве современных систем — добро пожаловать под кат.
Читать дальше →
Total votes 48: ↑48 and ↓0+48
Comments51

Код 15-летней давности и газета объявлений

Reading time4 min
Views48K
Увидев переводную публикацию о поддержке древнего как кости мамонта legacy-кода, не могу не поделиться историей из своего опыта, а заодно, и призвать написать тех, кто также как и я сталкивался с подобными задачами. Да и за державу обидно — почему подобные публикации – в основном, переводные? У нас есть и было немало программистов-самородков, ваяющих свое, ни с чем не совместимое программное обеспечение – свои собственные СУБД, графические интерфейсы, драйвера для промышленного оборудования собственной разработки. По работе я немало сталкивался с творениями местных кулибиных, и еще расскажу про них, если будет интерес.

Случилась эта история в 2001 году и началась с того, что в FIDO-шной конференции $CRACK$.TALKS
Читать дальше →
Total votes 163: ↑159 and ↓4+155
Comments20

Шпаргалка Java программиста 2: Триста пятьдесят самых популярных не мобильных Java opensource проектов на github

Reading time39 min
Views167K
Что это и зачем оно надо: Как известно, главное преимущество Java мира в том в нем существует огромное количество open-source проектов на на все случаи жизни, однако найти нужный на github'e не так просто, так как описание проекта часто мало информативно, зачастую сложно даже понять этот проект для Android'a или нет. В этой статье я автоматически и полуавтоматически собрал Java проекты, убрал старые и проекты только для Android'a, выбрал 350 набравших больше всего звезд, разделил по категориям и перевел описания.

Если вы хотите убедиться что базы данных пишут не только на C, найти проекты для работы с большими данными или нейронными сетями, пишите свой язык программирования для JVM и хотите посмотреть как это уже сделано или же просто хотите узнать какие новые возможности можно найти в Java мире open-source то это статья вам, думаю, может пригодится.

В чем смысл серии статей 'Шпаргалки Java программиста'
За время работы Java программистом я заметил, что как правило программисты постоянно и планомерно используют от силы 10-20% от возможностей той или иной технологии, при этом остальные возможности быстро забываются и при появлении новых требований, переходе на новую работу или подготовке к техническому интервью приходится перечитывать все документации и спецификации с нуля. Зато наличие краткого конспекта особенностей тех или иных технологий (шпаргалок) позволяет быстро освежить в памяти особенности той или иной технологии.


Другие статьи серии: часть 1. JPA и Hibernate в вопросах и ответах

Update: Внимание, актуальная версия со много большим количеством ссылок, находиться теперь в моем github'e проекте useful-java-links, по этой ссылке.


Читать дальше →
Total votes 51: ↑43 and ↓8+35
Comments49

Анализ одной из модификаций шифровальщика VaultCrypt

Reading time116 min
Views25K
Привет, хаб!

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

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

TL;DR: под катом — практически построчный разбор довольно большого и муторного BAT-файла. Код, картинки, минимум мыслей.

ATTENTION: некоторые антивирусы (в частности, мой Avast!) очень негативно реагируют на приведенные фрагменты JS-кода. При включенном Avast! у меня вместо статьи отображалась пустая страница с сообщением «Соединение было сброшено». Учтите это, если захотите почитать.

NB:
В попытках понять, что происходит, я провел несколько экспериментов, в результате чего стал счастливым обладателем пятидесяти черновиков постов. И я слишком поздно осознал, что удалить на Хабре черновик невозможно.)
Отключите Avast!
Total votes 18: ↑16 and ↓2+14
Comments36

Настройка Vim-like управления в GTK

Reading time3 min
Views6.6K
Текстовый редактор Vim я использую практически для всех задач, связанных с интерактивным редактированием текста: для конфигурационных файлов и исходного кода, как среду верстки LaTeX, для написания писем в связке с mutt и даже как внешний редактор в web-браузере.

Хорошо прижившиеся горячие клавиши управления курсором [hjkl] начали перемещаться за пределы редактора, например, в командную оболочку (в связке с модификатором).

Однако, хотелось бы иметь привычные хоткеи в графических приложениях. Собственно, далее речь пойдет о настройке GTK-окружения.
Читать дальше →
Total votes 10: ↑10 and ↓0+10
Comments7

Bash скрипт для создания архива данных

Reading time12 min
Views19K
На днях озадачился резервным копированием данных в облако. Нашёл подходящий сервис попробовал, и понял, что существует необходимость в сжатии бэкапа перед отправкой (думаю нет необходимости объяснять зачем). Не стал заморачиваться в поиске готовых решений и решил сам написать скромный скриптик для этой цели. Исходные файл или папка жмутся в .tar.xz с уровнем сжатия 9, что позволяет сохранить права и выдаёт хорошую компрессию на выходе (у меня снэпшот системы сжимается 4 раза). Результатом остался доволен, думаю для малого бизнеса, да и для личных целей многим пригодиться.

Возможности скрипта:
  • гибкая настройка
  • проверка на доступность ресурсов (источник, директория назначения, рабочая директория)
  • проверка на файл блокировки (предотвращает выполнение если источник еще создаётся)
  • вывод информации о сжатии (размер источника, размер архива, соотношение этих размеров)
  • логирование и дебагинг (вывод дополнительной информации о процессе выполнения)
  • возможность менять вывод (как в консоль и лог-файл, так и только в лог-файл)
  • сохраняет и ротирует предыдущие архивы
  • возможность форматирования текста вывода
  • отправка e-mail-а в случае успешного и/или неуспешного завершения

Читать дальше →
Total votes 20: ↑13 and ↓7+6
Comments22

Вымогатель Android/Lockerpin.A атакует пользователей США

Reading time5 min
Views6.7K
Недавно наши аналитики зафиксировали очередной всплеск активности злоумышленников, которые распространяли одну из модификаций вымогателя для Android. Ранее мы уже наблюдали семейства вымогателей, которые также совмещали в себе функции фальшивого антивируса (Fake AV) и могли блокировать экран устройства пользователя (напр., Android Defender). В прошлом году мы также писали о вымогателе Simplocker, представляющем из себя первую вредоносную программу – вымогатель для Android, которая содержала в себе возможности по шифрованию файлов.



В предыдущих версиях вымогателя для Android типа LockScreen, механизм блокировки экрана обычно реализовывался методом постоянной прорисовки окна вымогателя на переднем плане, причем такая операция выполнялась в бесконечном цикле, чтобы никто не мог прервать ее. С другой стороны, преодоление такого механизма самозащиты не представляло сложности для опытного пользователя, он мог использовать для разблокировки механизм Android Debug Bridge (ADB) или отключить права Администратора, а также удалить вредоносное ПО в безопасном режиме (Safe Mode).

Читать дальше →
Total votes 3: ↑3 and ↓0+3
Comments4

Google выпустила security-обновление для Android

Reading time2 min
Views6.2K
Google выпустила второе по счету ежемесячное security-обновление для Android (Nexus Security Bulletin — September 2015), которое, в первую очередь, адресуется «родным» устройствам Nexus. Обновление исправляет 8 уязвимостей, одна из которых — CVE-2015-3636 типа Elevation of Privilege, присутствует в ядре ОС и уже находится на стадии активной эксплуатации злоумышленниками. С использованием этой уязвимости атакующие могут поднять свои привилегии в системе (Local Privilege Escalation).



В прошлом обновлении для Android, Google исправила серию т. н. Stagefright уязвимостей, которые позволяли злоумышленникам удаленно исполнять свой код в Android путем отправки специальным образом сформированного MMS сообщения. Однако, в самом обновлении, также нашлась уязвимость (CVE-2015-3864), позволяющая атакующим эксплуатировать устройством как и в случае с Stagefright. Новое обновление исправляет эту уязвимость.

Читать дальше →
Total votes 4: ↑4 and ↓0+4
Comments1

Пишем синтезатор для концерта. Полевые испытания PureData

Reading time4 min
Views9.9K

Вводная


Предпосылки


Строить синтезаторы на PD занятие крайне интересное, однако, комнатные эксперименты и диванный парсинг миди-сообщений все таки серьезно отличаются от «боевых» условий, в которых приходится выступать. И после провальной демонстрации на LinuxFest я серьезно озаботился решениями для лайв-выступлений. Обычно, какого-то более-менее функционального миди-контроллера (такой, чтобы использовал хотя бы два канала, которые можно прослушивать отдельно) бывает достаточно, однако, это достаточно затратно и приходится все компенсировать GUI самого синтезатора и полагаться на мышь и клавиатуру.
Читать дальше →
Total votes 9: ↑8 and ↓1+7
Comments10

Утиные истории: утка ищет баги

Reading time2 min
Views25K


Грядет 13 сентября, 256-й день года. Но в этом году он приходится на воскресенье, поэтому мы решили отметить это событие слегка заранее. Иными словами, поздравляем всех с Днём программиста! Желаем вам кода без багов, побольше удобных библиотек, толковых и нетребовательных пользователей, творческого полёта мысли, и чтобы вы всегда успевали к дедлайну. Но, как говорится, раздавать пожелания — не мешки ворочать. Чтобы всё это сбылось, нужно работать до седьмого пота, кодить с умом. Вот только вдохновение — дама ветреная и капризная. Сейчас оно есть у тебя, есть несколько идей, как можно получше реализовать какую-то фичу. Но проходит некоторое время, и всё, не можешь придумать ничего дельного. Или долго и безрезультатно ищешь причину какого-то бага, и никак не можешь понять, почему же не работает так, как задумано.
Читать дальше →
Total votes 65: ↑49 and ↓16+33
Comments37

Распознать нельзя оставить картинкой, или кое-что о сложных случаях оптического распознавания текста

Reading time5 min
Views23K
На данный пост нас сподвигло интервью, которое наш европейский офис дал одному компьютерному журналу. Речь шла об ABBYYFineReader и о технологиях распознавания. Среди вопросов был и примерно такой:

What were the main challenges to be overcome when developing the software? Were there any particularly knotty problems?

В ответ так и хочется выдать служебную тираду, про то, что изображения бывают очень разные, фотографии нечёткие, разрешение низкое, бумага грязная, буквы вычурные… В общем, даже не зная ничего или почти ничего о наших технологиях, можно сказать нечто правдоподобное.

И здесь есть повод задуматься. Всё-таки с точки зрения сложности задач не так уж это интересно – низкое качество изображения и декоративные шрифты. Мы примерно то же самое могли сказать и пять лет назад, и десять, и двадцать. Да, несомненно, прогресс есть – и для большей части версий известный обозреватель и наш старый друг Сергей Голубицкий находил как раз те картинки, которые оказывались на «переднем крае» наших технологий – чтобы именно их новая версия FineReader стала обрабатывать практически идеально, а старая пока «спотыкалась».

Но чтобы рассказать о том, какие трудности перед нами стоят ещё, стоит прибегнуть к небольшой метафоре. Вот какие трудности у вас возникли, чтобы решить следующую задачушкольный пример
Только не надо и правда её решать в уме: мы НЕ подбирали цифры, чтобы ответ был целым
Total votes 54: ↑53 and ↓1+52
Comments16

Зачем нужны почты no-reply@?

Reading time4 min
Views158K
Почты вида noreply@domain.ru, no-reply@domain.ru и прочие — вызов здравому смыслу. Просто вдумайтесь: это действующие почтовые ящики, на которые можно отправить письмо, но делать этого не нужно. Я знаю такой же по логичности объект – это кнопка «не нажимать». Вот примерно такая:



Есть такие штуки – протоколы, стандарты, принятые шаблоны использования. Все они однозначно подсказывают, что если есть почтовый адрес, на него можно написать. Если бы нам нужен был почтовый адрес, на который нельзя писать, его бы описали вместе со всем стеком протоколов, который обеспечивает работу электронной почты. Но его такого тупо нет. И тут на сцене появляется наш noreply.
Читать дальше →
Total votes 122: ↑103 and ↓19+84
Comments207

Добавление модулей ядра в дистрибутивах Fedora

Reading time1 min
Views9.3K
В этой короткой заметке рассмотрена процедура установки модулей ядра в дистрибутивах Fedora. Данная процедура может быть использована для добавления модулей ядра, не включенных в состав стокового ядра Fedora, а также для сборки модулей в дереве ядра в процессе разработки для этого дистрибутива.

Процедура установки описана на примере модулей шины CAN и дистрибутива Fedora 22.
Читать дальше →
Total votes 9: ↑5 and ↓4+1
Comments4

Как компьютер сам свой код улучшал, или программируем процесс программирования

Reading time9 min
Views34K
На носу было придумывание темы для диплома, на кафедре популярностью пользовались различные варианты идей связанных с генетическими алгоритмами, а мне самому хотелось сделать что-нибудь этакое. Так и родилась идея, давшая начало данному проекту, а именно генетическому оптимизатору программного кода.



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

Например вот такая забавная оптимизация набора арифметических инструкций (взятых из какой-то подвернувшейся под руку математической библиотеки), соответствующих формулам: , которая на 6 джаве с выключенным JIT у меня давала около 10% ускорения, при этом на первый взгляд даже не очевидно что эти формулы эквивалентны (ОТКУДА ТУТ OR? ЭТО ВООБЩЕ ЗАКОННО?!), хотя это так. Под катом я расскажу, как именно получались такие результаты и каким образом компьютер придумывал лучший код чем тот, который мог написать я сам.
Читать дальше →
Total votes 45: ↑43 and ↓2+41
Comments39

И эти люди запрещают мне ковыряться в носу...(в продолжение темы салазок для HDD)

Reading time3 min
Views42K
Тема использования салазок для HDD оказывается весьма спорной. Встаёт неизменный вопрос: стоит ли использовать неоригинальные жёсткие диски и какие риски это использование несёт? В ответ на этот вопрос существует целая масса различных мнений, что и демонстрирует статья от 5 августа «Салазки для HDD — рациональное звено расходов». Если вкратце, там поднимается тема возможной экономии на приобретении серверных жёстких дисков непосредственно от фирм-производителей HDD и салазок к ним, вместо переплаты вендорам за фирменные шильдики и прошивку на тех же дисках.
Какие же аргументы были приведены в статье? К достоинствам оригинальных жёстких дисков были причислены прошивка от производителя соответствующего серверного оборудования, тестирование им же и его же гарантия. В приобретении неоригинальных дисков плюсами выступили вдвое (а иногда — втрое) меньшая цена, а также гарантия и тест от производителя HDD. Особенно много внимания было уделено прошивке и обсуждению её цены. Однако, кое-какие аспекты всё же ускользнули от всеобщего внимания. Да и вообще, к оригинальности серверных дисков имеется масса вопросов.
Давно ни для кого не секрет, что компании-производители серверного оборудования не занимаются производством HDD самостоятельно. Вместо этого делается фирменная перепрошивка и тестирование дисков от Seagate, Hitachi, Fujitsu, WD и т. д. с присвоением фирменного шильдика и Part Number. Зачастую диски идут не под эгидой вендора, а под логотипом производителя и с небольшой голографической вендоровской наклейкой.
Читать дальше →
Total votes 32: ↑24 and ↓8+16
Comments59

Масштабное исследование сбоев Flash накопителей (обзор статьи)

Reading time8 min
Views26K
Не так давно было опубликовано интереснейшее исследование «A Large-Scale Study of Flash Memory Failures in the Field” за авторством Qiang Wu и Sanjev Kumar из Facebook, а также Justin Meza и Onur Mutlu из Университета Карнеги-Меллон. Ниже основные выводы из статьи с небольшими комментариями.

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

Авторами была собрана обширная статистика за четыре года эксплуатации флэш-накопителей в дата-центрах Facebook.

Как многие наверняка знают, Facebook долгое время была лучшим (и основным) клиентом компании Fusuion-IO (сейчас куплена SANdisk), которая одной из первых начала выпускать PCI-e флэш-накопители.
image

В результате проведенного анализа собранных данных, был сделан ряд интересных выводов:
Читать дальше →
Total votes 15: ↑15 and ↓0+15
Comments14

Как быстро и бесплатно получить доступ к windows на osx или linux

Reading time2 min
Views48K
Среди разработчиков нередка ситуация, когда основной рабочий компьютер это mac или linux, но время от времени нужен доступ к windows: запустить специфичную программу, проверить верстку в internet explorer, поставить триальную версию corel draw для конвертации в .svg.

“Классический” способ решения этой задачи — установить одну из популярных виртуальных машин, скачать 90-дневную триал версию windows и установить ее в виртуальноый машине. Но у этого способа есть один большой минус — о необходимости деражать под рукой такую виртуальную машину разработчик обычно вспоминает в тот момент когда “о, тут нужна винда!”. А ставится windows не то чтобы очень быстро. И 90-дневный триал, что характерно, имеет обыкновение заканчиваться в самый неподходящий момент. Даже с rearm. Недавно Microsoft пошла на встречу разработчикам и сделала интересный сервис, позволяющий очень быстро и бесплатно получить доступ к нужной версии windows.
Подробности - под катом
Total votes 61: ↑43 and ↓18+25
Comments26

Уязвимость (?) и слежка в эмуляторе Bluestacks?

Reading time2 min
Views67K
Прошло два дня этой недели, а крупных скандалов еще нет. Болото стало затягиваться ряской. Давайте поговорим о Bluestacks, эмуляторе Android. Разработчики утверждают, что его установили 90 000 000 человек. Ну давайте я попробую кинуть в Bluestacks грязью.

image
Читать дальше →
Total votes 56: ↑53 and ↓3+50
Comments51

«Благодарим за использование наших продуктов и служб». Что мы разрешаем сервисам

Reading time10 min
Views14K
Компания Microsoft является далеко не единственной, пытающейся застолбить за собой право на использование наших данных (в том числе и персональных). Другие компании начали этот путь куда раньше и зашли на него куда дальше. В качестве разминки предлагаю Хаброжителям угадать, кому принадлежит приведенная ниже фраза.

"… вы предоставляете компании… и ее партнерам действующую во всем мире лицензию, которая позволяет нам использовать это содержание...".

И это далеко не все интересное.
Читать дальше →
Total votes 23: ↑18 and ↓5+13
Comments15

Information

Rating
Does not participate
Location
Уфа, Башкортостан(Башкирия), Россия
Registered
Activity