使用 jQuery Mobile 提高 web 应用程序安全性

IBMdW 发布于 2011/06/14 10:07
阅读 750
收藏 2

【Gopher China万字分享】华为云的Go语言云原生实战经验!>>>

简介:  许多 web 开发人员认为安全性无足轻重。安全性经常沦为软件开发生命周期的最后一位,有些甚至事后才想起。有时候,软件安全性被完全忽视,导致应用程序中充满常见漏 洞。目前条件下这类 bug 只有在遭到攻击时才能表现出来,所以如果没有开发流程方面的知识,很难在事件发生之前检查到。使用 web 应用程序构建 jQuery Mobile、PHP 和 MySQL,本教程显示常用开发方法会伴有多少种类型的漏洞,最重要的是,提供了它们各自的对策。

随着智能手机和类似设备的崛起,web 应用程序安全性已经扩展到包括移动应用程序。由于受到许多此类设备接口的限制,开发人员有时会使用有缺陷的假设,即客户端输入验证足以防止攻击。然而,通 过移动应用程序发送的请求可以用与传统的 web 应用程序相同的方式操作。因为此漏洞,所以不能信任客户端。有时敏感数据存储在他们使用的设备和服务器上,因此用户防止黑客攻击是至关重要的。本教程显示 了一些漏洞是如何发生的,以及一些适当的对策来防范试图利用这些漏洞的攻击者。本文包括以下类型的漏洞:

  • 跨站点脚本
  • 跨站点请求伪造
  • 失效的访问控制
  • SQL 注入
  • 文件包含
  • 操作系统命令注入
  • 脚本语言注入
  • 任意文件创建

使用通过 jQuery Mobile、PHP 和 MySQL 构建的示例应用程序展示所有漏洞和对策。(要获得带有示例代码的 .zip 文件,见 下载。)

先决条件

您需要以下工具来完成此教程:

  • Web 服务器 — 您可以使用任何具支持 PHP 的 web 服务器。虽然本教程采用的许多开发工具都是 Windows 特有的,但是它们也适用于其他操作系统。建议的 web 服务器是 Apache 或 IBM HTTPServer。
  • PHP — 因为所描述的一些攻击对最新的版本无效,所以使用 PHP 5.3.1。本教程注意到了这种不兼容性。
  • MySQL — 本教程使用 MySQL,它是一种开源数据库。版本 5.1.41 用于本教程,但其他版本应该也能正常运行。
  • Web 调试代理 — 因为必须要有一个操纵 HTTP 请求的方法,所以 web 调试代理是非常有帮助的。在本教程中,虽然使用了 Fiddler v2.3.2.4,但是也允许适用于修改请求的其他 web 调试器代理。
  • jQuery Mobile — 本教程中构建的示例应用程序的前端使用 jQuery Mobile 1.0 Alpha 3。

有用的链接,见 参考资料

进入教程

加载中
返回顶部
顶部