WebGoat之Web Services
Web Services 简介
Web Services 可使您的应用程序成为 Web 应用程序。
Web Services 通过 Web 进行发布、查找和使用。
什么是Web Services?
Web Services 是应用程序组件
Web Services 使用开放协议进行通信
Web Services 是独立的(self-contained)并可自我描述
Web Services 可通过使用UDDI来发现
Web Services 可被其他应用程序使用
XML 是 Web Services 的基础
它如何工作?
基础的 Web Services 平台是 XML + HTTP。
HTTP 协议是最常用的因特网协议。
XML 提供了一种可用于不同的平台和编程语言之间的语言。
Web services 平台的元素:
SOAP (简易对象访问协议)
UDDI (通用描述、发现及整合)
WSDL (Web services 描述语言)
Web Services实例:
一个提供天气预报的网站需要随时更新天气情况,在WEB上挂上一个随时问讯最新天气情况的服务。我们的程序就可以从这个服务上获取到当前最新的天气信息。
WebGoat实例1
Stage 1
Stage 2
Stage 3
用WebScarab拦截请求,在WebScarab中Execute SoapRequest Service中的各个operation。
前提:
当在WebScarab中Execute SoapRequest Service中的各个operation时,需要设置Credentials(Web Site 用户名,密码)。
Tools-Credentials
一次输入后,会将输入的用户名和密码保存在Basic Credentials。
同理执行getLastName operation
回到WebGoat, Press to generate an HTTP request. SUCCESS!
WebGoat实例2
通过查看WSDL文件,可以知道除了列出的几个fields外,还有可以获得CreditCard的方法getCreditCard.
使用Firefox自带的拦截工具Tamper Data
WebGoat实例3