Окт 31

Найдено вот здесь — http://www.netzgesta.de/cvi/contact.php

Собственно ничего такого, очередная неумелая попытка.
Каптча часы

Стрелка часов черная, стрелка минут красная. Обе стрелки могут быть в 12 разных положениях.

Таким образом для распознавания данной каптчи достаточно проверять цвет пикселя в 12 местах.

автор: e64f \\ теги: ,

Окт 07

Любой кто имеет в сети сайт, рано или поздно сталкивается с проблемой спама. Не в смысле почтового спама, а спама в гостевую книгу, форум, блог, вобщем везде, где посетители сайта могут оставлять свои сообщения. Сразу стоит сказать, что хотя и бывает, что спам рассылается вручную, т.е.  живым человеком — это бывает редко, обычно это делает специальная программа, которая может: изменять свой IP адрес, распознавать каптча картинку, постить разные сообщения, отвечать на свои же сообщения, но уже под другим пользователем. И много чего еще, как говорится на каждую стандартную защиту находится программист, который сделает программу или модуль к программе и защита будет повержена.

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

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

Как должна работать каптча

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

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

Правильно делать так, строка на картинке = str1 и строка в куках = str2, генерятся случайным образом независимо друг от друга. STR2 нужна для того чтобы передавать ее в форму в открытом виде. STR1 написана только на картинке каптча.  Обе строки связаны между собой в таблице. Т.е. человек в скрытом поле формы(или куках) имеет STR2, STR1 введет с картинки, и когда форма отправится скрипту скрипт достанет из таблицы запись по STR2 и сравнит STR1 из таблицы и строку введенную пользователем.

Это было небольшое отступление от темы создание каптчи, просто нельзя делать вышеуказанные ошибки.

Делаем генератор картинок

Первое, что нужно сделать, это найти уникальный шрифт. Взял с полки диск с 1 000 000 шрифтов и вперед. Решил выбирать только из рукописных шрифтов, набралось около 20 штук.

Еще насчет шрифтов, можно использовать рандомом все 20 шрифтов, например каждый раз писать случайным фонтом все буквы. Можно каждый символ на картике писать случайно выбранным шрифтом. Я для себя решил писать всегда одним и тем же шрифтом, если начнется спаминг, просто сменю шрифт на следующий.

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

Исходный код


Пару слов о копирайте, изначально скрипт взят у Ивана Склярова(хорошие у него коментарии к коду), и немного модифицирован.
Естественно получившаяся картинка совсем не похожа на каптче картинку Ивана.

Вот, что получилось.

Вся работа заняла не более 30 минут.

автор: \\ теги: , , ,

Июл 17

Не помню как забрел на блог Ивана Склярова, но читать мне его понравилось.

И в одном из постов Иван предлагает бесплатно взять скрипт генерации капчи http://www.sklyaroff.ru/comm.php?mess=8

И вот что я ему написал в коментарий:

2008-07-11 08:41:23 e64f пишет:
Добрый день!
Ваша капча картинка относится к разряду примитивных.
Могу на спор сделать программу распознавалку ваших картинок за 2 дня.
Если интересует, то вот инфо для связи
—————————————
Почта: VMatvienko@gmail.com
Сайт: vmatvienko.foxhole.ru
С уважением Матвиенко Валерий.

На что последовал ответ:

Напиши, посмотрим.

Заняло это правда чуть больше 2 дней, по причине того, что большой загруз на работе.

Представляет из себя консольное приложение которому на вход подается путь к картинке, а приложение выдает что на картинке написано.

О тонкостях реализации пожалуй умолчу. )

Вот видео 2 мб. captcha.avi с доказательством.

Еще хочу сказать, что делал все это я не один, а нас сейчас двое, наши ники e64f и nman.

автор: \\ теги: ,

Мар 04

1) Самая первая ссылка на материал из Википедии

http://ru.wikipedia.org/wiki/%D0%AD%D0%BD%D0%B8%D0%B3%D0%BC%D0%B0

Особенно порадовало, что там кроме всего прочего дано математическое описание.

2) Прокт Открытые Системы — статья «Тайны проекта ULTRA»

http://www.osp.ru/os/2003/07-08/183294/

Про взломщиков Энигмы.

3) Страница Википедии посвященная Алану Тьюрингу

http://ru.wikipedia.org/wiki/%D0%A2%D1%8C%D1%8E%D1%80%D0%B8%D0%BD%D0%B3%2C_%D0%90%D0%BB%D0%B0%D0%BD

4) Симулятор шифровальной машины (можно покрутить колесики настроек онлайн)

http://enigmaco.de/enigma/enigma.html

5) Посмотреть фотографии самой машины и ее отдельных деталей

http://www.jproc.ca/crypto/enigma.html

