安全运维

127 阅读3分钟

1、目录遍历漏洞

修复:把主目录下面目录浏览对勾去掉
在这里插入图片描述

2、执行权限

给image这种只保存图片,不需要执行权限的目录设置成,防止一句话木马图片或者后门图片木马,或者解析漏洞,绕过防御上传进网站的后门asp文件,放在这个目录只能当作图片解析,不能当作asp解析,后门不起作用的设置权限为"无"

所有文件夹默认都是是脚本和可执行文件,如果是无表明在这个目录或文件夹下面是没有权限执行任何操作,如果是纯脚本,那么这个目录或文件夹下面可执行文件就没有权限进行任何操作,脚本指asp、php这种脚本语言,可执行文件指exe、com这种可执行文件
在这里插入图片描述
访问后门文件
在这里插入图片描述
修复:
images文件夹执行权限设置成无
在这里插入图片描述
访问asp后门文件,不可解析
在这里插入图片描述
jpg、png、gif图片文件正常访问
在这里插入图片描述
注意:不可对整个网站设置执行权限为“无”,因为网站有很多正常目录与脚本是asp的,得保证正常文件可以访问,个别没有asp脚本的文件夹设置为执行权限“无”
上传后门时,将后门转移到其他目录或者根目录,基本上可逃避针对目录的操作,只能是换目录解决问题

在后门文件中执行cmd命令提示拒绝访问,是因为没有权限
在这里插入图片描述
原因:一般访问都是来宾用户权限,权限较低,其中administrators是管理员权限,sysytem是系统权限,权限在administrators之下,很多时候读取与运行模块不勾选,所以是拒绝访问
在这里插入图片描述

3、IP策略:协议与脚本

协议:
不可绕过,只能IP范围内访问网闸,满足协议要求
位置
在这里插入图片描述
脚本:可绕过
一般都是通过php函数获取客户端脚本
源码:

<?php
function getIp()
{
    if ($_SERVER["HTTP_CLIENT_IP"] && strcasecmp($_SERVER["HTTP_CLIENT_IP"], "unknown")) {
        $ip = $_SERVER["HTTP_CLIENT_IP"];
    } else {
        if ($_SERVER["HTTP_X_FORWARDED_FOR"] && strcasecmp($_SERVER["HTTP_X_FORWARDED_FOR"], "unknown")) {
            $ip = $_SERVER["HTTP_X_FORWARDED_FOR"];
        } else {
            if ($_SERVER["REMOTE_ADDR"] && strcasecmp($_SERVER["REMOTE_ADDR"], "unknown")) {
                $ip = $_SERVER["REMOTE_ADDR"];
            } else {
                if (isset ($_SERVER['REMOTE_ADDR']) && $_SERVER['REMOTE_ADDR'] && strcasecmp($_SERVER['REMOTE_ADDR'],
                        "unknown")
                ) {
                    $ip = $_SERVER['REMOTE_ADDR'];
                } else {
                    $ip = "unknown";
                }
            }
        }
    }
    return ($ip);
}

echo getIp();
?>

解释:
php的IP信息来源是在$_SERVER(超全局变量中):
‘HTTP_X_FORWARDED_FOR’、‘HTTP_CLIENT_IP’、‘REMOTE_ADDR’
REMOTE_ADDR:获取客户端IP地址(如果客户端使用代理服务器,获取最后一个代理服务器IP地址,该IP是不容易伪造的)
HTTP_CLIENT_IP:代理服务器发送的HTTP头(可能被修改)
HTTP_X_FORWARDED_FOR:代理服务器IP,经过多个代理服务器时,这个值类似如下:203.98.182.163,203.98.182.163,203.129.72.215(容易被修改)
HTTP_X_FORWARDED_FOR和HTTP_CLIENT_IP:都是通过HTTP头的形式获取IP信息,就很可能被用户进行修改。
REMOTE_ADDR:是及时生成的,不容易被修改。
访问测试
在这里插入图片描述
HTTP_X_FORWARDED_FOR和HTTP_CLIENT_IP:是检测代理的
使用代理访问如下图所示:会少一行内容
在这里插入图片描述
绕过方法:切换到IP范围内的代理或者伪造HTTP_X_FORWARDED_FOR
工具:火狐插件 x-forwarded或者burp suite
在这里插入图片描述
在这里插入图片描述
免费代理:百度搜索 快代理

4、登陆验证

默认设置,一般用户都是匿名访问
在这里插入图片描述
不启用匿名访问
在这里插入图片描述
得输入用户名密码才可以访问
在这里插入图片描述
注意:登陆验证无法绕过

5、日志分析

IIS日志

默认每天,默认路径如下图
在这里插入图片描述
一个网站对应一个日志文件夹,日志文件夹中前三个文件夹是自带的
在这里插入图片描述
打开一个日志文件,查看ex200301.log是2020年3月1日的日志
在这里插入图片描述

系统日志

点击我的电脑-》管理
应用程序:电脑上的应用程序 QQ、MYSQL
安全性:记录登陆用户的用户名、时间、登录状态
系统:系统上的日志,有一些服务
ThinPrint
在这里插入图片描述
安全性:
在这里插入图片描述

apache日志

phpstudy中apache日志默认关闭
开启方法,网址:news.zcypai.com/news/zhoubi…
修改配置文件-httpd.conf将##CustomLog “logs/access.log” common前面的注释符号##去掉,然后保存并重启即可
访问日志:access.log
在这里插入图片描述

MYSQL数据库日志

mysql开启日志sql语句
#查看日期情况
#show variables like ‘%general%’;
#开启日志
#SET GLOBAL general_log = ‘On’;
#指定日志文件
#SET GLOBAL general_log_file = ‘/var/lib/mysql/mysql.log’;
注意:windows环境下c://
在这里插入图片描述
操作数据库命令,查看是否成功记录进mysql.log日志
在这里插入图片描述
在这里插入图片描述