Рейтинг@Mail.ru
Главная Кодинг Экзотика

Экзотика

Xakep #217

Взломай Атлантиду! Распутываем загадки RuCTFE 2016 с командой создателей

Перед тобой шесть сервисов из мира Атлантиды. Каждый из них содержит ключи — флаги. Если найдешь все ключи, то разгадаешь секрет Атлантиды и получишь награду. К счастью, все сервисы уязвимы, содержат различные баги и их можно взломать. В этой статье мы шаг за шагом разберем эксплуатацию уязвимостей сервисов Атлантиды, которые нам приготовила команда HackerDom в рамках RuCTFE!

Xakep #216

HOW-TO: Как написать собственный генератор паролей на PowerShell

Если тебе нужно сгенерировать много паролей или ты решил, что недостаточно доверяешь сторонним утилитам, то можешь взять за основу этот небольшой скрипт на PowerShell. Ты можешь доработать и модифицировать его по своему усмотрению — заодно поупражняешься в программировании на «пошике».

Xakep #217

Сам себе DBаггер. Пишем свой MySQL proxy-сервер на языке Go и подсматриваем запросы

Нередко в приложении со сложной бизнес-логикой требуется найти баг, который корнями уходит куда-то глубоко в DB-слой. В такой ситуации на помощь может прийти proxy-сервер, который перехватит все запросы из приложения в БД и отобразит их в удобочитаемом виде. В этой статье мы рассмотрим те особенности протокола MySQL, которые помогут нам написать такой сервер.

Машинное обучение. Разработка на R: тонкости при использовании циклов

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

Xakep #214

Гайд по криптографии: что такое электронная цифровая подпись и как она работает

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

Xakep #214

Программируем на языке R: как правильно писать циклы для обработки больших объемов данных

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

Xakep #212

data.table: выжимаем максимум скорости при работе с данными в языке R

К чему лишние слова? Ты же читаешь статью про скорость, поэтому давай сразу к сути. Статья будет интересна тем, кто уже немного знаком с языком R, а также разработчикам, которые его активно используют, но еще не открыли для себя пакет data.table.

Xakep #211

Виртуальная реальность для программиста, часть 2: MS HoloLens

В прошлой статье я сделал общий обзор средств разработки для наиболее интересных устройств виртуальной реальности и дал торжественное обещание в следующем материале прицельно рассказать тебе про Microsoft HoloLens. Что ж, пора сдержать слово!

Xakep #211

Виноград безумия. Программируем без букв на Emojicode

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

Xakep #211

Как перестать кодить на Java и начать жить: сто* причин изучить Kotlin

Ребята из JetBrains сделали очень много крутых вещей, среди которых Kotlin — молодой, но очень перспективный язык программирования под JVM и Android. В этой статье я покажу, чем этот язык может заинтересовать Android-разработчика и заставить его навсегда позабыть про Java.

Xakep #210

Виртуальная реальность для программиста: обзор устройств и средств разработки

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

Xakep #210

Внимание, это розыгрыш! Пишем простой смарт-контракт

Писать умные контракты для Ethereum — не такая сложная задача, как может показаться. Чтобы рассказать тебе, как это делать, мы решили провести небольшой эксперимент. В этой статье описана разработка умного контракта, который разыгрывает трехмесячную подписку на «Хакер». Установив клиент и запустив контракт, ты сможешь принять участие!

Xakep #210

Ставим Ethereum на Raspberry Pi, чтобы связать умные вещи контрактами

На пересечении двух ультрамодных тем, криптовалют и интернета вещей, возможно, лежит золотая жила. Представь: умные предметы в будущем смогут общаться друг с другом при помощи неразрывных контрактов. А посмотреть, как это будет работать, можно уже сегодня. В этой статье я расскажу тебе, как установить Ethereum на Raspberry Pi и запустить умный контракт, взаимодействующий с реальным миром.

Xakep #209

Погружение в крипту. Часть 4. Современные зарубежные шифры

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

Xakep #207

Погружение в крипту. Часть 3: отечественные шифры

Ты уже познакомился с историческими шифрами, узнал о распределении ключей. Теперь настал момент погрузиться с головой в современную криптографию. Ее методы куда более изощренные, нежели у исторических шифров. Попробуем разобраться, что такое сеть Фейстеля и какие отечественные блочные шифры используются в современных протоколах. Все просто, понятно и с примерами. Велком!

Xakep #206

Тур по BSD, часть 2. NetBSD, rump-ядра и pkgsrc

«Конечно, оно работает на NetBSD» — таков официальный слоган операционки, которой посвящен сегодняшний обзор. Долгое время NetBSD держала первенство как самая портабельная ОС в мире и, если говорить о технической стороне вопроса, до сих пор продолжает лидировать: компоненты этой системы ты можешь найти везде, начиная от роутеров и заканчивая смартфонами и игровыми консолями.

Xakep #206

Public Key Cryptography: осваиваем открытые ключи на практике

В этой статье я покажу, как реализовать основные операции по работе с открытыми ключами. Речь идет о подписи, проверке подписи, шифровании и расшифровании в контексте PKI. Теоретически данный код может использоваться с любымCryptography Service Provider, поддерживающим интерфейс MS Crypto API.

Xakep #205

Прокачай свой Nmap! Расширяем возможности культового сканера при помощи NSE-скриптинга

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

ESIL + radeco IL. Используем radare2 для эмуляции и декомпиляции

