Print This Post PHP Obfuscator 1.4

Пятница, 16. Октябрь 2009
Раздел: PHP, автор:

Обновил свой давний проект - обфускатор PHP-кода. Теперь он способен генерировать еще более непонятный код.

Возможности обфускатора:
[+] Замена имен переменных
[+] Замена имен функций
[+] Шифрование статических строк
[+] Шифрование имен стандартных функций PHP
[+] Обфускация INTEGER'ов
[+] Сжатие скрипта
[+] Архивация скрипта
[+] Добавление треш-комментариев
[+++] И многое другое, множество удобств

Обфускатор не поддерживает конструкции eval() и $$var_name.

Скриншот:

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

Print This Post Основы дорвеестроительства – цепи Маркова

Понедельник, 28. Сентябрь 2009
Раздел: PHP, автор:

Решил наконец-то сделать пост на тему, отличную от ассемблера :)
Сейчас я расскажу про вещь, которая используется для генерирования текстов дорвеев. Материал, вероятно, будет интересен только новичкам seo.

P.S. Сразу скажу – Kaimi сделал для своего патчера на Perl’е свежие сигнатуры, и, чтобы не плодить лишних постов, попросил выложить их прямо здесь.

Не буду углубляться в теорию, сразу перейду к практической части. Допустим, у нас для генерирования контента дорвея имеется следующий текст:

Вася вошел в помещение. Нож вошел в масло и разрезал его пополам. Петя купил масло и сливки. В помещение завезли товар.

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

Каким образом можно хорошо перемешать текст? С помощью цепей Маркова. Для их генерации я написал простенький скрипт на php. Поясню, как это работает. Для написанного выше текста можно составить следующее дерево:

Все предложения из текста записаны сверху вниз по словам. Я специально выбрал такие предложения, чтобы имелись некоторые пересечения – они и необходимы для перемешивания текста. Собственно, это и есть цепи Маркова. Они кстати бывают разных уровней. Мой скрипт поддерживает перемешивание текста на основе цепей 2-го и 3-го уровней. Цепь второго уровня – когда каждое слово в тексте зависит от предыдущего. Цепь третьего – когда слово зависит от двух предыдущих и т.д.

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

Собственно, вот скриншот работы скрипта генерации с некоторым анализом полученного текста:
Цепи третьего уровня:


Цепи второго уровня:


Как видно, при использовании цепей третьего уровня получается более связный текст, но замен в итоге меньше (они выделены жирным). При использовании цепей второго уровня текст менее связан, зато мы имеем хорошо перемешанный треш. Чем выше используемый уровень, тем больший объем текста необходим для создания хорошо перемешанного уникального контента.


Сам скрипт можно скачать тут: ZIP.

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

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

Print This Post StepFucker – проходим треки в степмании на АААА

Воскресенье, 20. Сентябрь 2009
Раздел: Assembler, автор:

Написал на ассемблере программку для идеального прохождения треков в игре Stepmania.
Если вы не знакомы с такой игрой - посмотрите видео ниже, и поймёте ее суть - нажимать на 4 клавиши в ритм с песней руками или ногами (на специальных ковриках/автоматах).
Весь код программы я описывать не буду, опишу только новые особенности Win API, с которыми мне пришлось иметь дело во время написания.
Для начала, вот несколько скриншотов программы и видео ее работы:

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

Print This Post Что бы вы хотели видеть на нашем блоге?

Вторник, 15. Сентябрь 2009
Раздел: Без категории, автор:

Иногда мы с Kaimi задумываемся - что же в очередной раз написать в наш блог. Порой этот вопрос нас так мучает, что новые посты не появляются в течение пары недель и даже больше :)

