龙空技术网

Web 环境安全 优化建议例

我举个例子 35

前言:

如今小伙伴们对“apache777权限”大致比较珍视,我们都需要了解一些“apache777权限”的相关知识。那么小编也在网上收集了一些对于“apache777权限””的相关资讯,希望小伙伴们能喜欢,同学们快快来学习一下吧!

Web 环境安全包含常见易出现安全问题的 Web 支撑服务组件,典型的如 PHP、Apache、Tomcat、Nginx、IIS、MySQL 、Redis、JBoss、Jetty、vsFTPd。

必备要求建议从官方下载稳定版组件进行部署安装,注意不要下载和使用 beta 版本。Web 服务组件必须以普通账户权限运行。禁止 HTTP 目录索引,外部用户可直接访问 Index/ 等目录。不允许使用弱密码,需使用随机字符串作为初始默认密码。合理配置目录访问权限,禁止未授权的目录访问行为,如 .git/.svn 等目录 。默认关闭组件或程序调试模式,避免敏感信息泄露。优化建议PHP 安全优化建议控制脚本访问权限

PHP 默认配置允许 PHP 脚本程序访问服务器上的任意文件,为避免 PHP 脚本访问不该访问的文件,从一定程度上限制了 PHP 木马的危害,需设置 PHP 只能访问网站目录或者其他必须可访问的目录。

/usr/local/apache2/web/为网站根目录,打开php.ini,安全加固配置方式如下:

open_basedir = /usr/local/apache2/web/

需要多个目录时,以冒号隔开如:

open_basedir = /usr/local/apache2/web/:/tmp/:/data/adc/

隐藏 PHP 版

攻击者在信息收集时候无法判断程序版本,增加防御系数。打开php.ini 安全加固配置方式如下,隐藏版本设置:

expose_php =off

off

修改 PHP 配置文件php.ini,添加如下配置:

safe_mode = on

safe_mode_gid = off

关闭全局变量,配置如下:

register_globals = off

er_globa

Web 木马程序通常利用 PHP 的特殊函数执行系统命令,查询任意目录文件,增加修改删除文件等。PHP 木马程序常使用的函数为: dl, eval, assert, exec, popen, system, passthru, shell_exec 等。

修改 PHP 配置文件php.ini,添加如下配置:

disable_functions= dl,eval,assert,exec,passthru,popen,proc_open,shell_exec,system,phpinfo,assert

可酌情调整函数内容。

nfo,assert

magicquotesgpc 会把引用的数据中包含单引号 ' 和双引号 " 以及反斜线 \ 自动加上反斜线,自动转译符号,确保数据操作的正确运行,magicquotesgpc 的设定值将会影响通过 Get/Post/Cookies 获得的数据,可以有效的防止 SQL 注入漏洞。

打开php.ini,安全加固配置方式如下,打开 magicquotesgpc 设置:

magicquotesgpc = On*

otesgpc 设置:

magicquotesgpc = On*

其他参考配置开启 magic_quotes_runtime,对文件或者数据库中取出的数据过滤,能很好的解决二次注入漏洞。

magic_quotes_runtime = On关闭错误信息提示:

display_errors = off

display_startup_errors = off开启错误日志记录,闭 display_errors 后能够把错误信息记录下来,便于查找服务器运行的原因,同时也要设置错误日志存放的目录,建议跟 webserver 的日志放在一起。

log_errors = On

error_log = /usr/local/apache2/logs/php_error.log不允许调用 dl:

enable_dl = off关闭远程文件,允许访问 URL 远程资源使得 PHP 应用程序的漏洞变得更加容易被利用,PHP 脚本若存在远程文件包含漏洞可以让攻击者直接获取网站权限及上传 Web 木马,一般会在 PHP 配置文件中关闭该功能,若需要访问远程服务器建议采用其他方式,如 libcurl 库:

allow_url_fopen = off

allow_url_include = off开启 http only:

session.cookie_httponly = 1

cookie domain开启 https secure:

session.cookie_secure = 1适当的 PHP redirects:

cgi.force_redirect = 0SQL 的安全模式:

sql.safe_mode = onApache 安全优化建议Ap

Apache 安装好后,存在默认的示例页面:

需要删除两个目录:icons、manual ,并且注释或删除 Apache 配置文件中的以下两行内容:

Alias /icons/ "/usr/share/apache2/icons/"

AliasMatch ^/manual(?:/(?:de|en|es|fr|ja|ko|ru))?(/.*)?$ "/usr/share/apache2/manual$1

如果 Apache 以 daemon 普通用户启动,则黑客通过网站漏洞入侵服务器后,将获得 Apache 的 daemon 权限,因此需要确认网站 Web 目录和文件的属主与 Apache 启动用户不同,防止网站被黑客恶意篡改和删除。网站 Web 目录和文件的属主可以设置为 root 等(非 Apache 启动用户)。Web 目录权限统一设置为755,Web 文件权限统一设置为644( cgi 文件若需执行权限可设置为 755),只有上传目录等需要可读可写权限的目录可以设置为777。

假设网站目录为/usr/local/apache2/htdocs/,上传目录为/usr/local/apache2/htdocs/upload/

chown -R root:root /usr/local/apache2/htdocs/

chmod 755 /usr/local/apache2/htdocs/

find /usr/local/apache2/htdocs/ -type d -exec chmod 755 {} \;

find /usr/local/apache2/htdocs/ -type f -exec chmod 644 {} \;

chmod –R 777 /usr/local/apache2/htdocs/upload/

为了防止黑客在777权限目录中上传或者写入 Web 木马,因此需要设置 777 权限的目录不能执行或访问脚本。禁止执行或访问脚本的安全配置如下:

Web 木马,因此需要设置 777 权限的目录不能执行或访问脚本。禁止执行或访问脚本的安全配置如下:

<Directory "/usr/local/apache2/htdocs/yourpath">

Options None

AllowOverride None

Order deny,allow

deny from all

<FilesMatch "\.(jpg|jpeg|gif|png)$">

Order deny,allow

allow from all

</FilesMatch>

</Directory>

消除目录浏览漏洞

Apache 默认允许目录浏览,如果目录下没有索引文件则会出现目录浏览漏洞。

需要把 Apache 配置文件中的全部 “Indexes” 删除或者改为 “-Indexes”

开启访问日志

开启日志有助于发生安全事件后方便进行入侵回溯,分析原因及定位攻击者:

CustomLog /www/logs/access_log common

默认情况下,Apache 已开启访问日志记录,请在 Apache 配置文件中确认已开启访问日志。

其他参考配置FollowSymLinks此指令为默认启用,因此在创建符号链接到网页服务器的文档 root 目录时,请慎重行事。例如,请勿为“/”提供符号链接。ServerTokens ProductOnly

serversignature Off

Apache 默认输出的 banner 会泄漏关键信息,如服务器 OS 类型、Apache 版本、安装的应用程序类型及版本。暴露过多的信息只会给黑客带来便利。

在 Apache 配置文件中,修改 ServerToken、ServerSignatre 设置(如果没有这两行配置,请自行添加)。UserDir此指令可确认系统中用户帐户是否存在,所以要默认禁用UserDir指令。

要在服务器上启用用户名目录浏览,则须使用以下指令:

UserDir enabled

UserDir disabled root

这些指令用于/root/之外的所有用户目录,可激活其用户目录浏览这一功能。在禁用帐户列表中添加用户,要在UserDir disabled命令行添加以空格分隔的用户列表。Tomcat 安全优化建议Apache 软件下载

应该从 Tomcat 官方提供的下载页面进行安装部署。

Tom

编辑server.xml配置文件,确保在 HOST 标签中有记录日志功能,配置如下:

<valve cassname=”org.apache.catalina.valves.AccessLogValve”

Directory=”logs” prefix=”localhost_access_log.”

Suffix=”.txt”

Pattern=”common” resloveHosts=”false”/>

false”/>

注意:

默认 Tomca

为了限制脚本的访问权限,防范 webshell 木马,建议启动时增加安全参数启动,如采用如下方式启动 Tomcat:

Tomcat/bin/startup.sh –security

n/startup.

删除tomcat/webapps/目录下的所有文件及目录,已知webapps目录包含:

Tomcat/webapps/docs/

Tomcat/webapps/examples/

Tomcat/webapps/host-manager/

Tomcat/webapps/manager/

Tomcat/webapps/ROOT/

删除 Tomcat 的 admin 控制台软件:删除{Tomcat安装目录}\webapps下admin.xml文件。

删除 Tomcat 的 Manager 控制台软件:删除{Tomcat安装目录}\webapps下manager.xml文件。

安装目录}\webapps下manager.xml文件。

删除 jspx 文件解析

Tomcat 默认是可以解析 jspx 文件格式的后缀,解析 jspx 给服务器带来了极大的安全风险,若不需要使用 jspx 文件,建议删除对 jspx 的解析,具体操作为修改 conf/web.xml 文件,将如下

Tomcat 在程序执行失败时会有错误信息提示,可能泄漏服务器的敏感信息,需要关闭错误提示信息。可以通过指定错误页面的方式不将错误信息显示给用户,修改tomcat/conf/web.xml,增加如下配置项:

<error-page>

<error-code>500</error-code>

<location>/500.jsp</location>

</error-page>

r-code>

<location>/500.jsp</location>

</error-page>

注意:

可以根据需要自行增加相应的错误码,常见的如500,404等,location 选项为指定跳转的页面,该 jsp 文件需要自己生成。

Nginx 安全优化建议Nginx 软件的下载

应该从 Nginx 官方提供的下载页面下载进行部署按照,需要下载最新稳定版本。注意不要下载

cat/etc/nginx/nginx.conf

Nginx 默认不允许目录浏览,请检查目录浏览的相关配置,确保没有目录浏览漏洞。确保 autoindex 的配置为 off ,即 autoindex off 或者没有配置 autoindex。

没有目录

开启日志有助于发生安全事件后回溯分析整个事件的原因及定位攻击者。

默认情况下,Nginx 已开启访问日志记录,请在 Nginx 配置文件中确认已开启访问日志access_log

/backup/nginx_logs/access.log combined;

N

cat/etc/nginx/nginx.conf

添加这行配置:server_tokens off

ces

删除 Nginx 默认首页 index.html,业务可以自行创建默认首页代替之。

删除如下配置信息:

这行配置:server_tokens off

删除默认页

删除 Nginx 默认首页 index.html,业务可以自行创建默认首页代替之。

删除如下配置信息:

:

location /doc { root /usr/share; autoindex on; allow 127.0.0.1; deny all; } location /images { root /usr/share; autoindex off; }

删除首页 index.html 后,新建其他首页内容不允许出现如下首页内容:

其他配置隐藏 Nginx 版本信息,打开配置文件 隐藏版本设置:

Server_tokens off;

攻击者在信息收集时候无法判断程序版本,增加防御系数。禁用非必要的请求方法:

if ($request_method !~ ^(GET|HEAD|POST)$ ) { return 444; }

trace 请求用于网络诊断,会暴露信息,只允许 GET、HEAD、POST 请求,其他请求直接返回444状态码 (444是 Nginx 定义的响应状态码,会立即断开连接,没有响应正文,TRACE 请求 Nginx 内置405拒绝)。

标签: #apache777权限 #apache servertoken