Blog. Just Blog

Темная сторона Силы

Мастерская Темного Знания
Темная сторона Силы - RSS-канал Темная сторона Силы - Карта сайта

gzuncompress и gzinflate: Assembler vs PHP

11.08.2009 | Категория: Темная сторона Силы | Автор: ManHunter
При разработке проекта Massacre возникла необходимость реализовать функции распаковки PHP-кода на Ассемблере. В этой статье я распишу все выкладки по этому вопросу. Кому-нибудь пригодится - хорошо, не пригодится - оставлю для себя, чтобы не забыть. Как всегда, начнем с теории. Функции gzuncompress и gzinflate обратны к функциям gzcompress и gzdeflate, соответственно. Все они используют алгоритм сжатия LZW, который также используется в бесплатной библиотеке zlib. Сперва скачаем эту библиотеку и воспользуемся Ассемблером, чтобы сжать какую-нибудь эталонную строку.
  1. format PE GUI 4.0
  2. entry start
  3.  
  4. include 'win32a.inc'
  5.  
  6. section '.data' data readable writeable
  7.  
  8. strr    db 'ManHunter'  ; Строка для компрессии
  9. lend    = $-strr
  10. bsize   = 1000
  11.  
  12. blen    dd bsize
  13.  
  14. tmp     rb bsize
  15. tmp2    rb bsize
  16. tmp3    rb bsize
  17.  
  18. mask    db '%.2X ',0
  19.  
  20. ;----------------------------------------------------------
  21.  
  22. section '.code' code readable executable
  23. start:
  24.  
  25.         invoke  compress,tmp,blen,strr,dword lend
  26.  
  27.         mov     ecx,[blen]
  28.         mov     esi,tmp
  29. @@:
  30.         push    ecx
  31.         movzx   eax,byte [esi]
  32.         invoke  wsprintf,tmp2,mask,eax
  33.         add     esp,12
  34.         invoke  lstrcat,tmp3,tmp2
  35.         inc     esi
  36.         pop     ecx
  37.         loop    @b
  38.  
  39.         invoke  MessageBox,HWND_DESKTOP,tmp3,NULL,MB_OK
  40.         invoke  ExitProcess,0
  41.  
  42. ;----------------------------------------------------------
  43.  
  44. section '.idata' import data readable writeable
  45.  
  46. library kernel32,"kernel32.dll",\
  47.         user32,"user32.dll",\
  48.         zlib,"zlib1.dll"
  49.  
  50. include "apia\kernel32.inc"
  51. include "apia\user32.inc"
  52.  
  53.   import zlib,\
  54.          compress,'compress'
В окне будет показана следующая строка:

78 9C F3 4D CC F3 28 CD 2B 49 2D 02 00 11 11 03 93
Часть строки я специально выделил красным цветом, дальше будет понятно зачем это сделано.

Читать статью целиком »
Просмотров: 6165 | Комментариев: 6

Исследование защиты программы TopStyle 4

21.07.2009 | Категория: Темная сторона Силы | Автор: ManHunter

Скриншот программы TopStyle 4

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

Читать статью целиком »
Просмотров: 6321 | Комментариев: 13

Исследование защиты программы Htpasswd Generator

02.07.2009 | Категория: Темная сторона Силы | Автор: ManHunter

Скриншот программы Htpasswd Generator

Htpasswd Generator от Aleo Software - программа для генерации файлов .htaccess и .htpasswd. Эти файлы предназначены для защиты сайтов и каталогов сайтов авторизацией. Если нужно, то прочитайте информацию о них самостоятельно по приведенным ссылкам, речь же сейчас пойдет о программе. Точнее о ее защите.

Читать статью целиком »
Просмотров: 5158 | Комментариев: 2

Исследование защиты программы WinSnap

18.06.2009 | Категория: Темная сторона Силы | Автор: ManHunter

Скриншот программы WinSnap

WinSnap от NTWind Software - удобная программа для создания скриншотов. От множества аналогов отличается тем, что корректно захватывает окна непрямоугольной формы, позволяет сразу же добавлять эффект тени, наносить водяные знаки на изображение, захватывать несколько последовательных окон, а также имеет другие полезные функции, которых нет у конкурентов. Но в пробной версии показывает всякие наг-скрины и маркирует все создаваемые скриншоты своим логотипом. Для исследования защиты нам потребуется дизассемблер и дистрибутив, на момент публикации последняя версия WinSnap 3.0.8 от мая 2009 года.

Читать статью целиком »
Просмотров: 5734 | Комментариев: 12

Пересборка инсталлятора Punto Switcher

30.05.2009 | Категория: Темная сторона Силы | Автор: ManHunter

Установка Punto Switcher

Программа Punto Switcher - это автоматический переключатель русской и английской раскладок клавиатуры. Когда вы забываете переключить раскладку с русской на английскую и наоборот, то вместо "Windows" получается "Цштвщцы", а вместо "молоко" - "vjkjrj". Punto Switcher это исправит - раскладка будет переключаться автоматически. Сама программа исключительно полезная, но после покупки ее Яндексом, в дистрибутиве стало слишком много чужеродного. Сам дистрибутив потяжелел почти до 3 мегабайт, в процессе инсталляции навязчиво предлагает сделать Яндекс домашней страницей, установить Яндекс.Трояна и вообще весь стал ходячей рекламой. Это плохо, значит будем исправлять все недоработки авторов.

Читать статью целиком »
Просмотров: 27628 | Комментариев: 42

Наверх
Powered by PCL's Speckled Band Engine 0.2 RC3
© ManHunter / PCL, 2008-2024
При использовании материалов ссылка на сайт обязательна
Время генерации: 0.11 сек. / MySQL: 2 (0.0088 сек.) / Память: 4.5 Mb
Наверх