Главная Кодинг

Кодинг

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

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

7 лучших ферм устройств для тестирования своих iOS- и Android-приложений

Еще в далекие времена, когда балом смартфонов заправляли Nokia и Microsoft, возникла одна характерная особенность мобильной разработки — разношерстность устройств по характеристикам и модификациям операционок. Приходилось тестировать приложение не только на разных версиях ОС, но и на разных физических устройствах. После выхода iOS самих моделей телефонов всегда было мало, поэтому с ними проблем не возникало. А вот в мире Android проблема фрагментации встала во весь рост. Моделей на рынке тысячи, и все время появляются новые, и твое приложение или игра должны гарантированно работать на каждой из них. Добавим еще разные версии прошивок на этих моделях... И поймем, что вручную потребуется куча человеко-часов для проверки каждого релиза.

Спецпроект

Как стать Data Scientist. Осваиваем новую перспективную профессию

В мире IT существуют различные направления. Кто-то занимается администрированием, кто-то — разработкой или тестированием. Создаются курсы, готовящие системных администраторов, программистов, тестеров. В этой статье будет рассмотрена особая программа — Data Scientist — специально для разработчиков, аналитиков и продакт-менеджеров.

Xakep #220

Сенсорные датчики в Android: какие они бывают и как с ними работать

Современный смартфон уже сложно назвать просто компьютером, ведь он умеет гораздо больше своего стационарного предка: и температуру может измерить, и высоту над уровнем моря подсказать, и влажность воздуха определить, а если вдруг забудешь свою ориентацию в пространстве или силу тяжести потеряешь — все исправит. А помогают ему в этом, как ты уже, наверное, догадался, датчики aka сенсоры. Сегодня мы познакомимся с ними поближе, а заодно и проверим, действительно ли мы находимся на Земле. ;)

Xakep #219

Центр интернета вещей: подключаем Arduino к Azure IoT Hub

В прошлом году компания Microsoft анонсировала облачный бэкенд для управления умными приборами и интегрированной электроникой. Azure IoT Hub позволяет с минимумом программирования настраивать взаимодействие между устройствами и встраивать его в свои проекты на основе Azure. Чтобы посмотреть, как это работает, мы разберем простую задачу — отправку в облако показаний датчика, подключенного к контроллеру Arduino.

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

Заработок на Android: продаем контент через In-app Billing API

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

Автоматизируем работу с программами на Android при помощи Accessibility Service

Способы, позволяющие автоматизировать пользовательские действия, чтобы программа работала с интерфейсами чужих софтин так, как будто это живой человек, совершенно закономерно интересуют программистов, хакеров и безопасников. Кто сказал «негласно автоматизировать работу с мобильным банком»? :) Стыдитесь, товарищ! Мы за мирную автоматизацию. В прошлой статье по Accessibility Service мы сфокусировались на получении данных экрана, а сегодня мы научим Accessibility Service делать работу на устройстве за нас!

Xakep #219

Dagger 2: оживляем старый Java-код для Android с помощью крутого фреймворка

Если тебе приходилось переписывать старый код только для того, чтобы он заработал в новом проекте, значит, ты кое-что упустил. Наш журнал спешит на помощь, срочно выкидывай «костыли» и «ржавые велосипеды» — с этого дня твоя жизнь круто поменяется. :)

Реверсинг малвари для начинающих. Внедрение shellcode и шифрование malware-кода

Рад снова тебя встретить на страницах нашего журнала, мой друг! Мы продолжаем прокачивать скиллы в реверсинге и познавать нелегкое ремесло malware-аналитика. В сегодняшнем выпуске мы поговорим о двух интересных фичах, которые довольно часто встречаются в «живых образцах» вредоносного ПО: шифровании (encoding) и внедрении shellcode, позволяющего получить командную оболочку ОС потенциальной жертвы.

На страже честных выборов. 9 способов побороть накрутки в онлайновых голосованиях

