Временная скидка 60% на годовую подписку!
Главная Кодинг (страница 3)

Кодинг

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

Xakep #238

Мифы об аде. Как и зачем программировать на аде в современном мире

Язык, разработанный по заказу Министерства обороны США и названный в честь первой в мире программистки Ады Лавлейс, активно используется для управления самолетами, поездами, космическими аппаратами и прочими интересными штуками. Давай посмотрим на язык без призмы мифов и разберемся, какую пользу мы можем из него извлечь, даже если пока не собираемся в космос.

Xakep #237

Пишем эмулятор игровой консоли. Как устроена легендарная приставка Nintendo и как ее воссоздать самому

Ты наверняка сталкивался с эмуляторами игровых приставок и, возможно, даже просиживал за ними не один час. Но задавался ли ты вопросом, как это работает? На примере NES, известной в России как Dendy, я покажу, как создать собственный эмулятор. А заодно разберемся с хитрой архитектурой этой приставки, выдававшей потрясающе хорошую картинку для своего времени и своей скромной цены.

Xakep #237

Пишем стилер. Как вытащить пароли Chrome и Firefox своими руками

Ты наверняка слышал о таком классе зловредных приложений, как стилеры. Их задача — вытащить из системы жертвы ценные данные, в первую очередь — пароли. В этой статье я расскажу, как именно они это делают, на примере извлечения паролей из браузеров Chrome и Firefox и покажу примеры кода на C++.

Xakep #237

Задачи на собеседованиях. Задачи от компании Abbyy

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

Xakep #236

Тайный WinAPI. Как обфусцировать вызовы WinAPI в своем приложении

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

Xakep #236

Кодим в консоли. Как отказаться от IDE и стать более продуктивным и уверенным в себе

Зачем в XXI веке разработчику нужны навыки программирования в «голой» консоли? Да затем же, зачем солдату навыки рукопашного и штыкового боя. Тому, чья служба состоит из покраски травы и стен, не нужны совсем, а вот коммандос этому все еще учат.

Xakep #235

Стоп-спам для «Телеграма». Как написать и задеплоить бота на TypeScript за полчаса

К тебе в уютный и ламповый чат заходит непонятный и никому не известный человек. Ты приветствуешь его, но он угрюмо молчит. Только ты успеваешь мысленно оправдать его поведение, как он подло кидает рекламу очередной мошеннической криптовалютной группы. Знакомо? Сегодня мы закодим и запустим в продакшен собственное решение, которое положит конец гнусным спамерам!

Xakep #234

Идеальная форма. Обрабатываем сложные формы на Python с помощью WTForms

Обработка HTML-форм в веб-приложениях — несложная задача. Проблемы начинаются, когда форма разрастается: нужно следить за полями, их ID, атрибутами name, корректно маппить атрибуты на бэкенде при генерации и процессинге данных... Разработка превращается в постоянную рутину. Однако есть способы сделать работу с формами удобной.

Xakep #233

Олимпиады по программированию. Куда податься, если ты молод, умен и хочешь выиграть несколько тысяч долларов

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

Xakep #233

[Без]опасный JavaScript. Изучаем проблемы кода на JS и выбираем средства борьбы с ними

Разработка безопасных приложений на JavaScript — весьма непростое занятие. Но выполнимое. В этой статье рассмотрим особенности JavaScript, из-за которых возникает наибольшее количество проблем, и обратим внимание на инструменты разработчика, которые помогут их избежать.

Xakep #233

Советы Android-разработчику. Что я узнал за год поддержки приложения в Google Play

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

Xakep #232

Пишем майнер на Java. Кодим добытчик криптовалюты Electroneum

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

Задачи на собеседованиях. Задания для хардкорщиков от компании Acronis

Приятно осознавать, что среди наших читателей много настоящих хакеров, способных дать решительный бой повсеместному засилью сделанных на двухнедельных онлайн-курсах веб-программистов. Поэтому за новыми задачами мы обратились к компании, «низкоуровневая» ориентация специалистов которой не вызывает сомнений, — Acronis!

Xakep #231

Давай напишем ядро! Создаем простейшее рабочее ядро операционной системы

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

Xakep #231

Дао хеша. Познаем дзен методически правильного хеширования паролей

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

Xakep #230

Многофакторная аутентификация по-взрослому. Куем серьезный софт с помощью бесплатного инструментария

В этой статье мы рассмотрим, как добавить в мобильное приложение возможность еще одного подтверждения аутентификации в дополнение к имени пользователя и паролю (например, звонок на зарегистрированный на пользователя телефон или ввод кода из СМС) и как настроить backend-сервисы для реализации такой многофакторной аутентификации.

Xakep #231

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

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

Xakep #230

Криптуем по-крупному. Разбираемся с режимами работы российских блочных шифров

В предыдущих статьях мы подробно разобрали, как работают два отечественных криптоалгоритма. Однако с помощью них получится зашифровать весьма скудный кусочек информации — 8 или 16 байт. Понятно, что нынче в такие объемы ничего втиснуть не получится и нужно что-то с этим делать. А что с этим делать, подробно изложено в очередном российском стандарте!

Xakep #231

Творческая Iskra. Делаем аппаратный менеджер паролей своими руками

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

Xakep #230

Крафтовая ФС. Как быстро сделать свою файловую систему на FUSE и Swift

Мысль о том, чтобы написать свою файловую систему, кажется многим слишком амбициозной. Однако проект FUSE for macOS, развиваемый сообществом энтузиастов, решает этот вопрос буквально в пару сотен строк кода, а идущий в комплекте фреймворк не требует унылых разбирательств с API на голом C и вполне пригоден для использования в комплекте с современным и мощным Swift.

