Skip to content
KitploitKITPLOIT
FerramentasBlog
Enviar
FerramentasBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
pybof — Carregador Python em memória para Beacon Object Files que executa payloads COFF, com suporte a argumentos empacotados/brutos para fluxos de trabalho de red-team e pós-exploração. | Kitploit
Ferramentas/GitHubGitHub/rkbennett/pybof
Pós-ExploraçãoTestes de PenetraçãoRed Teaming
GitHubrkbennett/pybof

pybof

Carregador Python em memória para Beacon Object Files que executa payloads COFF, com suporte a argumentos empacotados/brutos para fluxos de trabalho de red-team e pós-exploração.

Ver Repositório
8010há 8 mesesRevisado pelo Kitploit

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar

PyBOF

Execute Beacon Object files por meio do python

carregamento e execução em memória de BOFs

O PyBOF permite que o Python3 carregue Beacon Object Files via bytes e execute uma função BOF alvo em um interpretador Python

Uso Básico

Executar um BOF simples sem argumentos obrigatórios

root@kitploit:~
data = open(r'c:\path\to\example.o', 'rb').read()
bof.run(data)

Passar um argumento de string bruta para o BOF

root@kitploit:~
data = open(r'c:\path\to\example.o', 'rb').read()
bof.run(data, args=["foo"], raw=True)
# Raw cannot be used with function kwarg

Passar argumentos empacotados/formatados para o BOF

root@kitploit:~
data = open(r'c:\path\to\example.o', 'rb').read()
bof.run(data, args=[r"c:\users"], format="Z")

Exemplo prático de execução

root@kitploit:~
import bof
from urllib.request import urlopen
data = urlopen("https://github.com/trustedsec/CS-Situational-Awareness-BOF/raw/master/SA/dir/dir.x64.o").read()
bof.run(data, args=[r"c:\users"], format="Z")

Args/Kwargs

Existem vários args que podem ser usados com o PyBOF; eles são descritos em mais detalhes abaixo.

data

Argumento posicional obrigatório que deve ser um objeto de bytes contendo o conteúdo bruto de um BOF.

args

Keyword arg opcional que é uma lista de argumentos a serem passados para a função BOF alvo.

function

Keyword arg opcional que é o nome formatado como string da função alvo a ser executada a partir do BOF fornecido; o padrão é go.

format (AVISO - Estes foram atualizados recentemente)

O keyword arg opcional é uma string que informa ao empacotador de argumentos do BOF os tipos de argumento conforme são empacotados no buffer. Isso é semelhante ao arg format do struct.pack. As únicas opções de formato válidas são as seguintes:
i para inteiro
s para short
z para string
b para binário
Z para wide

Pelo menos um tipo de formato deve ser fornecido para cada arg na lista de args. Este keyword arg não pode ser usado em conjunto com raw.

raw

Keyword arg opcional que é um booleano: passa os args como uma string unida por espaços, sem empacotá-la, em vez de tentar empacotar argumentos formatados para a função BOF. Este keyword arg não pode ser usado em conjunto com format.

Compilação

Clone este repositório

root@kitploit:~
git clone https://github.com/rkbennett/pybof.git

Compile a extensão C _bof

root@kitploit:~
cd pybof\src
python .\setup.py build

Copie o arquivo pyd resultante para o diretório bof

root@kitploit:~
copy build\lib.win-xxx-cpython-3xx\_bof.cp3xx-win_xxxx.pyd ..\bof\

Mude o diretório para o pai do diretório bof, importe e divirta-se

root@kitploit:~
cd ..\
python
>>> import bof
>>> from urllib.request import urlopen
>>> data = urlopen("https://github.com/trustedsec/CS-Situational-Awareness-BOF/raw/master/SA/dir/dir.x64.o").read()
>>> bof.run(data, args=[r"c:\users"], format="Z")

Pegadinhas

Se uma função BOF não retornar um valor, eu emito um aviso alertando o usuário para o fato de que nada foi retornado. Presumo que isso provavelmente não seja o resultado pretendido de uma execução, mas não quis lançar erros graves. Se você executar uma função BOF e receber o aviso de nenhuma saída, lembre-se de que a formatação dos seus args pode precisar ser definida ou pode estar definida incorretamente, o que pode causar esse problema (especificamente usar string em vez de wide).

Agradecimentos Especiais

  • natesubra - Por responder minhas perguntas aleatórias
  • trustedsec - Pelo COFFLoader que envolvi no meu módulo PyBof (licenciamento incluído em src/source)
Baixar ferramenta