Поставил один плагин к wordpress. Все работает, но плагин каким-то образом выводил свой копирайт. Причем найти этот копирайт в коде получилось не сразу. Поиск по точному слову ничего не дал. Пришлось полчаса разбираться в нескольких сотнях строк говнокода. Спрятан он был очень просто:
<?php echo base64_decode('aGVsbG9fd29yZA=='); ?>

Еще одна известная история, которой уже несколько лет. В Болгарии чуваки купили новую Газель для перевозки помидоров. Пока гнали и дальше в течение месяца эксплуатации в салоне сзади раздавался некий металлический стук, причину которого найти не удавалось — и выкидывали все из салона, в т.ч. запаску, домкраты и т.д., и откручивали сидения, ХЗ где стучит. В итоге поступили грамотно — один качает машину, второй стетоскопом прослушивает кузов. Обнаружили, что стучит внутри вертикального короба жесткости, который изнутри салона приварен к листу обшивки. Не поленились, вырезали болгаркой дырку. Внутри короба на толстой леске висит гайка М24 и записка по-русски «МОЛОДЕЦ, НАШЕЛ».

взлом md5

Недавно рассказывал про расшифровку md5-хэшей. Так вот, энтузиастам удалось расшифровать загадочный набор символов, который изображён на логотипе секретного подразделения по борьбе с кибертерроризмом United States Cyber Command. Символы располагаются по окружности внутреннего золотого кольца: 9ec4c12949a4f31474f299058ce2b22a

Оказалось, что этот 32-символньный хеш-код сгенерирован с помощью алгоритма MD5 и содержит зашифрованный девиз подразделения:

USCYBERCOM plans, coordinates, integrates, synchronizes and conducts activities to: direct the operations and defense of specified Department of Defense information networks and; prepare to, and when directed, conduct full spectrum military cyberspace operations in order to enable actions in all domains, ensure US/Allied freedom of action in cyberspace and deny the same to our adversaries.

Ко мне обратилась одна знакомая с просьбой рассказать об основных способах раскрутки Интернет-проекта в сети. Речь пойдет только об онлайн-рекламе. Статья для новичков. (далее...)

Всё-таки JavaScript — очень бедный язык по сравнению с PHP. Например, генерация случайного числа в интервале 10-20 на php решается одной строчкой rand(10,20). В JavaScript нужно писать с нуля аналог:

function rand(min, max) {
    if (max) {
        return Math.floor(Math.random() * (max - min + 1)) + min;
    } else {
        return Math.floor(Math.random() * (min + 1));
    }
}

(далее...)

CSRF

В сети часто можно встретить темы про XSS. Происходят такие атаки из-за неправильной фильтрации данных. Но есть еще CSRF-атаки, которые не зависят от фильтрации данных. (далее...)

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

Говноблоги

Зашел недавно в Блоги Яндекса. Заметил интересную вещь у нескольких ЖЖ-блогов, которые обновились с интервалом 1-2 минуты. Меня заинтересовала реклама от Гугла, размещенная схожим образом в этих блогах. (далее...)

фрилансер и заказчик

Студия Лебедева использует свою собственную CMS Imprimatur. Есть плюсы и минусы (минусов много), но одна мелкая деталь мне понравилась в плане юзабилити. Удаленные записи выводятся перечеркнутыми (тег <strike> или аналог css "text-decoration: line-through").

Студия Лебедева юзабилити

Такое ощущение, что люди, разрабатывающие движки сайтов, совершенно забывают о поисковой оптимизации. Например, блоговый движок Wordpress. По умолчанию на всех страницах название блога заключено в h1. В итоге все страницы имеют одинаковый заголовок, который не несет смысла для конкретной страницы. Поэтому, я «выкидываю» название блога в обычный div, а заголовки записей заключаю в h1. Не забывайте, что h1 должен быть один на странице. Если вам нужны еще заголовки на этой же странице, то используйте h2. Можно посмотреть на примере моего блога. читать дальше