Personal python batteries libary -- mostly binary analysis, exploitation.
Project description
libnova
The novafacing standard library but this time it's on PyPi
What is this for?
Mostly pwntools and angr wrapper stuff so I can avoid retyping things constantly. I also now only write strongly typed Python and I don't use strings for paths, which doesn't sound like a huge change but things don't play nice! So here's my compatibility.
Example?
from logging import getLogger
from pathlib import Path
from libnova import PW, PWMode
l = getLogger(__name__).info
b = Path("../src/target/debug/src")
x = PW(binary=b, mode=PWMode.DEBUG)
l(f"Loaded with {len(x.elf.symbols)} symbols")
x.sendline(b":q")
x.precvall()
The nice part is we get some really nice output from everything (you can't see the colors but they are there!):
...
INFO | /home/novafa...a/pwn/pwn.py:0237 | Checksec info for library: ld-2.31.so
INFO | /home/novafa...a/pwn/pwn.py:0239 | RELRO: Partial RELRO
INFO | /home/novafa...a/pwn/pwn.py:0239 | Stack: No canary found
INFO | /home/novafa...a/pwn/pwn.py:0239 | NX: NX enabled
INFO | /home/novafa...a/pwn/pwn.py:0239 | PIE: PIE enabled
INFO | /home/novafa...a/pwn/pwn.py:0241 | Checksec info for main object: src
INFO | /home/novafa...a/pwn/pwn.py:0243 | RELRO: Full RELRO
INFO | /home/novafa...a/pwn/pwn.py:0243 | Stack: No canary found
INFO | /home/novafa...a/pwn/pwn.py:0243 | NX: NX enabled
INFO | /home/novafa...a/pwn/pwn.py:0243 | PIE: PIE enabled
INFO | __main__:0012 | Loaded with 1260 symbols
INFO | pwnlib.tubes...365646789552:0298 | Receiving all data
INFO | pwnlib.tubes...365646789552:0298 | Receiving all data: 0B
INFO | pwnlib.tubes...365646789552:0298 | Receiving all data: 108B
INFO | pwnlib.tubes...365646789552:0298 | Receiving all data: 136B
INFO | pwnlib.tubes...365646789552:0298 | Process '/usr/local/bin/gdbserver' stopped with exit code 0 (pid 419479)
INFO | pwnlib.tubes...365646789552:0298 | Receiving all data: Done (136B)
b'Welcome to the embedded programming simulator!\nOf course, you can only code using vim if you are 133...\nex: \nChild exited with status 0\n'
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
libnova-0.1.14.tar.gz
(9.5 kB
view details)
Built Distribution
libnova-0.1.14-py3-none-any.whl
(10.0 kB
view details)
File details
Details for the file libnova-0.1.14.tar.gz
.
File metadata
- Download URL: libnova-0.1.14.tar.gz
- Upload date:
- Size: 9.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.1.12 CPython/3.8.10 Linux/5.4.0-100-generic
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6d820cfa84c714dc30ff8302389af1052b0f11f94637c98487d400471ae7b772 |
|
MD5 | 627b542d67a33716aeee1cca80fd777c |
|
BLAKE2b-256 | 2994be5f8ca8233f2df4ef1e146e2f4d54b994d241dcfbe4e0c34385c1bd7adc |
File details
Details for the file libnova-0.1.14-py3-none-any.whl
.
File metadata
- Download URL: libnova-0.1.14-py3-none-any.whl
- Upload date:
- Size: 10.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.1.12 CPython/3.8.10 Linux/5.4.0-100-generic
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | b79ea69860db45cefd49d1635ee330c46e6d768b5ee59d9ea80149cd01f38e11 |
|
MD5 | 57e5f9be008d869deadd1328cd405e45 |
|
BLAKE2b-256 | 13f775a3be3150965038b76fea1e5ce32b5dc26035f8023203d033e48d8a4ca8 |