aardio 官方社区

 找回密码
 注册会员

QQ登录

只需一步,快速开始

搜索
查看: 10260|回复: 7

利用查表法识别验证码

[复制链接]

12

主题

62

回帖

491

积分

二级会员

积分
491
发表于 2013-2-1 00:20:13 | 显示全部楼层 |阅读模式
声明:本文诣在探讨编程技术,谁用来搞违法事情后果自负。
原理:其实没有什么技术含量,高手飘过。我在探测该网站验证码地址时发现可以取得文件名。且只有100个图像。分别是0.jpeg~99.jpeg.于是就构建含有所有验证码的table,使验证码图像与表元素一一对应。。。
  1. //import win.ui;
  2. import web.form;

  3. /*DSG{{*/
  4. var winform = ..win.form( bottom=602;parent=...;right=506;text="aardio Form";scroll=1 )
  5. winform.add(  )
  6. /*}}*/

  7. tab={"4194";"4212";"0933";"0269";"0647";"2315";"7769";"7030";"6998";"4475";"5920";"7385";"8657";"8684";"1378";"6214";"5892";"7454";"4135";"1847";"0597";"1724";"5007";"4544";"0464";"1704";"6475";"8335";"5865";"6367";"3529";"0580";"6639";"1827";"3479";"5787";"1170";"5140";"4294";"0773";"9664";"3215";"5492";"3300";"0414";"0148";"4785";"8816";"6771";"3761";"2914";"9114";"7481";"1128";"8061";"8242";"9461";"1370";"4730";"5017";"4151";"7618";"7065";"0180";"3781";"9753";"8668";"9371";"1537";"7118";"0672";"9768";"9269";"0681";"4531";"6164";"1089";"5578";"1924";"6436";"3329";"3616";"3831";"4626";"1306";"1997";"2611";"8621";"5563";"5295";"8825";"1996";"3759";"6523";"3516";"1475";"7257";"8274";"2309";"7433"};

  8. //创建web窗体
  9. var wb = web.form(winform);
  10. //打开目标网站
  11. wb.go("http://58.59.136.88/CIIMSS/hiiap/login/login.htm")
  12. winform.show(true)
  13. wb.wait("");
  14. ele=wb.getEle("randimage")
  15. //取验证码图像地址
  16. var str =ele.src
  17. //提取文件名构造验证码索引
  18. if(string.slice(str,-7,-7)!="/"){
  19.          n =tonumber(string.slice(str,-7,-6))+1       
  20. }else {
  21.         n =tonumber(string.slice(str,-6,-6))+1
  22. }
  23. //取验证码
  24. vcode=tab[n]
  25. var ele = wb.getEle("validate3")  
  26. ele.value =vcode
  27. win.loopMessage();
  28. return wb,winform;
复制代码

13

主题

92

回帖

719

积分

三级会员

积分
719
QQ
发表于 2013-2-1 00:47:34 | 显示全部楼层
思路不错,可以借鉴。

117

主题

1103

回帖

6572

积分

六级会员

积分
6572
发表于 2013-2-1 00:48:49 | 显示全部楼层
  1. //import win.ui;
  2. import web.form;

  3. /*DSG{{*/
  4. var winform = ..win.form( bottom=602;parent=...;right=506;text="aardio Form";scroll=1 )
  5. winform.add(  )
  6. /*}}*/

  7. tab={"4194";"4212";"0933";"0269";"0647";"2315";"7769";"7030";"6998";"4475";"5920";"7385";"8657";"8684";"1378";"6214";"5892";"7454";"4135";"1847";"0597";"1724";"5007";"4544";"0464";"1704";"6475";"8335";"5865";"6367";"3529";"0580";"6639";"1827";"3479";"5787";"1170";"5140";"4294";"0773";"9664";"3215";"5492";"3300";"0414";"0148";"4785";"8816";"6771";"3761";"2914";"9114";"7481";"1128";"8061";"8242";"9461";"1370";"4730";"5017";"4151";"7618";"7065";"0180";"3781";"9753";"8668";"9371";"1537";"7118";"0672";"9768";"9269";"0681";"4531";"6164";"1089";"5578";"1924";"6436";"3329";"3616";"3831";"4626";"1306";"1997";"2611";"8621";"5563";"5295";"8825";"1996";"3759";"6523";"3516";"1475";"7257";"8274";"2309";"7433"};

  8. //创建web窗体
  9. var wb = web.form(winform);
  10. //打开目标网站
  11. wb.go("http://58.59.136.88/CIIMSS/hiiap/login/login.htm")
  12. winform.show(true)
  13. wb.wait("");
  14. ele=wb.getEle("randimage")
  15. //匹配图像文件名
  16. var id=string.match(ele.src,"(\d+)\.jpeg")+1;

  17. //取验证码
  18. var ele = wb.getEle("validate3")  
  19. ele.value =tab[id];

  20. win.loopMessage();
  21. return wb,winform;
复制代码

12

主题

62

回帖

491

积分

二级会员

积分
491
 楼主| 发表于 2013-2-1 01:11:53 | 显示全部楼层
落伍者 发表于 2013-2-1 00:48

谢谢指点。

0

主题

30

回帖

418

积分

二级会员

积分
418
发表于 2013-2-2 00:57:57 | 显示全部楼层
编写的人偷懒了,结果成了漏洞。哈。

15

主题

112

回帖

922

积分

三级会员

积分
922
发表于 2013-2-2 03:20:27 | 显示全部楼层
mamer 发表于 2013-2-2 00:57
编写的人偷懒了,结果成了漏洞。哈。

这倒是真的。

16

主题

70

回帖

661

积分

三级会员

积分
661
QQ
发表于 2013-2-2 10:00:38 | 显示全部楼层
对这样的网站表示无语,lz很牛X、

2

主题

9

回帖

275

积分

二级会员

积分
275
QQ
发表于 2013-2-2 19:13:06 | 显示全部楼层
挺好的,学习了
您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

手机版|未经许可严禁引用或转载本站文章|aardio.com|aardio 官方社区 ( 皖ICP备09012014号 )

GMT+8, 2025-3-20 03:09 , Processed in 0.063353 second(s), 23 queries .

Powered by Discuz! X3.5

Copyright © 2001-2024 Tencent Cloud.

快速回复 返回顶部 返回列表