逻辑漏洞就是程序在实现业务逻辑上存在的错误,辑漏洞的出现通常是因为程序在设计业务逻辑时考虑不够全面,或者程序员的思维过程存在瑕疵,没有充分考虑到各种可能的情况

大部分程序员在设计的时候,目标是实现功能需求,考虑并不是很全面,所以是可能存在漏洞的,接下来,学习身份验证漏洞。身份验证漏洞是在识别用户身份这一功能方面存在的漏洞

(个人感觉:逻辑漏洞是思维上的对决,)

(一)暴力破解

1、未限制爆破

使用场景:在用户登录的时候,没有对用户身份等进行再次验证,只有对登录用户名和密码进行验证,没有第三方例如图片验证码、手机短信验证码等的验证

破解策略:首先对用户名爆破,获取到一个用户之后,其次对该用户的密码进行爆破,这是较为常见的常见,使用到的工具是burpsuite

案例演示:DVWA靶场

2、限制ip爆破

使用场景:在防护措施中,有一条策略是,在短时间内有来次某条ip的大量访问,尝试进行登录,会被识别是攻击行为,会对ip进行封锁,导致该ip不能使用

破解策略:使用ip代理池,写个脚本,调用git(分布式控制系统)开源的代理接口,利用不同的ip对其访问,

import requests
import re
def post():curl = "https://ip.900cha.com/"proxy = {'http':'47.92.113.71:80'} #代理地址以及端口,现在估计已经失效,如果需要使用,可以自建资源池header = {'User-Agent':'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML,like Gecko)Chrome/70.0.3538.25 Safari/537.36 Core/1.70.3775.400 QQBrowser/10.6.4208.400'}post = requests.get(curl,headers=header,proxies=proxy).text #请求报文# post = post.encode('ISO-8859-1').decode("gb2312") #iso编码转汉字# print(post) #打印网站chuli(post) #将丢给chuli进行取值def chuli(post): #整体模块均为数据处理,取值ip = re.findall('准确归属地:.*', post)[0] #取出IP地址print(ip) #输出地址if __name__ == '__main__':
post()

3、限制密码错误爆破

场景:在有些登录页面,我们太久忘记登录忘记密码了,输入几次密码错误之后,会提示还有几次登录尝试,这是因为,后台管理对于安全考虑,会限制账号的登录次数,如果超出限制次数,账号会被锁定,需要管理员解封或者过一定时间才会解锁

破解策略:这种限制只是对一个账号的限制,只对一个账户进行登录次数的限制,我们可以换个账号进行爆破,返回使用弱口令反过来爆破账户方式。只要账户足够多,总存在弱口令的账户。使用工具也是burpsuite

4、多字段爆破

场景:有些网址在验证身份时候,不止需要验证账号与密码,还有其他的参数,例如token,这因为后台用于验证身份时候,不仅仅是对账号秘密验证,还加上了一层验证,常见的例如token,token的值是根据你的身份信息、摘要身份信息等生成的身份验证码,token是唯一的,经过加密了,是有时效的,使用一次之后,就失效。

破解策略:burpsuite的Intruder模块,

在intrder模块的grep-xetract中,可以从响应包中提取token,然后放在攻击列表中

5、限制登录次数频率爆破

场景:在登录时候,在一定时间内,不管密码正确还是不正确,都会对登录次数进行限制,例如10分钟之内,只允许登录10次,不然就对账户进行封锁。

策略:可以采用延时爆破的方法,在burpsuite中可以设置爆破的时间,

6、authorization爆破

场景:authorization加密通常用于进行API接口的访问授权,加密算法常用base64算法。

策略:利用burpsuite抓包之后,可以利用burpsite自带base64解码,也可以利用一些在线网址或工具进行解码

7、密文传输爆破

场景:在用户进行登录完成时候,可能会对数据传输进行密码处理,

破解策略:查看源代码,找到加密的算法与方式,根据加密方式进行逆向解密,(加密算法有许多,联合起来就更多了,所以需要弄清楚加密过程与算法,进行逆向解密)

8、图片验证码爆破

场景:带有图片的验证码是我们较为常见的验证方式,

破解策略:burpsuite+pkav联合使用你,利用burpsuite进行抓包,把包进行复制到pkav中

(二)session固定攻击

场景:session常用在结束后,当我们在一个页面中登录完之后,不管是关闭网站,还是进入网站的其他页面,都是还是识别登录状态,这就是session的功能。当用户在访问服务器时,服务器会为该用户创建一个Session,并分配一个唯一的Session ID,在后续的请求中,服务器可以根据这个Session ID来识别客户端。

破解:在请求登录时候,url会带有一个session,登录成功之后会将登录成功的信息绑定到这 个session中,可以发送带有session的URL给相关工作人员诱导其登录,相当于获取了其身份信息

(三)cookie欺骗漏洞

场景:cookie和session一样,都是用来识别用户信息的,不同的是cookie是存储在客户端(用户),而session是存储在服务器中,

策略:cookie的值只是简单编码,进行抓包获取到cookie值之后,修改lsLogin值为1可以判定为用户已经登录

(四)未进行登录凭证验证

