The rpc server api of https://github.com/cyal1/BcryptMontoya
Project description
BcryptRpcServer
Basic
import BcryptRpcServer
def test(a,b,c,d,e):
print(a,type(a),b,type(b),c,type(c),d,type(d),e,type(e))
return b'asdf'
@BcryptRpcServer.expose # some thing wrong. not always work
def test2():
return 'xxx'
BcryptRpcServer.expose(test) # recommend
BcryptRpcServer.run("127.0.0.1:30051")
Frida
import BcryptRpcServer
import time
import frida
def my_message_handler(message, payload):
print(message)
print(payload)
def decrypt(arg):
print(f"decrypt {arg}")
return script.exports.calldecryptfunction(arg)
def encrypt(arg):
print(f"encrypt {arg}")
return script.exports.callencryptfunction(arg)
# device = frida.get_usb_device()
device = frida.get_device_manager().add_remote_device('127.0.0.1:27042')
# pid = device.spawn(["com.example.www"])
# device.resume(pid)
# time.sleep(1) # Without it Java.perform silently fails
# session = device.attach(pid)
session = device.attach(17982)
with open("python_to_call_function.js") as f:
script = session.create_script(f.read())
script.on("message", my_message_handler)
script.load()
print(encrypt("test"))
print(decrypt(encrypt("test")))
BcryptRpcServer.expose(decrypt)
BcryptRpcServer.expose(encrypt)
BcryptRpcServer.run("127.0.0.1:30051")
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
BcryptRpcServer-0.0.3.tar.gz
(4.1 kB
view hashes)
Built Distribution
Close
Hashes for BcryptRpcServer-0.0.3-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 96a631883e3b3e308011e222337dd07b5f8381792483a2f3187dcbb04dbdb6aa |
|
MD5 | 79e2d2bf6472e205c562144ed3d1ff6f |
|
BLAKE2b-256 | a46b8a5cef7db3dbf5d6290e0bbe73dad7024436cf9970cde14e197dfeb79a1a |