Xakep #230

Русская «Магма». Как работает отечественный алгоритм блочного шифрования

В прошлой части наших «извращений с импортозамещением» мы подробно познакомились с алгоритмом шифрования «Кузнечик», который определен в ГОСТ 34.12—2015. Помимо этого алгоритма, в ГОСТе описан еще один, с длиной шифруемого блока в 64 бита, который носит название «Магма».

Xakep #230

Минутка ненависти Android-разработчика. Разбираем 10 самых частых проблем кодинга

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

Xakep #230

JavaScript для умного дома. Arduino устарел, да здравствует ESP32!

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

Xakep #230

Инструментарий Android-разработчика. Подбираем программы, которые помогут в работе

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

Xakep #229

Задачи на собеседованиях. Полный разбор задач и награждение победителей от HackerU

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

Xakep #229

Беспощадный буст. Как ускорить многопоточный код на C++

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

Xakep #229

Системный изолятор. Изолируем процессы в Windows средствами Less Privileged App Container (LPAC)

Начиная с восьмой версии в Windows появился встроенный механизм контейнеров, которые позволяют изолировать процессы путем значительного усечения их прав. Этому системному механизму дали название Less Privileged App Container (LPAC), он поддерживается некоторыми приложениями, например браузером Chrome. В этой статье я покажу, как использовать его в своих программах.

Xakep #228

Задачи на собеседованиях. От хакеров — хакерам: задачи от HackerU

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

Xakep #228

Прыжок в облако. Строим бюджетное решение для интернета вещей на NodeMCU + Azure IoT Hub

Самое популярное назначение IoT-устройств — это сбор телеметрии. На сегодняшний день цены на облачные IoT-сервисы снизились буквально до одного доллара в месяц, который, согласись, не жалко отдать даже просто ради эксперимента. :) В этой статье я расскажу, как отправить данные в облако с платы NodeMCU, используя язык Lua.

Xakep #228

Детект песочницы. Учимся определять, работает ли приложение в sandbox-изоляции

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

Xakep #228

Mining Pool на Java. Кодим распределенный биткойн-майнер

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

Xakep #227

Python для микроконтроллеров. Учимся программировать одноплатные компьютеры на языке высокого уровня

Шутники говорят, что после трудового дня за компьютером типичный программист едет домой, садится за ПК и таким образом отдыхает. А ведь истина на самом деле куда ужаснее этой шутки: многие из нас, приходя с работы, посвящают оставшееся до сна время... программированию микроконтроллеров. :) Обывателям не понять, но Arduino, Teensy или ESP — действительно очень неплохое хобби. Их единственный недостаток — необходимость программировать на достаточно низком уровне, если не на Assembler, то на Arduino C или Lua. Но теперь в списке ЯП для микроконтроллеров появился Python. Точнее, MicroPython. В этой статье я постараюсь максимально продемонстрировать его возможности.

Xakep #227

Android: безопасность умных гаджетов, история создания Magisk и впечатляющие трюки в Kotlin

Сегодня в выпуске: безопасность домашних голосовых ассистентов и других умных гаджетов, безопасность приложений, использующих датчик отпечатка пальца, история создания Magisk, рассказанная автором проекта. А также: внутренности Instant Apps, введение в Android Architecture Components, по-настоящему впечатляющие трюки в Kotlin и свежая подборка библиотек.

Xakep #226

Пять столпов Android. Технологии, лежащие в основе самой популярной ОС

Существует как минимум пять технологий, которые делают Android именно тем, чем мы привыкли его видеть: виртуальная машина, система многозадачности, сервисы Google, IPC-механизм Binder и ядро Linux. Мы в подробностях поговорим о каждой из них и покажем, почему Android — это нечто гораздо большее, чем мобильная ОС.

Xakep #226

Юзай новый блютус, BLE-пять! Изучаем и кодим под новый скоростной протокол на примере Arduino

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

Xakep #226

Нативно или нет? Четыре мифа о кросс-платформенной разработке

Принято считать, что тру и кул — это Objective C/Swift для iOS и Java/Kotlin для Android. Спору здесь нет, тру и кул, но существует большое количество реальных сценариев, в которых использование кроссплатформенных фреймворков является более предпочтительным в сравнении с нативными инструментами.

Xakep #226

ASP.NET под защитой. Как не допустить Mass assignment, XSS, CSRF, Click-Jacking, MIME sniffing, SQL Injection и многого другого

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

Xakep #226

Python’ом по машинлернингу. Разгребаем тонны входящей корреспонденции без участия человека

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

Xakep #225

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

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

Xakep #225

Espruino Pico. Учимся программировать USB-микроконтроллер на JavaScript и делаем из него токен авторизации

Несмотря на огромное количество устройств на базе микроконтроллеров, созданных на волне успеха Arduino, считаные единицы из них имеют форм-фактор обычной флешки, подходящий для непосредственного включения в разъем USB компьютера (USB Type-A). Один из наиболее любопытных их представителей — Espruino Pico.

Страница 3 из 1012345 ...

25 лет «Хакеру»!

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

Спасибо за подписку! Мы будем присылать важные новости ИБ в еженедельном дайджесте
Ошибка при подписке Случилась ошибка при создании подписки на наш дайджест. Пожалуйста, попробуйте позднее
Важные события и скидка на подписку:
«ХАКЕР» ДОСТУПЕН ТОЛЬКО В ЭЛЕКТРОННОЙ ВЕРСИИ
Оформи подписку — получи:
  • доступ к платным материалам сайта
  • доступ ко всем номерам PDF
4000 р.
на год
920 р.
на месяц

«Хакер» в соцсетях

Материалы для подписчиков