一、常见PHP网站安全漏洞
对于PHP的漏洞,目前常见的漏洞有五种。分别是Session文件漏洞、SQL注入漏洞、脚本命令执行漏洞、全局变量漏洞和文件漏洞。这里分别对这些漏洞进行简要的介绍。
1、session文件漏洞
Session攻击是黑客最常用到的攻击手段之一。当一个用户访问某一个网站时,为了免客户每进人一个页面都要输人账号和密码,PHP设置了Session和Cookie用于方便用户的使用和访向。
2、SQL注入漏洞
在进行网站开发的时候,程序员由于对用户输人数据缺乏全面判断或者过滤不严导致服务器执行一些恶意信息,比如用户信息查询等。黑客可以根据恶意程序返回的结果获取相应的信息。这就是月行胃的SQL注入漏洞。
3、脚本执行漏洞
脚本执行漏洞常见的原因是由于程序员在开发网站时对用户提交的URL参数过滤较少引起的,用户提交的URL可能包含恶意代码导致跨站脚本攻击。脚本执行漏洞在以前的PHP网站中经常存在,但是随着PHP版本的升级,这些间题已经减少或者不存在了。
4、全局变量漏洞
PHP中的变量在使用的时候不像其他开发语言那样需要事先声明,PHP中的变量可以不经声明就直接使用,使用的时候系统自动创建,而且也不需要对变 量类型进行说明,系统会自动根据上下文环境自动确定变量类型。这种方式可以大大减少程序员编程中出错的概率,使用起来非常的方便。
5、文件漏洞
文件漏洞通常是由于网站开发者在进行网站设计时对外部提供的数据缺乏充分的过滤导致黑客利用其中的漏洞在Web进程上执行相应的命令。
二、PHP常见漏洞的防范措施
1、对于Session漏洞的防范
从前面的分析可以知道,Session攻击最常见的就是会话劫持,也就是黑客通过各种攻击手段获取用户的Session ID,然后利用被攻击用户的身份来登录相应网站。为此,这里可以用以下几种方法进行防范:一是定期更换Session ID,更换Session ID可以用PHP自带函数来实现;二是更换Session名称,通常情况下Session的默认名称是PHPSESSID,这个变量一般是在cookie中保存的,如果更改了它的名称,就可以阻档黑客的部分攻击;三是对透明化的Session ID进行关闭处理,所谓透明化也就是指在>
2、对SQL注入漏洞的防范
黑客进行SQL注入手段很多,而且灵活多变,但是SQL注人的共同点就是利用输入过滤漏洞。因此,要想从根本上防止SQL注入,根本解决措施就是加强对请求命令尤其是查询请求命令的过滤。具体来说,包括以下几点:一是把过滤性语句进行参数化处理,也就是通过参数化语句实现用户信息的输入而不是直接把用户输入嵌入到语句中。二是在网站开发的时候尽可能少用解释性程序,黑客经常通过这种手段来执行非法命令;三是在网站开发时尽可能避免网站出现bug,否则黑客可能利用这些信息来攻击网站;仅仅通过防御SQL注入还是不够的,另外还要经常使用专业的漏洞扫描工具对网站进行漏洞扫描。
3、对脚本执行漏洞的防范
黑客利用脚本执行漏洞进行攻击的手段是多种多样的,而且是灵活多变的,对此,必须要采用多种防范方法综合的手段,才能有效防止黑客对脚本执行漏洞进行攻击。这里常用的方法方法有以下四种。一是对可执行文件的路径进行预先设定。
4、对全局变量漏洞防范
对于PHP全局变量的漏洞问题,以前的PHP版本存在这样的问题,但是随着PHP版本升级到55以后,可以通过对phpini的设置来实现,设置ruquest_order为GPC。另外在phpini配置文件中,可以通过对Magic_quotes_runtime进行布尔值设置是否对外部引人的数据中的溢出字符加反斜线。为了确保网站程序在服务器的任何设置状态下都能运行。
5、对文件漏洞的防范
对于PHP文件漏桐可以通过对服务器进行设置和配置来达到防范目的。这里具体的 *** 作如下:一是把PHP代码中的错误提示关闭,这样可以避免黑客通过错误提示获取数据库信息和网页文件物理路径;二是对open_basedir尽心设置,也就是对目录外的文件 *** 作进行禁止处理;这样可以对本地文件或者远程文件起到保护作用,防止它们被攻击,这里还要注意防范Session文件和上载文件的攻击;三是把safe-made设置为开启状态,从而对将要执行的命令进行规范,通过禁止文件上传,可以有效的提高PHP网站的安全系数。
1、修改网站后台的用户名和密码及后台的默认路径。
2、更改数据库名,如果是ACCESS数据库,那文件的扩展名最好不要用mdb,改成ASP的,文件名也可以多几个特殊符号。
3、接着检查一下网站有没有注入漏洞或跨站漏洞,如果有的话就相当打上防注入或防跨站补丁。
4、检查一下网站的上传文件,常见了有欺骗上传漏洞,就对相应的代码进行过滤。
5、尽可能不要暴露网站的后台地址,以免被社会工程学猜解出管理用户和密码。
6、写入一些防挂马代码,让框架代码等挂马无效。
7、禁用FSO权限也是一种比较绝的方法。
8、修改网站部分文件夹的读写权限。
9、如果你是自己的服务器,那就不仅要对你的网站程序做一下安全了,而且要对你的服务器做一下安全也是很有必要了!也可以通过安全公司来解决,国内也就Sinesafe和绿盟等安全公司比较专业
10自定义404页面及自定义传送ASP错误信息
404能够让骇客批量查找你的后台一些重要文件及检查网页是否存在注入漏洞。
ASP错误嘛,可能会向不明来意者传送对方想要的信息。
11慎重选择网站程序
注意一下网站程序是否本身存在漏洞,好坏你我心里该有把秤。
12谨慎上传漏洞
据悉,上传漏洞往往是最简单也是最严重的,能够让黑客或骇客们轻松控制你的网站。
可以禁止上传或着限制上传的文件类型。不懂的话可以找专业做网站安全的sinesafe公司。
13 cookie 保护
登陆时尽量不要去访问其他站点,以防止 cookie 泄密。切记退出时要点退出在关闭所有浏览器。
14目录权限
请管理员设置好一些重要的目录权限,防止非正常的访问。如不要给上传目录执行脚本权限及不要给非上传目录给于写入权。
其实所有的软件和程序,都肯定会有漏洞,不可能存在100%安全无漏洞的软件程序。
同时,windows系统漏洞多这个说法可以说并不正确。而是说,使用和针对windows的人太多,所以被发现的漏洞就很多。
打个比方吧,用500个人的团队来做一个软件,这500个人假如都是一样的理论水平和知识储备,然后做好后发布,分为两个不同的版本为A版和B版,但实际事实上A版和B版是完全一样的,没有任何差别。A软件发布给1000万用户来研究,B软件只发布给100万用户来研究,这1100万用户并不重复。那么A软件肯定会被找出更多的漏洞和问题,但这并不能说明什么,因为都是完全一样的软件,只不过一个人多一个人少罢了。
为什么仍然有很多网站漏洞据了解,大多数企业网站的漏洞包含OpenSSL、PHP和WordPress中的漏洞,这些漏洞主要是由于这些开源软件中存在着大量自定义组合以及缺乏测试和漏洞修复。
本文中让我们看看如何从一开始以及整个开发生命周期中修复这些漏洞。
很多网站的安全漏洞
“很多网站(和Web应用程序)漏洞的主要原因是这些技术完全定制化开发的性质,”美国国家安全局前情报收集人员、现Masergy Communications公司主管David J Venable表示,这样的结果会产生在很大程度上未经测试的网站和应用程序,它们没有像大多数商业软件(例如 *** 作系统和服务器软件包)经过严格的彻底的测试。
事实上,网站和网络应用程序中的漏洞要比企业其他地方的漏洞更多。这些安全漏洞包括PHP站点、第三方和自产软件中的漏洞,WordPress代码和安装以及OpenSSL、Single Sign-On及SQL和LDAP部署及技术中的漏洞。
使用第三方软件的PHP网站存在固有的漏洞,因为第三方应用程序开发不受企业的掌控。Berkeley研究公司主管Joe Sremack表示:“你可以设计你的网站,以确保所有自制代码是完全安全的,但如果你需要使用第三方软件,那么你就可能引入漏洞。”
WordPress是一个日益严重的问题,它有着无数的插件,需要不断的更新,这给中小型企业带来日益严重的威胁。Sremack表示:“企业想要WordPress的功能,但不幸的是,它也带来风险。”
OpenSSL也面临相同的问题。随着人们不断创新该技术,这些创新带来新的漏洞,可让攻击者发现和利用。每年攻击者都会不断利用OpenSSL漏洞来作为大规模数据泄露的一部分,很多看似新的漏洞实际上是还未被发现的旧漏洞。
即使编程者开发出安全的网站,他们的开发主要是基于他们已知的漏洞,而不是尚未确认的漏洞,而总是会出现新的漏洞。
注入漏洞仍然很常见,攻击者已经调整了他们的攻击方法,以利用日益普及的单点登录。Sremack解释说:“单点登录在酒店里很常见,人们会使用单点登录来检查他们的账户和积分。新的LDAP注入技术会攻击漏洞,并传递参数到代码来控制其网络会话。”
另一个攻击向量是本地和远程文件。Sremack称:“网站的代码可以调用本地服务器或远程公共服务器上的文件。通过使用注入技术,攻击者可以让网站显示信息,包括密码文件或者Web服务器中的用户名列表,并可以执行他们想要运行的代码。”
修复网站安全漏洞
Venable称:“企业必须从开发过程的最开始就坚持安全最佳做法,例如开放Web应用安全项目(OWASP)的最佳做法。”企业需要在生产前、代码变更后进行所有测试,包括应用程序评估、渗透测试以及静态分析,至少一年一次。为了实时发现和缓解攻击,企业需要对网站和网络应用程序部署WAF和IDS,并部署全天候监控小组。
Sremack称:“在开发过程中,与安全团队合作来对受影响的代码和功能执行定期测试。”如果企业在更新当前的网站,应该让安全团队测试和确保新增的功能不会带来漏洞。开发团队还应该进行扫描和测试来隔离漏洞和修复漏洞。
Sremack说道:“企业应该使用攻击者用来入侵网络的相同工具,例如Grabber、W3AF和Zed Attack Proxy。”虽然说,任何有着安全知识或安全工具的人都可以利用这些应用程序,基于测试的结果来发现网站漏洞,但企业需要安排专门的工作人员来做这个工作。
“开发人员应该具体看看他们如何创建和维护网络会话,专门检查会话通过网站传输的输入,无论是通过网站还是输入字段,”Sremack称,“然后监测任何第三方代码中的漏洞,并查看来自供应商的漏洞利用声明。”
总结
网站越大,其功能和可视性越大,它也会使用更多第三方软件,同时,减少该网站中固有漏洞的过程也更加昂贵。
企业必须在一天内多次监控和更新网站,以更好地抵御网络攻击者。这个过程应该包括变更管理、测试和正确的部署,以及新的专门的安全团队和指定的测试站点。
网站的功能越丰富,企业越应该确保网站的安全性。现在也有很多开源免费软件工具可以帮助开发人员来了解新的漏洞和威胁。
建议安装安全防护软件,如安全狗等,防护网站安全。
以上就是关于在电商网站开发中有哪些常见漏洞全部的内容,包括:在电商网站开发中有哪些常见漏洞、网站后台系统的安全漏洞都有哪些、为什么网站和软件这样多的漏洞等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)