Pull to refresh
48
0

Программист

Send message

Правильное применение сплайсинга при перехвате функций подготовленных к HotPatch

Reading time14 min
Views7.6K
В прошлой статье я рассмотрел пять вариантов перехвата функций включая их вариации.

Правда в ней я оставил не рассмотренными две неприятных ситуации:
1. Вызов перехваченной функции в тот момент, когда ловушка снята.
2. Одновременный вызов перехваченной функции из двух разных нитей.

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

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

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

Перехват сплайсингом через JMP NEAR OFFSET или PUSH ADDR + RET (наиболее уязвимый к данным ошибкам) рассмотрен не будет, т.к. по хорошему, без реализации дизассемблера длин, заставить данный вариант перехвата работать как нужно не получится.

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

Быстрая нейронная сеть для каждого

Reading time3 min
Views226K
Данная статья продемонстрирует возможность легко написать свою нейронную сеть на языке Javа. Дабы не изобретать велосипед, возьмем уже хорошо проработанную библиотеку Fast Artificial Neural Network. Использование нейронных сетей в своих Java-проектах — реально. Часто можно услышать упреки в адрес Java касательно скорости выполнения. Хотя разница не так велика — подробно об этом можно узнать в публикации «Производительность C++ vs. Java vs. PHP vs. Python. Тест «в лоб»». Мы будем использовать обертку вокруг библиотеки FANN.
Читать дальше →

Основы фрактального сжатия изображений

Reading time4 min
Views35K
Фракталы — удивительные математические объекты, подкупающие своей простотой и богатыми возможностями по построению объектов сложной природы при помощи всего лишь нескольких коэффициентов и простой итеративной схемы.
Именно эти возможности и позволяют использовать их для сжатия изображений, особенно для фотографий природы и прочих сложных самоподобных изображений.
В этой статье я постараюсь коротко дать ответ на простой вопрос: «Как же это делается?».
Узнать, как это делается

Spatial hashing для самых маленьких

Reading time5 min
Views42K


Spatial hashing это простая техника, которая используется в базах данных, физических и графических движках, симуляциях частиц и вообще везде, где нужно быстро что-то найти. Если в кратце, то суть в том, что мы разбиваем пространство с объектами на ячейки и складываем в них объекты. Затем вместо поиска по значению очень быстро ищем по хэшу.

Предположим, что у вас есть несколько объектов и вам нужно узнать нет ли между ними столкновений. Простейшим решением будет посчитать расстояние от каждого объекта до всех остальных объектов. Однако, при таком подходе количество необходимых вычислений растёт слишком быстро. Если на десятке объектов приходится делать сотню проверок, то на сотне объектов выходит уже десяток тысяч проверок. Это и есть печально известная квадратичная сложность алгоритма.
Можно улучшить ситуацию, если...

Android на x86 ноутбуке

Reading time4 min
Views53K
image
image

Попался в руки старый нетбук Acer Aspire One, самый первый из них, с 8 Гб тормознутой флешки вместо диска. За время активной жизни на нем были WinXP (очень медленно) и Arch Linux (едва приемлемо). Я уже собирался вернуть на него обратно Arch и потом в меру сил придумывать, зачем же он нужен, но тут наткнулся на проект Android х86. Он более-менее развивается и направлен на запуск Андроида на ноутбуках, планшетах и иногда настольных компьютерах с архитектурой х86. Началось все с порта на Asus Eee PC в районе версии 1.6, но постепенно поддержка разнообразного настольного железа расширилась. Сейчас доступна для скачивания версия 4.4-r3, 5.0 в работе. Соответствие между ветками для х86 и теми, что устанавливаются на телефоны для меня крайне призрачны, потому что сталкиваться с потрохами системы не приходилось. Есть еще аналогичный проект Android-IA, курируемый Intel, но там поддерживается меньше железа и обязательно требуется UEFI для загрузки.
Читать дальше →

Немецкие физики подтвердили работоспособность «невозможного» двигателя на электромагнитной тяге

Reading time3 min
Views94K
image

Немецкие учёные подтвердили, что «невозможный» двигатель на базе электромагнитных волн действительно может создавать ненулевую тягу. Результаты своего исследования они презентовали 27 июля на конференции, посвящённой двигателям и энергетике, которую проводил Американский институт аэронавтики и астронавтики. Представлял работу профессор Мартин Таджмар из Дрезденского технологического университета.

Британский подданный и инженер Роджер Шойер основал компанию Satellite Propulsion Research Ltd в 2001 году специально для разработки электромагнитного двигателя (EmDrive) собственной конструкции. Инженер ранее работал в военной промышленности, принимал участие в космических проектах, включая разработку европейской системы глобальной навигации «Галилео».

image

Придуманный им двигатель на первый взгляд нарушает закон сохранения импульса — он создаёт тягу из-за отражения электромагнитного излучения от стенок отражательной камеры без какого бы то ни было реактивного выброса. Из-за сомнительной природы двигателя его долго не принимали всерьёз, однако, за проверку работоспособности в конце концов принялось НАСА — агентство с достаточно хорошей репутацией.
Читать дальше →

