使用 jQuery Mobile 提高 web 应用程序安全性(1)
 
- UID
- 1066743
|

使用 jQuery Mobile 提高 web 应用程序安全性(1)
在开始之前本教程适用于对保护其应用程序感兴趣的 jQuery Mobile 开发人员。它假设读者已具有有关使用 PHP、MySQL、JavaScript、XHTML 和 CSS 开发 web 应用程序的基础知识。此外,本教程绝不是全面的;其目的是作为 web 应用程序安全性的介绍。要进一步阅读本教程所涵盖的有关问题以及其他相关主题,请查看 。
关于本教程常用缩略词- API:应用程序接口
- CSRF 或 XSRF:跨站点请求伪造
- CSS:层叠样式表
- HTML:超文本标记语言
- HTTP:超文本传输协议
- OS:操作系统
- SQL:结构化查询语言
- URL:统一资源定位器
- W3C:万维网联盟
- XHTML:可扩展超文本标记语言
- XML:可扩展标记语言
- XSS:跨站点脚本
随着智能手机和类似设备的崛起,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。
|
|
|
|
|
|