linux nginx php木马排查及加固整理

1、改变目录和文件属性,禁止写入

find -type f -name \*.php –exec chmod 444 {} \;
find -type d -exec chmod 555 {} \;

注:当然要排除上传目录、缓存目录等;
同时最好禁止chmod函数,攻击者可通过chmod来修改文件只读属性再修改文件

2、php配置
禁用危险函数

passthru,exec,system,chroot,scandir,chgrp,chown,shell_exec,proc_open,proc_get_status,ini_alter,
ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,stream_socket_server,escapeshellcmd,popen,dl,
syslog,show_source

3、nginx配置

限制一些目录执行php文件 Continue reading

常用MYSQL安全设置加固

1.修改root用户口令,删除空口令
2.删除默认数据库和数据库用户
3.改变默认mysql管理员帐号
4.关于密码的管理
5.使用独立用户运行msyql
6.禁止远程连接数据库
7.限制连接用户的数量
8.用户目录权限限制
9.命令历史记录保护
10.禁止MySQL对本地文件存取
11.MySQL服务器权限控制
12.使用chroot方式来控制MySQL的运行目录
13.关闭对无关的Web程序访问的支持
14.数据库备份策略
15. Mysqld安全相关启动选项
16.information_schema 安全

1.修改root用户口令,删除空口令

缺省安装的MySQL的root用户是空密码的,为了安全起见,必须修改为强密码,所谓的强密码,至少8位,由字母、数字和符号组成的不规律密码。使用MySQL自带的命令mysaladmin修改root密码,同时也可以登陆数据库,修改数据库mysql下的user表的字段内容,修改方法如下所示:

# /usr/local/mysql/bin/mysqladmin -u root password “upassword” //使用mysqladmin
#mysql> use mysql;
#mysql> update user set password=password(‘upassword’) where user=’root’;
#mysql> flush privileges; //强制刷新内存授权表,否则用的还是在内存缓冲的口令

2.删除默认数据库和数据库用户
一般情况下,MySQL数据库安装在本地,并且也只需要本地的php脚本对mysql进行读取,所以很多用户不需要,尤其是默认安装的用户。MySQL初始化后会自动生成空用户和test库,进行安装的测试,这会对数据库的安全构成威胁,有必要全部删除,最后的状态只保留单个root即可,当然以后根据需要增加用户和数据库。 Continue reading

常用PHP安全设置加固

1.隐藏php版本
2.禁用危险的php函数
3.命令注入攻击
4.SQL注入攻击
5.xss攻击
6.会话劫持攻击
7.关闭注册全局变量
8.上传文件
9.远程包含、本地包含
10.Php.ini包含补丁文件,我们可以根据需要,通过它包含或者nginx的模块

1.隐藏php版本

expose_php=off

2.禁用危险的php函数
popen,pentl_exec,passthru,exec,system,scandir,chgrp,chown,shell_exec,proc_open,proc_get_status,ini_alter,ini_alter,ini_restore,dl,pfsockopen,openlog,syslog,readlink,symlink,popepassthru,stream_socket_server,show_source,escapeshellcmd,escapeshellarg,curl_exec,curl_multi_exec,parse_ini_file,assert
至于eval函数,我们用suhosin把这些全部都加进eval的黑名单 Continue reading

nginx文件类型错误解析漏洞

漏洞介绍:nginx是一款高性能的web服务器,使用非常广泛,其不仅经常被用作反向代理,也可以非常好的支持PHP的运行。80sec发现 其中存在一个较为严重的安全问题,默认情况下可能导致服务器错误的将任何类型的文件以PHP的方式进行解析,这将导致严重的安全问题,使得恶意的攻击者可 能攻陷支持php的nginx服务器。 Continue reading

服务器安全设置.卸载极其危险的 Wscript.Shell 和 shell.application 组件

载极其危险的 Wscript.Shell 和 shell.application 组件,这2 个组件的主要作用是asp调用exe程序。
几乎所有正常的网站都用不到,而要黑服务器却几乎都需要调用这个组件来执行操作
运 行:regsvr32 /u c:\winnt\system32\wshom.ocx 即可卸载 Wscript.Shell
运 行:regsvr32 /u c:\winnt\system32\shell32.dll 即可卸载 shell.application

如果是window2000/20003则将winnt改为windows再运行即可

同服务器多网站的安全设置(windows server+apache+php)

在windows环境下,如果用IIS做webserver,可以配合ntfs为每个网站设置不同的用户权限,从而让一个网站的程序只能访问自己目 录下的内容.

而在windows的apache环 境下,由于apache默认是最高的system权限,因此非常危险,若不做安全设置,随便传一个php shell到任何一个网站上,就能控制整台服务器。 Continue reading

IIS中的上传目录权限设置问题

虽然 Apache 的名声可能比 IIS 好,但我相信用 IIS 来做 Web 服务器的人一定也不少。说实话,我觉得 IIS 还是不错的,尤其是 Windows 2003 的 IIS 6(马上 Longhorn Server 的 IIS 7 也就要来了,相信会更好),性能和稳定性都相当不错。但是我发现许多用 IIS 的人不太会设置 Web 服务器的权限,因此,出现漏洞被人黑掉也就不足为奇了。但我们不应该把这归咎于 IIS 的不安全。如果对站点的每个目录都配以正确的权限,出现漏洞被人黑掉的机会还是很小的(Web 应用程序本身有问题和通过其它方式入侵黑掉服务器的除外)。下面是我在配置过程中总结的一些经验,希望对大家有所帮助。 Continue reading