网络安全全栈培训笔记(53-WEB攻防-通用漏洞&跨域CORS资源&JSONP回调&域名接管劫持)

发布时间:2024年01月17日

第54天 WEB攻防-通用漏洞&跨域CORS资源&JSONP回调&域名接管劫持在这里插入图片描述

知识点:

1、子域名接管检测&探针&利用
2、C0SP跨域资源检测&探针&利用
3、JSONP跨域回调-检侧&探针&利用

#前置知识点:
同源策路(SOP),“同源”包括三个条件:同协议同域名同端口
同源策路限制从一个源加载的文档或脚本与来自另一个源的资源进行交互,这是一个用于隔
离潜在恶意文件的关键的安全机制简单说就是浏览器的一种安全策略。
虽然同源策路在安全方面起到了很好的防护作用,但也在一定程度上限制了一些前端功能的
实现,所以就有了许多跨域的手段。

子域名接管:
域名解析记录指向域名,对应主机指向了一个当前未在使用或已经删除的特定服务,攻击
者通过注册指向域名,从而控制当前域名的控制权,实现恶意软件分发、网络钓鱼/鱼叉式
网络钓鱼、XSS、身份验证绕过等。子域名接管不仅仅限于CNAME记录,NS,MX甚至A
记录也会受到影响。
检测项目:
https://github.com/pwnesia/dnstake
https://github.com/anshumanbh/tko-subs
https://github.com/mhmdiaa/second-order
https://github.com/r3curs1v3-proxy/sub404

COSP跨域资源(为了解决非同域名资源调用的问题)
CORS全称Cross-Origin Resource Sharing,跨域资源共享,是HTML5的一个新特性,已被
所有浏刘览器支持,跨域资原共享(C0RS)是一种放宽同源策路的机制,它允许浏览器向跨源
服务器,发出XMLHttpRequesti请求,从而克服了AJAX只能同源使用的限制,以使不同的
网站可以跨域获取数据。
Access-Control-.Allow-Origin:指定鄂些域可以访问域资源。伤例如,如果requester.com想
要访问provider…com的资源,那么开发人员可以使用此标头安全地授子requester…com对
provider…com资源的访问权限
Access-Control–Allow-Credentials:指定浏览器是否将使用请求发送cookie。仅当alow-
credentials标头设置为true时,才会发送Cookie.
Access-Control-.Allow-Methods:指定可以使用那些HTTP请求方法(GET,PUT,
DELETE等)来访问资源。此标头允许开发人员通过在requester.com情求访问
provider.com的资源时,指定哪些方法有效来进一步增强安全性。
检测项目:https://github.com/chenjj/CORScanner

JSONP跨域回调
JSONP跨域巧妙的利用了scriptt标签能跨域的特点,实现了json的跨域传输。
检测项目:手工审查元素筛选或Burp项目
https://github.com/p1g3/JSONP-Hunter

演示案例:

CORS资源跨域敏感页面源码获取
JSONP回调跨域-某牙个人信息泄露
子域名接管瓜迪个人子域名劫持接管
检测项目-CORS&JSONP&子域名接管

CORS和CSRF攻击的区别
在这里插入图片描述
#CORS资源跨域致感页面源码获取
复现步骤:
1、本地塔建访问页面跨域调用URL
2、受害者访问当前页面被资源共享
思路:受害者登录后台界面–访问恶意构造的链接–致使后台资源发送到攻击者vps
在这里插入图片描述
上述代码为请求http://localhost/Zblog/zb_system/admin/index.php这个地址,然后因为这是网站后台是登录状态可以直接访问,那么就会把里面的内容以变量z0发到http://localhost:80/cors1.php。然后cors1.php就会接收变量发送的请求并保存到本地。
整个攻击的流程和csrf非常的相似,但是大多数网站目前都开启的同源策略会导致CSRF失效,而通过资源跨域可以实现敏感信息泄露。
在这里插入图片描述
在白盒代码审计的情况下就是看设置问题了,就是看origin设置的是不是*,是星号,那么就有这个漏洞。而黑盒就是看origin设置后能通过资源。上面说过这个origin这个值在请求头中,那我们是不是可以抓包修改。

参考链接:https://www.freebuf.com/articles/web/204023.html

#JSONP回调跨域某牙个人信息泄露
复现步骤:
1、登录某牙找到回调有敏感信息
2、本地搭建访问页面跨域调用URL
3、访问本地页面可获取当前某牙信息
当用户点击这个html之后就会被攻击者得到回调
而这个和csrf的区别就是一般大型网站都会检测同源策略,所以你只能用这个回调去获取一些信息。而找这个漏洞就是看你能不能找到这个回调,回调里面有没有敏感信息。如果有那么这里就有安全问题。可以直接在数据包那里搜callback来查看回调

#子域名接管瓜迪个人子域名劫持接管
复现步骤:Xia0di8com
1、通过检测cname获取指向
2、发现testxiaodi fun过期受控
3、注册testxiaodi fun:实现控制

#检测项目-CORS&JSONP&子域名接管
1.python cors_scan.py-i top_100_domains.tx-t 100
2、人工排查+burpsuite安装Jsonp_Hunter py抓包使用
3、dnsub爬取子域名筛选接管

文章来源:https://blog.csdn.net/qq_46343633/article/details/135618715
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。