• Защищаем сайт с помощью ZIP-бомб

    • Translation

    Старые методы по-прежнему работают


    [Обновление] Теперь я в каком-то списке спецслужб, потому что написал статью про некий вид «бомбы», так?

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

    Когда я в возрасте 13 лет впервые захостил свою маленькую Linux-коробочку с доступом по SSH, я смотрел логи и каждый день видел IP-адреса (в основном, из Китая и России), которые пытались подключиться к моей сладенькой маленькой коробочке (которая на самом деле была старым ноутом ThinkPad T21 со сломанным дисплеем, жужжавшим под кроватью). Я сообщал эти IP их провайдерам.

    На самом деле если у вас Linux-сервер с открытым SSH, то можете сами посмотреть, сколько попыток подключений происходит ежедневно:

    grep 'authentication failures' /var/log/auth.log
    Читать дальше →
  • Кассовые аппараты выходят онлайн: налоговая России открыла новый рынок для разработчиков приложений

      Для среднего хабравчанина, возраст которого, по точным вычислениям НЛО, составляет 31 год, мир сейчас совсем не тот, каким был, когда он появился в нём на свет. Телефоны-автоматы с кольцом набора номера, домашние телефоны и телеграф сменили мобильные телефоны. Очереди в кассы сменились временами падающими от перегрузок сайтами. Рыбалку заменили покемоны. Но кассирши как сидели за своими кассами в 1986 году, пробивая чеки, так и сидят. Они обросли терминалами, мы — бесконтактными платежами, но суть не поменялась. Рутина, не менявшаяся более ста лет. Пока не настал XXI век.

      image

      В России он, похоже, начинается в этом году — потому что с 2017 года все кассовые аппараты в нашей стране оснащаются обязательным выходом в интернет. О том, как это случилось, что это значит, и почему JS, Java, Kotlin и серверным разработчикам пора разминать пальцы и продувать клавиатуры — в этой статье.
      Читать дальше →
    • SecureLogin  —  забудьте о паролях

      • Translation

      В начале июня сотрудник компании Sakurity Егор Хомяков (Egor Homakov) написал пост о созданной им технологии SecureLogin, являющейся заменой парольной аутентификации. Несмотря на то что Егор наверняка прекрасно говорит и пишет по-русски, мы не смогли найти русскоязычного варианта и решили сделать перевод оригинальной статьи. Результат вы можете найти под катом.

      Читать дальше →
    • Как написать максимально хреновый бэкенд для мобильного приложения


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


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


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


        Приятного чтения.

        Читать дальше →
      • Обзор анимации с codepen для страниц загрузки сайта

          Обзор анимации с codepen для страниц загрузки сайта

          Программисты проверяют идеи для сайтов на площадках: codepen, jsbin, jsfiddle, cssdesk. Потому что там они мгновенно видят результат написанного кода и могут показать его другим.


          Codepen — одна из самых популярных. Там более 500 тыс. готовых решений. Из них половина — хлам: неэффективный код, не работают на планшетах и телефонах, не поддерживают все популярные браузеры. Надо потратить много часов на поиск идеи, которую можно использовать на своем сайте.


          Я решил делать подборки полезных решений с codepen. Первую уже выпускал на хабре «Обзор многоуровневых меню». Теперь вторая — «Обзор анимации для страниц загрузки сайта».


          Подборку разделил на 3 статьи.


          Читать дальше →
        • CSS: введение в единицу длины 'fr'

          • Translation


          Пока все активно делятся своими впечатлениями от CSS-гридов, я не слышал, чтобы кто-то столь же много говорил о новой единице длины в CSS — fr (см. спецификацию). И теперь, когда браузеры все лучше начинают поддерживать ее, я думаю, пора взглянуть на то, как ее можно использовать в сочетании с этой техникой вёрстки, поскольку это дает нам ряд преимуществ. Главные из них — это более понятный и удобный в сопровождении код.
          Читать дальше →
        • Создаём динамическую обложку ВКонтакте

            В последнее время всё большую популярность обретают различные интерактивные способы завлечь аудиторию и привлечь к себе больше внимания. Тут и боты для социальных сетей и мессенджеров, и другие решения, придающие «уникальности». Среди них можно выделить и динамические обложки для сообществ, официально поддерживать которые ВКонтакте начали в марте.

            Почему я решил написать эту небольшую статью? Хотя ажиотаж вокруг этой темы и спал, всё равно она остаётся довольно популярной, находятся как «клиенты», готовые платить очень большие деньги, так и желающие научиться это делать самому. Я работал с одной «студией», которая берет шестизначные суммы за эту работу, при этом кидая своих разработчиков и мелких клиентов. Так вот, чтобы в этой сфере не было монополии, и все увидели, насколько легко это делается, я и решил написать статью.


            На примере моего пустого сообщества-песочницы
            Читать дальше →
          • Рецепты под Android: Scroll-To-Dismiss Activity

            • Tutorial

            Привет! Сегодня мы расскажем, как за минимальное количество времени добавить в свою Activity поведение Scroll-To-Dismiss. Scroll-To-Dismiss – это популярный в современном мире жест, позволяющий закрыть текущий экран и вернуться в предыдущую Activity.



            В один прекрасный день нам поступил реквест на добавление такой функциональности в одно из наших новостных приложений. Если вам интересно, как легко добавить такую функциональность в уже существующую Activity и избежать возможных проблем – добро пожаловать под кат.

            Читать дальше →
          • 11 вещей которые я узнал, читая спецификацию flexbox

            • Translation

            Я всегда считал, что с flexbox довольно легко работать — глоток свежего воздуха после стольких лет float'ов и clearfix'ов.


            Правда недавно я обнаружил что борюсь с ним; что-то растягивалось, когда я не думал, что оно должно тянуться. Я поправил здесь, другой элемент сжался. Я починил это, что-то другое ушло за экран. Какого Джорджа Буша тут происходит?


            В конце концов, все заработало, но солнце село, а мой процесс был привычной игрой с CSS. Или… как называется та игра, где надо ударить крота, а затем другой крот выпрыгивает и надо ударить и его тоже?


            Как бы там ни было, я решил что пора вести себя как взрослый разработчик и выучить flexbox должным образом. Но вместо того, чтобы прочитать 10 очередных блог-постов, я решил отправиться прямиком к исходнику и прочитать The CSS Flexible Box Layout Module Level 1 Spec


            Вот хорошие отрывки.


            Читать дальше →
          • Must-Have: 15 игровых спрайтов для дизайнера и художника

            • Translation
            Создание игр – процесс трудоемкий и длительный. Но его можно ускорить с помощью готовых наборов ассетов, спрайтов, интерфейсов и массы других полезных ресурсов. Даже если вам просто нужны материалы для изучения какого-либо аспекта геймдизайна, в этом списке найдется то, что нужно.


            Читать дальше →
          • Как быстро настроить автопостинг для Facebook и Twitter



              Здравствуйте, дорогие читатели!

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

              В этой статье я хочу продемонстрировать вам простой способ постинга информации (например, статей или страниц сайта) в социальные сети с минимальным количеством усилий. Представьте себе, что вы добавляете контент на сайт, или же пользователи вашего сайта публикуют объявления (подобно тому, как это было выполнено нашей командой в работе над сайтом carvoy.com), и информация о добавлении нового контента появляется на ваших страницах в социальных сетях. Этот способ эффективен тем, что доносит информацию непосредственно целевой аудитории.
              Читать дальше →
            • GTD и бла-бла-бла

              image Майские каникулы — хорошее время, чтобы изучить что-то. Вот я и решил полистать все статьи из хаба GTD. В виду своего большого интереса к данной теме ранее я уже знакомился с различными материалами по личностной эффективности, в том числе в свободное время почитывал книги: Стивен Кови «Семь навыков высокоэффективных людей», Питер Брегман «Правило четырех секунд: Остановись. Подумай. Сделай», Даниел Канеман «Думай медленно… решай быстро», Дэниел Гоулман «Фокус. О внимании, рассеянности и жизненном успехе».

              И что же я узнал, просмотрев такой большой объем информации, останавливаясь на самом интересном? Что там в истории от 2007 года до 2017 на 150 страницах? А ничего (почти).
              Читать дальше →
              • +23
              • 14.3k
              • 4
            • Кому нужны эти SMS?

                Интернет практически повсюду, а где его нет, там на помощь придет Илон Маск, чья SpaceX, планирует к 2024 году запустить около 4,5 тысяч коммуникационных спутников. Общение между людьми на планете уходит в мессенджеры. Но общение между людьми и брендами, по-прежнему требует проверенных технологий. Как-минимум, пока 4,5 тысячи спутников не будут бороздить просторы космоса.

                Читать дальше →
              • Лучшие приемы минималистичного дизайна

                • Translation
                Светлана Шаповалова, коммерческий автор и переводчик, специально для «Нетологии» адаптировала статью Ника Бабича — разработчика и фаната UI/UX, в которой он рассказал о лучших приемах минималистичного дизайна.

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


                Читать дальше →
              • Пишем URL, получаем бесплатную иконку

                  Сервис omg-img позволяет вставлять иконки вот так:

                  <img src="https://png.icons8.com/search">
                  



                  Чувствуете, к чему я клоню? Сделали вставление иконок не выходя из IDE. Просто пишете URL, параметры вроде цвета и стиля — мы отрендерим иконку и отдадим через хороший, годный CDN.

                  Вместо search можно написать любое название иконки:

                  • home
                  • sheep-on-bike
                  • trump

                  Читать дальше →
                • Почему мы выбрали новый Angular

                    image


                    В своей статье я хочу поделиться с вами опытом использования нового Angular как основы для наших enterprise приложений. Речи о том, что новый Angular лучше, чем React, Vue или какая-то другая популярная сейчас библиотека, в статье не пойдет, хотя, конечно, я буду сравнивать его с конкурентами. Все решения имеют свои плюсы и минусы, и то, что хорошо подошло одному проекту, может устроить сущий ад в другом. Итак, прежде чем объяснить, чем нас зацепил новый Аngular, расскажу немного о том, что мы уже используем в разработке.


                    Наш основной проект имеет долгий путь развития и построен на уже устаревших технологиях — Marionette + Backbone + Coffescript. Пару лет назад мы поняли, что развивать проект в таком стеке стало довольно тяжело, и начали изучать альтернативы в экосистеме фронтенда и думать, как же нам мигрировать туда нашего «зверя».

                    Читать дальше →
                  • Роскомнадзор пытается добить Rutracker. Блокировки серверов-анонсеров и методы обхода

                      image

                      Rutracker толком не потерявший свою аудиторию вполне закономерно вызывает недовольство Роскомнадзора и других ведомств. Они все-таки старались, деньги тратили, выступали с заявлениями, а оно все работает и помирать не собирается. Под блокировкой был основной сайт rutracker.org, который, по сути, был просто каталогом magnet-ссылок и torrent-файлов. Новый виток борьбы привел в добавлению в списки блокировок серверов-анонсеров. Именно они поддерживают инфраструктуру ресурса и позволяют отдельным пирам найти друг друга.

                      Update
                      2 мая СМИ запестрели заголовками о начале массовой блокировки всех анонсеров и зеркал Rutracker: lenta.ru, Вести, Известия, Ведомости. Однако в интервью Газете.Ру представитель Роскомнадзора сообщил, что блокировки проводятся в плановом режиме и ничего глобального в плане тотальных блокировок они не производили за последние дни.
                      «Мы не проводим никакие массированные атаки. Мы ведем целенаправленную работу по повышению эффективности блокировки пиратского контента», — подчеркнул пресс-секретарь Роскомнадзора в беседе с корреспондентом «Газеты.Ru».

                      Он уточнил, что ни о каком замедлении трафика для пользователей трекера речи не идет, а блокировка RuTracker проводится в плановом режиме.

                      Тем не менее проблема реальна, сервера блокируются, а в посте есть полезные ссылки на открытые трекеры. Поэтому решил не удалять материал.
                      Читать дальше →
                    • Что должен уметь фронтенд-разработчик

                        Редактор «Нетологии» Светлана Шаповалова разбирается в том, кто такой фронтенд-разработчик, что он должен уметь (или не должен), и за что ему платят прекрасную зарплату (или не очень).

                        Кто такой фронтенд-разработчик


                        Согласно ежегодному исследованию StackOverflow, самая популярная профессия среди пользователей сервиса в 2017 году — это Web developer. Именно в эту категорию входят все фронтенд-разработчики.


                        Читать дальше →
                      • Закон об онлайн-кассах: давайте ставить точки? Электронные деньги и агрегаторы

                          Сегодня анализировал toster, несколько форумов и блогов, где обсуждаются вопросы ФЗ №54 об онлайн-кассах (как ККТ) и пришёл к выводу, что абсолютное большинство онлайн-предпринимателей до сих пор не сделало выводов о том, что именно предписывает данный акт.

                          Ниже вы узнаете:

                          нужна ли ККТ при приёме пластиковых карт и электронных денег?
                          нужна ли ККТ при приёме платежей через агрегаторов?

                          Дабы не повторяться — остальные аспекты можно посмотреть тут и тут, или даже вот здесь. И да — ещё ликбез.



                          Итак, электронные деньги (Яндекс, Qiwi, PayPal, но — внимание! — не WebMoney).

                          Начинаем, как учат всех юристов-первокурсников с названия: ФЗ называется «О контрольно-кассовой технике при осуществлении наличных денежных расчетов и (или) расчетов с использованием электронных средств платежа».

                          Далее открываем мой «любимый» ФЗ №161 «О национальной платёжной системе», а именно — ст. 3 и читаем: «электронное средство платежа — средство и (или) способ, позволяющие клиенту оператора по переводу денежных средств составлять, удостоверять и передавать распоряжения в целях осуществления перевода денежных средств в рамках применяемых форм безналичных расчетов с использованием информационно-коммуникационных технологий, электронных носителей информации, в том числе платежных карт, а также иных технических устройств».

                          Идём дальше и читаем ст. 1.2 ФЗ №54 (тот, что о ККТ): «Контрольно-кассовая техника применяется на территории Российской Федерации в обязательном порядке всеми организациями и индивидуальными предпринимателями при осуществлении ими расчетов, за исключением случаев, установленных настоящим Федеральным законом». О сроках и субъектах уже говорил, поэтому акцентируемся на другом.
                          пояснение про исключения