API安全

news/2024/5/20 10:28:55

一,什么是API

API指的是应用程序编程接口(Application Programming Interface),是一组定义了软件组件如何相互交互的规范。通过API,不同的软件可以相互通信和交换数据,实现不同软件之间的集成和互操作。

API可以简化软件开发过程,提高开发效率,同时也提供了一种标准化的方式来访问和使用不同软件系统的功能。

API通常包括一系列的函数、方法、类或协议,开发者可以根据API的定义来编写代码,并利用API提供的功能来实现特定的功能或解决特定的问题。

实现的流程:

  1. 根据硬件的架构来提供操作系统的接口;
  2. 而高级语言(如Java)的库会调用操作系统的接口;
  3. 而我们只需要调用高级语言的API即可;

API的使用场景:

调用系统功能;

前端调用后端;

系统内部的相互调用;

企业间相互调用;

常见的API的类型:

  • SOAP/WebService(HTTP+XML)
  • GraphQL API
  • RESTful API(HTTP+JSON)(目前使用最为广泛)

二,概述

1,目标

网络安全,信息(数据)安全,应用安全;

信息安全的三要素:

  • 机密性
  • 完整性
  • 可靠性

2,威胁建模工具

常见的API风险:

1,欺骗;

攻击者的真实身份被伪装,伪装成受害者;

未进行身份验证

2,篡改;

将不希望被修改的数据,信息被修改;

3,抵赖;

不承认自己的行为;

未存在日志,审计的功能

4,信息泄露;

敏感信息被暴露;

未进行权限的控制

5,拒绝服务

妨碍正常的用户去访问;

未进行速率,频率的限制

6,越权

3,API的威胁

OWASP API TOP 10

对于上面的名词进行区分;

三,实战

挑战一:访问其他用户车辆的详细信息;

首先通过burp抓包;

对原始的包进行分析;发现其调用了API接口;

通过点击其他用户;抓到响应包;

将其进行替换;

然后就可以获得其他用户的详细信息;

挑战二:访问其他用户的机械报告;

首先上传并且查看自身的机械报告的包;

存在一个跳转的链接;

猜想可能为GET传值,进行重放;

可以看到自己的机械信息;

发现通过GET传值时存在report_id=...,可以对这个值进行遍历;

通过遍历report_id的值,就可以得到其他用户的就写报告;

挑战三:重置其他用户的密码;

通过前面挑战二得到的数据(邮箱)进行重置;

进行抓包尝试;

发现对次数有限制;

改为V2之后,重复以上的步骤;

正如猜测的一样;爆破成功;

V2应该为V3的以前版本,所以不具备爆破限制的能力;

接下来尝试登录;

登录成功;

挑战四:找到泄露其他用户敏感数据的API接口;

首先进行抓包;

尝试抓取回包;

这个API接口返回了用户敏感数据;

挑战五:找到泄露视频内部属性的API接口;

进行抓包;

对抓到的包进行重放;

可以对id进行遍历,即可获得上传视频的内部属性;

挑战六:使用contack mechanic完成应用层的dos;

首先在这个页面进行抓包;

发现漏洞点所在;

失败之后是否重发:否;

次数:1;

可以在这里进行修改;造成Dos攻击;

挑战七:删除其他用户上传的视频;

在修改界面进行抓包;

在请求包中存在:DELETE /identity/api/v2/user/videos/30 HTTP/1.1

将user改为admin是否可以存在管理员权限;


http://www.mrgr.cn/p/00688521

相关文章

机器学习 | 时间序列预测中的AR模型及应用

自回归模型,通常缩写为AR模型,是时间序列分析和预测中的一个基本概念。它们在金融、经济、气候科学等各个领域都有广泛的应用。在本文中,我们将探索自回归模型,它们如何工作,它们的类型和实际例子。 自回归模型 自回…

英语学习笔记6——What make is it?

What make is it? 它是什么牌子的? make n.(产品的)品牌名称    v. 制作 区别:model n.(产品的)型号       n. 模型       n. 模特 make 指的是大的品牌名称, model 是旗下产品…

小组练习:拿出手机发朋友圈/微信群, 收集你的目标用户对你当前产品的NPS。 每个项目小组收集不少于

小组练习: 拿出手机发朋友圈/微信群, 收集你的目标用户对你当前产品的NPS。 每个项目小组收集不少于 30 条投票,截图展示 在学习通提交解答的同时,可以同步发布在团队和个人博客上,作为学习心得体会,记录下来。 我的答案: 【第二组】 NPS(Net Promoter Score)是一种用来…

商超物联网方案-Hotspot Service和客流分析方案概述

商超物联网方案-Hotspot Service和客流分析方案概述 场景概述 大型商场、大型综合体在相互竞争及线上消费的影响下,利润增长缓慢,迫切需要通过提供个性化服务提升顾客购物体验,促进利润增长。 向不同顾客推送其感兴趣的广告,不仅…

python在Scikit-learn中用决策树和随机森林预测NBA获胜者

原文链接:http://tecdat.cn/?p=5222 原文出处:拓端数据部落公众号在本文中,我们将以Scikit-learn的决策树和随机森林预测NBA获胜者。美国国家篮球协会(NBA)是北美主要的男子职业篮球联赛,被广泛认为是首屈一指的男子职业篮球联赛在世界上。它有30个队(美国29个,加拿大…

