您当前的位置:首页 > 电脑百科 > 安全防护 > 软件工具

自己动手,DIY一台硬件WAF

时间:2019-12-25 11:24:47  来源:  作者:

自己动手,DIY一台硬件WAF

 

前言

硬件WAF,好像是很高端,很神秘的样子,而且很贵。今天向大家展示如何自己动手,diy一台硬件WAF!

自己动手,DIY一台硬件WAF

 

软硬件需要

a、服务器一台

b、系统:linux centos

c、软件:ShareWAF

d、硬件需求:Bypass网卡

简单说明:

a、使用linux系统,是为了在系统中搭建网桥,有了网桥,就可以实现硬件WAF的透明代理效果。

b、软件用ShareWAF,ShareWAF是一款WAF软件,可以在云端部署,也支持灌装硬件(这一点很重要)。而且,防护功能不错,目前最大支持同时保护256个网站

c、Bypass网卡,主要是实现断电、系统故障等情况下自动将硬件“变”成为网线,实现Bypass效果,达到各种问题下都不中断业务功能,也就是实现高可用。

如果没有Bypass网卡,或者不是很需要高可用,那么灌装出来的硬件是一台透明代理硬件WAF,只是不具备bypass功能。(一般情况下,除了银行之类,别的单位很少能用着这种级别的高可用设备,因为还可以多机热备嘛,所以,其实没有bypass网卡也没太大关系)。

 

准备工作

ETH1网口连通外网,并给其设置IP;

ETH2,ETH3为一双Bypass网口,为做网桥使用;

ETH3口连接内网web服务器。

 

系统配置,实现透明代理

(完整详细步骤,如果熟悉linux网络操作命令的话,其中有些环节可以跳过)

关闭centos 7自带防火墙

systemctl stop firewalld.servicesystemctl disable firewalld.service

安装iptables

yum -y install iptablesyum -y install iptables-services

开启iptables

service iptables start

清除Iptables自带规则

iptables -F

安装ifconfig

yum -y install net-tools.x86_64

安装网桥

yum -y install bridge-utils

设置网桥

/sbin/modprobe bridge/usr/sbin/brctl addbr br0(设置网桥名为br0)/sbin/ifup enp4s0 (要加入网桥的网卡,通过ifconfig查看)/sbin/ifup enp5s0 (要加入网桥的网卡)

注:执行以上两步之前最好将能通的网线插在网口上,否则执行时间会稍长,会显示激活失败。

如果以上步骤报错:

无法创建 NMClient 对象GDBus.Error:org.freedesktop.DBus.Error.UnknownMethod: Method "GetManagedObjects" with signature "" on interface "org.freedesktop.DBus.ObjectManager" doesn't exist

这时,执行如下命令:

chkconfig NetworkManager offchkconfig network onservice NetworkManager stopservice network start/usr/sbin/brctl addif br0 enp4s0/usr/sbin/brctl addif br0 enp5s0

设置网桥IP (例:192.168.1.73 设置一个在内网网段的IP)

ifconfig br0 192.168.1.73 netmask 255.255.255.0

开启网桥

/sbin/ip link set br0 up

查看

sudo brctl show

关闭

ifconfig br0 down

删除 (删除前先将网桥关闭)

sudo brctl delbr br0

在/etc/sysctl.conf下添加内容

vi /etc/sysctl.conf

将光标移至文字最后一行按o,右键选择粘贴

net.bridge.bridge-nf-call-ip6tables = 1net.bridge.bridge-nf-call-iptables = 1net.bridge.bridge-nf-call-arptables = 1net.ipv4.ip_forward = 1net.ipv4.ip_nonlocal_bind = 1net.ipv4.conf.default.rp_filter = 0net.ipv4.conf.all.rp_filter = 0net.ipv4.conf.br0.rp_filter = 0

1.按esc 2.输入 : 3.然后输入 wq 回车

执行使生效

sysctl -p

如果报错:

sysctl: cannot stat /proc/sys/net/bridge/bridge-nf-call-ip6tables: 没有那个文件或目录sysctl: cannot stat /proc/sys/net/bridge/bridge-nf-call-iptables: 没有那个文件或目录sysctl: cannot stat /proc/sys/net/bridge/bridge-nf-call-arptables: 没有那个文件或目录执行 modprobe br_netfilter再次执行sysctl -p

添加路由

/sbin/ip -f inet rule add fwmark 1 lookup 100/sbin/ip -f inet route add local default dev lo table 100

添加规则前,首先查内是否有其他规则

iptables -t 表名 -L

如果有其他规则,将其删除

iptables -t 表名 -D 链名 第几条规则

添加规则

