0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Web渗透测试学习手册

jf_hKIAo4na 来源:菜鸟学安全 作者:ᴠᴜʟᴋᴇʏ_ᴄʜᴇ 2022-11-21 10:07 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

介绍:这里对Web应用业务逻辑方面的安全缺陷进行介绍和常见案例讲解。

任意用户密码重置

常见的缺陷:

* 1.验证码类缺陷

-场景:1.1 验证码回显在客户端(响应主体、Set-Cookie等等…)。

1.2 验证码过于简易时效性过长,接口未做限制(一般为纯数字4-8位数,时效性长达30分钟以上可以对验证码进行枚举)。

* 2.未校验权限/前端校验/越权

-场景:2.1 任意手机号验证码都可重置任意账号。

2.2 修改响应包的主体(根据实际情况来修改 例如验证请求对应的响应报文的主体为false你可以修改为true)。

2.3 同一浏览器进入A用户的重置,然后关闭再进入B用户的重置 而实际上重置A用户。

2.4 修改重置密码的相关参数(例如 userid等等…)。

* 3.HOST头伪造

-场景:3.1 在邮箱找回密码的时候,可以简单替换Host部分进行Fuzz,看看找回密码的链接中的域名是否是根据Host来生成的如果是可以替换成自己的域名。但是这种思路很鸡肋,因为需要用户的点击,这样才可以根据日志看到重置密码的链接,万一重置密码的链接时效性过去就无奈了。

* 4.找回密码的凭证脆弱

-场景:4.1 见过最多的是找回密码的token是base64编码的,而解码后的明文根据其规则修改就可以成为别人用户找回密码的凭证了。

验证码绕过

常见的缺陷:

1)图形类验证码绕过

* 1.图形验证码可复用

-场景:3.1 验证码刷新之后,而历史刷新的验证码还是可以继续使用。

3.2 验证码使用过后不刷新,时效性不过期,可以一直复用。

* 2.图形验证码易识别

-场景 4.1 很多验证码的显示很简单,容易被机器识别。

2)短信类验证码绕过

* 1.验证码过于简易&接口未限制

-场景:1.1 有些手机短信验证码都为 4-8位 纯数字的验证码,在接口没有任何限制的情况下是可以直接爆破的。

* 2.验证码发送复用&时效性过长&接口未限制

-场景:2.1 6位数验证码时效性为5分钟,但是在这里同一手机号发送的验证码都是一样的,所以可以在4分钟的时候重新发送一次验证码这样验证码就又有效了,因为验证码一直在被复用,所以可以爆破。

* 3.万能验证码

-场景:3.1 这是很多大企业的诟病,在未上线前为了方便测试加了888888、000000这样的万能验证码但是上线后没去删除测试的内容导致被恶意利用。

短信/语音验证码重放

无论是发送短信还是语音验证码来做验证,都是需要手机号的,而发送验证码实际上是需要成本的,需要跟运营商或者是第三方验证码平台进行合作,多数验证码为0.01元一条,当然也有更便宜的,所以这边的问题也会影响到一个企业的资产方面。

常见缺陷:

* 1.无限制发送

-场景:1.1 厂商对验证码发送这一块并没有进行限制时间发送

* 2.代码层逻辑校验问题

-场景:2.1 很多厂商会对手机号进行限制,如果60秒内发送过就不会发送,但是程序员在设计代码层的逻辑时会出现很多奇葩的问题,例如其为了方便用户体验,正常的代码层的流程为:

a.去除用户手误输入的空格以及一些特殊符号

b.验证手机号是否发送过验证码

某些程序员会这样设计流程:

a.验证手机号是否发送过验证码(发送过则不放行 没发送过则进入下一步)

b.去除用户手误输入的空格以及一些特殊符号

c.发送手机号验证码

* 3.手机号可遍历发送

-场景:3.1 我之前有提到验证码发送会影响到企业资产,那么发送验证码限制就不能仅仅针对于单一手机号的限制,例如我可以载入一堆手机号的字典,然后直接遍历发送验证码,这也是危害之一。

业务流程绕过

常见缺陷:

* 1.无验证步骤跳跃

-场景:1.1 出现的场景很多:密码重置步骤、支付步骤,对于这种的测试方法有很多中:

