首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

多个 HTTP 重定向绕过 SSRF 保护

这是一个错误赏金计划,因此盲 SSRF dups 的形式关闭,另一个被接受。 image.png 关于目标 该公司为其他企业提供营销服务。他们的应用程序可让您创建和管理营销活动。...我尝试的第一件事是向我的interactsh处理程序发出请求获取请求的 HTTP 标头和 IP 地址。提出了以下要求。 image.png 4....这是一个盲目的请求,因为它没有泄露我得到的响应。但是,如果成功向攻击者控制的 URL 发出请求,此功能会 JSON 格式返回完整的 URL。 6. 允许域和直接 IP。...我尝试在 DNS A 记录查询中使用返回“127.0.0.1”的子域。没用。 10. 在尝试绕过 SSRF 保护时,我总是使用两个 github 存储库。...我在不同的 API 端点中使用了这些方法,总共发现了 3 个这样的错误。其中一个是完整的 SSRF,它让我发现内部资产。

1.6K30

【译】我是如何学习任意前端框架的

1.查找 & 显示 (模仿) 常用的首个应用是使用其公共的API来模仿任何已知站点,尝试构建一个带下拉列表的搜索栏,来保存来自端点API的结果,检查其返回的数据,然后再显示它,就像有张图像一样(显示)或不显示...端点API示例: Github API OMDb API Spotify Web API wunderground API reddit API 你将学到: 使用HTTP客户端向端点API发起请求 使用键盘事件监听器...2.Auth App 我在上一节中提到的一些端点API(可能)需要一些身份验证,因此在这一节中尝试添加或构建另一个带有登陆/注册页面的应用程序。...你将学到: 路由守卫:某些页面只允许通过身份验证的用户(访问) 如何发送并保存JWT(JSON Web令牌)发出需要经过身份验证的用户请求 3.CRUD App 增删查改的应用程序是本节中最受欢迎的前端应用程序.../reng99/blog… 更多内容:github.com/reng99/blog…

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

为什么GraphQL是API的未来

因此,在实际的程序中,我们最终会为这些资源提供大量端点。如果要发出 GET 请求,则需要具有特定参数并特定于该请求端点。如果要发出 POST 请求,则需要该请求另一个端点。 ?...过度获取和欠缺的信息 真正令人烦恼的问题是通过 REST API 会过度获取和欠缺的信息。这是因为 REST API 会始终返回固定的结构。...如上所述,这些问题是: 表现不佳 端点过多 过度获取或欠缺数据 每当我们要增加或删除某些内容时,需要开发另一个版本 API 难以理解 考虑到许多概念,Facebook 的开发人员开使用了一种更好的方法来设计...它改善了你的开发周期,因为你不必向两个不同的资源发出请求来获取数据。此外,当我们开发一个大型的应用时,不必再像 REST 一样获得大量端点和代码。...我们只需要获得一个端点,并根据需要开发尽可能多的请求即可。 ?

1.6K30

使用API网关构建微服务