Много кто помнит черно-белый интерфейс SoftICE с просмотром дизассемблерного листинга и содержимого регистров. Еще больше человек знают об IDA Pro (декомпилятор не рассматриваем) и бессменном objdump (в случае линуксоидов). Однако времена ручного разбора ассемблера прошли. Сейчас большую популярность приобрели инструменты преобразования нативного кода в некое абстрактное представление для упрощения анализа. Подобные инструменты используются повсеместно — от набора компиляторов на основе LLVM до декомпилятора HexRays. В данной статье я попытаюсь объяснить основы этого метода на примере ESIL от проекта radare2.

Xakep #204

Интерпретатор «по-функциональному»: Haskell, OCaml и Scala на практике

Давненько мы не касались темы функционального программирования... успел ли ты соскучиться? Уверен, что нет, но деваться некуда :), ведь сегодня я настроен показать тебе реальную силу функционального подхода. Заодно мы рассмотрим то общее, что объединяет функциональные языки. В этой статье мы попробуем написать простейший интерпретатор сразу на трех языках: Haskell, OCaml и Scala.

Xakep #203

Погружение в крипту. Часть 1: как работают самые известные шифры в истории?

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

После 15 лет разработки язык программирования Perl обновится до версии 6.0.0

Всё время отодвигавшийся срок выхода шестой версии языка Perl успел стать шуткой — его автор Ларри Уолл начал работу над стандартами ещё в 2000 году и неоднократно объявлял о том, что финальная версия будет готова «к Рождеству», однако это рождество откладывалось на протяжении пятнадцати лет. 5 октября 2015 года на конференции в Сан-Франциско Уолл объявил, что разработка близится к концу, работа над стандартом завершена, и уж на это Рождество Perl 6.0.0 точно будет закончен. Впрочем, Уолл тут же пообещал, что и после этого в язык будут продолжать добавляться новые возможности.

Xakep #200

Дети лейтенанта CryptoLocker’a. Вскрываем DirCrypt, TorLocker, TeslaCrypt, TorrentLocker, Critroni и CryptoWall

Первые образцы малвари, шифрующей файлы, а затем требующей денег за расшифровку, появились очень давно. Однако именно CryptoLocker основал в среде вирусописателей нехорошую тенденцию — использовать самые последние достижения криптографии в виде весьма стойких алгоритмов шифрования. Сегодня мы исследуем несколько троянов-шифровальщиков, появившихся после нашумевшего шествия по интернету CryptoLocker’а (или в одно время с ним).

Xakep #199

Кодинг для пентестера. Разрабатываем модули для Metasploit

В статье из прошлого номера мы познакомились с теоретической частью и провели небольшой «пентест» WordPress. В этой статье я буду призывать тебя копать глубже, вспомнив, что хакер — это в первую очередь программист :). Действительно, несмотря на то что счет встроенных в Metasploit модулей уже пошел на тысячи, рано или поздно любой, кто плотно работает с фреймворком, сталкивается с необходимостью расширить его функциональность собственными эксплоитами и вспомогательными модулями. Сегодня мы рассмотрим все необходимые аспекты создания модуля с нуля, а заодно коснемся особенностей языка Ruby, которые нужно учитывать при написании.

Xakep #198

Анализ данных с использованием R. Часть 1

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

Вышел OpenCV 3.0

Вышла третья версия библиотеки Open Computer Vision (OpenCV). В анонсе этого релиза сказано: «С большим удовольствием и боль…

Изучаем R. Часть 2: векторизация и визуализация

В прошлый раз (в ноябре 2014-го; мне очень стыдно, что я так затянул с продолжением!) я рассказывал о базовых возможностях языка R. Несмотря на наличие всех привычных управляющих конструкций, таких как циклы и условные блоки, классический подход к обработке данных на основе итерации далеко не лучшее решение, поскольку циклы в R необыкновенно медлительны. Поэтому сейчас я расскажу, как на самом деле нужно работать с данными, чтобы процесс вычислений не заставлял тебя выпивать слишком много чашек кофе в ожидании результата. Кроме того, некоторое время я посвящу рассказу о том, как пользоваться современными средствами визуализации данных в R. Потому что удобство представления результатов обработки данных на практике не менее важно, чем сами результаты. Начнем с простого.

Знакомство с языком Eiffel

Долгие годы я был фанатом разработки под Windows, о чем немало писал в этот вот лучший компьютерный журнал всех времен и народов. Со временем я перешел под Mac OS и UNIX. Работая под макосью, я озадачился выбором тулзы для создания платформонезависмых программ. Что же предпочесть? Java? Mono? Слишком скучно. Я выбрал… Eiffel. И вот почему.

«ХАКЕР» ДОСТУПЕН ТОЛЬКО В ЭЛЕКТРОННОЙ ВЕРСИИ
Оформи подписку — получи:
  • доступ к платным материалам сайта
  • доступ ко всем номерам PDF
3290 р.
на год
490 р.
на месяц
60 р.
за 1 статью

Еженедельный ][-дайджест

Реклама на «Хакере»

Корпоративная подписка

Для подписчиков

Хочешь годовую подписку в подарок?

Хочешь годовую подписку в подарок?

Каждые выходные, вместе с дайджестом самых актуальных хакерских трендов, ты можешь получить промокод на бесплатную годовую подписку на «Хакер». Мы выбираем троих счастливчиков каждую неделю.

Даже если ты не попал в их число — ты все равно можешь получить один из 1000+ еженедельных скидочных кодов на годовую подписку. Скидка составляет от 10 до 50%!

Спасибо! На твою почту было отправлено подтверждающее письмо.