Предположение о том, как работает EmDrive — двигатель на магнитной тяге

Reading time4 min
Views13K
Я понимаю, то что я напишу, идет вразрез с теорией А. Эйнштейна и приверженцев идеи о том, что гравитация связана с искривлением пространства и времени.

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

Речь пойдет об EmDrive: возможном двигателе на магнитной тяге (ссылка на статью).


Возможный двигатель на электромагнитной тяге
Читать дальше →

Шпионские штучки в Wolfram Language, или как спрятать в картинке всё что угодно

Reading time4 min
Views26K

Перевод поста Джона Маклуна (Jon McLoone) "Doing Spy Stuff with Mathematica".
Код, приведенный в статье, можно скачать здесь.
Выражаю огромную благодарность Кириллу Гузенко KirillGuzenko за помощь в переводе.

Я читал о IT проблемах недавно арестованных, как заявлялось, русских шпионов. Говорилось, что они пользовались не самыми надёжными инструментами цифровой стеганографии (вики). И мне стало интересно — насколько быстро я смогу реализовать стеганографию через цифровые изображения в Mathematica, используя метод, известный как "вставка младшего бита" (least significant bit insertion).

Идея стеганографии основывается на том, чтобы спрятать сообщения в какой-то другой информации таким образом, чтобы никто факта коммуникации не заметил. Само слово происходит от латино-греческий комбинации, означающей «скрытное письмо»; данным термином назывался процесс нанесения секретного сообщения на лысую голову человека, на которой затем отрастали волосы и, тем самым, прятали сообщение. В случае цифровой стеганографии всё делается посредством математики.
Читать дальше →

Обзор нового Intercepter-NG 0.9.10

Reading time10 min
Views138K
Intro

С большим удовольствием хочу представить новую версию Intercepter-NG 0.9.10, которая, на мой взгляд, в значительной степени расширяет область применения инструмента. Данный обзор будет представлен не в виде сухого перечисления нововведений, а скорее как описание новых векторов атак вместе с рядом технических подробностей и элементами hack-story. Приступим…

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

Делаем приватный монитор из старого LCD монитора

Reading time2 min
Views983K


Вы наконец-то можете сделать кое-что со своим старым LCD монитором, который завалялся у Вас в гараже. Превратите его в шпионский монитор! Для всех вокруг он будет выглядеть просто белым экраном, но не для Вас, потому что у Вас будут специальные «волшебные» очки.

Всё что Вам нужно – это пара старых очков, нож для бумаги и растворитель для краски.

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

Как быстро раздать wifi с ноутбука — 3 простых команды

Reading time2 min
Views728K
Периодически я сталкиваюсь с ситуациями, когда необходимо быстро настроить раздачу интернета через WiFi со своего ноутбука и под рукой нет специальной программы. Вот и сейчас мой роутер приказал долго жить и оставил дом без интернета. А не так давно телефон друга отказался подключаться к моему роутеру и мы быстро организовали дополнительный wifi-сигнал с моего ноута, что спасло ситуацию.

И помогают мне в этом 3 команды:
netsh wlan set hostednetwork mode=allow
netsh wlan set hostednetwork mode=allow ssid=FastWifi key=12345678 keyUsage=persistent
netsh wlan start hostednetwork

Под катом я детально расскажу как и что нужно делать и покажу на примере настройки Windows 7.

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

Anonymous и Ко создали ботнет из тысяч домашних и офисных роутеров

Reading time2 min
Views12K


Компания Incapsula, занимающаяся исследованиями в сфере информационной безопасности, сообщает о том, что некая группа (скорее всего с участием Anonymous) создала ботнет из тысяч роутеров, установленных в офисах и квартирах. При этом использовались даже не уязвимости роутеров, а невнимание владельцев к безопасности, когда пользователь оставляет дефолтный логин и пароль. Дефолтные связки логин/пароль для практически всех моделей роутеров давно известны, поэтому использовать этот метод можно без труда.

Тем не менее, работа со стороны создателей ботнета была проделана солидная: в единую сеть объединили роутеры из США, Тайланда и Бразилии. Работать ботнет начал с конца декабря 2014 года, поражая десятки целей. Используя пропускную способность домашних и офисных каналов связи, злоумышленники создали довольно мощное оружие, которое использовалось против разного рода онлайн-мишеней.
Читать дальше →

Об алгоритме взлома WPA-PSK

Reading time8 min
Views154K
Доброго времени суток, уважаемое Хабросообщество!
В данном топике хотелось бы рассмотреть некоторые тонкие вопросы, связанные с атаками на сети Wi-Fi в режиме разделяемого ключа WPA-PSK (если говорить более просто — WPA-PSK — режим без выделенного сервера аутентификации, который используют большинство пользователей Wi-Fi, например, при создании подключения по сети типа компьютер-компьютер).

К чему все это?


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

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

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Works in
Date of birth
Registered
Activity