Skip to content

sec-cactus/BigPineApple

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

BigPineApple

大菠萝,起名灵感源于游戏中的M249,主要功能是:通过监听流量,发送双向阻断包,达到阻断链接、封禁IP的目的。
其实通过防火墙、IPS包括WAF都可以形成达到类似的效果,但是都会遇到性能瓶颈,即封禁的IP地址/IP地址段数量较多时,会大量消耗设备性能,造成网络延迟,从而影响业务。
从旁路发送阻断包的方式,则完全不涉及链路设备的性能问题。只要发包速度足够快,就可以达到良好的封禁效果。更重要的是,这种方式具备很好的横向扩展能力。当流量压力较大时,可以通过tap设备将流量分给多个旁路阻断设备,实现扩展。
在网络安全攻防演练活动中,与IP黑名单联动使用,可以形成攻击动态封禁能力。
本项目主要参考了:https://github.com/kirebyte/go-tcp-reset

配置说明

基本环境:

CentOS 7.6
go
libpcap-dev

conf.txt:

mirrornetworkdevice: 监听网卡
mgtnetworkdevice: 管理网卡,即发送阻断包网卡
targetlistpath: 封禁IP文件路径
srcmac: 源MAC地址,即管理网卡MAC地址
dstmac: 目的MAC地址,即管理网卡所在网段的网关MAC地址

targetlist.txt

黑名单地址标记为0
白名单地址标记为1
匹配规则:优先匹配白名单,如果源或目的IP任一在白名单内,则不阻断。然后匹配黑名单,如果源或目的IP任一在黑名单内,则阻断。

About

tcp reset by go

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages