教你用免费的hihttps开源WEB应用防火墙阻止暴力破解密码

很多企业都有自己的网站,需要用户登录后才能访问,但有大量的黑客攻击软件可以暴力破解网站密码,即使破解不了也非常恶心。有没有免费的解决办法呢?天本文就是以centos 7服务器为例,教大家怎样用免费的hihttps开源WEB应用防火墙,来阻止黑客暴力破解网站密码。

一、下载源码编译

hihttps是一款完整源码的高性能SSL WEB应用防火墙( SSL WAF),采用epoll模式支持高并发,并且兼容ModSecurity正则规则。访问官网http://www.hihttps.com或者github上搜索hihttps,下载最新源码。

centos首先需要安装OpenSSL和libpcre两个开发库

yum install openssl openssl-devel

yum install -y pcre pcre-devel

然后解压源码到任意目录,直接make即可在当前目录生成可执行文件hihttps

二、配置

打开config.cfg文件,通常是hihttps前端运行443(https)端口,后端反向代理80端口。所以,如果你的WEB服务器已经占用了443端口,请停用或者修改为其他端口。如下设置即可:

# 前端SSL绑定的端口,默认443,注意不要冲突了

frontend = {

host = "*"

port = "443"

}

backend = "[127.0.0.1]:80"    # 后端默认反向连接80端口

#证书文件,建议设置绝对路径

pem-file = "server.pem"

三、规则加载

规则放在和hihttps同一级的rules目录即可,注意后缀是.conf或者.rule, 默认已经开启了DDOS & CC以及暴力破解密码防御规则,打开REQUEST-20-APPLICATION-CC-DDOS.conf这个文件,找到这条规则:

SecRule DDOS "@rx login" \

"id:20,\

phase:2,\

block,\

capture,\

t:none,t:urlDecodeUni,t:lowercase,\

msg:'LOGIN Brute Force Password test',\

logdata:'Matched Data: %{TX.0} found within %{MATCHED_VAR_NAME}: %{MATCHED_VAR}',\

tag:'application-multi',\

tag:'language-php',\

tag:'platform-multi',\

tag:'attack-injection-php',\

tag:'OWASP_CRS/WEB_ATTACK/PHP_INJECTION',\

tag:'OWASP_TOP_10/A1',\

ctl:auditLogParts=+E,\

ver:'OWASP_CRS/3.1.0',\

severity:'CRITICAL',\

setvar:'ddos_burst_time_slice=10,ddos_counter_threshold=3,ddos_block_timeout=60',\

setvar:'tx.php_injection_score=+%{tx.critical_anomaly_score}',\

setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}',\

setvar:'tx.%{rule.id}-OWASP_CRS/WEB_ATTACK/PHP_INJECTION-%{MATCHED_VAR_NAME}=%{tx.0}'"

上面规则基本含义是:任何url中正则匹配到了login这个关键字,同一IP在10秒内超过3次访问,认为是在暴力破解密码,直接封锁其IP地址60秒。因为正常用户在登录的时候,即使错误输入了密码,也不会在10秒内超过3次请求,如果要修改频率,直接改规则里面的时间即可:

setvar:'ddos_burst_time_slice=10,ddos_counter_threshold=3,ddos_block_timeout=60',

hihttps最厉害的是兼容owasp-modsecurity-core-rule攻击规则,更多的规则说明,请自行百度搜索相关教程。

四、运行

./hihttps直接运行即可,默认读取当前目录下的confg.cfg文件, 或者./hihttps --config /dir/config.cfg

如果成功打印加载了rules目录下的规则,代表运行成功。

五、 测试

浏览器连续刷下访问https://server_ip/login.html?testsql=delete * from test

如果hihttps产生了报警记录,则防御成功,再也没有人能暴力破解你网站密码了。

hihttps还有其他更强大的功能,在后续的文章里面再介绍。总之,服务器web安全相当重要,如果不是开源的产品,千万不能随便安装。

