接口安全简单渗透测试说明

发表于:2021-5-07 09:31

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:Loren麟    来源:FreeBuf

  接口分类
  从平台划分:分为内部接口和外部接口。
  从类型/协议来说:分为http接口和soap (webservice)接口。
  http接口:通过get和post来获取数据,在数据处理上效率比较高。
  webservice接口:通过soap协议来获取数据,比起http来说能处理更加复杂的数据类型。
  但从实质上来说soap请求也是http类型的请求,只。不过把http类型加封一层 webservice协议,所以就变成了soap类型请求。
  http接口:基于HTTP协议的开发接口.这个并不能排除没有使用其他的协议。 
  api接口:API(Application Programming Interface)应用程序编程接口,应用也包括网络应用程序,就像api文档基本上就是使用说明书,API接口可以简单理解成“应用程序使用接口”。
  RPC接口:Remote Procedure Calls 远程过程调用 (RPC) 是一种协议,程序可使用这种协议向网络中的另一台计算机上的程序请求服务。由于使用 RPC 的程序不必了解支持通信的网络协议的情况,因此 RPC 提高了程序的互操作性。在 RPC 中,发出请求的程序是客户程序,而提供服务的程序是服务器。 RPC(远程过程调用)是一项广泛用于支持分布式应用程序(不同组件分布在不同计算机上的应用程序)的技术。RPC 的主要目的是为组件提供一种相互通信的方式,使这些组件之间能够相互发出请求并传递这些请求的结果。 没有语言限制。
  RMI:RMI(Remote Method Invocation,远程方法调用)RMI是针对于java语言的, RMI 允许您使用Java编写分布式对象。  
  Webservice接口:Webservice是系统对外的接口,比如你要从别的网站或服务器上获取资源或信息,别人肯定不会把数据库共享给你,他只能给你提供一个他们写好的方法来获取数据,你引用他提供的接口就能使用他写好的方法,从而达到数据共享的目的。
  RESTful:简称 REST,是描述了一个架构样式的网络系统,其核心是面向资源,REST专门针对网络应用设计和开发方式,以降低开发的复杂性,提高系统的可伸缩性。REST提出设计概念和准则为:
  1.网络上的所有事物都可以被抽象为资源(resource)。
  2.每一个资源都有唯一的资源标识(resource identifier),对资源的操作不会改变这些标识。
  3.所有的操作都是无状态的。
  http和webservice接口区别:
  httpservice通过post和get得到你想要的东西。
  webservice就是使用soap协议得到你想要的东西,相比httpservice能处理些更加复杂的数据类型。
  http协议传输的都是字符串了,webservice则是包装成了更复杂的对象。
  hessian类似于webservice,但是它采用的是二进制RPC协议(Binary),具有轻量、传输量小、平台无关的特点,特别适合于目前网络带宽比较小的手机网络应用项目。
  测试工具
  Burp Suite,代理拦截,跟踪通信过程和结果,对通信进行重放和二次处理等。
  SOAP, WebService通过Http协议发送请求和接收结果时,发送的请求内容和结果内容都采用XML格式封装,并增加了一些特定的HTTP消息头,以说明HTTP消息头的内容格式,这些特定的HTTP消息头和XML内容格式就是SOAP协议。SOAP提供了标准的RPC方法来调用WebService。
  AWVS, 扫描工具,就不在废话了。
  SOAP测试方法
  first
  我们要先将我们想要测试的接口找到 可以利用Google hacking 当然要是目标测试就简单了 我们可以寻找类似的关键词。
  second
  接下来我们要开始利用工具了 打开SOAP这个工具,网上就有破解版,就不细说了直接去百度下载就好了。
  利用功能加入目标链接如上图,我们就可以开始我们的手动测试了,当然这只是我们测试的起点,我们还是要可以完成机械测试的。
  thread
  选择好相对应的参数来进行针对性的测试。
  接下来就可以进行安全探测了。
  利用安全测试进行机械扫描。
  利用burp进行代理测试
  其实和浏览器的代理设置类似,原理是一样的,只要在软件中设置代理就可以完成burp的使用了。
  
  配置好了链接,我们就可以愉快的利用burp进行测试了。
  AWVS批量扫描
  这个就不细说了,安装破解,请自行百度去。
  打开以后直接输入链接开始你的扫描就好了。
  接口漏洞说明
  我从网上总结出来的导向图,这里很明显的写明了测试内容及方法等。
  我们单独拿出一个安全测试案例来讲一下。
  我们打开一个微信的小程序进行抓包。
  我们抓取人的接口数据,发现内容包含答案字段。
  类似这样的数据返回包。
  我们这就可以根据这个字段来进行回答问题了,写上一个批量发送的角本就可以进行答题了,不管是什么问题都可以回答正确了。

  本文内容不用于商业目的,如涉及知识产权问题,请权利人联系51Testing小编(021-64471599-8017),我们将立即处理
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号