Поэтому мы решили спросить наших читателей - что бы ВЫ хотели видеть на нашем блоге?
- простые, небольшие и востребованные релизы для актуальных тем (соц-сети, e-mail'ы и др.);
- статьи о заработке по соцсетям, сео, небольшие заметки;
- большие скрипты, выполняющие сложные функции, или gui-программы;
- новое, интересное, актуальное в сети - заметки;
- статьи по программированию на разных языках для новичков на конкретных примерах;
- сложные статьи по программированию со сложными примерами.

Укажите, какие пункты вы бы хотели видеть, поясните, почему вы выбрали именно эти пункты (раскройте их смысл, как вы его себе представляете, что нужно именно ВАМ). Можно добавлять свои пункты.

Print This Post Пакет для компиляции MASM32

Четверг, 27. Август 2009
Раздел: Assembler, автор:

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

Print This Post Библиотека для работы с http

Суббота, 22. Август 2009
Раздел: Assembler, автор:

Написал небольшую библиотеку на ассемблере (MASM32) для работы с http-протоколом.
Читать дальше »

Print This Post Пишем плагины для Winamp’а

Четверг, 30. Июль 2009
Раздел: Assembler, автор:

Совсем недавно я освоил написание плагинов для этого проигрывателя. Следует отметить, что официального SDK от NullSoft нет, и эта компания изредка выдает общественности куски документации по своему плееру. Некоторые описанные возможности не работают или работают неправильно, некоторые совсем плохо прокомментированы, поэтому мне пришлось много экспериментировать, чтобы написать нечто рабочее. Кстати, пример написанного мной плагина вместе с полностью работоспособным сервисом ведения статистики прослушиваний и создания подписей-картинок для форумов можно посмотреть тут: MusicSign.
Существует достаточно всевозможных тонкостей написания плагинов для WinAmp'а, и я постараюсь их описать в этой статье. Примеры буду приводить на ассемблере MASM32 (собственно, сами плагины я на нем и пишу), но примеры будут несложные, поэтому знающим c/c++ и немного Win32 API будет легко их понять.
Читать дальше »

Print This Post Универсальный конвертер текста 1.0

Вторник, 23. Июнь 2009
Раздел: Assembler, автор:

Очередной релиз от меня - программка для конвертации текста в разные представления и вычисления хэшей, написанная на ассемблере (masm32).
Имеется быстрое копирование и вставка текста, сохранение и открытие текстовых файлов.

Поддерживает конвертацию:
* Text -> URLEncode
* Text -> String.fromCharCode (ascii)
* Text -> String.fromCharCode (utf)
* Text -> base64
* Text -> MySQL char
* Text -> HEX
* Text -> BIN
* Text -> chr()
* Text -> MSSQL char
* Text -> PostgreSQL
* Text -> MD5
* Text -> SHA1
* Text -> &#xxx; (ascii)
* Text -> &#xxx; (utf)
* Text -> \xhh
* Text -> %XX
* Text -> VB chr$()
* Text -> C# (char)
* Text -> Транслит
* URLEncoded -> Text
* base64 -> Text

Скриншот:

Скачать exe (10кб) и исходные коды: ZIP

В общем исходный код программки ничем не отличается от тех, что я выкладывал раньше, но есть несколько интересных особенностей, которые я опишу дальше.
Читать дальше »

Print This Post Как сделать BSOD из User-mode

Воскресенье, 17. Май 2009
Раздел: Assembler, автор:

Наткнулся на забавный исходник на одном китайском сайте, где показано, как можно сделать BSOD (Blue Screen of Death, синий экран смерти) в Windows из User-Mode (ring 3) без всякого Native API:

Код на c++:

Код на ассемблере (переписал с си++ для уменьшения размера, весит всего 1кб):

Код проверен и работает на WinXP SP3 и Windows Vista SP1. На Windows 7 не работает, пофикшено, на XP SP2 тоже вроде бы не работает.

UPD: обнаружился код на c++, который способен вызвать BSOD на Win XP SP2, Win 2003 SP1 и Win NT SP4 (Discovered on 23.12.2004 by YuraN).
Читать дальше »

Print This Post Ajax Text Shell 2.0

Суббота, 16. Май 2009
Раздел: PHP, автор:

Удобный веб-шелл, написанный на php+ajax. Отлично подойдет для удаленного администрирования системы.

Функционал:
[+] AJAX, UTF-8
[+] Все запросы методом POST
[+] Файловый менеджер: серфинг по папкам, просмотр дат изменения и прав для файлов и папок, удаление, перемещение, копирование, переименовывание, chmod, touch
[+] Скачивание файлов (есть поддержка скачивания больших файлов)
[+] Редактирование и сохранение файлов в utf-8 и windows-1251
[+] Подробная информация о системе
[+] Выполнение php-кода
[+] Выполнение команд cmd множеством способов (есть поддержка кириллицы)
[+] Защита паролем
[+] MySQL - выполнение команд, удобный менеджер команд
[+] MySQL дампинг - дамп таблиц или целых БД, поддержка больших объёмов данных, дамп результатов запросов MySQL
Если set_time_limit(0) будет недоступно, дамп всё равно возможен по частям.
Можно сдампить в виде файла, например, список login:pass или список e-mail'ов из какой-нибудь таблицы.
[+] Дамп MySQL-таблиц производится без создания каких-либо файлов на сервере - всё напрямую направляется в браузер.
[+] Быстрое удаление скрипта
[+] Удобство в том, что можно работать с файлами, php, cmd и другими функциями независимо друг от друга, то есть примерно так - полистать файлы, выполнить пхп-код, вернуться к файлам, в это время результат выполнения php-кода не стирается, и к нему можно всегда вернуться.

Если будете что-либо менять в шелле, сохраняйте его в кодировке UTF-8 без BOM (так умеет делать, например, Notepad++).

Скачать: RAR