博客
关于我
Flex / PHP Security Basics - Part One
阅读量:789 次
发布时间:2023-01-26

本文共 1753 字,大约阅读时间需要 5 分钟。

Flex和PHP是现代网络开发中非常流行的技术组合,它们结合了速度和灵活性,为开发者创造了强大的研发能力。然而,随着项目复杂度的增加,安全问题也随之而来。虽然简单的应用可能不需要特别的安全措施,但如果不重视安全问题,asions值_mb_的漏洞可能导致严重的后果。在之前的工作中,我就是这么学到的,但在使用Flex 2搭配PHP时,发现如果严格按照Adobe的示例代码来开发,可能会引发一些大问题。因此,我决定详细探讨其潜在的安全风险,以确保在公共Flex网站中部署PHP/Flex应用时不会遇到麻烦。

关于引起注意的问题

要强调的是,Flex和Flash文件非常容易被反编译。由于这些文件格式是公开的,目前有很多反编译工具可以帮助入侵者分析文件内容。一个人可以轻易地监控Flex应用与服务器之间的数据交流,并侦测接收的URI和期望的参数,从而注入恶意代码。

此外,Flex/PHP应用程序通常会返回结构清晰的XML数据,这些数据同样容易被解析。如果遇到有效的攻击者,可能就会通过分析这些数据发现潜在的安全漏洞。

常见的安全风险

根据PHP安全协会的报告,很多编程错误都可能导致应用程序的安全性被破坏。以下是一些常见但危险的问题:

  • 未经验证的用户输入
    它很简单,但是如果忽视这个问题,很多常见的安全漏洞会随之而来。比如,登录页面的问题,我们仅用了两个字段:user id和 password。从直觉上看,这应该是安全的吧?但是,我们可能忽视了一个关键的安全层面。

SQL注入的危险性

让我们用一个实际的例子来看看SQL注入是如何进行的。假设我们有一个用户登录的页面,Flex应用会发送userid和 password到PHP脚本进行验证。默认情况下,这样的查询是:

SELECT * FROM users WHERE userid='a' AND password='b';

然而,这不够安全。如果一个攻ه者输入 "admin" 作为 userid,而将作为 password 输入的字段填入 "' OR '1'='1",那么查询会变成:

SELECT * FROM users WHERE userid='admin' AND password='' OR '1'='1';

这导致系统返回所有管理员的信息,这是一个公开入口!为了防范这种攻击,可以启用magic_quotes_gpc选项。需要注意的是,magic_quotes_gpc默认是启用的,但这会导致所有变量都带有反斜杠。如果没启用,这个问题就需要通过调用 addslashes() 来修补。

基于上述原因,我们必须在应用中加强输入验证。确保在所有查询中使用合适的函数来清除潜在的恶意代码。例如:

$userid = addslashes($_REQUEST['userid']);$password = addslashes($_REQUEST['password']);

如果 magic_quotes_gpc 已选中,可以先用 stripslashes() 来清除输入,之后再对需要保存数据库的字段进行格式化。

此外,始终记得对要在查询中使用的数据进行输入检查,不仅仅是字符,比如双引号、分号、括号和关键词如 "FROM", "WHERE" 等。

命令行注入的危险性

假设应用程序允许用户搜索上传的文件,Flex端会通过 search 变量传递请求参数。PHP脚本可能是这样:

$rdir = $_REQUEST['search'];exec("ls $rdir");

一个攻ItemAtek 可能修改请求参数为 ";rm -rf *",这将删除当前目录下的所有文件。为了防耗活这种攻击方式,必须确保输入数据的有效性,如文件名称的合法性。可以用正则表达式或其他方法来验证输入仅包含允许的字符。还可以在执行外部命令前,通过 escapeshellcmd() 来保护命令,以防止恶意代码。

这些只是我们在常规开发中可能会遇到的安全问题。接下来,我将探讨如何保护 Axes 以确保Flex / PHP 应用程序安全,以及另一些常出现的安全漏洞,比如错误报告和安全模式。确保你的工作既能满足需求,又能为用户的信息提供安全保障,让网站不易遭受攻击。

转载地址:http://ryryk.baihongyu.com/

你可能感兴趣的文章
一道简单的访问越界、栈溢出pwn解题记录
查看>>
响应的HTTP协议格式+常见的响应码
查看>>
springboot redis key乱码
查看>>
idea thymeleaf页面变量报错解决
查看>>
解决打开 json 文件中文乱码的问题
查看>>
计算机网络基础:PKI(公钥基础设施)
查看>>
计算机网络基础:VLAN(虚拟局域网)
查看>>
计算机网络基础:文件共享服务器(注册表更改)
查看>>
乒乓球问题
查看>>
Trae国内版发布,中国首款AI 原生IDE 正式上线,配置Doubao-1.5-pro,支持切换满血版DeepSeek 模型
查看>>
linux(CENTOS)系统各个目录的作用详解
查看>>
回溯法介绍
查看>>
2025最新智能优化算法:改进型雪雁算法(Improved Snow Geese Algorithm, ISGA)求解23个经典函数测试集
查看>>
有了Trae,人人都是程序员的时代来了
查看>>
数据分析与处理方法
查看>>
程序员都看不懂的代码
查看>>
LLM+多智能体协作:基于CrewAI与DeepSeek的邮件自动化实践
查看>>
404页面自动跳转源码
查看>>
46:把数字翻译成字符串(动态规划)
查看>>
500套精美Logo样机模板可直接套用、轻松制作炫酷logo
查看>>