教你用免费的hihttps开源WEB应用防火墙阻止暴力破解密码的更多相关文章

  1. 2019年十大开源WEB应用防火墙点评

    2019年十大开源WEB应用防火墙点评 随着WEB应用的爆炸式成长和HTTPS加密的普及,针对网络应用层的攻击,像SQL注入.跨站脚本攻击.参数篡改.应用平台漏洞攻击.拒绝服务攻击等越来越多,传统的防 ...

  2. 3.6 万颗星!开源 Web 服务器后起之秀,自带免费 HTTPS 开箱即用

    众所周知,Web 服务器是 Web 开发中不可或缺的基础服务,在开发中经常会用到.耳熟能详的开源 Web 服务器有久负盛名的 Apache.性能强劲的 Nginx.而我们今天要介绍的开源项目是采用 G ...

  3. 10 个强大的开源 Web 流量分析工具(转帖)

    Web 流量分析工具多不胜数,从 WebTrends 这样专业而昂贵的,到 Google Analytics 这样强大而免费的,从需要在服务器端单独部署的,到可以从前端集成的,不一而足.本文收集并介绍 ...

  4. 12种开源Web安全扫描程序

    转自:https://blog.csdn.net/wh211212/article/details/78620963 赛门铁克的一个有趣的报告显示,76%的被扫描网站有恶意软件 如果您使用的是Word ...

  5. 开源 Web 相册程序: Photoview 和数据可视化生成工具:Datawrapper

    Photoview Photoview是一个开源 Web 相册程序,Go 语言写的,使用 Docker 安装,可以用来快速架设个人相册. github地址:https://github.com/pho ...

  6. Caf.CMS是一个免费的、 开源,功能齐全的CMS

    Caf.CMS(疯狂蚂蚁CMS) 是一个免费的. 开源,功能全面的CMS(内容管理系统).定位CMS也有点狭义呢,因为Caf.CMS是基于国外SmartStore.NET 开源商城源码的基础上改造而成 ...

  7. 最佳的 14 个免费的响应式 Web 设计测试工具

    一旦你决定要搭建一个网站就应该已经制定了设计标准.你认为下一步该做什么呢?测试!我使用“测试”这个词来检测你网站对不同屏幕和浏览器尺寸的响应情况.测试在响应式网页设计的过程中是很重要的一步.如果你明白 ...

  8. Kali Linux Web 渗透测试视频教—第二十课-利用kali linux光盘或者usb启动盘破解windows密码

    Kali Linux Web 渗透测试视频教—第二十课-利用kali linux光盘或者usb启动盘破解windows密码 文/玄魂 目录 Kali Linux Web 渗透测试视频教—第二十课-利用 ...

  9. 两个基于C++/Qt的开源WEB框架

    1.tufao 项目地址: https://github.com/vinipsmaker/tufao 主页: http://vinipsmaker.github.io/tufao/ 介绍: Tufão ...

随机推荐

  1. Java8-Thread-No.01

    import java.util.concurrent.TimeUnit; public class Threads1 { public static void main(String[] args) ...

  2. vue 想关工具 及组件

    vue-cli  vue的脚手架工具    (1) 安装通过  npm install -g vue-cil      (2)常用模板  browserify - 拥有高级功能的 Browserify ...

  3. Mac: ld: library not found for -lgcc_s.10.4

    Mac: ld: library not found for -lgcc_s.10.4   Checking for cc... ld: library not found for -lgcc_s.1 ...

  4. HDU 6134 Battlestation Operational | 2017 Multi-University Training Contest 8

    破结论没听说过,上式推导到第三步的时候有了O(nlogn) 的做法(枚举倍数+1最后前缀和),并且这种做法可以直接应用到向上取整的计算中,详见forever97 但由于d(n)是积性函数,故可O(n) ...

  5. luogu 2943 [USACO09MAR]清理Cleaning Up 动态规划

    非常巧妙的动态规划. 你会发现每一个区间地颜色种类不能超过 $\sqrt n$, 所以可以直接枚举区间颜色种类. 令这个为 $pos[j],$ 然后考虑如何去更新这个东西就行了. Code: #inc ...

  6. 8月清北学堂培训 Day 7

    当天走得太兴奋了,忘记保存就关电脑了o(╥﹏╥)o,现在补上( p′︵‵.) 今天是杨思祺老师的讲授~ 练习题 首先求出最短路: 如果选择的边不是最短路上的边,那么毫无影响: 对于最短路径上的边,我们 ...

  7. spring相关知识点易错

    1.spring不支持静态变量注入,即不能再static变量上面加@Resoure 要是想注入的话就用set方法注入 private static ComboPooledDataSource pool ...

  8. MySQL 取分组后每组的最新记录

    修改<常用SQL之日期格式化和查询重复数据>中表test1的创建时间,修改后的测试数据如下: 以姓名分组后提取每组最新创建的记录: SELECT a.* FROM test1 AS a, ...

  9. HDU 4393 Throw nails(贪心加模拟,追及问题)

    题目链接:http://acm.hust.edu.cn/vjudge/contest/view.action?cid=115361#problem/D 题意大致是:给出最多50000个人,拥有最初速度 ...

  10. 为ubuntu找个能用的桌面,顺便进行适当的改造

    最近,开始玩ros,结果官方推荐ubuntu linux,虽然都是差不多的linux,无非就是软件包形式不同而已.但是,个人对ubuntu的unity桌面实在是没有爱,最让人无语的是,kubuntu无 ...