Создать опрос на сайте — задача пустяковая. А вот как уберечься от накрутки — уже совсем другая история. Кстати, даже если ты не интересуешься вопросами защиты онлайн-голосований, из этой статьи ты узнаешь, как тебя забанили на анонимном форуме и почему твой любимый порносайт продолжает учитывать твои вкусы несмотря на то, что ты используешь порнорежим браузера :)

Xakep #218

Как я ковырял чужой код. Что полезного можно найти внутри известных приложений для Android

Пока Евгений Зобнин учит тебя защищать свой код от чужих глаз и шаловливых ручонок, я решил занять позицию хитрого разработчика, который всегда рад, скажем так, «поучиться» кое-чему у создателей снискавших определенную популярность приложений ;). В этой статье я расскажу, как я анализировал код чужих программ и нашел одну интересную недокументированную функцию для работы с виджетами приложений.

На чем писать мобильные приложения: сравниваем Intel XDK, NativeScript и Xamarin

В предыдущей статье мы рассмотрели Silo-подход к разработке мобильных приложений, а также часть самых популярных black box средств разработки: среды Apache Cordova и Adobe Fuse. Сегодня мы продолжим изучать «черный ящик» и рассмотрим еще несколько популярных и известных средств разработки, а затем перейдем к заключительной теме — кросс-платформенному подходу.

Xakep #218

Прокачай свой nmap! Используем популярный сканер для обхода фаерволов, дирбастинга, DoS-атак и многого другого

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

Xakep #218

Visual Studio Mobile Center: деплоим мобильный софт с помощью devops-конвейера Microsoft

В прошлой статье мы рассмотрели автоматизацию сборки Android- и iOS-приложений, подключили Xamarin Test Cloud, провели автоматическое UI-тестирование и внедрили HockeyApp для получения обратной связи. Сегодня мы продолжим погружение в мир инструментов Mobile DevOps, которые не просто ускоряют, но еще и заметно упрощают разработку мобильных приложений.

Xakep #218

Реверсинг малвари для начинающих. Инструменты скрытия вредоносной активности

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

Xakep #218

Кастомный Android: делаем свою прошивку из стоковой, не копаясь в исходниках

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

Xakep #218

Скриптуем Android с Tasker и Autotools: защита программ отпечатком пальца, распознавание текста и скрытые твики

Как думаешь, сможешь ли ты за пять минут своими руками сделать систему защиты Android-приложений с помощью отпечатка пальца? Или систему распознавания текстов с автоматической отправкой данных в облако? Сможешь! Это (и многое другое) можно реализовать буквально на коленке с помощью системы автоматизации Tasker и мощнейшего плагина AutoTools.

Xakep #217

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

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

Xakep #218

Задачи на собеседованиях. Награждение победителей от Waves Platform

Вот уже и наступила весна. Некоторые — самые торопливые — уже выкинули елки, в светодиодных гирляндах стали садиться батарейки, а наши читатели начали потихоньку выходить из спячки. Сегодня мы узнаем ответы на прошлые задачи на собеседованиях и прославим читателя Алексея Астахова, который заработал на этом деле 1000 Waves.

Xakep #216

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

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

Пишем свой Dialer для Android и работаем со звонками на низком уровне

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

Xakep #218

Строим мобильное приложение на Firebase — бесплатном и мощном бэкэнде Google

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

Xakep #218

Служба, которая не спит. 3 способа обойти режимы энергосбережения Android в своей программе

Давным-давно, когда Android еще не был мейнстримом, любой разработчик мог написать приложение, которое сможет спокойно висеть в фоне и в режиме реального времени обмениваться данными с сервером. Но чем дальше, тем более жесткие техники сохранения энергии применяет Google, и сегодня так просто сетевое реалтаймовое приложение уже не реализуешь. Однако есть несколько трюков, которые позволяют это сделать.

Xakep #218

Мобильная разработка: выбираем инструментарий. Silo, black box или cross-platform?

Первый iPhone был представлен десять лет назад, в 2007-м. Через год появился магазин приложений от Apple. Тогда же на сцену вышел Android, а вместе с ним магазин приложений Google Play. Хотя сама идея продавать ПО для мобильных телефонов не была новой, именно появление iPhone, Android и Windows Phone ознаменовало образование современного рынка мобильного ПО, каким мы его знаем сейчас.

