python的反反暴力破解

本文适合刚刚学完 python,光听别人说强大,但是自己没有直观感受过的人。介绍两种防暴力破解的方法,以及用 py 的绕过方法。(暂不考虑 sql 注入,不谈机器学习。)

虽然繁琐的认证不一定意味着安全,但是方便省事的认证往往意味着不安全。

暴力破解漏洞是广泛存在的,危害较大的漏洞。虽然利用该漏洞需要付出的时间成本可能难以接受,但是如果结合社会工程学,完全可能将不能接受的时间降到可接受的范围,所以其危害不容小觑。

环境要求

系统:

kali linux

软件版本:

php7 mysql5.6 python3

搭建步骤:

1、首先数据库导入 data.sql,这是所有的测试数据。

2、搭建被测试的网页用 Phpstudy 即可,把所有 php 文件放入网站根路径,确保能够正常访问。或者直接在 kali 里,比较方便,直接把这几个脚本放一块,然后在当前路径执行 php -S 127.0.0.1:80,就完事了。Py 脚本可以随意,只要执行起来方便就行。

3、php 生成验证码需要安装 gd 扩展,python3 验证码识别,需要安装 tesseract-ocr。

4、Code.php 是生成二维码用的。

代码都做了注释,有兴趣可以看一看。

form.php

简简单单的一个带token的表单。

form.php

简简单单的又一个表单。

burteforce2.1.php

处理带 token 的登录请求的脚本

burteforce2.2.php

处理带验证码的登录请求的脚本

Code.php

生成二维码的脚本

burteforce2.1.py

暴力破解带 token 的认证

burteforce2.2.py

密码字典从 kali 里随便找一个。

测试:

一、随机生成 token,作为隐藏输入,藏在表单之中,每次访问都获取新的 token,妄图防御了基于数据包重放的暴力破解。然而在强大的 python 面前并没有什么卵用。

测试步骤:

把文件放到网站跟路径,运行 py 脚本

一片喜闻乐见的登录失败。但是,仔细一看,其中有条结果的页面长度与其他不同

去正常登录尝试一下,admin 是 admin 的密码

二、绕过验证码防御基于数据包重放的暴力破解攻击。纯数字,混淆力度不够,经过处理后可以被识别,或者根本不用处理即可被识别。

测试步骤和上边没有差别,就是脚本名换了换。

写在最后的话

防范暴力破解还有其他的办法,例如如果一个 IP 地址频繁失败登录就限制其访问,或者如果一个帐号频繁登录失败就锁定该帐号,除非再次激活,否则不能继续正常使用。

但是这两种办法都有弊端,前者可以用构建一个代理池的办法来绕过(本地不好演示),后者会影响用户的正常使用。所以说,采取何种办法来防御,需要权衡。

其实最好的办法是设置一个足够强的密码,一个系统无论打了多少补丁,按了多少个防火墙,它的密码如果是 1234, 那么一切都等于零。

原文发布于微信公众号 - 信安之路(xazlsec)

原文发表时间:2017-12-01

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏deed博客

充分利用4G 空间 C8815 修改DATA分区,扩大存储空间,重新分配内置存储空间

22540
来自专栏ChaMd5安全团队

Flare-On 2018 writeup(下)

后门下载器加载库函数从ldr链表中遍历模块和模块函数,使用Hash来获取API定位,此后的API都用这种方法遍历,由于是病毒经典使用方法,可以搜到hash表,没...

14340
来自专栏北京马哥教育

腾讯反病毒实验室为你揭秘Xshell软件后门技术!

背景: 最近,XShell远程终端工具发现被加入了恶意代码,目前官方就此事也做出了回应,要求使用者尽快下载最新版本。腾讯安全反病毒实验室就此跟进分析,对此次带...

32860
来自专栏Java成神之路

SQL server 2008 数据库企业版安装教程图解

SQL Server 2008是一个重大的产品版本,它推出了许多新的特性和关键的改进,使得它成为至今为止的最强大和最全面的SQL Server版本。    在...

31420
来自专栏JetpropelledSnake

搜索引擎语法

0x00 前言 搜索引擎语法是一个本该经常使用但是却一直被我忽略工具。它可以在很大程度上满足一些特殊需求,比如:渗透时查找网站后台或者上传文件页面等。 目前主要...

314100
来自专栏FreeBuf

Meterpreter免杀技巧分享(亲测有效)

0×01 meterpreter简介 MetasploitFramework是一个缓冲区溢出测试使用的辅助工具,也可以说是一个漏洞利用和测试平台,它集成了各种平...

807110
来自专栏信安之路

一道 CTF 题 get 到的新姿势

本文是从一个 CTF 题目中学到的一个新姿势,下面对我的学习做一个记录总结,给大家分享一下,希望大家多多参与一起分享学习。

12000
来自专栏ChaMd5安全团队

redhat2017_Writeup

HBCTF第一场2个pwn题的简单分析 From ChaMd5安全团队核心成员 Lncken MISC签到 flag{BE78989E-1F00-8326-...

31960
来自专栏信安之路

ourphp 前台注册登入前台某用戶

在function\api\ourphpuser\ourphp_system.php该文件存在用户login函数

13700
来自专栏java思维导图

jwt思维导图,让jwt不再难懂

一般情况下,web项目都是通过session进行认证,每次请求数据时,都会把jsessionid放在cookie中,以便与服务端保持会话。

16040

扫码关注云+社区

领取腾讯云代金券