Тег

Java

62 материала · RSS

Слабое звено. Обходим проверку лицензии, анализируя JavaScript вместо байт-кода

Не всякую защиту нужно ломать с помощью дизассемблера. Иногда достаточно открыть DevTools, изучить JavaScript фронтенда и понять, как приложение принимает решение о блокировке. Мы исследуем лицензионный механизм Java-приложения с веб-интерфейсом,…

Stan Ghouls атакует организации в Узбекистане и России с помощью NetSupport RAT

Эксперты «Лаборатории Касперского» опубликовали исследование новой кампании хак-группы Stan Ghouls (она же Bloody Wolf), которая с конца 2025 года атакует организации в СНГ (в первую очередь в Узбекистане, но также…

По следам Log4Shell. Разбираем две уязвимости, оставшиеся в тени

Еще в декабре 2021-го, когда были найдены и закрыты четыре уязвимости Log4shell в Log4J, оказалось, что их на самом деле больше. Две из них — отказ в обслуживании и утечка данных — тогда широко известны не были. Лишь в сентябре 2022 года вендор официально…

Максимальный Minecraft. Поднимаем свой игровой сервер с модами и плагинами

Minecraft — игра настолько популярная, что даже спустя 14 лет после выхода у нее миллионы активных игроков по всему миру, которые держат десятки тысяч игровых серверов. Хочешь тоже заиметь свой? Из этой статьи ты узнаешь, как с…

Охота на криперов. Изучаем образцы малвари для Minecraft

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

Зелье для Zelix. Изучаем обфускатор для Java и придумываем собственный деобфускатор

Сегодня мы продолжим знакомиться с обфускаторами, принципами их анализа и борьбы с ними. Наш пациент — обфускатор для Java под названием Zelix KlassMaster, внутреннее устройство которого мы подробно исследуем.

В обход стражи. Как вскрывают приложения, защищенные аппаратным ключом Sentinel

Реверс-инжиниринг написанных на Java приложений, если разработчики не позаботились заранее об их защите, обычно не представляет трудностей. Именно чтобы усложнить жизнь хакерам и исследователям, используются различные инструменты, один из которых…

Мертвая эра. Изучаем приложение, созданное в BioEra

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

Суровая жаба. Изучаем защиту Excelsior JET для программ на Java

На какие только ухищрения не приходится идти разработчикам программ на Java, чтобы усложнить взлом и реверс! Однако у всех подобных приложений есть слабое место: в определенный момент исполнения программа должна…

HTB Timing. Пентестим веб-сервер на PHP

Сегодня мы с тобой пройдем путь от базового сканирования сайта до эксплуатации уязвимости типа LFI и загрузки шелла. Для захвата рута нам понадобится найти уязвимость в приложении на Java. А…

Игривый Xamarin. Изучаем и взламываем мобильное приложение на С#

Программировать для Android можно не только на Java или Kotlin. Разработчики на С# имеют возможность создавать мобильные приложения с помощью платформы Xamarin. Сегодня мы поговорим о том, как исследовать такие…

ВзломХардкор#278

HTB Fingerprint. Подделываем цифровой отпечаток для доступа к закрытому контенту

В этом райтапе мы используем LFI для получения исходного кода приложения, XSS — для получения фингерпринта пользователя, обойдем авторизацию через HQL-инъекцию, заюзаем баг в приложении на Java и немного покодим…

Электронная психобумага. Критическая уязвимость в Java позволяет подделывать электронные подписи и ключи

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

Log4HELL! Разбираем Log4Shell во всех подробностях

Еще недавно про средство логирования Log4j помимо специалистов мало кто слышал. Найденная в этой библиотеке уязвимость сделала ее центром внимания на последние месяцы. Мы в «Хакере» уже обсуждали ее импакт…

ВзломХардкор#245

Операция «Липосакция». Как использовать новую уязвимость в Jira

Jira — мегапопулярная система для отслеживания ошибок, организации взаимодействия с пользователями и управления проектами. Уязвимость позволяет атакующему выполнить произвольный код на целевой системе при помощи обычного POST-запроса, не обладая при…

CryptoPro JCP на Linux. Как легко и безболезненно перейти на новый стандарт шифрования

С 2020 года использование шифрования по ГОСТ Р 34.10—2001 окажется под запретом, а значит, все организации, которые взаимодействуют с госструктурами, вынуждены срочно внедрять следующий стандарт — 2012 года. Если ты…

Атака на приложение. Используем Xposed, чтобы обойти SSLPinning на Android

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

Дырявая логика. Эксплуатируем новые уязвимости в Oracle WebLogic

В этой статье мы поговорим сразу о нескольких уязвимостях в сервере приложений Oracle WebLogic, написанном на Java. Этот продукт безумно популярен в энтерпрайз-среде и попадается постоянно на периметрах разных компаний…

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

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

All in по фану. Как разобрать, изменить и собрать обратно мобильную игру на Unity

Разработчики игр с удовольствием пользуются теми удобствами, что им предоставляет движок Unity, но, как выяснилось, он столь же удобен и для любого желающего вскрыть эти игры. Для примера я возьму…

Весеннее обострение. Как работают две критические уязвимости в Spring Framework

Spring — популярнейший фреймворк для разработки на Java, на котором базируются сотни решений в самых разных областях. Трудно найти серьезное приложение на Java, которое бы не использовало Spring. Недавно в…

Oracle прекратит поддержку сериализации Java, называя ее «ужасной ошибкой»

Разработчики Oracle намерены отказаться от поддержки функциональности сериализации и десериализации данных в языке Java. Об этом рассказал главный архитектор платформы Java Марк Рейнхолд (Mark Reinhold), назвав добавление поддержки сериализации в…

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

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

Java против утечек. Боремся с memory leaks в веб-службе

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

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

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

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

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

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

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

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

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

Куда уходит память. Разбираемся с memory leaks в Java на примере Spring и Log4j

Каждый, кто разрабатывал веб-приложения на Java, сталкивался с проблемой утечек памяти при остановках и переустановках своих программ. Если же об этом ты слышишь впервые, то могу заверить: с очень большой…

Изучаем Gradle: что умеет система сборки приложений Android Studio

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

Патч для Java двухгодичной давности оказался неэффективным

Польский исследователь из компании Security Explorations обнаружил, что патч для уязвимости CVE-2013-5838, выпущенный Oracle два года назад, не устранял опасную уязвимость. Все это время пользователи оставались уязвимы для атак.

Компания Oracle выпустила экстренное обновление Java для Windows

Oralce выпустила внеплановое обновление для Java SE 6, 7 и 8, закрывающее серьезную уязвимость в инсталляторе для Windows (CVE-2016-0603). Не новую, по сути, проблему обнаружил германский исследователь Стефан Кантак (Stefan…