PHP安全问题

来源:互联网 发布:多益网络线上笔试题 编辑:程序博客网 时间:2024/05/29 16:33
 

PHP安全问题

1、         注入

   SQL

在用户执行注册过程中口令内容部分使用了类似(select insert update delete and or etc.)

Eregi(“正则表达式”,“判断字符串”,$name);

Eregi($patten,)

$pattern=(select|insert|update)

Addslashes()

\  :转义字符

2、         Php

1、         register_glabals=off|on

$_POST[‘name’]

$name

3、         SQL语句尽量不要省略引号

4、         $_POST(GET COOKIE)过滤后在接受

5、         命名数据库

6、         尽量封装方法,避免暴露

7、         重定向

 

 

 

考虑:web项目有多少

      过滤过程写成函数单独存成一个文件

 

验证码

设计表

Username password .. status md5name(增加一个字段)

Zhangsan 123456      0//名字应该加密

登录

Name password staus=1//登录条件为1

http://localhost/test/php?name=......//发送邮件自己写的

Name=ziduan判断用户名称,是否相同

 

 

 

第四天

1、         mail函数

  发送电子邮件

1)         进行js的有效性验证(正则表达式)

2)         接受表单上传的数据

3)         进行过滤

4)         数组---

   $key->$value

Extract()

5)写入表格

激活码验证注册信息

1、         数据表

Username  //注册的用户名

  Uaer_manage

   Index.phplogin.php

   Reg.php

     Password  //注册的用户口令

     Status    //激活状态 默认为 0

     Md5name   //加密后的用户名(进行比较)

 Uaer_manage

     Index.php

     Login.php

     Reg.php

    Mail: <Input type=text>

Check_form($_POST[‘mail’])//把变量收到

Insert into tbl_user values();

发送电子邮件功能(类)

http://localhost/user_manage/do_reg.php?name=加密后的用户名

do_reg.php

//$_GET[‘name’]==select 表  (md5name){

       口令是否一相同

Update status=0->1//更新某条记录

//login.php

  If(用户名=用户名){

   If(口令=口令){

    Header(Location:index.php)

If(状态==1){

 

 

}

 

}

 

}

 

 

 

}

Php发送电子邮件

Mail ()函数---sendmail组建支持

  SMTP服务器-接力,发送

POP3服务器---邮局的第三协议,接收

1)         IIS—SMTP

“开始”—“控制面板”—“添加删除程序”—“添加删除组件”—“Internet信息服务”—“详细信息”—“选择上SMAP”—“下一个”—“管理工具”—“internet information service”打开---“”

2)hMailServer

导航栏:---SMTP host name:localhost

在reg.php中写一句mail函数即可

 

 

Mail(“{$_POST[mail]}”)”,” 激活码

“http://localhost/user_system/do_reg.php”

 

使用网络SMTP服务器:域名-smtp.163.com

申请的邮箱

注意:要求提供用户名和口令

linan@163.com

3)socket类

Mail.class.php

原创粉丝点击