• Как применять Linux epoll в Python

    • Translation
    • Tutorial
    В статье описывается:
    • Примеры использования блокирующих сокетов
    • Преимущества асинхронных сокетов и Linux epoll
    • Примеры асинхронного использования сокетов через epoll
    • Вопросы производительности
    • Исходный код
    Читать дальше →
  • Противодействие мобильному мошенничеству: что бывает после фишинговых сообщений

      — Алло! Здравствуйте, я случайно положил деньги на ваш телефон вместо своего. Не могли бы вы вернуть их мне?
      — Здравствуйте, вы говорите с сотрудником департамента информационной безопасности компании, чьих абонентов вы пытаетесь обманывать.
      — И что, это как-то мешает вам перевести деньги на мой счет?


      Под катом — история расследования, проводившегося по факту получения информации об очередной мошеннической рассылке. Расследование аналогичного тем, которые проводятся нами каждый раз, когда становится известно об активности мошенников в мобильной сети.

      Читать дальше →
    • Ищем уязвимости в коде: теория, практика и перспективы SAST

        Не будет большим преувеличением сказать, что рынок средств статического тестирования защищенности приложений (Static Application Security Testing, SAST) в наше время переживает самый настоящий бум. Не проходит и пары месяцев между публикациями очередных научных работ на эту тему, ежегодно на рынок выводятся все новые и новые инструменты статического анализа защищенности, а месту SAST в процессе разработки ПО отводятся целые секции на международных ИБ-конференциях. В условиях непрерывного информационного прессинга со стороны поставщиков инструментария SAST, нелегко разобраться в том, что есть правда, а что − не более, чем маркетинговые уловки, слабо коррелирующие с действительностью. Давайте попробуем понять, что же действительно под силу инструментам SAST и как быть с тем, что им «не по зубам». Для этого нам придется немного погрузиться в теорию, лежащую в основе современных средств статического анализа защищенности кода.

        Читать дальше →
        • +20
        • 18.7k
        • 8
      • Бесплатная магистратура в одном из топовых вузов мира: Италия

          Честно сказать, до того как я решил поехать в Италию я все время путал какая страна в Европе в форме сапога: Италия или Испания. Также я считал, что Италия это страна для того, чтобы загорать на солнышке и купаться :) а работать или учиться надо в Германии, Нидерландах, Англии, США или в Скандинавии.

          В этой статье я хочу рассказать, как я поступал в один из топовых университетов мира и Европы — Politecnico di Milano (22 место в мире в этом рейтинге технических вузов, к примеру Баумка и МГУ находятся намного ниже: между сотым и двухсотым местом).

          Может быть мне повезло, но у меня сложилось впечатление, что поступить в Политех в магистратуру CS на платное очень просто и не супер дорого (до скачка евро в 2014 — 160т.р. в год). Получить scholarship на обучение довольно просто, а получить scholarship оплачивающий еще и жилье — вполне реально, даже если ты ни чем особо не выделяешься.
          Читать дальше →
        • Экзамены для поступления в «бесплатную» магистратуру в США

          • Tutorial
          Доброго времени суток, дорогие хабрачане!

          В продолжении темы о поступлении в магистратуру в США, расскажу о необходимых экзаменах.

          Любой желающий поступить в магистратуру в США обязан подтвердить достаточный для обучения уровень владения английским языком (IELTS/TOEFL) и общий уровень подготовки (GRE/GMAT). Для языкового экзамена есть исключения, когда человек уже проучился в американском вузе или школе, но для таких людей данная ветка даже и не нужна.

          Итак, рекомендую сдавать эти экзамены поочередно: IELTS/TOEFL ==> GRE/GMAT. Потому что, второй экзамен идет сложнее, и успешная сдача второго экзамена требует как минимум upper-intermediate.

          Что же все таки сдать IELTS или TOEFL? Для начала обозначим то, что 99% американских вузов принимают IELTS. И минимальный порог в среднем 6.5 баллов в общем, и как минимум 6.0 в каждой секции. Лига плюща принимает 7.0 overall и выше, в то время как для «средних» и 5.5 бывает достаточно, хотя такие вузы не предоставят вам полное финансирование скорее всего. Зато порадуют приемлемой ценой и скидками на обучение. Лично я сам сдавал IELTS и необходимо было набрать 6.5 overall. Помните в предыдущем посте я как-то говорил, что все карты легли так, чтобы я поступил именно в Бэйлор? Так вот, это единственный университет, которые не обозначили минимальный порог по секциям (во всех других вузах в каждой секции допускается на 0.5 меньше чем overall). А я завалил одну секцию =( Помню когда увидел результаты я не знал радоваться или нет, ведь не смотря на достаточный общий балл, я не знал точно примут ли заваленную секцию. Уточнив у представителей вуза удовлитворительность моего результата, я с радостью приступил к подготовке к следующему экзамену. Записался на ближайшую дату (уже через две недели) и начал подготовку.
          Читать дальше →
        • Язык Go для начинающих

          Gopher

          Цель этой статьи — рассказать о языке программирования Go (Golang) тем разработчикам, которые смотрят в сторону этого языка, но еще не решились взяться за его изучение. Рассказ будет вестись на примере реального приложения, которое представляет из себя RESTful API веб-сервис.
          Читать дальше →
        • Граф цитирования статей Хабрахабра

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



            (это не просто картинка для привлечения внимания, а граф цитирования статей внутри Хабрахабра, где размер вершин определяется числом входящих рёбер, i.e., "количеством цитат внутри Хабра")


            Началось всё с того, что в комментариях к статье про Хабра-граф и карму Tiberius и Loriowar озвучили идею, фактически витающую в воздухе: а почему бы не взглянуть на граф цитирования статьёй внутри самого Хабра?




            Вы спрашивали? Мы отвечаем. Для того чтобы рассказ не был размахиванием рук, конкретизируем разбираемые вопросы:


            • Q1: Как выглядит граф цитирования Хабрахабра и какие в нём хабы (hubs and authorities)?


            • Q2: Насколько связным является сообщество (граф цитирования) и какие в нём кластеры?


            • Q3: Как изменится граф, если из него убрать самоцитирование?

            Под катом трафик. Все картинки кликабельны.

            Читать дальше →
          • Параллельное программирование с CUDA. Часть 1: Введение

            • Tutorial

            Еще одна статья о CUDA — зачем?


            На Хабре было уже немало хороших статей по CUDA — раз, два и другие. Однако, поиск комбинации «CUDA scan» выдал всего 2 статьи никак не связанные с, собственно, алгоритмом scan на GPU — а это один из самых базовых алгоритмов. Поэтому, вдохновившись только что просмотренным курсом на Udacity — Intro to Parallel Programming, я и решился написать более полную серию статей о CUDA. Сразу скажу, что серия будет основываться именно на этом курсе, и если у вас есть время — намного полезнее будет пройти его.
            Читать дальше →
          • Учебник по языку программирования Python (хабраиндекс)

              Серия статей «Основы Python»


              I, Начало
              II, Строки
              III, Списки, кортежи, файлы
              IV, Генераторы списков
              V, Определение функций, основы
              VI, Расширенное определение функций

              Об основах языка Python в сжатой форме

              Продвинутый уровень


              Сила и красота декораторов Короткий экскурс в метапрограммирование.
              Итерируем все и вся Специфика циклов в Питоне.
              Как я учился работать с XML
              Консервация объектов в Python Использование модуля Pickle.
              Memoization в Python Оптимизация работы программ.
              Простейшее рисование с помощью PIL
              Regexp и Python: извлечение токенов из текста
              Как писать маленькие приложения на python с графическим интерфейсом (библиотека Qt).

              http://netsago.org/ru/docs/1/12/
              Одеваем скрипты Python с помощью EasyGui (добавляем простой диалоговый интерфейс)

              http://djbook.ru/
              Учебник по Django (Python-фреймворк для веб-приложений)

              Читать дальше →
            • Дайджест разработки на Unreal Engine

                Игры на Unreal Engine, разработка на Unreal Engine, туториалы для Unreal Engine и другие интересные материалы об Unreal Engine вы найдете в нашем дайджесте. И кажется, мы забыли упомянуть самое главное – дайджест посвящен Unreal Engine.


                Читать все
              • PHD VI: как у нас угнали дрона



                  В этом году на PHDays был представлен новый конкурс, где любой желающий мог перехватить управление квадрокоптером Syma X5C. Производители часто полагают, что если они используют не IP-технологии, а какой-нибудь другой беспроводной стандарт, то можно не думать о защищенности. Как будто хакеры махнут рукой, решив, что разбираться с чем-то, кроме IP, — это слишком долго, сложно и дорого.

                  Но на самом деле, как мы уже много раз упоминали, SDR (software-defined radio) — отличный инструмент для доступа в мир IoT, где уровень вхождения определяется уровнем добросовестности производителя IoT-решений. Однако даже не имея SDR можно творить чудеса, пусть и в ограниченном пространстве частот и протоколов.

                  Цель — перехватить управление дроном.

                  Входные данные:

                  • диапазон управления дроном: 2,4 ГГц ISM,
                  • управление осуществляется модулем nRF24L01+ (на самом деле — его клоном BK2423).

                  Средства (выдавались желающим): Arduino Nano, nRF24L01+.

                  Результат — угонщик получил Syma X8C в подарок.

                  Так как среди желающих угнать наш дрон оказались уже подготовленные люди, имеющие в арсенале HackRF, BladeRF и другие серьезные игрушки, мы опишем два метода — SDR и непосредственно nRF24L01+.
                  Читать дальше →