首页
学习
活动
专区
圈层
工具
发布

实战 | 记一次Microsoft服务预订中的存储型XSS漏洞挖掘

一个美好的一天,我在我的办公室工作,我收到了同事的日历邀请。在查看电子邮件时,我发现了 Microsoft 的新服务预订(实际上是旧的,但对我来说是新的)。...Microsoft booking 允许任何人预订服务/日历时段。 此应用程序有两个界面,一个是内部界面,另一个是面向公众的服务页面。我决定深入检查这个应用程序。...我去内部预订页面开始新的预订,而预订服务发现了一个参数消息/注释。 我尝试插入各种 XSS payload 来触发 xss 但没有成功。 经分析,发现应用程序允许用户插入链接或 标签。...现在我想将这些 cookie 传递到我的服务器。...感谢 Microsoft 安全团队在修复此问题期间提供的大力帮助。

1.2K10

系统设计:预订系统

这个预订系统将采用微服务架构风格,以支持更好的可扩展性和容错性: 用户服务:处理用户注册、认证和用户信息管理。 预订服务:核心功能,处理所有预订相关操作。 支付服务:处理支付事务和支付网关集成。...日历服务:管理可预订时间段和资源的可用性。 通知服务:处理发送邮件和短信通知的逻辑。 报告服务:生成系统使用情况和财务报告的分析工具。 UML建模 1....为了进一步细化预订系统的设计,我们将对关键的服务组件进行更详细的设计,包括数据库模式、RESTful API设计以及关键功能的实现逻辑。这将帮助开发团队更清晰地理解系统的工作方式和接口细节。...以下是针对主要功能模块的数据库模式设计: 用户模块 预订模块 支付模块 RESTful API 设计 我们为系统定义RESTful接口,以支持各种客户端操作。...GET /bookings - 获取用户的预订列表 POST /bookings - 创建新预订 PUT /bookings/{id} - 更新预订信息 DELETE /bookings/{id} -

