破解需验证码登录网站~ing

本文探讨了验证码的原理和作用,重点分析了基于session控制的验证码验证方式,并介绍了如何通过OCR技术进行验证码识别。同时,文章揭示了在实际操作中,由于session变量的刷新可能导致的验证码验证问题。
摘要由CSDN通过智能技术生成

何谓验证码?

验证码就是以图片格式将文本、数字、符号表示出来,在登录网站、发表评论时,同时将这些信息输入,以防止某些程序恶意登录、刷贴等,但也影响了某些情况下的正常程序访问。这些符号人眼很容易识别,但对计算机来说却非常不易,从而达到防范恶意程序的目的。

验证码的原理

验证码无非就是根据某些信息产生符号集,然后将这些符号集转换成图片。早期的验证码基本上都是数字加英文字母,而且生成的图片背景也比较干净,这就为一些OCR软件提供了可乘之机,通过专业的OCR软件就能轻易识别出验证码的文本信息。但从现在的应用来看,不仅背景上添加了许多杂色,而且符号也开始不工整,甚至采用了汉字,大大增加了OCR识别的难度。

实现验证码有两种主要的方式:
1. 访问页面时由jsp,aspx等脚本生成验证码图片,同时将验证码信息写入本地cookies, 可用函数加密,当页面提交时就会在本地判断cookies.code是否与你输入的验证码相等,或者与f(cookies.code)做比较,即生成的验证码是cookies的一个函数值。要破解这种方式,几乎不需要动用OCR,只要正确输入一次验证码,把这个正确的验证码及cookies记录下来,不断地用正确的cookies去替换新cookies,就可以不断的提交页面。

2, session控制。session控制与第1种的不同之处在于,对照码放在一个session变量里,提交时会将你输入的验证码与这个session变量或其函数值做比较,由于session变量是取不到的,所以破解的难度也大大增加。

以下主要针对第2种情况进行分析。

准备工作

先了解验验码的生成原理

在需要验证码的页面放如下代码,即一个输验证码的文本框和一个验证码图片,(注意是由asp脚本生成的)

<input type="text" name="validatecode" size="20"><img src="validatecode.asp"></p>

假如该页要提交到view.asp,

在view.asp中写如下代码:(sas_validatecode是任意命名的,只要与下文validatecode.asp中保持一致即可)

if(Trim(request.fo

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值