打造刀郎安全PHP系统 · 续

栏目: PHP · 发布时间: 6年前

内容简介:最近某某酒店火了一把,动不动就开始脱裤子,很吓人啊,从自己打造安全的角度出发,我觉得最大问题是程序员参差不齐,还有就是老板压得太狠,功能都实现不完,哪有时间加固网站安全啊!由于网站功能太多,实现太复杂,难免会有sql注入,那么怎么防范?我想到的方法是用户信息和网站数据信息分开处理,也就是放到不同机器的不同数据库中,先看看下面的图,我再根据图来讲解。

前言

上一期给大家讲述了如何打造刀郎安全 PHP 系统【传送门】,本期我们继续。

最近某某酒店火了一把,动不动就开始脱裤子,很吓人啊,从自己打造安全的角度出发,我觉得最大问题是 程序员 参差不齐,还有就是老板压得太狠,功能都实现不完,哪有时间加固网站安全啊!由于网站功能太多,实现太复杂,难免会有 sql 注入,那么怎么防范?

实现原理

我想到的方法是用户信息和网站数据信息分开处理,也就是放到不同机器的不同数据库中,先看看下面的图,我再根据图来讲解。

打造刀郎安全PHP系统 · 续

防范分为二部分

第一部分:用户网站,也就是程序员开发功能和实现的代码部分,也是最容易出现sql注入的部分;

第二部分:授权系统,这里就是我们需要重点保护的地方,由于功能单一,实现部分也简单,做安全比较容易。

建议这二部分分二台机器部署,当有用户注册和登陆的时候,用户网站会跳转到授权系统,进行验证,验证完成后,再跳转到用户网站,这样的好处就是当用户网站出现sql注入或者上传漏洞的时候不会威胁到用户数据库的安全。

实现代码

1.打造授权系统

写了一个简单的例子,一共5个文件(login.html,login.php,reg.html,reg.php,valid_login.php),

login.html,login.php

是登陆部分,login.html是前端表单的实现,login.php是后端接收数据的处理;

reg.html,reg.php 

是注册部分,reg.html是前端表单的实现,reg.php是后端接收数据的处理;

valid_login.php

验证用户网站发送过来的授权码是否有效。

1.1 reg.php的实现

打造刀郎安全PHP系统 · 续

接收到用户名的密码后,先比较一下密码是否一致,如果一致,直接用base64进行加密,

打造刀郎安全PHP系统 · 续

加密完成以后,查询一下用户名是否已经存在,不存在插入加密的base64用户名和密码信息,再跳转到授权系统的登陆页面。

1.2 login.php的实现

打造刀郎安全PHP系统 · 续

接收登陆的账号和密码去掉空格用base64加密一次,再到数据库取查询。

打造刀郎安全PHP系统 · 续

如果账号和密码匹配,我们就生成授权码(base64加密一下)并且当前的时间,他们更新到数据库中,同时跳转到用户网站127.0.0.1中去(这里的授权码和用户名是没有加密的)。

1.3 valid_login.php的实现

打造刀郎安全PHP系统 · 续 用接收到用户网站发送过来的用户名和授权码的时候,我们给授权码和用户名用base64加密一下,再到数据库中查询一下,当然这里还有时间字段没有实现,大家自己写代码,如果匹配正常就返回用户的信息,比如用户是否有效,用户名,用户等级。

2.用户网站授权部分实现

接收到授权系统发送过来的授权码和原始用户名后,开始验证授权码和用户名是否有效。

2.1 is_login.php的实现

打造刀郎安全PHP系统 · 续 把用户名和授权码发送到授权系统127.0.0.1(这里我是一台开发机器所以授权系统和用户网站的地址一致)valid_login.php页面中去验证一下,授权系统的valid_login.php会返回一个json,我们判断jison返回valid的值, 就知道用户的合法性 valid=1表示用户有效,valid=0 表示用户无效,sid是用户的等级,管理员还是普通用户。


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

跨越

跨越

Lydia / 人民文学出版社 / 2018-4-1 / 39

三跨青年Lydia的一线奋斗笔记,抛却艰深理论,用亲身经验为你打通任督二脉。 揭开思维认知盲区,剖析成长潜在技巧,探知进阶背后逻辑,在拐点到来的时刻,推动人生加速上行。 10大职场潜在成长技巧,13种打破思维认知的的碎片重建,15种正确面对情感的能量释放, 38篇有世界 观,有方法论的故事,为你打开上升通道。 停留在思维层面的改变人生,其实已然陷入困境, 人生上行的实......一起来看看 《跨越》 这本书的介绍吧!

JS 压缩/解压工具
JS 压缩/解压工具

在线压缩/解压 JS 代码

随机密码生成器
随机密码生成器

多种字符组合密码

Base64 编码/解码
Base64 编码/解码

Base64 编码/解码