Исследуем лицензирование Cockroach DB до Enterprise или не случившийся хард-реверс-инжиниринг

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

Все блоги / Про интернет

[Перевод] Реверс-инжиниринг британских билетов на поезд

Долгие годы, начиная ещё задолго до моего рождения, в Великобритании использовались билеты на поезд размером с кредитную карту. Изначально это были билеты APTIS1, которые позже заменили на чуть более удобочитаемую версию, печатаемую в том же формате. 1 Я до сих пор помню, как покупал их в детстве,...

Все блоги / Про интернет

Меняем промежуточное представление кода на лету в Ghidra

Когда мы разрабатывали модуль ghidra nodejs для инструмента Ghidra, мы поняли, что не всегда получается корректно реализовать опкод V8 (движка JavaScript, используемого Node.js) на языке описания ассемблерных инструкций SLEIGH. В таких средах исполнения, как V8, JVM и прочие, один опкод может...

Все блоги / Про интернет