Home >Backend Development >PHP Tutorial > 请问有经验的PHP老鸟,程序的安全性!

请问有经验的PHP老鸟,程序的安全性!

WBOY
WBOYOriginal
2016-06-13 13:51:09956browse

请教有经验的PHP老鸟,程序的安全性!?
讨论下开发PHP网站,除了操作系统和WEB服务软件,在程序本身安全方面应该注意那些

记得第一次给客户做的小站1个月就被坏蛋给黑了,检查发现居然在首页最下边被加了个 ,结果就是老弹广告。就可能是因为程序漏洞造成的。

还有听说工行的网站被恶搞,等等。

谢谢拉





------解决方案--------------------
呵呵,大家来点实际的
/*
*防注入处理
*/
if(!get_magic_quotes_gpc()){
immit(___FCKpd___0
POST);
immit(___FCKpd___0
GET);
immit(___FCKpd___0
COOKIE);
}
//防注入处理(为变量加入斜杠)函数
//参数 $array 为防注入变量数组
function immit(&$array){
foreach($array as $key=> $value){
if(!is_array($value)){
$array[$key]=addslashes($value);
}else{
immit($array[$key]);
}
}
}


php中如何避免sql注入攻击


if(!get_magic_quotes_gpc()){
callUserFunc(___FCKpd___0
GET, 'addslashes ');
callUserFunc(___FCKpd___0
POST, 'addslashes ');
}
就可以了,字段值加 ' 就可以了,如查询文章
"SELECT * FROM table WHERE id= '$id ' "

------解决方案--------------------
一般的主要注意以下几项:
脚本攻击(危害不太大主要是对客户端).
解决:将用户发表的文字用htmlspecialchars处理.

sql注入.
解决:
最好打开get_magic_quotes_gpc若未打开用addslashes替换用户以post或get方式传输的数据.
或限制传输的数据长度在安全范围内(比如限制1-2个char长),
或严格检查用户传输数据的类型.我见过有人在asp内检测关键字这是一个解决方法,但效率不高.

上传漏洞:
解决:
检查用户传输文件大小,限制其大小
检查用户传输文件的类型,绝对不允许用户传apache会解释的文件(检测文件后缀即可)

背份还原漏洞:
解决:
管理好管理员密码.做好日志

以上是我总结的一些黑客常用的攻击方法,还有什么方法希望大家补充,交流.

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn