PHP网站设计中信息安全防御的研究

上传人:l****6 文档编号:38057710 上传时间:2018-04-26 格式:DOC 页数:3 大小:26KB
返回 下载 相关 举报
PHP网站设计中信息安全防御的研究_第1页
第1页 / 共3页
PHP网站设计中信息安全防御的研究_第2页
第2页 / 共3页
PHP网站设计中信息安全防御的研究_第3页
第3页 / 共3页
亲,该文档总共3页,全部预览完了,如果喜欢就下载吧!
资源描述

《PHP网站设计中信息安全防御的研究》由会员分享,可在线阅读,更多相关《PHP网站设计中信息安全防御的研究(3页珍藏版)》请在金锄头文库上搜索。

1、1PHP 网站设计中信息安全防御的研究摘要:网络具有开放性和共享性的特点,在给人们的生活带来便利的同时,也对网络用户的信息安全带来了威胁。本文研究了在 PHP 网站开发过程中信息安全防御技术,列举在 PHP 网站开发时容易出现的安全漏洞以及这些漏洞带来的危害,同时还介绍了黑客常用的攻击手段并给出相应的解决方案。 关键词:安全防御;PHP;网站 0 引言 当前网络与信息安全产业已成为对各国的国家安全、政治稳定、经济发展、社会生活、健康文化等方方面面具有生存性和保障性支撑作用的关键产业。网络与信息安全可能会影响个人的工作、生活,甚至会影响国家经济发展、社会稳定、国防安全。因此,网络与信息安全产业在

2、整个产业布局乃至国家战略格局中具有举足轻重的地位和作用。本文对 PHP 网站设计中信息安全防御的研究具有重要的意义。 1PHP 编码过程中的安全问题及其防范 服务器和 PHP 的运行环境配置好后,并不意味着网络应用就安全了,程序员的安全意识也起着决定性的作用。如果程序员的安全意识不高,对用户的所有输入都没有进行安全验证,那么,所有有害的指令都将作为合法指令被执行。 1.1SQL 注入的防范 程序员在编写代码的时候,没有对用户输入数据的合法性进行判断,使得用户可以提交一段数据库查询代码,根据程序返回的结果,获得某些他想得知的数据,这就是所谓的 SQL Injection,即 SQL 注入。 1)

3、经典的or 1=1 注入 2or 1=1注入是非常经典的注入语句,一般用在登录系统时绕过密码验证,以任意用户名登入。其原理是利用程序员在编写验证程序的时候没有验证用户的输入是否含有非预期的字符串,直接传递给 mysql_query()函数执行,or 1=1 使得无论密码是否匹配保证验证语句为真,达到绕过密码验证的目的 2)利用 union 语句的注入 Union 语句是利用其特性,使程序默认的语句出错,让程序执行 union 之后自己构造的 SQL 语句,达到注入的目的。 3)防 SQL 注入的通用解决方案 注入的手段是多种多样,十分灵活的,但有一个共同点,都是利用没有对输入进行过滤。防止注入

4、的方法也就是对传递给查询语句的参数进行过滤。 该函数是通过正则表达式匹配常用的注入语句,并对其进行过滤。采用该过滤函数后,使用上述方法再次进行注入时,全部失效。 1.2XSS 跨站攻击 XSS 全称为 Cross Site Scripting,由于 CSS 已经用作样式表的简称,故称为XSS。 XSS 是一种常见的网站攻击的手段。其原理与 SQL 注入比较类似,只不过利用的 HTML 标签中注入 JavaScript 脚本,通过在网页的输入框输入一些恶意的内容,通常是 JavaScript 脚本片段达到注入的目的,这些恶意输入在提交之后并重新读回到客户端时,浏览器会解释执行这些恶意的脚本内容,

5、从而影响网页的正常显示。 1)XSS 探测 在判断一个网站是否存在 XSS 漏洞是,经常用到下面这条语句进行探测: 在输入框中输入该语句找到该语句执行的地方看是否有弹窗,如果有,则表示3这个网站存在 XSS 漏洞,这里以留言本为例。 登入留言页面,在输入框内输入检测代码,刷新页面,发现浏览器弹出窗口,表明该留言板存在着 XSS 漏洞。 2)利用 XSS 重定向 一旦确定网站存在 XSS 漏洞,那么攻击手段就有很多种,将当前网页重定向到其他网页是一种比较直接的方法,黑客可以利用这种手法达到刷网站流量,或者在转向的网站上挂上木马,使访问者电脑感染木马病毒的目的,攻击代码如下: 将 http:/ev

6、il.org 替换成想要转向的网址就达到注入的目的了。 3)利用 XSS 弹出其他网页 平时在浏览有些网站的时候经常会出现弹出广告的情况,黑客也会可以利用XSS 攻击使正在浏览被攻击页面的用户浏览器弹出窗口,这样又可以利用弹窗来达到挂马的目的了。攻击代码如下: 该段代码是让浏览器弹出一个窗口并打开百度首页,把百度的网址换成挂马的网页,黑客的攻击目的就达到了。 4)利用iframe标签进行 XSS 攻击 iframe是一个非常常用的 HTML 标签,他的功能是在网页中嵌入其他网页,可 以通过 height 属性和 src 指定嵌入页面的高度和地址。黑客可以将高度设为 0,将页面地址设置为被挂马的

7、网页,或者利用 cookie 的同源特性窃取 cookie。 攻击代码如下: 2 安全防御常用方法 2.1 平衡风险与可用性 尽量使安全措施对用户透明,使他们感受不到它的存在。如果实在不可能,就尽量采用用户比较常见和熟悉的方式来进行。例如,在用户访问受控信息或服务4前让他们输入用户名和密码就是一种比较好的方式。 2.2 跟踪数据 作为一个有安全意识的开发者,最重要的一件事就是随时跟踪数据。不只是要知道它是什么和它在哪里,还要知道它从哪里来,要到哪里去。有时候要做到这些是困难的,特别是当你对 WEB 的运做原理没有深入理解时。这也就是为什么尽管有些开发者在其它开发环境中很有经验,但他对 WEB

8、不是很有经验时,经常会犯错并制造安全漏洞。 2.3 过滤输入 过滤是 Web 应用安全的基础。它是你验证数据合法性的过程。通过在输入时确认对所有的数据进行过滤,你可以避免被污染(未过滤)数据在你的程序中被误信及误用。大多数流行的 PHP 应用的漏洞最终都是因为没有对输入进行恰当过滤造成的。 3 小结 本文主要研究了在 PHP 网站代码编写过程中应该注意的一些与安全相关的要点以及一些应该遵守的方法,掌握了这些方法,对 PHP 网站安全有很大的好处,希望对同行能有一定的参考作用。 参考文献: 1 Stuttard.D,Pinto.M,石华耀译.黑客攻防技术宝典M.北京: 人民邮电出版社,2009. 2 周绯菲,何文.计算机网络安全技术实验教程.北京: 邮电大学出版社,2009. 3 Stuart McClure,Joel Scambray,George Kurtz,钟向群译.黑客大曝光:网络安全机密与解决方案M.北京: 清华大学出版社, 2010. 4 温施耐德.PHP 和 MySQL Web 应用开发核心技术.北京: 机械工业出版社, 2006. 55 Chris Shiflett. Essential PHP Security. OReilly Media, 2005.

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文 > 其它学术论文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号