LightBulb:一个用于审计web应用程序防火墙的开源框架

栏目: 软件资讯 · 发布时间: 5年前

内容简介:该框架包含了以下两个主要算法:

LightBulb:一个用于审计web应用程序防火墙的开源框架

LightBulb 是一个基于 python 的,用于审计web应用程序防火墙和过滤器的开源框架。

该框架包含了以下两个主要算法:

GOFA:一种主动学习算法,在在标准的等价查询模型中自动推断符号并表示。主动学习算法允许远程分析过滤器和Sanitizer程序,即只允许查询目标程序并观察输出。

SFADiff:一种基于符号有限自动机(SFA)学习的黑盒测试算法。查找具有类似功能程序之间的差异是一个重要的安全问题,因为这些差异可用于指纹识别或针对安全软件(如Web应用防火墙(WAF))的规避攻击,这些安全软件旨在检测Web应用程序的恶意输入。

动机

Web应用防火墙(WAF)是现代应用程序安全性的重要保障之一。例如,处理信用卡交易组织的PCI标准就规定,面向互联网的任何应用程序都应受到WAF保护或已通过标准的代码审计流程,但审计Web应用防火墙仍是一项具有挑战性且复杂的任务。查找绕过防火墙的攻击方法,通常都需要具备专业领域的知识。因此,没有掌握这种技能的渗透测试人员会留下公开的攻击字符串列表,如XSS Cheat Sheet,这些列表通常不足以全面评估WAF产品的安全性。

命令使用

主界面命令:

命令 描述
core 显示可用的core模块
utils 显示可用的查询处理程序
info <module> 打印模块信息
library 进入library
modules 显示可用的应用模块
use <module> 进入模块
start <moduleA> <moduleB> 启动算法
help 打印帮助信息
status 检查并安装需要的软件包
complete 打印bash完成命令

模块命令:

命令 描述
back 返回到主菜单
info 打印当前模块信息
library 进入library
options 显示可用选项
define <option> <value> 设置选项值
start 启动算法
complete 打印bash完成命令

Library 命令:

命令 描述
back 返回到主菜单
info <folder\module> 打印请求的模块信息(文件夹必须位于lightbulb/data/)
cat <folder\module> 打印请求的模块(文件夹必须位于lightbulb/data/)
modules <folder> 在请求的文件夹中显示可用的库模块(文件夹必须位于lightbulb/data/)
search <keywords> 使用逗号分隔的关键字搜索可用的库模块
complete 打印bash完成命令

安装

系统准备

首先,你必须先验证你的系统是否支持flex,python dev,pip和build:

对于apt平台(如ubuntu,debian等):

sudo apt-get install flex
sudo apt-get install python-pip
sudo apt-get install python-dev
sudo apt-get install build-essential

(apt可选)如要添加对 MySQL 测试的支持:

sudo apt-get install libmysqlclient-dev

对于已安装了额外软件包repo(epel-release)的yum平台(如centos,redhat,fedora等):

sudo yum install -y python-pip
sudo yum install -y python-devel
sudo yum install -y wget
sudo yum groupinstall -y 'Development Tools'

(yum可选)如要添加对MySQL测试的支持:

sudo yum install -y mysql-devel 
sudo yum install -y MySQL-python

安装  Lightbulb

在没有完整包安装的情况下使用应用程序:

git clone https://github.com/lightbulb-framework/lightbulb-framework
cd lightbulb-framework
make
lightbulb status

为了执行完整的包安装,你也可以从pip存储库来安装它。前提是你已安装最新的setuptools版本:

pip install setuptools --upgrade
pip install lightbulb-framework
lightbulb status

如果你想使用virtualenv:

pip install virtualenv
virtualenv env
source env/bin/activate
pip install lightbulb-framework
lightbulb status

“lightbulb status”命令将引导你安装对MySQLdb和OpenFst的支持。如果在 linux 中使用virtualenv,则只需安装libmysqlclient-dev软件包(需要sudo)。

应该注意的是,如果要使用Burp Extension,则不需要执行“lightbulb status”命令。原因是该命令安装了“openfst”和“mysql”bindings,默认情况下扩展名使用的是Jython,不支持C bindings。建议仅在希望从设置更改burp扩展配置并启用本机支持时使用该命令,也可以使用 docker 实例:

docker pull lightbulb/lightbulb-framework

LightBulb:一个用于审计web应用程序防火墙的开源框架

安装 Burp Extension

如果你想使用新的GUI,可以使用Burp Suite的扩展程序。首先,你必须使用Burp Proxy和Jython设置工作环境

此处下载 最新的Jython

找到你本地的python包安装文件夹*

配置Burp Extender以使用这些值,如下所示*

LightBulb:一个用于审计web应用程序防火墙的开源框架 选择新的LightBulb模块(“BurpExtension.py”)并将扩展类型设置为“Python”

LightBulb:一个用于审计web应用程序防火墙的开源框架

*你也可以忽略此步骤,直接下载安装 包含所有所需python包的独立版本

示例

Wiki page 的使用示例。

项目贡献人员

George Argyros
Ioannis Stais
Suman Jana
Angelos D. Keromytis
Aggelos Kiayias

*参考来源: kitploit ,FB小编secist编译,转载请注明来自FreeBuf.COM


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

游戏编程入门

游戏编程入门

莫里森 / 人民邮电出版社 / 2005-9 / 49.00元

本书介绍如何设计和构建自己的计算机游戏。书中从零开始,引导读者开发一个“即插即用”的游戏引擎,并基于该引擎,循序渐进地开发7个完整的游戏。全书分为8个部分,共24章,内容包括游戏编程基础知识、如何与玩家交互、使用子画面动画、使用声音和音乐、高级动画、游戏人工智能、增添游戏的趣味性和附加练习。此外,在随书光盘中提供有附录,包括C++语言和windows编程的入门指导、游戏开发工具以及游戏图形创建的介......一起来看看 《游戏编程入门》 这本书的介绍吧!

Base64 编码/解码
Base64 编码/解码

Base64 编码/解码

html转js在线工具
html转js在线工具

html转js在线工具

HEX HSV 转换工具
HEX HSV 转换工具

HEX HSV 互换工具