场景:这样没有登录凭证是没有cookie或是session这样凭证识别,进入该网址,也没有跳转到登录页面,没有扫描限制的就能直接访问

策略:要发现这样的网页,是通过目录扫描工具进行扫描,然后对扫描到目录逐个的连接,如果直接就能访问成功

逻辑漏洞学习-身份验证漏洞相关推荐

  1. 逻辑漏洞渗透与攻防(一)身份验证漏洞

    目录 逻辑漏洞概要 漏洞的根因: 逻辑漏洞的分类: 身份验证漏洞 暴力破解漏洞

  2. 逻辑漏洞----身份验证漏洞

    1.逻辑漏洞的概要 逻辑漏洞是基于开发人员设计程序时,逻辑不严密,导致攻击者可以修改,绕过,中断整个程序,让程序按照开发人员的预料之外去执行 如某一网页的登录验证逻辑: 输入用户名,密码------输 ...

  3. WEB安全基础入门—身份验证漏洞

    欢迎关注订阅专栏! WEB安全系列包括如下三个专栏:! <WEB安全基础-服务器端漏洞> <WEB安全基础-客户端漏洞> <WEB安全高级-综合利用> 知识点全面细 ...

  4. BurpSuite练兵场系列之服务器端漏洞篇 - 身份验证专题

    https://www.anquanke.com/post/id/245533 robots 本系列介绍 PortSwigger是信息安全从业者必备工具burpsuite的发行商,作为网络空间安全的领 ...

  5. 身份验证漏洞 之 身法提升篇

    前言   至少在概念上,身份验证漏洞是一些需要了解的最简单的问题.但是,由于身份验证和安全性之间的明显关系,它们可能是最关键的.除了可能允许攻击者直接访问敏感数据和功能外,它们还暴露了额外的攻击面以供 ...

  6. Vulnerabilities in multi-factor authentication:多因素身份验证漏洞

    许多网站完全依赖使用密码的单因素身份验证来验证用户.但是,有些要求用户使用多种身份验证因素来证明其身份. 对于大多数网站来说,验证生物识别因素是不切实际的.但是,基于您知道的和您拥有的内容,同时看到强 ...

  7. 漏洞学习笔记——UAF漏洞

    UAF即为Use After Free.也就是使用了已经被释放的内存,最终导致内存崩溃或任意代码被执行的漏洞.UAF漏洞常见于浏览器中,如IE.Chrome.Firefox等. 当分配有内存的指针被释 ...

  8. 【bp靶场portswigger-服务端2】身份认证漏洞-16个实验(全)

    前言: 介绍: 博主:网络安全领域狂热爱好者(承诺在CSDN永久无偿分享文章). 殊荣:CSDN网络安全领域优质创作者,2022年双十一业务安全保卫战-某厂第一名,某厂特邀数字业务安全研究员,edus ...

  9. OWASP top 10 (2017) 学习笔记--失效的身份验证

    A2:2017 - 失效的身份验证 漏洞描述: 通过错误使用应用程序的身份认证和会话管理功能,攻击者能够破译密码.密钥或会话令牌,或者利用其它开发缺陷来暂时性或永久性冒充其他用户的身份. 漏洞影响: ...

最新文章

  1. 示廓灯——也就是前后位置等开启方法 还有该死的刮水器是长这样的
  2. 如何关闭win10自动更新_如何关闭win10系统自动更新
  3. yarn安装依赖包报错 error An unexpected error occurred: “https://registry.npm.taobao.orgnpm/element-ui: get
  4. 如何列出引用SQL Server中给定表的所有外键?
  5. python采集直播间数据_利用Python爬虫爬取斗鱼直播间信息,以及直播的实际人数!...
  6. 动手学深度学习(六、卷积神经网络)
  7. matlab/simulink鼠标滚动设置成上下移动而不是缩放
  8. One PUNCH Man——特征选择
  9. javafx 制作五子棋游戏——简单MVC框架
  10. OSS(阿里云)图床搭建
  11. 关于mysql的timestamp时间范围
  12. MySQL数据库教程天花板,mysql安装到mysql高级,强|硬 宋红康版
  13. 单点登录的简单理解(SSO)
  14. 内网攻防经典技术备忘录
  15. 直连线和交叉线的做法
  16. MyBatis学习——分步查询与延迟加载
  17. XAMPP安装和配置(for mac)
  18. android studio打jar包并添加三方包
  19. http://www.discuz.net/forum.php?mod=viewthreadtid=611716page=1authorid=13759
  20. 可靠性培训大纲- Sam Wang

热门文章

  1. 2021-10-10 10:10:10
  2. 【C语言三种自定义类型】
  3. 微信平台服务器要求,公众号服务器配置需要启用吗
  4. html 设置不可用,NVIDIA 显示设置不可用。原因与解决方法
  5. 大前端 - nodejs -egg实战 - web端(vue3.0)
  6. 水果FL studio20.8中文汉化翻译语言
  7. 04-背景相关属性【背景颜色,背景图片,背景平铺,背景位置,img与背景图片的区别】
  8. IPTV系统还可以用在这些领域
  9. 2-4-4 简单实现x的n次方 (10分)
  10. Log4js原理解析