a.对比法,使用A、B两个账号,A账号先正常走一遍流程,然后记录流程的请求报文跟响应报文,使用B账号来测试是否能绕过直接进入最后一步骤。

b.第六感,假设步骤1的网址为:http://www.test.com/step1,这时候你可以凭借你的第六感修改下链接为/step2之类的来测试。

加密算法脆弱

常见缺陷:

* 1.前端呈现加密算法代码

-场景:1.1 很多厂商算法写的很好,可没用,因为他用的是JS代码,在前端会直接能看见,而尝试跟踪JS的代码就会知道是怎么加密的从而可以直接绕过。

* 2.算法脆弱,明文可判断

-场景:2.1 这是一个看运气的问题,一段密文为md5的,这时候你要做好自己的分析明文到底是什么,然后去碰撞,例如可能是md5(用户名+邮箱)这样的的组合。

支付逻辑漏洞

常见缺陷:

* 1.金额修改

-场景:1.1 支付的过程中有很多涉及金额的元素可以修改运费、优惠价、折扣等,可以修改为负数金额也可以修改金额为小于原金额的数进行测试,有时候会遇到溢出,你修改金额为较大的数看你会出现只支付1元的情况。

* 2.数量修改

-场景:2.1 修改购买物品的数量为小数或者负数,同上,有时候会遇到溢出,你修改数量为较大的数看你会出现只支付1元的情况。

* 3.sign值可逆

-场景:3.1 这是一个看运气的问题,sign多数为对比确认金额的一段内容,很多都是md5加密的,这时候你要做好自己的分析明文到底是什么,然后去碰撞,例如可能是md5(订单号+金额)这样的的组合,然后修改金额重新生成sign就可以绕过金额固定的限制了。

条件竞争(HTTP并发)

常见缺陷:

* 1.条件竞争(HTTP并发)

-场景:1.1 在签到、转账、兑换、购买等场景是最容易出现这样的问题,而并发测试的方法可以使用Fiddler也可以使用BurpSuite Intruder模块。

这里例举下Fiddler测试方法(BurpSuite测试很简单就不说明了):

配置好代理,设置好拦截:

7a8abc20-6934-11ed-8abf-dac502259ad0.png

然后点击兑换、转账、签到等最后一步按钮的时候会抓到一个请求,右键这一请求然后按住Shift点击Replay->Reissue Requests:

7aa9ec30-6934-11ed-8abf-dac502259ad0.png

填入要重发的次数:

7acdeaa4-6934-11ed-8abf-dac502259ad0.png

一般为20即可,然后点击GO放行:

7adca2b0-6934-11ed-8abf-dac502259ad0.png

最后看你自己来判断是否存在并发的问题,例如签到,如果存在那么肯定是签到天数或者签到所获得的奖励会一下子有很多,也可以看Fiddler中的响应报文结果。

审核编辑 :李倩

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 浏览器
    +关注

    关注

    1

    文章

    1043

    浏览量

    37168
  • Web应用
    +关注

    关注

    0

    文章

    16

    浏览量

    3689

原文标题:Web渗透测试学习手册

