cli4bofs:一款功能强大的BOF文件运行命令行接口工具

关于cli4bofs

cli4bofs是一款功能强大的BOF文件运行命令行接口工具,在该工具的帮助下,广大研究人员可以在Cobalt Strike Beacon环境之外通过独立的命令行接口工具运行BOF文件。

cli4bofs是一个用于运行和维护BOF文件的多功能工具,支持从目标文件系统运行任何BOF文件,而且还可以方便地向其传递参数。除此之外,该工具还可以为相关BOF文件的基本信息定义简单的YAML模式,例如描述、源代码URL、参数和使用示例等。而且cli4bofs还可以方便地帮助我们开发和测试BOF文件。

功能介绍

该工具能够使用bof-launcher库来完成下列任务:

1、直接在Windows(x86、x64)平台从文件系统读取并运行BOF文件;

2、直接在Linux/UNIX(x86、x64、ARM、AARCH64)平台从文件系统读取并运行BOF文件;

 →点击获取网络安全资料·攻略←

200多本网络安全系列电子书
网络安全标准题库资料
项目源码
网络安全基础入门、Linux、web安全、攻防方面的视频
网络安全学习路线图

 

工具安装

广大研究人员可以直接访问该项目的【Releases页面】下载对应操作系统平台的cli4bofs版本:

工具使用

常规命令使用

Usage: ./zig-out/bin/cli4bofs command [options]

 

Commands:

 

help      <COMMAND>  显示给定命令的帮助信息

exec      <BOF>        从文件系统执行给定的BOF文件

info      <BOF>        显示BOF描述和使用样例

usage     <BOF>        查看调用详细信息和参数类型

examples <BOF>        查看BOF使用样例

 

General Options:

 

-c, --collection        提供自定义BOF YAML集合

-h, --help             查看工具帮助信息
exec子命令使用
exec子命令允许我们从文件系统直接执行BOF文件,还可以使用sizZb(后跟:)字符串作为前缀来标识参数的类型,从而方便我们将参数传递给BOF:

Usage: cli4bofs <BOF> [[prefix:]ARGUMENT]...

 

Execute given BOF from filesystem with provided ARGUMENTs.

 

ARGUMENTS:

 

ARGUMENT's data type can be specified using one of following prefix:

short OR s  - 16位有符号整数

int OR i      - 32位有符号整数

str OR z      - 以零结尾的字符串

wstr OR Z  - 以零结尾的宽字符字符串

file OR b      - 特殊类型,后跟文件路径,标识将指针(指向用文件内容填充的缓冲区)将传递给BOF

 

If prefix is ommited then ARGUMENT is treated as a zero-terminated characters string (str / z).

使用样例如下

cli4bofs uname -a

cli4bofs udpScanner 192.168.2.2-10:427

cli4bofs udpScanner z:192.168.2.2-10:427

cli4bofs udpScanner 192.168.2.2-10:427 file:/tmp/udpProbes
YAML BOF集合
我们可以使用简单的YAML规则来标记BOF,并对BOF文件进行定义,下面给出的是一个YAML样例:

name: "udpScanner"

description: "Universal UDP port sweeper."

author: "Z-Labs"

tags: ['net-recon']

OS: "cross"

header: ['thread', 'zib']

sources:

    - 'https://raw.githubusercontent.com/The-Z-Labs/bof-launcher/main/bofs/src/udpScanner.zig'

usage: '

    udpScanner str:IPSpec[:portSpec] [int:BUF_LEN str:BUF_MEMORY_ADDR]

 

Arguments:

 

    str:IPSpec[:portSpec]    ex: 192.168.0.1; 10.0.0-255.1-254; 192.168.0.1:161,427,10-15

    [int:BUF_LEN]            length of UDP probes buffer

    [str:BUF_MEMORY_ADDR]    pointer to the buffer containing one or more UDP probe(s). One probe per line is allowed.

 

UDP probe syntax (with example):

 

<portSpec> <probeName> <hexadecimal encoded probe data>\n

53,69,135,1761 dnsReq 000010000000000000000000'

 

examples: '

    Scanning provided IP range on most common UDP ports with builtin UDP probes:

 

      udpScanner str:192.168.0.1-32

 

    Scanning only cherry-picked ports (if no builtin UDP probe for the chosen port is available then length and content of the packet payload will be randomly generated:

 

      udpScanner str:192.168.0.1:123,161

      udpScanner str:102.168.1.1-128:53,427,137

      udpScanner str:192.168.0.1:100-200

UDP探针执行样例

udpScanner str:192.168.0.1-32 int:BUF_LEN str:BUF_MEMORY_ADDRESS

下列命令可以使用cli4bofs工具运行udpScanner(BOF),并运行文件中的UDP探针:

cli4bofs exec udpScanner 102.168.1.1-4:161,427 file:/tmp/udpPayloads'

下列命令可以查看可用的BOF并显示使用详情:

$ cli4bofs list

uname

udpScanner

zerologon

arp

下面给出的是给定BOF的参数定义和使用解释:

$ cli4bofs usage udpScanner

Usage:

 

    udpScanner str:IPSpec[:portSpec] [int:BUF_LEN str:BUF_MEMORY_ADDR]

 

Arguments:

 

    str:IPSpec[:portSpec]    ex: 192.168.0.1; 10.0.0-255.1-254; 192.168.0.1:161,427,10-15

    [int:BUF_LEN]                UDP探测缓冲区长度

    [str:BUF_MEMORY_ADDR]   指向包含一个或多个UDP探针的缓冲区

UDP探测语句样例

<portSpec> <probeName> <hexadecimal encoded probe data>\n

53,69,135,1761 dnsReq 000010000000000000000000

网络安全学习资源分享:

给大家分享一份全套的网络安全学习资料,给那些想学习 网络安全的小伙伴们一点帮助!

对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。

因篇幅有限,仅展示部分资料,朋友们如果有需要全套《网络安全入门+进阶学习资源包》,需要点击下方链接即可前往获取 

读者福利 | CSDN大礼包:《网络安全入门&进阶学习资源包》免费分享(安全链接,放心点击)

同时每个成长路线对应的板块都有配套的视频提供: 

 大厂面试题

 

视频配套资料&国内外网安书籍、文档

当然除了有配套的视频,同时也为大家整理了各种文档和书籍资料

所有资料共282G,朋友们如果有需要全套《网络安全入门+进阶学习资源包》,可以扫描下方二维码或链接免费领取~ 

读者福利 | CSDN大礼包:《网络安全入门&进阶学习资源包》免费分享(安全链接,放心点击) 

特别声明:

此教程为纯技术分享!本教程的目的决不是为那些怀有不良动机的人提供及技术支持!也不承担因为技术被滥用所产生的连带责任!本教程的目的在于最大限度地唤醒大家对网络安全的重视,并采取相应的安全措施,从而减少由网络安全而带来的经济损失。

  • 20
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值