• Как я нашел пасхалку в защите Android и не получил работу в Google

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

      Но бывает и так, что пасхалки обнаруживаются в самых неожиданных местах. Есть даже такая легенда: однажды один программист загуглил «mutex lock», а вместо результатов поиска попал на страницу foo.bar, решил все задачи и устроился на работу в Google.

      Реконструкция событий
      image

      Вот такая же удивительная история (только без хэппи-энда) произошла со мной. Скрытые послания там, где их точно не может быть, реверс Java кода и нативных библиотек, секретная виртуальная машина, прохождение собеседования в Google — все это под катом.
      Читать дальше →
    • Игра в кошки-мышки: как создавался антиспам в Почте Mail.Ru и при чем здесь Tarantool



        Привет, Хабр! В этой статье я хочу рассказать о системе антиспама в Почте Mail.Ru и опыте работы с Tarantool в рамках этого проекта: в каких задачах мы используем эту СУБД, с какими трудностями и особенностями ее интеграции столкнулись, на какие грабли наступали, как набивали шишки и в итоге познали дзен.
        Читать дальше →
      • Методы защиты от CSRF-атаки

        Что такое CSRF атака?


        Ознакомиться с самой идеей атаки CSRF можно на классических ресурсах:



        Выдержка из ответа на SO:

        Причина CSRF кроется в том, что браузеры не понимают, как различить, было ли действие явно совершено пользователем (как, скажем, нажатие кнопки на форме или переход по ссылке) или пользователь неумышленно выполнил это действие (например, при посещении bad.com, ресурсом был отправлен запрос на good.com/some_action, в то время как пользователь уже был залогинен на good.com).


        Как от нее защититься?


        Эффективным и общепринятым на сегодня способом защиты от CSRF-Атаки является токен. Под токеном имеется в виду случайный набор байт, который сервер передает клиенту, а клиент возвращает серверу.


        Защита сводится к проверке токена, который сгенерировал сервер, и токена, который прислал пользователь.

        Читать дальше →
      • Экзотичные заголовки HTTP

        • Translation

        Привет Хабрахабр! В этой статье будут наглядно продемонстрирован результат применения некоторых важных и экзотичных HTTP заголовков, большинство из которых связаны с безопасностью.
        Читать дальше →
      • Несколько полезных шорткатов для Sublime Text ниндзи

          Доброго времени суток, уважаемые хабравчане. Многие пользуются замечательным редактором Sublime Text, который стал популярен благодаря своей простоте, гибкости/кастомизации и огромному количеству плагинов. Хочу поделиться с вами, на мой взгляд, самыми полезными шорткатами при работе с Sublime.

          image

          Переход по фрагментам

          Win/Linux: CTRL+R
          Mac: CMD+R
          Вероятно, самое полезное сочетание клавиш для экономии вашего времени. Содержимое документа разбивается на определенные фрагменты (функции, HTML теги или CSS стили). Переход происходит при выборе соответствующего фрагмента во всплывающем окне.

          Читать дальше →
        • Список команд чата Skype

            ...Skype — это дьявольски хитрая программа, написанная бесспорно талантливыми людьми...Крис Касперски

            Доброго времени суток!

            Skype сейчас я встречаю чаще на компьютерах чем другие IM клиенты, мне он практически заменил icq, вся рабочая переписка ведется в skype, но речь пойдет не о том, что лучше или популярней. Часто бывает так, что участвуешь сразу в нескольких чатах где количество участников превышает 10, что собственно и приводит к тому, что на рабочем столе и в трее постоянно обновляется количество новых сообщений, а также уведомления в виде всплывающих сообщений, а теперь представьте что у вас 3 окна чата с друзьями, 1 с вашим боссом, другой с девушкой — все это в сумме начинает запутывать, отвлекать и порой раздражать. Хотелось бы расставить приоритеты…

            Раньше я чаще всего настраивал «политику» уведомлений только через глобальные настройки программы
            Случилось так, что я узнал, что в каждом окне чата skype возможно использование команд, например /alertsoff отключит уведомления для конкретного окна чата, соответственно /alertson включит их обратно.
            Поискав немного я наткнулся на некое how-to, оказывается у skype чата довольно много текстовых команд, подобие IRC команд. Далее я постарался попробовать все возможные из них на двух имеющихся у меня платформах, как оказалось не все и не везде работает… Прошу под кат.

            Читать дальше →
          • Хочешь быть iOS разработчиком? Будь им!

            На хабре в прошлом месяце была опубликована статья Конкурс ВК: Мессенджер для Android. Как это было!, в которой автор поделился своими мыслями о конкурсе и опубликовал список ресурсов и статей, которые помогли ему в создании приложения. Так как в последнее время я начал изучать разработку под iOS, то у меня скопилось некоторое количество ссылок, которые могут быть полезны для начинающих. Поэтому я последую его примеру и сделаю то же самое, только для своей платформы. Надеюсь, кому-нибудь они окажутся полезны и сэкономят немного времени.

            Читать дальше →
          • Музыкальные репетиции: теперь и через интернет

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

            Предисловие


            В начале 2012 года, на новогодних каникулах, я наткнулся на любопытный ролик:


            В ролике видно, что в живую поют люди, как написано в комментариях, расположенные в разных студиях. Стало интересно что же это за технология. Единственной зацепкой стало слово NETDUETTO.
            Читать дальше →
          • Редирект после POST запроса

              Каждый веб-разработчик знает, что после POST сабмита формы желательно сделать редирект, чтобы предотвратить повторную отправку данных, когда пользователь захочет обновить страницу. В основном это критически необходимая операция, так как данные формы могут сохраняться в базе данных или участвовать в платёжной транзакции. И тогда данные не только продублируются, но и спишутся лишние деньги.

              Но речь не о деньгах, а о правильном редиректе…
              Читать дальше →