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

You have changed the passsword for userid 102 to 'joy'  SUCCESS!
WebGoat实例4
获取WSDL文件请求
使用注入,将101变成1 or 1=1
获取CreditCard成功!
posted @ 2012-11-06 16:58  Joy0724  阅读(939)  评论(0编辑  收藏  举报