iptables -t nat -A PREROUTING -d 192.168.1.20 -p tcp --dport 80 -j DNAT --to-destination 192.168.1.73:80

说明:

192.168.1.20 web服务器IP

80 web服务端口

192.168.1.73 网桥IP

8080 ShareWAF端口

保存规则

service iptables save

以上,系统透明模式需要的设置已完成。为实现断电或异常时Bypass功能,需向Bypass网卡或硬件厂家咨询、索取其Bypass网卡相关程序、资料,如:“喂狗程序”、脚本等。

自己动手,DIY一台硬件WAF

 

透明网桥配成功后。

 

安装NodeJS

(ShareWAF运行依赖的环境)

yum -y install wgetmv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo_bakwget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repowget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repoyum clean allyum makecachewget https://nodejs.org/dist/v8.11.1/node-v8.11.1-linux-x64.tar.xz --no-check-certificatetar -xvf node-v8.11.1-linux-x64.tar.xzmv node-v8.11.1-linux-x64 node-v8.11.1ln -s /root/node-v8.11.1/bin/node /usr/local/bin/nodeln -s /root/node-v8.11.1/bin/npm /usr/local/bin/npm

也可以从nodejs官网直接下载。

也可以用以下的方法:

 sudo apt-get install nodejs-legacy sudo apt-get install npm sudo npm install -g n sudo n stable

 

安装Share WAF

从ShareWAF官网,获取ShareWAF程序包后,在其目录下执行:

npm install

如在安装过程中Express报错,运行:npm config set strict-ssl false

如在安装过程中Sqlite3报错,运行:npm install sqlite3 –unsafe-perm

 

启动Share WAF

nodejs ShareWAF

sudo node ShareWAF
自己动手,DIY一台硬件WAF

 

ShareWAF启动成功

到这里,基本就完成了,然后,就是进入ShareWAF后台配置网站就可以了。

这样一个硬件WAF,就完工了。

本文作者:w2sfoot,转载注明来自FreeBuf.COM



