Hermes

Hermes - JS Engine. ΠŸΠ΅Ρ€Π΅Π³ΠΎΠ½ΡΠ΅Ρ‚ jS Π² Π±Π°ΠΉΡ‚ΠΊΠΎΠ΄ ΠΈ ΠΎΡ‚ этого всС Ρ€Π°Π±ΠΎΡ‚Π°Π΅ быстрСС

https://facebook.github.io/react-native/docs/hermes release Π±ΠΈΠ½Π°Ρ€ΠΈ: https://github.com/facebook/hermes/releases

О ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΈ Π² React Native ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ https://facebook.github.io/react-native/docs/hermes

ΠžΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ React Native Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ index.android.bundle Π±ΡƒΠ΄Π΅Ρ‚ сСриализован (Π±ΠΈΠ½Π°Ρ€Ρ‰ΠΈΠ½Π°)

$ hermes -b --dump-bytecode index.android.bundle
Error deserializing bytecode: Wrong bytecode version. Expected 74 but got 62%
$ hermes -version
74

Π•ΡΡ‚ΡŒ нСсколько Ρ€Π΅Π»ΠΈΠ·ΠΎΠ² hermes:
v0.8.0 - 83
v0.5.0 - 74
v0.3.* - 72
v0.2.1 - 62

Tools

ΠΎΡ„ Π±ΠΈΠ½Π°Ρ€ΠΈ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡ‚ΠΈ ΠΏΠΎ ссылкС: https://github.com/facebook/hermes/releases

Π’ΡƒΠ΄Π° входят:

  • hbcdump

  • hdb

  • hermes

  • hermesc

  • hvm

hermes

hbcdump

hbcdump β€” Hermes bytecode disassembler

Зная ID строк, инструкций, Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ (Ρ‡Π΅Ρ€Π΅Π· hbctool, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€), ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΠ·ΡƒΡ‡Π°Ρ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρƒ прилоТСния

hdb

JavaScript command line debugger

hermesc

Standalone Hermes compiler. This can compile JavaScript to Hermes bytecode, but does not support executing it.

hvm

Standalone Hermes VM. This can execute Hermes bytecode, but does not support compiling it.

hbctool

hbctool Π˜Π½ΡΡ‚Ρ€ΡƒΠΌΠ΅Π½Ρ‚ для Π±ΠΎΠ»Π΅Π΅ ΡƒΠ΄ΠΎΠ±Π½ΠΎΠ³ΠΎ дизассСмблинга (Π² сравнСнии с hbcdump) ΠΈ возмоТности ΠΏΠ°Ρ‚Ρ‡ΠΈΠ½Π³Π°.

ПослС распаковки Π±ΡƒΠ΄Π΅Ρ‚ Ρ‚Ρ€ΠΈ Ρ„Π°ΠΉΠ»Π°: instruction.hasm (дизассСмблированный ΠΊΠΎΠ΄ Π² Π²ΠΈΠ΄Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ листингом), metadata.json (содСрТит ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ, Π³Π΄Π΅ находятся ΠΊΠ°ΠΊΠΈΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΈ Ρ‚ΠΏ), string.json (строки ΠΈ ΠΈΡ… ID).

hermes-dec

Π˜Π½ΡΡ‚Ρ€ΡƒΠΌΠ΅Π½Ρ‚ ΠΎΡ‚ P1sec: https://github.com/P1sec/hermes-dec/

[Frida] Android

ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΊ ядру, ΠΈΡΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΊΠΎΠ΄ Π½Π΅ смог ΠΏΠΎΠΊΠ°

Π‘ΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ ΠΊΠΎΠ΄ Π² ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ

Π­Ρ‚ΠΎ Π±Ρ‹Π»Π° ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ° Π΄ΠΎΠ±Ρ€Π°Ρ‚ΡŒΡΡ Π΄ΠΎ jsFactory, ΠΎΠ΄Π½Π°ΠΊΠΎ, всС Ρ€Π°Π²Π½ΠΎ Π½Π΅ смог Π½Π°ΠΉΡ‚ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ ΠΈΡΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ Π² этом контСкстС. Π’Π°Ρ€ΠΈΠ°Π½Ρ‚ Π΄Π°Π»Π΅Π΅ - Ρ€Π°Π·ΠΎΠ±Ρ€Π°Ρ‚ΡŒΡΡ ΠΊΠ°ΠΊ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ React Debug, ΠΈ ΠΏΠΎΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Ρ‚ΡŒ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΠΈΠ· frida.

Last updated

Was this helpful?