验证安全|验证码|接口|token
大纲|思维导图
图片来源于网络
讲解整体知识点,简要概况:1:00
验证码安全
● 分类: 图片,手机或邮箱,语音,视频,操作等
● 原理: 验证生成或验证过程中的逻辑问题
● 危害: 账户权限泄漏,短信轰炸,遍历,任意用户操作等
● 漏洞: 客户端回显(已讲),验证码复用,验证码爆破(已讲),绕过等
验证码识别插件及工具操作演示-实例:8:50
Pkav_Http_Fuzz:一个带图形验证码爆破识别的渗透测试工具。
https://www.cnblogs.com/guojia000/p/14180685.html
推荐:两款插件–软件不可以借助burpsuite实现爆破,插件可以。
captcha-killer:
https://blog.csdn.net/doulicau/article/details/122981624
https://www.cnblogs.com/cwkiller/p/12659549.html
reCAPTCHA:
https://github.com/bit4woo/reCAPTCHA/releases/tag/v1.0
验证码绕过本地及远程验证-本地及实例:28:00
1、远程(服务器)验证:pikachu靶场–onclientbao爆破,第一步先试一下正确的验证码,抓包,发现验证码对提示账号密码错误;第二次故意输入另一个账号,观察这个验证码有无失效,发现没有失效,那么这里就存在一个验证码复用的问题。为什么会出现这个逻辑漏洞,是因为对方的服务器上的验证验证码的代码存在逻辑漏洞(没有及时销毁session):在第一次验证时,若验证码正确,那么就会产生一个session保存这个结果,如果一次验证完后没有销毁,那么就会产生这个问题。
2、本地验证一般是前端(js)。
3、如何判断前/后端验证?
右键-查看元素,如果在前端看到验证代码,那就是前端验证;反之是后端验证。
4、可以调用别的网站上的多个接口,通过验证码绕过,实现往别人手机号重复发送多次短信验证码,实现短信轰炸。
token安全
● 基本上述同理,主要是验证中可存在绕过可继续后续测试
● token 爆破,token 客户端回显等
token在前面主要是防止CSRF的。
关于token的详解:https://blog.csdn.net/zheng_qq/article/details/120375798
Token客户端回显绕过登录爆破演示–本地:57:00
1、关于token的爆破比较困难,因为token是在实时变化的,我们爆破时如果观察到下一个的token就包含在上一个数据包的回显中(token不是服务器产生的?),那这种情况就可以操作爆破,详情上网搜。否则爆破不了。
–原因是把token设置在了session文件中,并在前端输出token。
接口安全问题
● 调用,遍历,未授权,篡改等
● 调用案例:短信轰炸
● 遍历案列:UID 等遍历
● callback 回调 JSONP
● 参数篡改:墨者靶场
本地某URL下载接口ID值调用遍历测试-实例:1:14:00
Callback(回调)自定义返回调用安全-漏洞测试-实例:1:18:00
1、有点迷,好像是回调对面要取数据,我可以把js语句注入里面,那么可能存在跨站漏洞。
2、callback是对面接受返回值的一个接口(函数?),比如说支付成功,如何判断成功,那就是callback回调取支付成功的状态返回。
总结|小技巧|拓展
上述在实战中如何做到漏洞发现-bp功能点(bp进阶):1:18:00
1、bp里面的spider–爬虫,可以帮助在大量的数据包寻找token、uid等值(参数)的指定数据包,辅助找到网站带有xx功能的页面,就是对数据包进行了筛选。–感觉像是对网站进行简单的扫描、发现漏洞。