php 安全设置总结。
打开php.ini,查找disable_functions,按如下设置禁用一些函数
disable_functions =phpinfo,exec,passthru,shell_exec,system,proc_open,popen,curl_exec,curl_multi_exec,parse_ini_file,show_source
Nginx为例
1、为防止跨站感染,要做虚拟主机目录隔离(我是直接利用fpm建立多个程序池达到隔离效果)
2、上传目录、include类的库文件目录要禁止代码执行(Nginx正则过滤)
3、path_info漏洞修正:
if ($request_filename ~* (.*)\.php) {
set $php_url $1;
}
if (!-e $php_url.php) {
return 404;
}
4、重新编译Web Server,隐藏Server信息。
5、打开相关级别的日志,追踪可疑请求,请求者IP等相关信息。
改变目录和文件属性,禁止写入
find -type f -name \*.php -exec chmod 444 {} \;
find -type d -exec chmod 555 {} \;
注:当然要排除上传目录、缓存目录等;
同时最好禁止chmod函数,攻击者可通过chmod来修改文件只读属性再修改文件!
PHP配置
禁用危险函数:
dl,eval,exec,passthru,system,popen,shell_exec,proc_open,proc_terminate,curl_exec,curl_multi_exec,show_source,touch,escapeshellcmd,escapeshellarg
MySQL账号安全:
禁止mysql用户外部链接,程序不要使用root账号,最好单独建立一个有限权限的账号专门用于Web程序。
查杀木马、后门
常见的一句话后门:
grep -r –include=*.php ‘[^a-z]eval($_POST’ . > grep.txt
grep -r –include=*.php ‘file_put_contents(.*$_POST\[.*\]);’ . > grep.txt
把搜索结果写入文件,下载下来慢慢分析,其他特征木马、后门类似。有必要的话可对全站所有文件来一次特征查找,上传图片肯定有也捆绑的,来次大清洗。
查找近2天被修改过的文件:
find -mtime -2 -type f -name \*.php
注意:攻击者可能会通过touch函数来修改文件时间属性来避过这种查找,所以touch必须禁止
最后要及时补上Web程序漏洞
总结
木马、后门查杀是个漫长的过程,网站一旦被入侵任何旮旯拐角都可能留下后门。中途可能和攻击者进行神交,摸清攻击者的性格、习性等,这些都有利于查杀。
php 安全设置总结。相关推荐
- Kubernetes 中 设置pod不部署在同一台节点上
在k8s中,节点的调度主要由亲和性和污点来进行控制的. 而在亲和性部分由分为了节点亲和性和节点反亲和性. 节点亲和性是指在pod部署时,尽量(软策略)或者必须满足(硬策略)部署在某些节点上. ...
- 在Dockerfile中设置G1垃圾回收器参数
在Dockerfile中设置G1垃圾回收器参数 ENV JAVA_OPTS="\ -server \ -XX:SurvivorRatio=8 \ -XX:+DisableExplicitGC ...
- nginx配置http、https访问,nginx指定ssl证书,阿里云腾讯云华为云设置nginx https安全访问
nginx配置http.https访问 要设置https访问需要从对应的云厂商申请证书,并下载Nginx证书到服务器. 我这里从阿里云申请了免费的域名证书,然后将证书放置在服务器的/etc/ssl/. ...
- Not injecting HSTS header since it did not match the requestMatcher HSTS设置问题解决
HSTS请求设置 错误描述:在使用文件上传功能时,form表单提交带有header数据的请求时遇到这个问题,报错如下: Not injecting HSTS header since it did n ...
- springboot设置文件上传大小(tomcat默认1M)
application.yml # 设置文件上传大小(tomcat默认1M) server:tomcat:max-http-form-post-size: -1 spring:servlet:mult ...
- IDEA设置单个文件、单个包、单个项目的编码格式
IDEA设置单个文件.单个包.单个项目的编码格式 File-> Settings-> File Enclodings 选择编码格式,确定即可. 注意:此处的编码格式设定以后,该包已经存在的 ...
- jar包部署shell脚本编写,在服务器上部署jar包,在Linux服务器上部署服务,设置编码格式,设置内存管理
准备步骤: 1.安装java环境,知道java安装目录 2.将jar包拖放或发送至服务器中(目录自定义) 一.编写shell脚本,将以下代码放在shell脚本中,将shell脚本放在jar包同级目录下 ...
- 设置select下拉框不可修改的→“四”←种方法
设置select下拉框为不可修改的几种方法: 因为select的特殊性,导致它不能像input表单一样简单地设置一个readonly来限制修改,所以,我们需要进行别的操作! 1.为下拉框添加样式,可以 ...
- 设置linux初始root密码
简单一步设置linux第一个root密码 sudo passwd root #输入当前账户密码 #输入准备设置的root密码 #确认密码 如下所示:
- mysql关于时间的面试题,mysql时间设置默认值MySQL常见面试题
1.limit(选出10 到20 条) select * from students order by id limit 9,10; 2.MySQL 会使用索引的操作符号 =,>,=,betwe ...
最新文章
- Future有返回值的线程
- Vue 动态创建实例
- DenyHosts教程:防暴力破解SSH密码
- 分治算法-02凸包问题
- tr闭包_嵌套函数及闭包
- a5d27 emmc启动 修改1
- java rmi接口 超时设置_Spring RMI客户端读超时设置 | 学步园
- php iis日志分析,星外系统IIS日志分析常用的几个命令小结
- python趋势回归_Python 回归分析 - 树懒学堂
- 金融行业灾备压力大?看中和农信如何从容应对
- PostgreSQL内核扩展之 - ElasticSearch同步插件
- 【安装配置】SAS9.4安装
- 公众平台服务号、订阅号、企业微信、小程序的区别
- 文件上传,出现400 的错误问题
- “百花齐放”电商时代,网易七鱼打造专业电商客服
- python 股票交易接口 github_GitHub - Higgsbit/vnpy: 基于python的开源交易平台开发框架...
- ObjectArx尺寸标注设置
- 广义表与二叉树之间的相互转换
- IMD/IMT/IME/OMD/OMF等工艺了解
- LeetCode——13. 罗马数字转整数
热门文章
- SQL基础操作_2_操作多个表
- lamber表达式sql_lambda表达式转换sql
- RDIFramework.NET V3.3 Web版角色授权管理新增角色对操作权限项、模块起止生效日期的设置...
- MySQL 随笔记录
- 宠了4年的老婆,说走就走,没有一点情份,你会怎么做
- jQuery框架+DWR框架实现的Java Web中的Ajax效果(异步请求,局部刷新)
- Windows Server 2012:服务器虚拟化 学习笔记
- 在听伏尔加纤夫曲 超酷
- IIS网站打不开错误解决方案集锦(一):编译器错误消息: 编译器失败,错误代码为 -1073741502。...
- SQL SERVER提供了大量的WINDOWS和SQLSERVER专用的排序规则