• Реализация ARP-спуфинга на Python

      Введение


      В данной статье я бы хотел продемонстрировать то, как можно реализовать собственную программу ARP-спуфинга на Python. Реализаций уже тысячи, но почти все они с использованием библиотеки Scapy и пары методов. Возможно данную библиотеку использовать эффективнее, не спорю, но мне было интересно реализовать самому с помощью сокетов и я бы хотел поведать читателям о том, как это делается.

      Предполагается, что Вы уже знакомы с тем, как работает ARP-протокол и его недостатком, если нет, то советую прочитать вот эту статью.

      Я не являюсь высококвалифицированным специалистом Информационной Безопасности, поэтому прошу тапками не кидать, а любые неточности оговорить в комментариях.
      Читать дальше →
      • +24
      • 8.7k
      • 4
    • 5 заметок для новоиспеченного менеджера

        Специально для студентов курса «Team Lead 2.0» подготовили небольшой полезный материал. Приятного прочтения.



        Вот вас повысили до тимлида или даже до Project менеджера, вы пришли домой и невероятно рады новой должности. Вечером вы лежите в кровати, пытаетесь уснуть, но в душе радуетесь новым открывшимся перспективам. Однако что-то еще вас тревожит. Теперь среди ваших коллег по цеху – вы главный, поскольку вы лучше всех разбираетесь в той или иной области, помогали другим и участвовали в принятии важных решений или по любой другой достойной причине вас сделали «главным». В этот момент происходит самая важная профессиональная трансформация, перед вами новая гигантская область, которой предстоит овладеть — менеджмент. Как себя вести? Завтра и каждый день после этого? Что вас ждет?
        Читать дальше →
      • Работа не волк, часть 1. Поиск работы: 9 кругов HR-a

          Поиск работы вызывает неприятные тревожно-азартные ощущения и у вчерашнего студента, и у профессионала с годами опыта за плечами. Это не признак неуверенности в себе, это проблема всей отрасли поиска персонала: мы идём на собеседование и понимаем, что не всё может зависеть от профессионализма, что кому-то не понравятся наши софт-скиллы или внешний вид, кто-то упрется в вопрос о причинах ухода с предыдущего места. На Хабре может выйти 200 статей-обращений к HR-службами IT-компаний, где сами соискатели будут с пеной у рта рассказывать, как с ними (нами!) нужно разговаривать, как оценивать, но на первой встрече с будущим работодателем вам всё равно подсунут психологический тест, зададут странные вопросы и посмотрят на вас, как будто вы уже что-то нарушили и идёте в компанию, чтобы порушить устои и корпоративную культуру. Поэтому мы не будем рассказывать компаниям, в чём они не правы — мы расскажем вам, как с этим жить. 


          Это первая часть нашего нового цикла «Работа не волк», который будет состоять из пяти частей, каждая из которых раскрывает важнейшие аспекты, связанные с трудоустройством. Как и в случае с циклом про образование, статьи будут субъективными, честными и основанными на обширной экспертизе. Вот что вас ждёт:

          Часть 1. Поиск работы: источники, резюме, собеседование с HR
          Часть 2. Устройство и адаптация: собеседуем с боссом, проходим испытательный срок с ветерком
          Часть 3. Работа в роли новичка: рост в компании
          Часть 4. Работа в роли опытного сотрудника: как не перегореть
          Часть 5. Увольнение: я ухожу красиво
          Читать дальше →
        • Конспект по «Машинному обучению». Математический анализ. Градиентный спуск



          Вспомним математический анализ


          Непрерывность функции и производная


          Пусть $E \subseteq \mathbb{R}$, $a$ — предельная точка множества $E$ (т.е. $a \in E, \forall \varepsilon > 0 \space\space |(a - \varepsilon, a + \varepsilon) \cap E| = \infty$), $f \colon E \to \mathbb{R}$.

          Определение 1 (предел функции по Коши):

          Функция $f \colon E \to \mathbb{R}$ стремится к $A$ при $x$, стремящемся к $a$, если

          $\forall \varepsilon > 0 \space\space \exists \delta > 0 \space\space \forall x \in E \space\space (0 < |x- a| < \delta \Rightarrow |f(x)- A| < \varepsilon).$


          Обозначение: $\lim\limits_{E \ni x \to a}f(x) = A$.
          Читать дальше →
        • Двойной VPN в один клик. Как легко разделить IP-адрес точки входа и выхода



            TL;DR В статье описывается самый простой способ настроить VPN-сервер, у которого IP-адрес для подключения VPN-клиентов отличается от IP-адреса, с которого клиенты выходят в интернет.

            Используете VPN для защиты приватности в интернете и арендуете для этого свой личный сервер? При этом вы единственный клиент, который подключается к этому серверу во всем мире? Так ли сложно найти ваш реальный IP-адрес, как вам кажется? С вступлением в силу пакета Яровой, это становится намного проще.

            Double VPN — популярная тема, вокруг которой много спекуляций. Часто этим термином называют совершенно разные технологии, но почти всегда это означает разнесенные на уровне IP-адресов точки подключения и выхода в интернет. Мы рассмотрим самый простой способ настройки VPN-сервера в таком режиме, который не требует дополнительной настройки на серверной стороне и позволяет получить максимальную скорость и самые низкие задержки.
            Читать дальше →
          • Как микроконтроллер может читать данные на скорости 1.6 Gbps

              Всем доброго времени суток! никогда такого не было и вот опять. С моей прошлой статьи прошло уже достаточно времени, а оно ставит новые задачи. И если раньше я передавал данные на скорости 100 Mbps, то теперь пришлось замахнуться на 1600 Mbps…

              На КДПВ — герой нашего романа — он смог читать данные на такой скорости!


              Читать, как это получилось
            • Применение машинного обучения и Data Science в промышленности

              • Translation
              Хабр, привет. Перевел пост, который идёт строго (!) в закладки и передаётся коллегам. Он со списком блокнотов и библиотек ML и Data Science для разных отраслей промышленности. Все коды на Python, и размещены на GitHub. Они будут полезны как для расширения кругозора, так и для запуска своего интересного стартапа.

              image

              Отмечу, что если среди читателей есть желающие помочь, и добавить в любую из подотраслей подходящий проект, пожалуйста, свяжитесь со мной. Я их добавлю в список. Итак, давайте начнём изучение списка.
              Читать дальше →
            • Осваиваем компьютерное зрение — 8 основных шагов

                Привет, читатель.

                Для тебя уже не является новостью тот факт, что все на себе попробовали маски старения через приложение Face App. В свою очередь для компьютерного зрения есть задачи и поинтереснее этой. Ниже представлю 8 шагов, которые помогут освоить принципы компьютерного зрения.

                image

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

                Читать дальше →
              • Самые короткие научные статьи

                  Математика


                  В 2005 году ученые Джон Конуэй (John Conway) и Александр Сойфер (Alexander Soifer) решили написать «самую короткую научную статью по математике в мире». Непосредственно тело статьи состоит из двух слов (и двух иллюстраций — в них содержится ответ на вопрос, поставленный в заглавии).

                  image

                  Читать дальше →
                • Российскому разработчику игр грозит 10 лет тюрьмы в США за покупку документации к самолёту F-16


                    Титульная страница технического руководства истребителя F-16 от 1996 года

                    В окружном суде Юты выдвинуто обвинение российскому разработчику компьютерных игр Олегу Тищенко. Пятнадцать лет он создавал высокоточные авиасимуляторы, а для большей реалистичности покупал документацию настоящих самолётов. Сейчас 42-летнему мужчине грозит больше десяти лет тюрьмы. Американские власти предъявили обвинения по пяти пунктам:

                    • Сговор с целью совершить преступление против США
                    • Нарушение закона об экспорте вооружений (дважды)
                    • Контрабанда товаров из США (дважды)
                    Читать дальше →
                  • Массовый стекинг моделей ML в production: реально или нет?

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



                      Такие соревнования часто выигрывают с помощью так называемого китайского стекинга, когда комбинаторным способом берут все возможные алгоритмы и значения гиперпараметров, и полученные модели в несколько уровней используют сигнал друг от друга. Обычные спутники этих решений — сложность, нестабильность, трудность при отладке и поддержке, очень большая ресурсоёмкость при обучении и прогнозировании, необходимость внимательного надзора человека в каждом цикле повторного обучения моделей. Смысл делать это есть только на соревнованиях — ради десятитысячных в локальных метриках и позиций в турнирной таблице.
                      Читать дальше →
                    • Изучаем многопоточное программирование в Go по картинкам

                      • Translation
                      • Tutorial

                      Скорее всего, вы уже слышали о языке программирования Go, популярность его постоянно растет, что вполне обоснованно. Этот язык простой, быстрый и опирается на прекрасное сообщество. Один из самых любопытных аспектов языка — это модель многопоточного программирования. Примитивы, положенные в ее основу, позволяют создавать многопоточные программы легко и просто. Эта статья предназначена для тех, кто хочет изучить эти примитивы: горутины и каналы. И, через иллюстрации, я покажу, как с ними работать. Надеюсь, это будет для вас хорошим подспорьем в дальнейшем изучении.
                      Читать дальше →
                    • Что технарю нужно знать о гуманитариях?



                        Начнем с того, что разделение на физиков и лириков придумали в 60ые для смеха, типа западников и славянофилов, или патриотов и либералов, спартак или динамо — классическая “двухпартийная система” наглядно показанная в серии Южного Парка про клизму и бутерброд. Еще древние римляне называли этот принцип “разделяй и властвуй”.

                        В итоге разным командам дали разные книжки, а про чужие говорили «скучно, вам не понять, да и понимать НЕ НАДО», а понять меж тем легко, главное посмотреть сквозь другие очки, сменить парадигму. Ведь ни одна из парадигм не истина, а вот бинокулярное зрение сильно облегчает жизнь. А тут, дали людям разные очки, одним плюс, другим минус, гуманитариям шестеренок в часах не рассмотреть, а для технарей через 200 метров вся природа абстракция.

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

                        Читать дальше →
                      • Pritunl — VPN-сервер для себя и друзей за 10 минут


                          В связи с последними событиями в России хочу рассказать вам о классном self-hosted VPN-сервере. После простой установки, без особого труда и углубленных знаний вы сможете создавать пользователей, генерировать VPN-профили и смотреть графики использования сети.


                          А обеспечив VPN-подключением себя и ваших близких, вы можете попробовать разделить траты за виртуальный сервер с вашими друзьями и знакомыми.


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

                          Читать дальше →
                        • Где узнать про искусственный интеллект? Топ мировых и российских конференций


                          Deep Learning Summit от RE*WORK, 2017

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

                          По исследованию портала Blog.standuply.com, лидер по ИИ-конференциям — США: здесь пройдет 80 событий; Великобритания отстает с большим отрывом (29), замыкает тройку Канада (12). Что касается городов, то Лондон, научный и финансовый хаб Европы, занял первое место (28 мероприятий); на втором и третьем — американские Сан-Франциско и Нью-Йорк (20 и 10 соответственно).

                          В преддверии нашей AI Conference мы решили создать «путеводитель» по ИИ-конференциям: календарь крупных зарубежных событий, а также подробное расписание российских.
                          Читать дальше →
                          • +13
                          • 5.1k
                          • 1
                        • «Камень-ножницы-бумага» и теория игр

                          • Translation
                          image

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

                          В 1950-х математик Джон Нэш доказал, что в любом виде игры с конечным количеством игроков и конечным количеством вариантов (таком, как «камень-ножницы-бумага») всегда существует смешение стратегий, при которой ни один игрок не может показать результатов лучше изменением только собственной стратегии. Теория таких устойчивых наборов стратегий, которые называются "равновесиями Нэша", совершила революцию в области теории игр, изменила направление развития экономики и способы изучения и анализа всего — от политических договоров до сетевого трафика. А ещё она позволила Нэшу получить в 1994 году Нобелевскую премию.

                          Так как же выглядит равновесие Нэша в игре «камень-ножницы-бумага»? Давайте смоделируем ситуацию, в которой есть вы (Игрок A) и ваш противник (Игрок B), снова и снова играющие в игру. В каждом раунде победитель получает очко, проигравший теряет очко, а ничья засчитывается как ноль очков.
                          Читать дальше →
                        • DC/AC инвертор: принцип работы, схемотехника, встроенное ПО

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

                          Думаю многие из вас наверняка видели рекламу, либо читали статьи, где была фраза «чистый синус». Вот именно о нем и пойдет речь, но не о маркетинговой составляющей, а о исключительно технической реализации. Я постараюсь максимально понятно рассказать о самих принципах работы, о стандартных (и не очень) схемотехнических решениях и самое главное — напишем и разберем ПО для микроконтроллера STM32, которое и сформирует нам необходимые сигналы.

                          Почему STM32? Да потому, что сейчас это самый популярный МК в СНГ: по ним много обучающей русскоязычной информации, есть куча примеров, а главное эти МК и средства отладки для них — очень дешевые. Скажу прямо — в коммерческом проекте я бы поставил только TMS320F28035 или подобный DSP из серии Piccolo от TI, но это уже совсем другая история.

                          Важно одно — STM32 позволяет стабильно управлять простыми «бытовыми» силовыми преобразователями от которых не зависит судьба мира работа какой-нибудь АЭС или ЦОДа.



                          Вот такую картину управляющих сигналов необходимо получить, чтобы превратить ток постоянный в переменный. И да — тут именно синус! Как в том фильме: «Видишь суслика? — Нет. — А он есть...»

                          Интересно узнать каким образом формируется синус? Хочется узнать как все-таки качают нефть киловатты энергии? Тогда добро пожаловать под кат!
                          Читать дальше →
                        • Индексы в PostgreSQL — 7


                            Мы уже познакомились с механизмом индексирования PostgreSQL и с интерфейсом методов доступа, и рассмотрели хеш-индексы, B-деревья, индексы GiST и SP-GiST. А в этой части займемся индексом GIN.

                            GIN


                            — Джин?.. Джин — это, кажется, такой американский спиртной напиток?..
                            — Не напиток я, о пытливый отрок! — снова вспылил старичок, снова спохватился и снова взял себя в руки. — Не напиток я, а могущественный и неустрашимый дух, и нет в мире такого волшебства, которое было бы мне не по силам.

                            Лазарь Лагин, «Старик Хоттабыч».

                            Gin stands for Generalized Inverted Index and should be considered as a genie, not a drink.

                            README

                            Общая идея


                            GIN расшифровывается как Generalized Inverted Index — это так называемый обратный индекс. Он работает с типами данных, значения которых не являются атомарными, а состоят из элементов. При этом индексируются не сами значения, а отдельные элементы; каждый элемент ссылается на те значения, в которых он встречается.

                            Хорошая аналогия для этого метода — алфавитный указатель в конце книги, где для каждого термина приведен список страниц, где этот термин упоминается. Как и указатель в книге, индексный метод должен обеспечивать быстрый поиск проиндексированных элементов. Для этого они хранятся в виде уже знакомого нам B-дерева (для него используется другая, более простая, реализация, но в данном случае это несущественно). К каждому элементу привязан упорядоченный набор ссылок на строки таблицы, содержащие значения с этим элементом. Упорядоченность не принципиальна для выборки данных (порядок сортировки TID-ов не несет в себе особого смысла), но важна с точки зрения внутреннего устройства индекса.

                            Читать дальше →
                          • Обзор инструментов для сравнения данных в PostgreSQL

                              Администраторы баз данных и разработчики часто сталкиваются с ситуациями, когда необходимо данные из разных баз сравнивать и синхронизировать, либо просто перенести их в другую рабочую базу. В этом случае очень важно выбрать правильный инструмент, который поможет справиться с этой задачей быстро и эффективно. Для PostgreSQL на рынке существует несколько готовых инструментов, которые позволяют находить различия и выполнять синхронизацию данных. В этой статье проведем небольшой обзор особенностей этих инструментов, а именно продукты таких компаний как Devart, SQL Maestro Group, Navicat и Altova.


                              image
                              Читать дальше →
                            • Деловая переписка на английском языке: фразы и советы

                                Елена Соловьева, менеджер проектов в компании Лаборатория Касперского, специально для блога Нетологии поделилась советами о том, как вести деловую переписку с иностранными коллегами и партнерами на английском языке. Статья участвует в конкурсе.

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

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