文章出处:【微信号:菜鸟学安全,微信公众号:菜鸟学安全】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    面向红队渗透测试的隐蔽式门禁攻击硬件开源项目介绍

    专为红队渗透、安全审计打造的门禁攻击硬件开源分享!这是一款可执行中间人攻击的门禁植入设备,能静默拦截、记录、重放 RFID 门禁凭证,兼容 Wiegand、OSDP 等多协议,支持 BLE+WiFi 双无线远程控制,相比同类工具适配更广、配置更灵活。
    的头像 发表于 04-22 14:00 126次阅读
    面向红队<b class='flag-5'>渗透</b><b class='flag-5'>测试</b>的隐蔽式门禁攻击硬件开源项目介绍

    亚马逊云科技正式推出Amazon Security Agent按需渗透测试功能

    北京2026年4月8日 /美通社/ -- 亚马逊云科技现已正式推出Amazon Security Agent按需渗透测试功能,使用户能够对所有应用程序运行全面的安全测试,而非仅针对最关键的应用。这一
    的头像 发表于 04-08 13:56 139次阅读

    不限Web用户数量、更低成本 | Essentials Web无限版SCADA方案正式发布

    宏集Panorama轻量级SCADA方案正式上线!Essentials Web无限版方案,打破传统SCADA按用户收费模式,让工业数据真正实现全员共享:不限Web客户端数量,支持25,000个数据标签,内含开发环境,开箱即用,工业级网络安全保障,低门槛起步,后续可扩展。
    的头像 发表于 04-01 16:26 626次阅读
    不限<b class='flag-5'>Web</b>用户数量、更低成本 | Essentials <b class='flag-5'>Web</b>无限版SCADA方案正式发布

    Python运行本地Web服务并实现远程访问

    本文介绍使用Python搭建本地Web服务并结合 ZeroNews 实现公网访问。
    的头像 发表于 02-06 11:39 357次阅读
    Python运行本地<b class='flag-5'>Web</b>服务并实现远程访问

    常用Web 实时通信技术:原理+选型,一篇通关

    Web 开发中,实时通信技术的核心目标是实现客户端(Browser)与服务器之间低延迟、双向 / 单向的动态数据交互,而非传统 HTTP 的 “请求 - 响应” 模式。以下是 Web 端最常
    的头像 发表于 10-27 17:19 1116次阅读
    常用<b class='flag-5'>Web</b> 实时通信技术:原理+选型,一篇通关

    如何快速在云服务器上部署Web环境?

    如何快速在云服务器上部署Web环境
    的头像 发表于 10-14 14:16 863次阅读

    Dirsearch 安全实战指南

    Web 安全渗透测试中,发现隐藏目录和敏感文件是信息收集的关键环节。这些资源可能包含后台入口、数据库备份等关键信息,是突破防线的重要突破口。dirsearch 凭借灵活配置与高效扫描能力,成为
    的头像 发表于 09-02 10:31 931次阅读

    AI赋能谷歌Chrome与Web工具全面升级

    2025 Google 谷歌开发者大会带来了最新 Web 工具,包括全面升级的 Chrome 开发体验、极大简化的 UI 开发,到云端两侧的 AI 部署。这些强大的工具为出海开发者提供了前所未有的加速,帮助他们更高效地打造面向全球用户的 Web 应用。
    的头像 发表于 08-29 09:33 1329次阅读

    Web页面白屏问题的排查步骤和解决方法

    Web页面出现白屏的原因众多,本文列举了若干常见白屏问题的排查步骤,供开发者快速定位。
    的头像 发表于 08-22 10:49 4391次阅读
    <b class='flag-5'>Web</b>页面白屏问题的排查步骤和解决方法

    Oracle Database@Amazon Web Services现已正式可用

    即日起,客户可以在亚马逊云科技北弗吉尼亚区域和俄勒冈区域使用Oracle Database@Amazon Web Services,后续将扩展至全球其他20个区域。 富达投资集团、全美互惠保险公司
    的头像 发表于 07-21 15:11 932次阅读

    labview如何调用web api

    同事给了一个web api 的接口地址,方法名等等。但是我不会用labview去调用。求高手指点!
    发表于 06-26 17:24

    请问如何通过OpenVINO™加速启用稳定的扩散 Web UI?

    无法运行具有OpenVINO™加速的稳定扩散 Web UI。
    发表于 06-24 06:48

    WEB组态物联网平台是什么?有什么功能?

    WEB组态物联网平台是一种基于Web技术的物联网(IoT)可视化管理与监控平台,它将 组态软件 的灵活配置能力与 物联网技术 的数据采集、传输、分析功能相结合,通过浏览器即可实现设备监控、数据展示
    的头像 发表于 06-17 15:25 1217次阅读

    【峟思】土石坝渗透压监测技术解析与现代化解决方案

    土石坝作为水利工程的核心构筑物,其渗透稳定性直接关系工程安全。渗透压力、渗流量及水质变化是评估坝体安全的关键指标。本文系统解析渗透压监测方法,并介绍智能化监测技术的创新应用。一、渗透
    的头像 发表于 05-06 15:58 623次阅读
    【峟思】土石坝<b class='flag-5'>渗透</b>压监测技术解析与现代化解决方案