国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 開(kāi)發(fā) > PHP > 正文

PHP注入的安全規(guī)范

2024-05-04 23:05:46
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

php注入的安全防范通過(guò)上面的過(guò)程,我們可以了解到php注入的原理和手法,當(dāng)然我們也同樣可以制定出相應(yīng)該的防范方法:

首先是對(duì)服務(wù)器的安全設(shè)置,前面的windows服務(wù)器的安全設(shè)置我們已經(jīng)講了,不再重復(fù),這里主要是php+mysql的安全設(shè)置和linux主機(jī)的安全設(shè)置。對(duì)php+mysql注射的防范,首先將magic_quotes_gpc設(shè)置為on,display_errors設(shè)置為off,如果id型,我們利用intval()函數(shù)將其轉(zhuǎn)換成整數(shù)類(lèi)型,如代碼:

$id=intval($id);
mysql_query=”select *from example where articieid=’$id’”;或者這樣寫(xiě):mysql_query("select * from article where articleid=".intval($id)."")

如果是字符型就用addslashes()過(guò)濾一下,然后再過(guò)濾”%”和”_”如:

$search=addslashes($search);
$search=str_replace(“_”,”/_”,$search);
$search=str_replace(“%”,”/%”,$search);
當(dāng)然也可以加php通用防注入代碼:
/*************************

php通用防注入安全代碼

說(shuō)明:

判斷傳遞的變量中是否含有非法字符

如$_post、$_get

功能:

防注入

**************************/
//要過(guò)濾的非法字符
$arrfiltrate=array("'",";","union");
//出錯(cuò)后要跳轉(zhuǎn)的url,不填則默認(rèn)前一頁(yè)
$strgourl="";
//是否存在數(shù)組中的值
function funstringexist($strfiltrate,$arrfiltrate){
foreach ($arrfiltrate as $key=>$value){
if (eregi($value,$strfiltrate)){
return true;
}
}
return false;
}
//合并$_post 和 $_get
if(function_exists(array_merge)){
$arrpostandget=array_merge($http_post_vars,$http_get_vars);
}else{
foreach($http_post_vars as $key=>$value){
$arrpostandget[]=$value;
}
foreach($http_get_vars as $key=>$value){
$arrpostandget[]=$value;
}
}
//驗(yàn)證開(kāi)始
foreach($arrpostandget as $key=>$value){
if (funstringexist($value,$arrfiltrate)){
echo "alert(/"neeao提示,非法字符/");";
if (empty($strgourl)){
echo "history.go(-1);";
}else{
echo "window.location=/"".$strgourl."/";";
}
exit;
}
}
?>
/*************************
保存為checkpostandget.php
然后在每個(gè)php文件前加include(“checkpostandget.php“);即可
**************************/

另外將管理員用戶(hù)名和密碼都采取md5加密,這樣就能有效地防止了php的注入。

還有服務(wù)器和mysql也要加強(qiáng)一些安全防范。

對(duì)于linux服務(wù)器的安全設(shè)置:

加密口令,使用“/usr/sbin/authconfig”工具打開(kāi)密碼的shadow功能,對(duì)password進(jìn)行加密。
禁止訪(fǎng)問(wèn)重要文件,進(jìn)入linux命令界面,在提示符下輸入:
#chmod 600 /etc/inetd.conf    //改變文件屬性為600
#chattr +i  /etc/inetd.conf     //保證文件屬主為root
#chattr –i  /etc/inetd.conf     // 對(duì)該文件的改變做限制  
禁止任何用戶(hù)通過(guò)su命令改變?yōu)閞oot用戶(hù)
在su配置文件即/etc/pam.d/目錄下的開(kāi)頭添加下面兩行:
auth  sufficient  /lib/security/pam_rootok.so debug
auth  required  /lib/security/pam_whell.so group=wheel
刪除所有的特殊帳戶(hù)
#userdel  lp等等    刪除用戶(hù)
#groupdel lp等等    刪除組
禁止不使用的suid/sgid程序
#find / -type f /(-perm -04000  - o –perm -02000 /) /-execls –lg {} /;

發(fā)表評(píng)論 共有條評(píng)論
用戶(hù)名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 迁安市| 贵州省| 石棉县| 大新县| 南充市| 嘉定区| 永年县| 民县| 廊坊市| 繁昌县| 松江区| 平定县| 仪征市| 新巴尔虎右旗| 项城市| 杂多县| 陈巴尔虎旗| 宁阳县| 古田县| 鹤山市| 安泽县| 凭祥市| 项城市| 子长县| 静安区| 凤冈县| 阜阳市| 前郭尔| 枣强县| 镇远县| 侯马市| 邳州市| 高要市| 武清区| 志丹县| 灵寿县| 耒阳市| 柯坪县| 本溪市| 米脂县| 烟台市|