May 6, 2008 · Comments
БлогБюрократияСтранное
Я прошу прощение у читателей за долгое молчание. Оно связано с двумя вещами. Во-первых, вначале марта у меня случился неожиданный проект в новой для меня области, реализация которого отнимает много времени и закончить основную его часть нужно непременно до середины мая. А во-вторых, наше любимое украинское консульство в Сан-Франциско умудрилось потерять наши с женой паспорта как раз перед поездкой домой, чем основательно подпортило нам планы. Общение с консульством хотя и очень увлекательно, и крайне полезно для наращивания уникального жизненного опыта и толстой, нечувствительной к разным жизненным мелочам кожи, но при этом совершенно неконструктивно.
Read On →
Apr 15, 2008 · Comments
УязвимостьFlash
Томас Пташек (Thomas Ptacek) анализирует нечеловеческий эксплоит Марка Доуда (Mark Dowd), использующий уязвимость в Flash.
Эксплоит использует целочисленное переполнение, возникающее из-за того, что Flash runtime использует знаковое число, прочитанное из SWF файла, как беззнаковый размер выделяемого блока памяти. В итоге Flash пытается выделить несколько гигабайт памяти, получает в ответ NULL, но не проверяет его, а пишет 32-х разрядное число по смещению от полученного нулевого указателя. Марк вычислил, что если смещение X превышает 0x80000000 и при этом X+4 делится без остатка на 12, то результирующий адрес получается валидным. Записываемое 32-х битное значение получается из исходного 16-ти разрядного числа вычитанием значения еще одной переменной. Иными словами, ни указатель, ни записываемое значение не контролируются хакером полностью.
Тем не менее…
Read On →
Apr 12, 2008 · Comments
Космос
Сегодняшняя (у меня всё еще 12-ое число. :-) ) картинка на APOD: Yuri’s Planet.
Apr 10, 2008 · Comments
Юмор
Попалось на глаза забавное - ЧислоТрамвая (ЧислоГрузовика, TruckNumber):
ЧислоГрузовика - это размер наименьшей группы людей в проекте, которые если все вместе попадут под грузовик, то у проекта будут проблемы
В оригинале: The TruckNumber is the size of the smallest set of people in a project such that, if all of them got hit by a truck, the project would be in trouble.
и второй вариант определения, куда более фатальный
ЧислоГрузовика - это размер наименьшей группы людей в проекте, которые если кто либо один из которых попадёт под грузовик, то у проекта будут проблемы.
Read On →
Apr 9, 2008 · Comments
Космос
Вчерашнняя фотография на Астрономической Картинке Дня:
Большое Магелланово Облако (БМО). (c) Юрий Белецкий (ESO)
Автор - Юрий Белецкий, он же Garmisch, завсегдатай Астрофорума. Причем на APOD его работы попадают уже не в первый раз. А именно этот снимок он выкладывал в форуме пару месяцев назад.
PS. Вот такое вот можно снимать, если руки из правильного места ростут. :-)
Apr 8, 2008 · Comments
Странное
Не могу не поделиться. Это просто праздник какой-то:
…У меня есть один знакомый из Вашингтона, который тоже пишет про роскошную жизнь в Америке типа - буду голосовать за Буша, он мне 300 баксов прислал и еще 600 обещал, про пособие… У нас это история про Жирика. В Москве даже кот зарабатывает больше. На стоимость своей квартиры, я в NYC могу две купить и содержать их лет десять. Поездку за лучшей жизнью я переболел еще лет 20 назад.
Read On →
Apr 6, 2008 · Comments
Странное
Не так давно приходит письмо с вопросом и довольно длинным уже шлейфом ответов и форвардов. Вопрос (мой вольный перевод): «Как в расширении для WinDbg определить разрядность кода в 32-х битном процессе, запущенном под Wow64?» Я в вопросах разработки плагинов для WinDbg не в зуб ногой, но все что касается Wow64 так или иначе касается и меня тоже.
Сканирую «простыню». Первый же ответ на оригинальное письмо говорит, что команда «.effmach» позволяет переключаться между 32-х битным и 64-х битным кодом. Ответ автора вопроса не устроил, и она предположила, что для определения разрядности кода можно сканировать заголовок PE файла. В таком виде это письмо попадает ко мне.
Read On →
Apr 1, 2008 · Comments
ПрограммированиеWow64
В комментариях к загадке ответ был дан почти сразу. Действительно, обработчик отложенной загрузки DLL попытается загрузить «version.dll» по имени, а не по полному пути. В результате загрузчик будет искать библиотеку, пользуясь правилами по умолчанию. Номер два в этом списке поиск DLL в system32, что при отключенном перенаправлении файловой системы, равноценно попытке загрузить 64-х битную DLL в 32-х битный процесс. Бум.
Read On →
Mar 30, 2008 · Comments
ПрограммированиеWow64
Вот эта программа печатает номер версии указанного пользователем модуля, который она берет из поля “FileVersion” ресурса VS_VERSION_INFO этого модуля. Имя модуля передается как первый параметр командной строки. Для работы с VS_VERSION_INFO используется стандартная библиотека version.dll.
(далее идет много кода)
Read On →
Mar 27, 2008 · Comments
amd64ОтладкаWindowsWindows Kernel
За последние две-три недели узнал много нового про архитектуру amd64. Во-первых, я наткнулся сначала на документ, а затем на аналогичный раздел в MSDN, где толково описаны не только соглашения о вызовах (этого добра везде навалом), но и дано детальное описание того, как должен выглядеть стек функции, как происходит раскрутка стека, что такое и зачем нужны пролог и эпилог функции. Полезный документ, особенно если нужно разобраться как работает stack unwinder.
Read On →