Xakep #217

Секретный код. Прячем конфиденциальную информацию внутри своих приложений для Android

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

Xakep #217

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

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

Xakep #217

Реверсинг малвари для начинающих. Вскрываем упаковщики, ломаем протекторы

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

Спецпроект

Как устроиться на работу программистом? Пошаговая инструкция по поиску работы

Мало научиться программировать — желательно еще и чтобы за твои знания и умения платили. С чего начать, как и где искать работу, тебе подскажет эта статья. Итак, приступим!

Xakep #216

Кодинг под Windows 10 Mobile: узнаем содержимое каталогов, отправляем СМС, работаем с адресбуком и сканируем Wi-Fi

На какой бы аппаратной платформе ни выполнялась Windows 10, везде для построения приложений используется подсистема UWP. В прошлой статье мы начали изучать мобильную «десятку», обсудив ряд важных вопросов. Cегодня я предлагаю несколько рецептов для более глубокого погружения в программирование мобильной винды.

Xakep #216

Кодинг для Chromecast. Транслируем видео на телевизор из своего приложения для Android

Китайские интернет-магазины предлагают медиаплееры на любой вкус, цвет и конфигурацию за небольшие деньги. Омрачает всеобщую радость лишь то, что Android на экране телевизора смотрится отлично, а вот управлять им совершенно неудобно. Одна небезызвестная корпорация добра выпустила Chromecast — гаджет, более дружелюбный для пользователя. Сегодня мы рассмотрим это устройство и даже напишем код под него.

Xakep #216

Извращения с импортозамещением. Работаем с алгоритмом блочного шифрования «Кузнечик» из ГОСТ 34.12—2015

Уже почти три года поступление вольного хакера на государеву службу не считается в глазах коллег по IT-ремеслу зашкваром. Так что, если слова «импортозамещение» и «цифровой суверенитет» не вызывают у тебя легкого троллфейса, а ГОСТ ты считаешь хорошим криптографическим алгоритмом (что, кстати, правда), то эта статья тебе подойдет точно.

Xakep #216

Фишинг на Android. Разбираем техническую сторону типовых атак

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

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

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

Xakep #215

Превращаем SoundCloud в мобильное приложение с помощью крутейшего JS-фреймворка Electron

Фреймворк Electron разработан в GitHub и носил раньше название «Atom shell». Пожалуй, самое известное приложение, написанное с его помощью, — текстовый редактор Atom. А еще — клиент Slack для настольных компьютеров, клиент мгновенных сообщений Franz, Git-клиент GitKraken, GUI-клиент к утилите Yeoman и даже Microsoft Visual Studio Code. Давай и мы с тобой попробуем написать на нем что-нибудь крутое!

Xakep #215

Async/await: асинхронные возможности в Python 3+

16 марта 2014 года произошло событие, которое привело к довольно бодрым холиварам, — вышел Python 3.4, а вместе с ним и своя внутренняя реализация event loop’а, которую окрестили asyncio. Идея была такая: чтобы не зависеть от внешних реализаций отлова неблокирующих событий на сокетах, надо встроить ее в сам язык! Давай посмотрим, что в итоге получилось.

Xakep #215

Задачи на собеседованиях. Задачи от Waves Platform

Когда в описании компании присутствуют такие теплые слова, как «блокчейн», «эмиссия», «токены» и «криптоплатформа», а в качестве подарков победителям задач они предлагают криптовалюту, у нас не остается никаких сомнений. Такие задачи надо публиковать!

Xakep #215

Реверсинг малвари для начинающих. Разбираем простой вирус

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

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

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

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

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

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

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

Каждую неделю, вместе с дайджестом актуальных хакерских трендов, ты можешь получить один из 1000+ еженедельных кодов на скидку от 10 до 50% или один из 5 промокодов на бесплатную годовую подписку на «Хакер»

Данные участников не передаются третьим лицам