PHP开发安全问题
文章平均质量分 76
one行feng
加油
展开
-
业务逻辑安全问题-短信安全
01 安全隐患02 安全策略03 验证码(以腾讯云为例)03.01 新建验证03.02 动态引入验证码 JS03.03 创建验证码对象03.04 后端验证服务(接入票据校验)04 短信(以腾讯云为例)04.01 短信服务使用流程04.02 后端服务接入04.03 如何防止短信轰炸为什么我们希望研发人员重视安全问题?保护用户数据 随着数据泄露和隐私侵犯事件的增多,用户越来越关心他们的个人信息是否安全。原创 2024-01-22 10:31:38 · 1299 阅读 · 0 评论 -
传输与存储的加密方案
出于信息保密的目的,在信息传输或存储中,采用密码技术对需要保密的信息进行处理,使得处理后的信息不能被非受权者(含非法者)读懂或解读,这一过程称为加密。在加密处理过程中,需要保密的信息称为“明文”,经加密处理后的信息称为“密文”。加密即是将“明文”变为“密文”的过程;与此类似,将“密文”变为“明文”的过程被称为解密。原创 2024-01-18 08:57:16 · 1667 阅读 · 0 评论 -
PHP开发安全问题之浏览器跨域安全问题
大家在很多个人博客/笔记软件中都看到过内嵌的 bilibili / 优酷视频 / 西瓜视频 / 腾讯视频的播放器。例如:习惯追踪系统 - notion 模板分享插入其他站点提供的组件,便是非常明显的跨域问题。由于跨域加载很容易引起安全隐患,因此浏览器限制了 JavaScript 脚本的权限,即不能进行读、写非同源域名下的内容。原创 2024-01-16 15:18:02 · 328 阅读 · 0 评论 -
PHP项目的安全原则
从W3Techs 发布的历年服务器端编程语言使用趋势报告显示,近十年来 PHP 在份额上依旧牢牢占据榜首的位置,报告从 2013 年开始一直持续到 2024年。可以看到 PHP 始终占有 75% 以上的份额,几乎没有遇到比较大的波动。尽管最近几年 PHP 不再流行,大家也一直拿“PHP 是世界上最好的语言”来进行调侃,但从数据上看 PHP 仍是迄今为止最常用的服务器端语言。原创 2024-01-16 15:08:16 · 937 阅读 · 0 评论 -
PHP开发安全问题之信息屏蔽
由于PHP在不同的版本中会移除一些过时的特性,这导致更换PHP版本可能会使得PHP发生大量报错,因此一个庞大且已经上线了的业务很难进行版本升级,研发人员需要学会信息屏蔽,来防止服务器信息泄露,例如:使用的是哪一个版本的PHP。在生产环境中将这些信息显示出来是非常危险的,攻击者可能会通过提交非法的参数,诱导服务器进行报错,有可能会将 WebServer、数据库、PHP代码部署路径甚至是数据库连接、数据表等关键信息暴露出去。原创 2024-01-16 14:54:02 · 361 阅读 · 0 评论 -
PHP开发安全问题之各种功能限制
在一些第三方服务中,可能会用到 file_get_contents(),因此 allow_url_fopen 通常来说都是设置为On。php.ini 中的参数 open_basedir 可以决定 PHP 能够访问文件系统的位置,默认是不开启该参数的,因此PHP就有权力获取整个服务器中的所有文件,当开启该参数后,就可以限制PHP的允许访问目录。在 php.ini 中,allow_url_fopen 默认一直是On,而 allow_url_include 从 PHP5.2 之后就默认为Off。原创 2024-01-16 14:24:48 · 822 阅读 · 0 评论 -
PHP开发安全问题之Cookie 安全问题
在浏览器中,Cookie 是服务器让浏览器帮忙携带信息的手段,就像饼干里的纸条,浏览器会储存它,并且在后续的 HTTP 请求中再次发送给服务器。我们可以通过浏览器的开发者工具,在Application页面中查看浏览器存储的Cookies信息。通常我们会在Cookies中记录:会话状态管理(如用户登录状态、购物车、游戏分数或其它需要记录的信息)个性化设置(如用户自定义设置、主题等)浏览器行为跟踪(如跟踪分析用户行为等)原创 2024-01-16 13:29:03 · 982 阅读 · 0 评论 -
PHP开发安全问题之弱数据类型的安全问题
01 弱数据类型的安全问题02 Hash比较03 bool比较04 数字转换比较05 switch比较06 数组比较PHP的数据类型有很多,包含:字符串(String)、整型(Integer)、浮点型(Float)、布尔型(Boolean)、数组(Array)、对象(Object)、空(Null)和资源(Resource)。但PHP是一种弱类型语言,这造就了PHP的简单易学,但也容易写出漏洞。弱类型指的是变量无需类型声明,在代码执行过程中,可以动态变换。原创 2024-01-15 11:27:37 · 745 阅读 · 0 评论 -
PHP开发安全问题之代码执行的安全问题
01 代码执行漏洞01.01 eval 函数示例01.02 preg_replace 函数示例01.03 create_function 函数示例01.04 容易导致安全问题的其他函数02 代码执行防御当应用程序本身过滤不严,用户可以通过请求将代码注入到应用中,使得攻击者在服务器端任意执行代码,进而控制整个Web服务器。常见的代码执行函数有:eval()、preg_replace()、create_function() 等。原创 2024-01-15 10:52:30 · 831 阅读 · 0 评论 -
PHP开发安全问题之校验请求变量
01 获取请求变量02 校验请求变量02.01 使用 filter_var 函数02.02 自定义校验函数在使用 PHP 开发互联网服务时,开发人员需要时刻牢记安全观念,尤其是涉及到钱财事务等交易问题时,更需如此。当我们需要通过 PHP 获取用户的请求参数时,就会用到预定义内置全局变量来获取,包括$_POST、$_GET、$_FILES、$_SERVER、$_REQUEST等,其中$_REQUEST是一个包含$_GET/$_POST/$_COOKIE三个数组值的联合变量。原创 2024-01-15 10:38:49 · 340 阅读 · 0 评论 -
PHP开发安全问题之页面重定向
注意:如果用户通过攻击者提供的链接登录平台,但是跳转地址被更换成了一个钓鱼网站/恶意网站,使得目标用户访问了未经授权的页面,这可能导致恶意软件的安装或者用户密码等敏感信息的泄露。在设计系统登录功能的时候,通常会有这样一个需求:用户从任意一个界面进入登录页面,在登录成功后,依旧返回之前预览的界面。因此,只要是用户能够自定义跳转链接的参数,通常都要采用URL白名单的方式,来防止任意跳转。原创 2024-01-15 10:28:42 · 289 阅读 · 0 评论 -
PHP开发安全问题之服务器请求伪造(SSRF)
01 SSRF 漏洞原理02 容易造成 SSRF 的功能点02.01 页面分享02.02 个性化服务02.04 图片加载与下载03 SSRF 带来的危害04 在 PHP 中容易造成 SSRF 漏洞的函数05 SSRF 漏洞防御SSRF(Server-Side Request Forgery:服务器端请求伪造)是一种由攻击者利用某服务器请求来获取内网或外网系统资源,从服务器发起请求的一个安全漏洞。一般情况下,SSRF攻击的目标是企业的内网系统。原创 2024-01-15 10:21:49 · 366 阅读 · 0 评论 -
PHP开发安全问题之文件上传的安全问题
攻击者可以通过更改文件扩展名来绕过此验证,上传恶意文件;不受限制的文件上传:应用程序未对上传文件的类型、大小和内容进行限制,允许用户上传任何文件。二次渗透:攻击者可能上传一些不包含恶意代码的文件,然后利用其他漏洞或攻击技术,将这些文件转化为可执行文件,从而实现服务器的攻击;文件上传漏洞的原理是,攻击者通过绕过应用程序的文件上传验证和过滤机制,成功地上传恶意文件,这些文件可以包含恶意代码或恶意内容。文件覆盖:攻击者可能上传具有与已存在文件相同名称的文件,从而覆盖服务器上的合法文件,导致服务中断或数据损坏。原创 2024-01-15 10:13:16 · 342 阅读 · 0 评论 -
SQL 注入漏洞
SQL 注入漏洞,就是通过把 SQL 命令插入到URL地址、Web 表单提交或页面请求的查询字符串中,最终达到欺骗服务器执行恶意的 SQL 命令。漏洞成因是程序没有对用户输入的内容进行安全检查,直接代入数据库进行查询,导致了 SQL 注入的发生。目前常见的 SQL 注入的攻击方式有报错注入、普通注入、隐式类型注入、盲注、宽字节注入、二次解码注入。原创 2024-01-15 09:41:43 · 352 阅读 · 0 评论 -
PHP开发(安全问题)
有效地帮助 PHP 开发者在研发初期就避免漏洞的产生。本课程适合有一定开发基础的同学学习。课程特色。原创 2024-01-15 09:28:24 · 391 阅读 · 0 评论