83710
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    因果推断框架 DoWhy 入门

    目前,DoWhy 支持如下形式的因果假设: 「图」(Graph):提供 gml 或 dot 形式的因果图,具体可以是文件或字符串格式 「命名变量集合」(Named variable sets):直接提供变量的类型...dataframe 来载入数据 print(df.head()) print(data["dot_graph"]) # 还可以输出 gml_graph,内容一致只是表达形式不同 代码的输出如下:...(即影响 lead_time )以及其喜爱的食物(即影响 meal ) lead_time 会影响预订的等待时间( days_in_waiting_list ) 预订的等待时间 days_in_waiting_list...、总停留时间 total_stay 以及客人数量 guests 会影响预订是否被取消 之前预订的取消情况 previous_bookings_not_canceled 会影响该顾客是否为 is_repeated_guest...;这两个变量也会影响预订是否被取消 booking_changes 会影响顾客是否被分配到不同的房间,也会影响预订取消情况 除了 booking_changes 这一混杂因子外,一定还存在着其他混杂因子

    5.9K22

    备战蓝桥杯————差分数组2

    引言 在现代交通管理中,拼车服务和航班预订系统是提高资源利用效率、优化用户体验的关键技术。...随着城市交通压力的增大和航空业的快速发展,如何有效地处理这些系统的动态变化,成为了算法工程师们面临的挑战。本文将探讨两个典型的算法问题:拼车服务中的车辆容量优化和航班预订统计。...有一份航班预订表 bookings ,表中第 i 条预订记录 bookings[i] = [firsti, lasti, seatsi] 意味着在从 firsti 到 lasti (包含 firsti...和 lasti )的 每个航班 上预订了 seatsi 个座位。...无论是拼车服务中的车辆容量计算,还是航班预订统计,差分数组都以其简洁高效的处理方式,展现了算法的魅力。在技术日益发展的今天,算法不仅是解决问题的手段,更是推动社会进步的重要力量。

    25810

    MovieBuzz系统设计:从头开始编写端到端系统

    要求 约一千万用户 约500万部电影的详细信息 约1千 预订/秒 大约1万 活动/秒(评分,评论) 平台功能 水平可扩展 高并发 微服务架构 容器化应用 使用Docker容器进行集成测试的生产级代码...MovieBuzz网关:用于传入用户API请求的容器化应用程序身份验证和路由 负载均衡器服务/入口服务: Kubernetes服务,用户可以通过该服务访问moviebuzz-API。...MovieBuzz API:所有面向用户和后台的API都将在此处实现。 Apache Kafka:用户添加任何电影评论后,便可以将其添加到moviebuzz-user-reviews主题。...我们可以启用将row_per_partition缓存设置为10的movie_reviews和movie_bookings表的ROW缓存,因为如果用户单击“预订”选项卡,我们将仅向他显示10个最近的预订,...4)moviebuzz.user_bookings:用于存储用户电影预订历史记录的表,每个预订具有唯一的bookingId。用户UUID用作分区键,bookingId用作群集列。

    1.3K30

    Office开发者计划-永久白嫖Office365

    或者可以自定义手动添加),随后点击配置待更新身份验证 ​ 允许公共客户端流->点击切换按钮为是随后保存 API权限配置 注册的应用程序API权限类型有两种,其主要区别如下表所示: 权限类型...权限 ​ 可以选择相应的API进行配置 ​ 此处以Microsoft Graph为参考,选择“委托的权限”,根据列出的API权限需求表进行选择 “委托的权限”配置(用户登录)(选择...,点击选择复制值(即客户端密码) b.API调用工具 ​ Microsoft Graph 浏览器是一种基于 Web 的工具,可用于生成和测试对 Microsoft Graph API 的请求 ​...API需要的权限设定可在预览卡中查阅,授权后则可再次尝试调用响应 ​ Postman 是一个可用于向 Microsoft Graph API 发出请求的工具:Postman&Microsoft...Graph API使用 ​ c.Microsoft Graph 快速入门示例 ​ Microsoft Graph入门: a.选择语言或平台 b.获取应用 ID(客户端 ID) c.生成示例

    11.3K32

    第 13 篇:DRF 框架之 API 版本管理

    比较实用的有: AcceptHeaderVersioning 这个类要求客户端在 HTTP 的 Accept 请求头加上版本号以表明想请求的 API 版本,例如如下请求: GET /bookings/...URLPathVersioning 这个类要求客户端在请求的 url 中指定版本号,一个缺点是你在书写 URL 模式时,必须包含关键字为 version 的模式,例如官网的一个例子: urlpatterns...P(v1|v2))/bookings/$', bookings_list, name='bookings-list' ), url(...namespace="v1")), path("api/v2/", include((router.urls, "api"), namespace="v2")), ] 可以看到,包含的 URL...来测试一下效果,启动开发服务器,先访问版本号为 v1 的测试接口,请求返回结果如下,可以看到如期返回了 v1 版本下的内容: GET /api/v1/api-version/test/ HTTP 200

    72920

    超实用!50+个ChatGPT提示词助你成为高效Web开发者(上)

    示例:编写一个Express.js API来获取当前用户的个人资料信息。它应该利用MongoDB。...这个集合中的每个文档都代表一个房间,会有房间ID、房间类型、价格、是否可用等字段。 - **Bookings**:用于存储所有的预订。...- **Bookings**:这个表格中的每一行都将代表一个预订,会有预订ID、客人ID、房间ID、预订日期、入住日期和退房日期等列。...无服务器函数:Supabase提供了Postgres函数,可以类似于Firebase的Cloud Functions用于服务器端操作,如在预订时检查房间的可用性、处理支付等。...样本 运行提示词咒语后的效果: 在创建产品的JSON样本时,我们通常包括产品的一些关键信息,如id、名称、描述、价格、库存数量、图片URL等。

    6.9K21

    基于OAuth同意滥用的假冒微软应用钓鱼攻击研究

    此类攻击不依赖凭据窃取,而是滥用OAuth 2.0授权框架中的“用户同意”流程,使恶意应用获得长期有效的刷新令牌(refresh token),进而通过Microsoft Graph API静默读取邮件...);用户点击“接受”,微软返回授权码;应用用授权码向令牌端点兑换访问令牌与刷新令牌;应用使用令牌调用Microsoft Graph API。...官方图标;重定向URI:指向攻击者控制的服务器(用于接收授权码);API权限:请求高危权限组合,例如:["Mail.Read","MailboxSettings.ReadWrite","User.ReadWrite.All...可编写脚本每日比对已知可信应用列表,自动调用撤销接口:def revoke_consent(grant_id, admin_token):url = f"https://graph.microsoft.com...编辑:芦笛(公共互联网反网络钓鱼工作组)

    23710

    【Docker项目实战】使用Docker部署Seatsurfing预订座位系统

    系统会实时显示剩余座位数量和已被预订的座位,帮助用户快速选择并预订座位。餐厅预订座位:用户可以通过Seatsurfing预订座位系统选择餐厅和就餐时间,并在餐厅平面图上选择自己喜欢的座位。...系统会实时显示剩余座位数量和已被预订的座位,帮助用户快速选择并预订座位。会议/研讨会预订座位:用户可以通过Seatsurfing预订座位系统选择会议或研讨会,并在座位图上选择自己喜欢的座位。...三、本地环境检查3.1 检查Docker服务状态检查Docker服务是否正常运行,确保Docker正常运行。...如果无法访问,则检查服务器防火墙是否设置,云服务器的安全组端口是否放行等。...6.2 查看预定情况点击“My bookings”,查看我的预定情况。6.3 偏好设置点击偏好设置,可以对通知、工作时间、工作日、预定颜色、首选区域、更改密码等进行设置。

    61400

    CyberDrain推免费工具帮中小企业守住Microsoft 365大门

    公共互联网反网络钓鱼工作组技术专家芦笛指出,“而Microsoft 365因其广泛使用和强大API能力,成了攻击者的首选目标。”...它不依赖外部SaaS服务,而是直接调用Microsoft Graph API,实时扫描租户内的高风险行为:检测异常收件箱规则:如自动转发至外部域名、删除特定关键词邮件等;识别可疑OAuth应用授权:尤其是请求...技术内核:Graph API + 自动化剧本 = 主动防御要理解这款工具为何有效,得先了解Microsoft 365的安全架构。...微软通过Microsoft Graph API开放了对用户邮箱、日历、设备、身份等数据的编程访问接口。...不过,工具也有门槛:部署者需具备一定的PowerShell或Python脚本能力,并为服务账号配置适当的Graph API权限(如AuditLog.Read.All、Directory.Read.All

    15710

    凭证窃取主导下的现代网络攻击链演化与防御体系构建

    典型路径如下:钓鱼获取员工凭证(含MFA绕过,如MFA疲劳攻击);登录云控制台(如Azure AD、AWS IAM);枚举高权限账户或服务主体;申请或窃取OAuth令牌/会话Cookie;通过Graph...3.2 勒索软件的“凭证即服务”模式勒索组织如LockBit 4.0、BlackCat已建立成熟的初始访问即服务(Initial Access as a Service, IAaaS)市场。...= "https://graph.microsoft.com/v1.0/oauth2PermissionGrants"grants = []next_url = urlwhile next_url:resp...= f"https://graph.microsoft.com/v1.0/oauth2PermissionGrants/{g['id']}"requests.delete(del_url, headers...然而,在此过渡期内,强化凭证管理、收紧权限控制、缩短检测响应时间,仍是企业抵御高级威胁的最现实路径。编辑:芦笛(公共互联网反网络钓鱼工作组)

    24210

    真香系列之2-自动录制回放的Hoverfly-java-Junit5

    } CASSPATH, URL, FILE} 其中使用比较多得的是CLASSPATH或者是FILE。...如果模拟的接口的入参从1变成了2,也就是path的值变成了“/api/bookings/2”,或者是请求方法从GET变成了POST,那么Hoverfly就会认为是匹配失败,而不再使用上述模拟数据了。...在某些场景中,如果希望无论”/api/bookings”这个接口所附带的参数是什么,也就是客户端无论发送查询什么书籍的请求,都希望可以匹配并返回相同的信息。这就需要使用到模糊匹配了。”...这样,类似“/api/bookings/2”这样的请求也可以匹配了。 那从业务逻辑的角度,可能书籍ID规定只是数字,因此通过通配符来匹配有些过于宽泛,希望能只匹配数字。...,而类似“/api/bookings/a23”这样的请求则会被忽略。

    1.5K20
    领券