防止利用系统漏洞轻轻松松绕过你的验证码的方法
验证码就是每次访问页面时随机生成的图片,内容一般是数字和字母(更厉害点的还有中文),需要访问者把图中的数字字母填到表单中提交,这样就有效地防止了暴力破解。验证码也用于防止恶意灌水、广告帖等。
溯雪是早年大名鼎鼎的黑客神器“刀光雪影”之一,其功能就是暴力破解表单,那时很是很流行的。但是后来有了验证码这个东西,几乎把溯雪推向了死路。但是真的完全是死路了吗?本文给你答案。
对于验证码机制,网上的攻击手法都是利用数学方法分析图片,当然我们不能老是跟着别人的思路走,那样就没创意了。
想想验证码的思路,就是每次登陆的地方访问一个脚本文件,该文件生成含验证码的图片并将值写入到Session里,提交的时候验证登陆的脚本就会判断提交的验证码是否与Session里的一致。
问题出现了,在登陆密码错误之后,我们不去访问生成验证图片的文件,那么如果Session中的验证码没有被清空,此时验证码就是跟上次的一样,辛辛苦苦构建的防暴力破解就形同虚设了。
PowerEasy2005的管理员登陆页面就是个很好的实例,只要我们把首次访问的验证码辨认出来,以该会话Cookie值不断提交就可以实现暴力破解了。图中就是用溯雪破解的结果。
类似的情况还有PJBlog2的登陆验证等等。
利用验证码的漏洞还可以实现DOS(还有刷投票之类的,呵呵),比如CSDN博客系统,回复的验证码就存在这个问题,所以你可以抓包不断提交。
这次动网BBS做得很好,密码错误之后Session中的验证码值被置空且每次检查验证码的时候先检查是否为空。所以如果要修复这种漏洞就参考动网的办法吧。
相关推荐
-
防止利用系统漏洞轻轻松松绕过你的验证码的方法
验证码就是每次访问页面时随机生成的图片,内容一般是数字和字母(更厉害点的还有中文),需要访问者把图中的数字字母填到表单中提交,这样就有效地防止了暴力破解.验证码也用于防止恶意灌水.广告帖等. 溯雪是早年大名鼎鼎的黑客神器"刀光雪影"之一,其功能就是暴力破解表单,那时很是很流行的.但是后来有了验证码这个东西,几乎把溯雪推向了死路.但是真的完全是死路了吗?本文给你答案. 对于验证码机制,网上的攻击手法都是利用数学方法分析图片,当然我们不能老是跟着别人的思路走,那样就没创意了. 想想验证码的
-
php安全攻防利用文件上传漏洞与绕过技巧详解
目录 前言 文件上传漏洞的一些场景 场景一:前端js代码白名单判断.jpg|.png|.gif后缀 场景二:后端PHP代码检查Content-type字段 场景三:代码黑名单判断.asp|.aspx|.php|.jsp后缀 场景四:代码扩大黑名单判断 绕过方式--htaccsess: 绕过方式--大小写绕过: 场景五:一些复合判断 空格.点绕过(windows) ::$DATA绕过(windows) 双写绕过 %00截断 %0a绕过 图片马绕过 二次渲染绕过 条件竞争 /.绕过 前言 文件上传漏
-
PHP默认安装产生系统漏洞
这一个漏洞在 packetstorm 被发表,我把它翻成中文,加上自己的一些注解,希望对在 NT 上执行PHP 的朋友有一些帮助. 当你下载 PHP 後,在它内含的安装文件中帮助了 PHP 在 NT + Apache Web Server 的安装方式,其中的安装帮助会要你将底下这几行设置加到 apache 的 httpd.conf 设置文件中,而这个安装文件将导引你将你的系统门户大开. 这几行命令为: ScriptAlias /php/ "c:/php/"AddType applica
-
利用SMB共享来绕过php远程文件包含的限制
利用SMB共享来绕过php远程文件包含的限制 在这篇博文中,我将为大家演示如何利用PHP应用中的远程文件包含漏洞的技术.我们将绕过php远程文件包含的限制,并执行RFI的利用,即使PHP环境被配置为不包含来自远程HTTP/FTP URL的文件. PHP 和 SMB 共享文件访问 在PHP配置文件中,"allow_url_include"wrapper默认设置为"Off",指示PHP不加载远程HTTP或FTP URL,从而防止远程文件包含攻击.但是,即使"a
-
利用BootStrap弹出二级对话框的简单实现方法
弹出二级对话框,即在对话框的基础上再弹出一个对话框.这对于CRM管理类系统来说应用场景很常见.看到网上有关于实现二级弹出框的方法,需要在一级对话框页面上添加不少css样式.其实,完全可以不用这么麻烦. 利用bootstrap实现二级对话框很简单,只需要在主页面上添加两个含有class="modal"的DIV标签.如下面代码: <!DOCTYPE html> <html> <head> <title></title> <m
-
利用Python自动监控网站并发送邮件告警的方法
前言 因为有一些网站需要每日检查是否有问题,所以需要一个报警监控的机制,这个需要你指定你发送的邮箱和你接收的邮箱,就可以做到对网站自动监控了. 这里用的是python3.5 需要安装的插件: 1.smtplib:发邮件需要用到 2.pycurl:访问网站时会需要用到 3.linecache:在读取txt网站清单时需要用到 具体思路: python程序从txt里面批量读取到网站的信息,通过Curl.py模拟浏览器去访问网站,并且把访问的结果写入到以自己的网站名称-日期.txt格式的文件中记录;有几
-
Linux CentOS6.6系统中安装mysql源码包的方法
这里以CentOS6.6系统中安装MySQL的源码包,进行讲解. 1. mysql源码包的下载 mysql安装包的官方下载地址为:http://dev.mysql.com/downloads/mysql/5.6.html#downloads 打开该下载地址后,在 "Select Version:"处,选择要下载的mysql的版本,我选择的是5.6.34:在"Select Platform:"处,选择适用的操作系统类型,由于是下载源码包,故这里我们要选择Source
-
PHP程序漏洞产生的原因分析与防范方法说明
滥用include 1.漏洞原因: Include是编写PHP网站中最常用的函数,并且支持相对路径.有很多PHP脚本直接把某输入变量作为Include的参数,造成任意引用脚本.绝对路径泄露等漏洞.看以下代码: ... $includepage=$_GET["includepage"]; include($includepage); ... 很明显,我们只需要提交不同的Includepage变量就可以获得想要的页面.如果提交一个不存在的页面,就可以使PHP脚本发生错误而泄露实际绝对路径(
-
利用Service Fabric承载eShop On Containers的实现方法
从Pet Shop 到eShop on Container都是Microsoft在技术演进的路径上给开发者展示.Net的开发能力和架构能力的Sample工程,Petshop的时候更多的是展现应用的分层架构,设计的抽象与模块间的通讯.到了eShop on Container更多的关注在架构设计与微服务化的,下面我们先来看看eshop on Container的架构图 在上图,我们可以看到后端服务分成了 1 Identity microservice(验证服务) 2 Catalog microser
-
Linux系统实现ansible自动化安装配置httpd的方法
1.使用ansible的playbook实现自动化安装httpd 1)首先配置好ansible的hosts文件,让其对应主机能够受ansible控制 提示:我们在主机清单上配置了所管控的主机地址,但是直接用ansible的ping模块去探测主机的存活情况,却显示权限拒绝.从提示上说让我们要指定用什么验证.默认情况ansible是通过ssh的key验证的,所以我们在ansible的主机清单中配置了管控主机的ip是不够的,还要配置ssh基于KEY验证 2)配置管控主机能够基于SSH key验证 [r
随机推荐
- Linux上的文件搜索命令实例详解
- NodeJS使用formidable实现文件上传
- bat脚本显示本机IP地址的两种方法(内网ip)
- Asp.Net二级域名共享Forms身份验证、下载站/图片站的授权访问控制
- VBS教程:VBScript 页面的简单样例
- 详解Spring Boot 部署jar和war的区别
- Swift里的值类型与引用类型区别和使用
- JavaScript Cookie 直接浏览网站分网址
- 大型门户网站实现的十四大技术小结
- Android录音应用实例教程
- Python实现Linux命令xxd -i功能
- MySQL优化配置文件my.ini(discuz论坛)
- javascript 弹出的窗口返回值给父窗口具体实现
- MySQL中对于索引的基本增删查改操作总结
- C#连接操作 MySQL 数据库实例(使用官方驱动)
- 利用jquery.qrcode在页面上生成二维码且支持中文
- jquery实现文本框鼠标右击无效以及不能输入的代码
- 几个比较实用的JavaScript 测试及效验工具
- 简单粗暴的Caddy Server 使用介绍
- 4位吸血鬼数字的java实现思路与实例讲解