freeBuf
主站

分类

漏洞 工具 极客 Web安全 系统安全 网络安全 无线安全 设备/客户端安全 数据安全 安全管理 企业安全 工控安全

特色

头条 人物志 活动 视频 观点 招聘 报告 资讯 区块链安全 标准与合规 容器安全 公开课

官方公众号企业安全新浪微博

FreeBuf.COM网络安全行业门户,每日发布专业的安全资讯、技术剖析。

FreeBuf+小程序

FreeBuf+小程序

渗透测试 | 浅谈SOAP注入
2024-10-23 22:04:34
所属地 黑龙江省

理清概念

Web Services

简介

Web Services 是一种标准化的、跨平台、跨语言的通信方法,允许不同系统和应用程序通过网络互相交流。它们提供了一种机制,使得不同平台和语言的应用能够相互调用功能或交换数据,而不需要了解彼此的实现细节或平台。

看不懂?没事我也看不懂哈哈。例如,假设 A 公司的 Linux 平台上的 Java 程序需要与 B 公司的 Windows 平台上的 C 程序进行通信,交换数据或调用业务逻辑。通过 Web Services 技术,开发人员可以创建 Web 服务接口,然后在这些接口上进行跨平台、跨语言的通信。这是因为 Web Services 使用统一的标准和协议,确保不同平台和编程语言的系统能够互操作。

Web Services三要素

  • SOAP(Simple Object Access Protocol)

  • **WSDL(WebServicesDescriptionLanguage) **

  • UDDI(UniversalDescriptionDiscovery andIntegration)

Web Services的关键点

  1. 标准化:Web Services 使用标准化的协议(如 SOAP)和数据格式(如 XML 或 JSON),确保不同系统之间的兼容性。

  2. 跨平台和跨语言:无论服务提供者和消费者使用什么平台或编程语言,只要遵循相同的标准,就能进行有效的通信。

  3. 接口描述:Web Services 使用 WSDL 文件来描述服务接口,使得服务的使用者能够理解如何调用这些服务。

  4. 服务发现:通过 UDDI 等目录服务,服务提供者可以注册他们的服务,服务消费者可以查找和使用这些服务。

SOAP

简介

SOAP(Simple Object Access Protocol) 它是一个基于 XML 的协议,注意不是HTTP那种的**"传输协议",而是"协议"。被设计用于支持分布式计算环境中的消息交换**,常用于实现Web Services

简单来说,SOAP(Simple Object Access Protocol,简单对象访问协议)其实就是一种用于定义 Web 服务之间以及 Web 服务与客户端之间通信的标准化协议

特点

  • XML 基础:SOAP 消息采用 XML 格式,使得它具有良好的平台及语言无关性。

  • 协议独立性SOAP 可以通过不同的传输协议(如 HTTP、SMTP、TCP 等)发送消息,但最常用的是 HTTP

  • 消息结构

    • Header:包含与消息处理相关的元数据。

    • Body包含实际的请求或响应数据

    • SOAP Envelope:消息的封装结构,包括头部(Header)和主体(Body)。

  • 功能:SOAP 支持复杂的操作,如事务处理、安全性和可靠性,但这些功能也使其相对复杂。

SOAP的关键点

通信协议:SOAP 作为通信协议,定义了如何格式化和传输请求和响应消息。它描述了消息的结构、编码方式和传输协议。

接口规范:SOAP 提供了一种标准化的方式来定义和描述 Web 服务的接口,包括如何请求服务、如何发送数据、如何接收响应等。

跨平台和跨语言:因为 SOAP 消息使用 XML 格式,SOAP 协议使得不同平台和编程语言的系统可以通过统一的标准进行通信和交互。

标准化格式:SOAP 消息包含 SOAP Envelope,其中包括 Header(可选)和 Body(包含实际的数据或请求)。这些标准化的结构确保了消息的可解析性和一致性。

扩展性:SOAP 支持多种扩展功能,如安全性、事务处理等,使其能够处理复杂的业务需求。

WSDL

简介

WSDL (Web Services Description Language)是一种用于描述 Web Service的 XML 格式的语言。它定义了 Web Service的接口、操作、数据类型和传输协议。WSDL 文件帮助服务的使用者了解如何访问和使用 Web Service

image

<wsdl:definitions xmlns:s="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:tns="http://www.verisoft.com/JupiterSOAPWebService" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tm="http://microsoft.com/wsdl/mime/textMatching/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" targetNamespace="http://www.verisoft.com/JupiterSOAPWebService">
<link/>
<script/>
<script/>
<wsdl:types>
<s:schema elementFormDefault="qualified" targetNamespace="http://www.verisoft.com/JupiterSOAPWebService">
<s:element name="getCardStatus">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="wSCardsStatusInDTO" type="tns:CardsStatusInDTO"/>
</s:sequence>
</s:complexType>
</s:element>
<s:complexType name="CardsStatusInDTO">
<s:sequence>
<s:element minOccurs="1" maxOccurs="1" name="channelId" type="s:int"/>
<s:element minOccurs="0" maxOccurs="1" name="channelKey" type="s:string"/>
<s:element minOccurs="0" maxOccurs="1" name="cardNumber" type="s:string"/>
</s:sequence>
</s:complexType>
<s:element name="getCardStatusResponse">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="getCardStatusResult" type="tns:CardStatus"/>

功能

  • Types:定义服务使用的数据类型。

  • Message:描述传输的数据格式。

  • PortType:定义服务的操作和接口。

  • Binding:指定协议(如 SOAP)和数据格式(如 XML)。

  • Service:定义服务的地址(即服务的具体 URL)。

UDDI(Universal Description, Discovery, and Integration)

简介

UDDI 是一个用于 Web Service注册和发现的目录服务。它允许服务提供者注册他们的服务,并允许服务消费者查找和获取这些服务

功能

  • Business Entity:描述提供服务的组织或公司。

  • Business Service:描述该组织或公司提供的具体服务。

  • Binding Template:提供服务的访问信息,包括 WSDL 文件的位置。

  • Service Description:描述服务的功能和接口,包括如何通过 WSDL 访问服务。

它们之间的关系

  • Web Service:总体概念,指的是通过网络提供的功能或服务

# SQL注入 # web安全 # SOAP漏洞
免责声明
1.一般免责声明:本文所提供的技术信息仅供参考,不构成任何专业建议。读者应根据自身情况谨慎使用且应遵守《中华人民共和国网络安全法》,作者及发布平台不对因使用本文信息而导致的任何直接或间接责任或损失负责。
2. 适用性声明:文中技术内容可能不适用于所有情况或系统,在实际应用前请充分测试和评估。若因使用不当造成的任何问题,相关方不承担责任。
3. 更新声明:技术发展迅速,文章内容可能存在滞后性。读者需自行判断信息的时效性,因依据过时内容产生的后果,作者及发布平台不承担责任。
本文为 独立观点,未经允许不得转载,授权请联系FreeBuf客服小蜜蜂,微信:freebee2022
被以下专辑收录,发现更多精彩内容
+ 收入我的专辑
+ 加入我的收藏
相关推荐
  • 0 文章数
  • 0 关注者
文章目录