# PyBurp
## install
pip install PyBurp
## Basic
```python
import PyBurp
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'
@PyBurp.expose # some thing wrong. not always work
def test2():
return 'xxx'
PyBurp.expose(test) # recommend
PyBurp.run("127.0.0.1:30051")
```
## Frida
```python
import PyBurp
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")))
PyBurp.expose(decrypt)
PyBurp.expose(encrypt)
PyBurp.run("127.0.0.1:30051")
```
Raw data
{
"_id": null,
"home_page": "https://github.com/cyal1/PyBurpRpc/tree/main/python",
"name": "PyBurp",
"maintainer": null,
"docs_url": null,
"requires_python": null,
"maintainer_email": null,
"keywords": null,
"author": "cyal1",
"author_email": "admin@example.com",
"download_url": "https://files.pythonhosted.org/packages/be/7a/ec14c535ce3b59b95f6234e1f80f716ee47085de456fb6d58a79539efb8e/PyBurp-1.0.0.tar.gz",
"platform": null,
"description": "# PyBurp\n\n## install \npip install PyBurp\n\n## Basic\n```python\nimport PyBurp \n\ndef test(a,b,c,d,e):\n print(a,type(a),b,type(b),c,type(c),d,type(d),e,type(e))\n return b'asdf'\n\n\n@PyBurp.expose # some thing wrong. not always work\ndef test2():\n return 'xxx'\n\nPyBurp.expose(test) # recommend\nPyBurp.run(\"127.0.0.1:30051\")\n```\n\n\n## Frida\n\n```python\nimport PyBurp \nimport time\nimport frida\n\ndef my_message_handler(message, payload):\n print(message)\n print(payload)\n\ndef decrypt(arg):\n print(f\"decrypt {arg}\")\n return script.exports.calldecryptfunction(arg)\n\n\ndef encrypt(arg):\n print(f\"encrypt {arg}\")\n return script.exports.callencryptfunction(arg)\n\n# device = frida.get_usb_device()\ndevice = frida.get_device_manager().add_remote_device('127.0.0.1:27042')\n\n# pid = device.spawn([\"com.example.www\"])\n# device.resume(pid)\n# time.sleep(1) # Without it Java.perform silently fails\n# session = device.attach(pid)\n\nsession = device.attach(17982)\nwith open(\"python_to_call_function.js\") as f:\n script = session.create_script(f.read())\nscript.on(\"message\", my_message_handler)\nscript.load()\n\nprint(encrypt(\"test\"))\nprint(decrypt(encrypt(\"test\")))\n\nPyBurp.expose(decrypt)\nPyBurp.expose(encrypt)\n\nPyBurp.run(\"127.0.0.1:30051\")\n\n```\n\n\n\n",
"bugtrack_url": null,
"license": null,
"summary": "The rpc server api of https://github.com/cyal1/BcryptMontoya",
"version": "1.0.0",
"project_urls": {
"Homepage": "https://github.com/cyal1/PyBurpRpc/tree/main/python"
},
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "be7aec14c535ce3b59b95f6234e1f80f716ee47085de456fb6d58a79539efb8e",
"md5": "8d67c64f351efa53cf7f7068062439b5",
"sha256": "e8b08054680adfb8b0b9652a56b74062399be5a93a69d60f05222f16b7249c30"
},
"downloads": -1,
"filename": "PyBurp-1.0.0.tar.gz",
"has_sig": false,
"md5_digest": "8d67c64f351efa53cf7f7068062439b5",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 4046,
"upload_time": "2024-09-05T14:31:35",
"upload_time_iso_8601": "2024-09-05T14:31:35.181610Z",
"url": "https://files.pythonhosted.org/packages/be/7a/ec14c535ce3b59b95f6234e1f80f716ee47085de456fb6d58a79539efb8e/PyBurp-1.0.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-09-05 14:31:35",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "cyal1",
"github_project": "PyBurpRpc",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"lcname": "pyburp"
}