6) Назвать текст следующей ссылки статьей язык не поворачивается, но и книгой не назовешь. Хм, наверное описание (на английском)
The Enigma cipher machine

автор: \\ теги: ,

Дек 19

Первая военная шифровальная машина скитала (по некоторым источникам — сцитала).

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

Cпособ сокрытия и передачи информации с помощью скиталы применялся в Спарте в IV веке до н.э. (Ксенофонт. Греческая история. СПб.: Алетейя, 1996. С. 97). Вот как объясняет это изобретение Плутарх (Сравнительные жизнеописания. М.: Наука, 1994. Т. 1: Лисандр, 19. С. 496): «Отправляя к месту службы начальника флота или сухопутного войска, эфоры берут две круглые палки совершенно одинаковой длины и толщины. Одну оставляют себе, другую передают отъезжающему. Эти палки и называют скиталами. Когда эфорам нужно сообщить какую-нибудь важную тайну, они вырезают длинную и узкую вроде ремня полосу папируса, наматывают ее на свою скиталу, не оставляя на ней ни одного промежутка, так чтобы вся поверхность палки была охвачена этой полосой. Затем, оставляя папирус на скитале в том виде, как он есть, пишут на нем то, что нужно, а написав, снимают полосу и без палки отправляют ее военачальнику.

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

Полоса папируса называется, как и деревянная палка, скиталой, подобно тому как измеряемый предмет называется по мере».

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

А вот и взлом первой военной шифровальной машины.

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

автор:

Ноя 27

На Ближнем Востоке один из первых систематических шифров был разработан древними евреями; этот метод называется темура — «обмен». Двадцать две буквы еврейского алфавита делились на две части, причем одна помещалась над другой; затем верхние буквы заменялись на нижние или наоборот.

Можно было составлять всевозможные комбинации в зависимости от места разделения алфавита и направления перемещаемых букв. Самый простой способ заключался в разделении алфавита посередине так, чтобы первые две буквы, А и Б, совпадали с двумя последними, Т и Ш. Эти буквы и дали название методу шифровки — «Атбаш».

Использование шифра темура можно обнаружить в Библии — по меньшей мере в одном случае, где он скрывает политическое сообщение. Это пророчество Иеремии, сделанное в начале VI века до нашей эры, когда Иудея находилась под военной оккупацией Вавилона, содержит проклятие всем правителям мира, заканчивая «царем Сесаха» (Иеремия, 25:26).

На первый взгляд, название ни о чем не говорит. Однако при использовании шифра «Атбаш» буквы с, с и х читаются как б, б и л, или «Babel» (Вавилон), что позволяет нам узнать в «царе Сесаха» жестокого вавилонского правителя. Изучение темура стало неотъемлемой частью каббалы, мистической ветви иудаизма, сложившейся в Средние века; каббалисты использовали шифры либо для внедрения скрытого смысла в собственные сочинения, либо в попытке дать новое толкование библейских текстов.

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

автор: \\ теги: ,

Ноя 06

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

Snoopy — это PHP класс эмулирующий работу веб. браузера, он позволяет получать содержимое страницы и например отправлять данные форм.

Последняя дата обновления ноябрь 2005 года.

Запросу на получение страницы можно подсунуть: хост (адрес страницы), порт, куки, реферальную страницу(адрес страницы по ссылке с которой якобы заходим), агента(название браузера), логин/пароль базовой авторизации, все что хотите в содержимое заголовка (header). Еще можно установить атрибуты прокси сервера — это нужно во первых для анонимности и во вторых против бана можно сменить прокси сервер. Есть поддержка редиректов, фреймов.

Кроме получения содержимого страницы есть функции для:

а) вытаскивания чистого текста (без тегов)

б) получения всех ссылок на странице

в) получения форм

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

==================================

Теперь о том чего нет, и что хотелось бы видеть в классе

1) Более сложный парсинг ссылок, т.е. не только нужны порой сами урлы, но и текст ссылок

2) Парсинг всех используемых на странице картинок

3) Более сложная работа с формами. Получение формы в объект, заполнение переменных объекта значениями, отправка запроса

Немного фантастики …

4) Эмуляция выполнения событий javascript например клики по объектам наведение курсором и т.д. получения измененной страницы после действия javascript. Это же касается и vb script

5) Выполнение ajax запросов. Получение измененной страницы после исполнения ajax

6) Поддержка работы flesh обектов. Возможность сохранить в файл, нажать на ссылку

автор: \\ теги: , ,

Окт 31

Не секрет что движок форума PHPbb очень сильно распространен в интернете. Это и не удивительно т.к. он бесплатен и по своему функционалу не уступает платным аналогам. Но он имеет слабую защиту captcha.

Разместил статью «Распознавание CAPTCHA от PHPbb» из личного, так сказать опыта.

автор:

Окт 24

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

автор: \\ теги: ,