客户端到微服务的直接通信 理论上,客户端可以直接向每个微服务发出请求。每个微服务都有一个公共端点(https://serviceName.api.company.name)。...该URL将映射到微服务的负载均衡器,该均衡器在可用实例之间分发请求。要检索产品详细信息,移动客户端将向上述每个服务发出请求。 不幸的是,这个选项有挑战和限制。...虽然客户端可以通过LAN发出许多请求,但是对于公共互联网来说,这可能是太低效率的,并且在移动网络上肯定是不切实际的。这种方法也使客户端代码复杂得多。...实现API网关 现在我们已经看过使用API网关的动机和权衡了,现在我们来看看你需要考虑的各种设计问题。 性能和可扩展性 只有少数几家公司Netflix的规模运营,每天需要处理数十亿个请求。...但是,如果产品信息服务无响应,则API网关应向客户端返回错误。 如果可用,API网关还可以返回缓存的数据。例如,由于产品价格变化不大,如果定价服务不可用,API网关可能会返回缓存的定价数据。

1.8K80

微服务架构如何保证安全性?

实现安全性的另一个关键是安全上下文,它存储有关发出当前请求的用户的信息。...在服务中实现身份验证的另一个问题是不同的客户端不同的方式进行身份验证。纯API客户端使用基本身份验证为每个请求提供凭据。其他客户端可能首先登录,然后为每个请求提供会话令牌。...基于登录的客户端的事件序列如下: 1.客户端发出包含凭据的登录请求。 2.API Gateway 返回安全令牌。 3.客户端在调用操作的请求中包含安全令牌。...图 4 显示了API Gateway如何验证来自API客户端的请求API Gateway通过向OAuth 2.0授权服务器发出请求来验证API客户端,该服务器返回访问令牌。...API Gateway 向客户端返回访问令牌和刷新令牌。然后,API客户端在向API Gateway发出请求时提供这两个令牌。 ? 图5 客户端通过将其凭据发送到 API Gateway 来登录。

5.1K40

如何在微服务架构中实现安全性?

实现安全性的另一个关键是安全上下文,它存储有关发出当前请求的用户的信息。...在服务中实现身份验证的另一个问题是不同的客户端不同的方式进行身份验证。纯 API 客户端使用基本身份验证为每个请求提供凭据。其他客户端可能首先登录,然后为每个请求提供会话令牌。...API Gateway 还可以为面向会话的客户端提供相同的令牌,用作会话令牌。 客户端的事件序列如下: 客户端发出包含凭据的请求API Gateway。...图 4 显示了 API Gateway 如何验证来自 API 客户端的请求API Gateway 通过向 OAuth 2.0 授权服务器发出请求来验证 API 客户端,该服务器返回访问令牌。...API Gateway 向客户端返回访问令牌和刷新令牌。然后,API 客户端在向 API Gateway 发出请求时提供这两个令牌。 ?

4.5K40

如何在微服务架构中实现安全性?

实现安全性的另一个关键是安全上下文,它存储有关发出当前请求的用户的信息。...在服务中实现身份验证的另一个问题是不同的客户端不同的方式进行身份验证。纯API客户端使用基本身份验证为每个请求提供凭据。其他客户端可能首先登录,然后为每个请求提供会话令牌。...基于登录的客户端的事件序列如下: 1.客户端发出包含凭据的登录请求。 2.API Gateway 返回安全令牌。 3.客户端在调用操作的请求中包含安全令牌。...图 4 显示了APIGateway如何验证来自API客户端的请求。APIGateway通过向OAuth 2.0授权服务器发出请求来验证API客户端,该服务器返回访问令牌。...APIGateway 向客户端返回访问令牌和刷新令牌。然后,API客户端在向API Gateway发出请求时提供这两个令牌。 ? 图5 客户端通过将其凭据发送到 API Gateway 来登录。

4.7K30

使用ASP.NET Core开发GraphQL服务器 -- 预备知识(上)

获取不足:使用REST时,我想获取部门和部门的人员,通常我需要先请求查询部门列表;然后遍历返回的部门列表,再次发出请求查询每个部门下的人员,所以是N+1查询。...不灵活:随着API的演进,REST需要随时创建新的端点,所以REST API端点增长速度很快;此外有版本和兼容性需要谨慎考虑。 而GraphQL,典型的结构是只有一个端点。...这个单端点就像API网关一样组织了多个数据源,这样就会更简单。...综上,使用GraphQL的好处是: 避免多重REST请求 向下兼容,无需考虑版本 可以对现有的数据源(例如REST API)进行包装 与开发语言无关 GraphQL查询 我通过Github的GraphQL...结果JSON形式返回,其数据包含在data属性下,结构和查询结构一致。 如果我还想在查询中包含浏览者的姓名,那就加一个字段即可: ? GraphQL的查询也可以有注释: ?

1.7K40

你还在用 REST API 吗?

REST 的核心思想是,通过向资源的 URL 发送请求并获得响应(通常是 JSON,但这取决于 API)来检索资源。...灵活性 是使用 REST 的另一个优势,因为可以将其设计成处理不同类型的调用并返回不同的数据格式。 REST 的劣势 抓取过度——这是指 API 端点提供的信息比客户端所需要的要多得多。...抓取不足——这是指 API 端点并没有提供所需的全部信息。因此,客户端必须发出多个请求才能获取应用程序所需的全部内容。 什么是 GraphQL?...这也意味着我们可以定制我们的请求,这样我们就可以从端点发出任何请求,并且能获得我们所请求的任何内容,仅此而已,无需更多操作。我们传递查询并得到响应。...如果使用 REST,我们至少要发出 2 到 3 个请求,类似于: /user/获得用户(作者)的详细信息,比如名称。 /user//posts 获取该用户发布的帖子列表。

1.5K10

将机器学习模型部署为REST API

对于性能,基本上我们用Rserver方式,针对一次1000条或者更少请求的预测,可以控制95%的结果在100ms内返回结果,100ms可以满足工程上的实践要求。...在get下面的方法中,我们提供了有关如何处理用户查询以及如何打包将返回给用户的JSON对象的说明。 ? 端点 以下代码将基本URL设置为情绪预测器资源。...您可以想象您可能有多个端点,每个端点指向可以进行不同预测的不同模型。一个示例可以是端点,'/ratings'其将指导用户到另一个模型,该模型可以预测给定类型,预算和生产成员的电影评级。...现在,我的队友可以通过向这个API发出请求来为他们的应用添加情绪预测,而无需将Python和JavaScript混合在一起。 完整app.py 代码 有时在一个地方查看所有代码会很有帮助。 ? ?...通过在Web上部署,各地的用户都可以向您的URL发出请求获取预测。部署指南包含在Flask文档中。 这只是为情绪分类器构建Flask REST API的一个非常简单的示例。

3.2K20

Spring WebClient vs. RestTemplate

另一方面,无论请求数量如何,反应式/非阻塞方法都可以提供恒定的性能。 就本文而言,让我们实现两个 REST 端点,一个使用 RestTemplate,另一个使用 WebClient。...他们的任务是调用另一个响应慢的 REST Web 服务,该服务返回一个 Tweet List。...使用 RestTemplate 调用慢服务 现在,让我们来实现另一个 REST 端点,它将通过 Web 客户端调用我们的慢服务。...; return result; } 当我们调用这个端点时,由于 RestTemplate 的同步特性,代码将会阻塞等待来自慢服务的响应。只有当收到响应后,才会执行此方法中的其余代码。...注意,调用 /tweets-non-blocking 这个端点的客户端(本例中的 Web 浏览器)也将订阅返回的 Flux 对象。