Tags:WAF   点击:()  评论:()
声明:本站部分内容及图片来自互联网,转载是出于传递更多信息之目的,内容观点仅代表作者本人,如有任何标注错误或版权侵犯请与我们联系(Email:2595517585@qq.com),我们将及时更正、删除,谢谢。
▌相关推荐
log4j漏洞的形成原因已经有很多分析文章了,这里说一说我是如何在了解到有漏洞后,跟进漏洞产生原理的,以及发现的一些绕WAF tips跟进漏洞产生原因的思路如何发现漏洞产生的原因...【详细内容】
2021-12-22  Tags: WAF  点击:(8)  评论:(0)  加入收藏
本人也是小白一枚,大佬请绕过,这个其实是六月份的时候做的,那时候想多点实战经验,就直接用谷歌搜索找了一些网站,这个是其中一个1、目标网站 2、发现有WAF防护 3、判断存在注入...【详细内容】
2021-10-19  Tags: WAF  点击:(52)  评论:(0)  加入收藏
waf拦截在打某市 Hvv 第一天就找到一个文件上传的点,经过测试,可以直接任意文件上传,没有什么道理。 直接尝试上传 Php 文件,被 waf 拦截了 2021最新整理网络安全/渗透测试/安...【详细内容】
2021-10-11  Tags: WAF  点击:(56)  评论:(0)  加入收藏
WAF市场的发展缘于客户需要保护内外的Web应用程序。WAF保护Web应用程序和API免受各种攻击,包括自动机器人程序、注入攻击和应用层拒绝服务(DoS)攻击。它们应提供基于特征(signat...【详细内容】
2021-01-08  Tags: WAF  点击:(960)  评论:(0)  加入收藏
有网站的朋友们肯定了解web应用防火墙,这是目前主要防护网站安全的产品,web应用防火墙一般有三种形态,硬件、软件、云形态,一般软件和云形态用的最多,因为硬件WAF普遍价格在几十...【详细内容】
2020-09-11  Tags: WAF  点击:(125)  评论:(0)  加入收藏
本文提出了一种绕过XSS安全机制的新型方法,这种技术由三个阶段组成:确定Payload结构、探测和混淆处理。首先,我们需要针对给定的上下文环境,确定各种不同的Payload结构以达到...【详细内容】
2020-07-07  Tags: WAF  点击:(99)  评论:(0)  加入收藏
众所周知,网站安全防护,对于企业非常重要。2020年HTTPS加密已经普及,传统的防火墙检测功能失效,所以对于网站来说,部署一个WEB应用防火墙十分重要,这方面商业产品很多,开源的也不少...【详细内容】
2020-05-28  Tags: WAF  点击:(118)  评论:(0)  加入收藏
ShareWAF做为WAF,可以不只是WAF,还可以充当负载或路由的角色。比如可以有这样一种部署架构: 在此结构中,ShareWAF部署于一台服务器,后面接多台独立的WEB服务器。 ShareWAF即做为W...【详细内容】
2020-04-09  Tags: WAF  点击:(66)  评论:(0)  加入收藏
VeryNginx 是一个基于openrestry(其实是基于nginx的lua扩展)的开发程序,实现了高级的防火墙,可以做访问统计和其他的一些防护功能。 VeryNginx 扩展了 Nginx 本身的功能,并提供了...【详细内容】
2020-03-01  Tags: WAF  点击:(96)  评论:(0)  加入收藏
Web 应用程序防火墙(WAF)现在已经成为许多商业 Web 网站与系统的基本保护措施,它的确在防范许多针对 Web 系统的安全攻击方面卓有成效,但是 WAF 在面对攻击方式多种多样的 SQL...【详细内容】
2020-02-17  Tags: WAF  点击:(143)  评论:(0)  加入收藏
▌简易百科推荐
已经观察到一种新的基于JavaScript的远程访问木马(RAT)利用社会工程学传播,采用隐蔽的"无文件"技术作为其逃避检测和分析的方法。该恶意软件由Prevalyion的对抗性反情报团队(PA...【详细内容】
2021-12-17  网安老葫    Tags:恶意软件   点击:(13)  评论:(0)  加入收藏
关于windows Defender防病毒的问题升级win10后,我们会经常遇到打开或下载文件时弹出提示框提示你下载的文件是病毒之类,直接给你删除。你好不容易找了个激活工具,你刚打开发现...【详细内容】
2021-11-08  IT小哥吧    Tags:defender   点击:(47)  评论:(0)  加入收藏
喽!大家好,我是小易,欢迎来到我的知识分享站!今天给大家分享5个杀毒神器,让你的电脑干干净净,建议收藏起来哟! 1、Windows Defender随着Win10系统的更新已经日趋完善,它可以很好的解...【详细内容】
2021-11-08  知识与技能    Tags:流氓软件   点击:(74)  评论:(0)  加入收藏
介绍其实Iptables服务不是真正的防火墙,只是用来定义防火墙规则功能的"防火墙管理工具",将定义好的规则交由内核中的netfilter即网络过滤器来读取,从而真正实现防火墙功能。fil...【详细内容】
2021-10-18  互联网IT技术全栈    Tags:   点击:(52)  评论:(0)  加入收藏
什么是Nessus?Nessus 是目前全世界最多人使用的系统漏洞扫描与分析软件。总共有超过75,000个机构使用Nessus 作为扫描该机构电脑系统的软件步骤如下:查看当前kali系统内核版本...【详细内容】
2021-09-09  TestGO    Tags:Nessus   点击:(112)  评论:(0)  加入收藏
http 头部信息http头部信息经常包含着主机服务的一些版本信息,经常使用的字段信息有:Server, X-Powered-By, X-AspNet-Version工具可采用curl进行curl --location --head $URL...【详细内容】
2021-08-19  80后IT老民工    Tags:渗透   点击:(227)  评论:(0)  加入收藏
一、杀软常见的三种方式二、免杀的三种常用方式三、利用工具实现免杀1、veil工具基础实现免杀+进阶2、venom免杀3、利用kali自带的shellter进行免杀4、利用avet实现免杀四、...【详细内容】
2021-08-18  白帽hacker淬炼    Tags:免杀   点击:(82)  评论:(0)  加入收藏
关于工具现有工具现在,现成的污点分析工具已经有很多了。其中,我最感兴趣的是Triton和bincat,因为两者已经相当成熟。然而,我们却无法使用这两种工具,因为它们不支持目标设备所...【详细内容】
2021-08-12  Hbo涵    Tags:安全漏洞   点击:(94)  评论:(0)  加入收藏
从实现原理上分,防火墙的技术包括四大类:网络级防火墙、应用级网关、电路级网关和规则检查防火墙。1、网络级防火墙一般是基于源地址和目的地址、应用、协议以及每个IP包的端...【详细内容】
2021-07-20  趣谈文化  搜狐号  Tags:防火墙   点击:(225)  评论:(0)  加入收藏
一、VMware部分1、Vmware简介虚拟机就是一个用来模拟真实的物理机环境的一个软件,可以在虚拟机中安装不同版本的操作系统。就是一个把下载好的ISO安装在物理机操作系统的一个...【详细内容】
2021-07-12  Kali与编程  公众号  Tags:Kali Linux   点击:(113)  评论:(0)  加入收藏
最新更新
栏目热门
栏目头条