ProtoDeep icon indicating copy to clipboard operation
ProtoDeep copied to clipboard

Whether to support dumping proto protocol files from binary files

Open romanholidaypancakes opened this issue 2 years ago • 2 comments

like marin-m/pbtk

romanholidaypancakes avatar Mar 22 '23 06:03 romanholidaypancakes

@romanholidaypancakes I never could get it to work.

PS C:\Users\thher\pbtk> py .\gui.py
Traceback (most recent call last):
  File "C:\Users\thher\pbtk\gui.py", line 462, in run
    for name, contents in self.extractor['func'](input_):
  File "C:\Users\thher\pbtk\extractors\jar_extract.py", line 51, in handle_jar
    with JarWrapper(path) as jar:
         ^^^^^^^^^^^^^^^^
  File "C:\Users\thher\pbtk\utils\java_wrapper.py", line 25, in __init__
    self.handle_file(fname)
  File "C:\Users\thher\pbtk\utils\java_wrapper.py", line 46, in handle_file
    self.bonus_protos[cls] = jar.read(cls).decode('utf8')
                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
UnicodeDecodeError: 'utf-8' codec can't decode bytes in position 20-22: invalid continuation byte

Do you have an APK where you can get it to work ? Ideally the Google Play Store APK :)

mxrch avatar Apr 04 '23 14:04 mxrch

hi, I have never worked with GUI before, and I don't understand reverse engineering on APKs. I opted for the simplest approach, which successfully dumped the valid protobuf files. I'm executing the following command on Windows.

./extractors/from_binary.py my_private.exe ./out

[+] Wrote 70 .proto files to "out".

However, PBTK does not work in Protocol Buffers LITE_RUNTIME mode.

romanholidaypancakes avatar Apr 04 '23 16:04 romanholidaypancakes