3K20

API设计:先思考再编码

API是定义应用程序接口的通用术语,换句话说,定义了用户(人或机器)如何与程序交互。在Web开发世界中,API通常是响应客户端结构化文本数据请求的网站端点集合。...Web开发人员广泛使用和讨论的另一个概念是RESTFul Web API。它由Roy Fielding定义为一种架构风格,在客户端和服务器之间提供良好的通信协议。...他们有一个免费的公共项目计划,你可以直接用你的GitHub帐户注册,创建自己的设计。...GET /cakes应该返回一个蛋糕列表,所以GET /cake/1应该返回第一个蛋糕,对吧?很不幸的是,不行。即使它在我们的语言是有道理的,它只会用更多端点搞乱客户端和开发人员。...难以误用:如果发出了错误的请求返回错误并提供信息。 简单是比复杂更好:简单的事情在每个方面都很容易。 在实现它之前使用你的API:创建一个模拟服务器来获得最终结果并演示。

1.1K30

拥抱分布式上下文传播

如果你遵循良好的DevOps实践,那么你可能已经进行了监视,度量服务产生的错误率,并在错误率超过某个阈值时发出警报。但是,你只在生产受到影响时才有兴趣获得此警告,而不是因为一些上游服务运行压力测试。...我们还可以使用测试租户(test tenancy,合成流量标签的另一个名称)使应用程序对请求做出不同的反应。...为了让存储服务知道它正在获得测试流量,你需要遍历所有这些层,并与这些开发者协商,扩展他们的API来捕获和传递租户参数。想象一下在一个运行数千个微服务的组织中必须这样做!...当请求进入我们的系统时,我们通常已经知道它代表哪个LOB,无论是来自API端点,还是直接来自客户机应用程序。...我们可以使用上下文传播来实现这一点,例如,为所有API端点分配不同的层号,并通过调用图在上下文中传播这些层号。这些层标签可以被不同的基础设施层使用,根据请求的重要性提供不同的服务质量。

1.3K40

GraphQL 和 REST 优缺点对比,附上代码示例

例如,在 REST 中,您需要向 /api/posts 发送 GET 请求来获取帖子,该请求可能会返回一个 JSON 对象,其中包含帖子标题、内容、标记、日期,可能还有用户 ID。...当您考虑到您可能会为每个用户发出GET请求时,对于一个页面来说,这是大量的来回操作!...但是,一旦要处理大量数据,将 API 调用减少到最少显然会对您有好处。GraphQL 使得这一点很容易实现。 抓取过度/抓取不足 另一个存在的问题是过多抓取和抓取不足。...如果 /user/:id 返回他们的用户名、头像、标语和最喜欢的狗的品种,你就会得到所有这些信息,不管你是否愿意。 在另一端,您可能会出现抓取不足的情况,这就需要返回到服务器获取更多信息。...缺乏灵活性 在前一点的基础上进一步扩展,REST 依赖于创建符合前端需求的api。如果您能够预测前端在碰到特定端点时需要什么,就可以精确地调整检索到的数据,匹配该视图。

99930

DartVM服务器开发(第八天)--http服务端框架

例如,GitHub API公开组织,存储库,问题和拉取请求资源; 社交网络API具有配置文件,帖子和用户关系。...向应用程序发出请求检索资源的状态或提供所需的资源状态。大多数情况下,资源表示为JSON数组和对象。检索资源时,其JSON表示将编码到响应主体中。...控制器 控制器是处理请求的对象。例如,控制器可能从数据库中获取行并将它们发送到响应主体中的客户端。另一个控制器可能会验证请求的授权标头的用户名和密码是否有效。...端点控制器通过返回资源状态或更改资源状态来满足请求。您编写了大多数特定于应用程序的逻辑端点控制器。 甲中间件控制器花费的请求的动作,但是不负责满足该请求。...大多数情况下,中间件控制器会在请求到达端点控制器之前验证某些请求。中间件控制器可以发送请求的响应,这样做可以防止该通道中的任何其他控制器处理请求

2.6K40
领券