【Azure Function】Azure Function中的Timer Trigger无法自动触发问题

问题描述 在Azure Function中,部署了定时触发器函数(Timer Trigger),却无法按时触发。问题解答 登录Function的Kudu站点,查看 logfiles中 application/function/host目录下的日志文件,发现错误消息:Singleton lock renewal failed for blob xxxxxxxxxxxxxxxxxxxxxxxxxxxxx…

自学错误合集--项目打包报错,运行报错持续更新中

java后端自学错误总结 一.项目打包报错2.项目打包之后运行报错 二.项目运行报错 一.项目打包报错 javac: �Ҳ����ļ�: E:\xx\xx\xx\docer-xx\src\main\java\xx\xx\xx\xx\xx\xx.java �&#xff…

ESP32-C6测评-环境安装

import time from machine import Pinled=Pin(15,Pin.OUT)while True:led.value(1)time.sleep(0.01)led.value(0)time.sleep(0.3)

Transformer 解析 超级详细版

推荐学习视频 汉语自然语言处理-从零解读碾压循环神经网络的transformer模型(一)- 注意力机制-位置编码-attention is all you need_哔哩哔哩_bilibili 目录 首先下transformer和LSTM的最大区别是什么? 1.positional \ encoding, 即位置嵌入(或位置编码); 2 自注…

国产持续集成工具 - Gokins

国产持续集成工具 - Gokins 持续集成(Continuous Integration ,CI) 介绍 在传统软件开发过程中,集成通常发生在每个人都完成了各自的工作之后。在项目尾声阶段,通常集成还要痛苦的花费数周或者数月的时间来完成。持续集成是一个将集成提前至开发周期的早期阶段的实践方式,…

链表面试题目:反转一个单链表的两种方法(解析+代码)

我们继续来看一下单链表的题目和代码吧,把学习的知识运用到实际中,大家加油 先看OJ题目 OJ题目(反转单链表) 双指针法 1.创建两个指针,为pre curr,curr指向头结点,curr用来遍历链表 2.curr指向…

【汇编语言小练习输入两个数字然后输出它们的和】

这个程序是用汇编语言编写一个简单的程序,它将从键盘输入两个数字,然后输出它们的和。 .MODEL SMALL .STACK 100H.DATAINPUT_MSG1 DB Enter the first number: $INPUT_MSG2 DB 13, 10, Enter the second number: $RESULT_MSG DB 13, 10, The sum is: $N…

2024 FIC取证比赛wp

本次竞赛容器挂载密码为: 2024Fic@杭州Powered~by~HL!2024年4月,卢某报案至警方,声称自己疑似遭受了“杀猪盘”诈骗,大量钱财被骗走。卢某透露,在与某公司交流过程中结识了员工李某。李某私下诱导卢某参与赌博游戏,起初资金出入均属正常。但随后,李某称赌博平台为提升安…

建设电池超级工厂?从MES开始

锂离子电池产量的增长令人震惊。为了支持电动汽车 (EV) 制造能力的提高,电池需求预计到 2030 年将达到 9.3 太瓦时,比 2020 年的 水平增长1,600%以上。 虽然亚洲在产能方面继续处于领先地位,但目前计划在欧洲新建 38 个电池超级工厂&#xf…

剁手党必看——转转红包使用规则与最优组合计算全解析

​ 1、省钱攻略基础之“了解平台红包使用规则” 2、举个栗子 3、最优红包组合计算方法进化过程 3.1、初代“笛卡尔乘积”版 3.2、二代“边算边比较Map聚合”版 3.3、三代“边算边比较数组索引定位”版 4、总结 1、省钱攻略基础之“了解平台红包使用规则” 规则一&#x…

【只显示某一层,其它层隐藏】- PCB板工艺及AD软件配置

在pcb文件视图下,按下字母L,弹出如下框, 选择view options 在single layer mode 勾选ON,就可以隐藏其他层 单层显示效果 方法二:shitfs快捷键

抖音赚钱可以看看这些小众赛道,很多人都赚到了自己的第一个一百万!2024适合小白入手的项目!白手起家新手小白创业真经

抖音创业最大的魅力是什么? 如果你还想创业,还想在抖音这个赛道上发光发热,不妨停下来思考一下这个问题。 那就是可以让一个及其小众的小品类的产品,捅破天花板!达到一个不可思议的销售额!这就是我的答案&…

[Cmake Qt]找不到文件ui_xx.h的问题?有关Qt工程的问题,看这篇文章就行了。

前言 最近在开发一个组件,但是这个东西是以dll的形式发布的界面库,所以在开发的时候就需要上层调用。如果你是很懂CMake的话,ui_xx.h的文件目录在$下 然后除了有关这个ui_xx.h,还有一些别的可以简单聊聊的 一、父子工程组织,或者说依赖关系 在使用CMake进行开发的时候,一…

第50期|GPTSecurity周报

GPTSecurity是一个涵盖了前沿学术研究和实践经验分享的社区,集成了生成预训练Transformer(GPT)、人工智能生成内容(AIGC)以及大语言模型(LLM)等安全领域应用的知识。在这里,您可以找…