面试分享:国护面试题(一)

栏目:汽车资讯  时间:2023-08-06
手机版

  1、事件发生:发生安全告警事件,运维人员发现问题。

  2、信息收集和分析:收集事件信息,分析网络相关程序、日志和数据,判断事件的严重性,评估严重等级,是否向上进行汇报。

  3、是否进行上报:①否,则事件关闭。②是,事件处理。各个部门通力合作,处理安全事件、具体解决问题、避免存在漏洞未修补、后门未清除等残留问题。

  编写报告,然后事件关闭。处理完事件后编写安全应急分析处理报告。

  4、分析方向:文件分析、日志分析、进程分析、身份信息分析、网络分析、配置分析和监控分析

  5、文件分析:

  find / -mmin -2 | grep etc

  ls --ful-time passwd

  md5sum passwd 可以更具md5sum hash值进行一个精准监控

  6、日志分析

  ①LINUX日志分析

  cd /var/log

  ls

  cat messages //服务启动

  cat secure //安全日志

  cat secure | grep su //关注例如登录成功的日志

  cat secure | grep Fa //登录失败的日志

  ②windows日志分析

  我的电脑》管理》计算机管理》事件查看器》windows日志》安全

  应用日志分析

  apache日志:

  cat access_log | grep “2022:17:29” | wc -l //观察某一分钟多少次请求

  7、进程分析:

  ①linux

  topps

  etstat-ntplu

  systemctl list-unit-files 查看开机启动服务

  systemctl status 服务 查看服务状态active运行

  crontab -l 查看计划任务

  cd /etc/cron.d cat /etc/cron.hourly

  ②windows

  任务管理器

  任务计划程序

  CPU或内存资源占用过多、时间过高

  进程的路径不合法

  正在运行的进程、服务、程序

  计划任务

  文件hash查看

  8、身份信息分析

  本地以及域账号用户

  cd /var/log

  cat secure | grep test001 分析用户创建和登录情况

  异常的身份验证

  net user

  9、网络分析

  网络设备配置

  cd /ect/sysconfig/network-scripts

  cat ifcfg-eth0

  DNS配置

  路由配置

  监听端口和相关服务

  最近建立的网络连接

  RDP/VPN/SSH等会话

  10、配置分析

  cat /etc/selinux/config

  查看Linux SE,IPTABLES等配置

  查看环境变量

  11、监控分析

  如zabbix等监控查看

  find / -mmin -2 | grep etc 最近两分钟修改过的文件并匹配关注的文件

  ls --full-time passwd 查看文件修改时间

  md5sum passwd 查看文件hash

  LINUX日志目录

  /var/log

  cat 文件名 查看文件

  cat 文件名 | grep 关键字

  cat 文件名 | grep 关键字 | wc -l 统计

  top 查看CPU内存相关信息

  netstat -ntplu 正在监听的端口

  systemctl list-unit-files 查看开机启动服务

  systemctl status 服务名 查看服务状态

  certutil -hashfile 文件名 win10系统查看文件哈希

  ipconfig/all 查看网络信息

  net user 查看用户

  netstat -an | more 查看网络连接

  iptables -L 查看iptables

  echo $PATH LINUX查看环境变量

  Path windows 查看环境变量

  CS流量特征:

  基础特征:心跳包 请求特征:下发的指令、URL路径、老版本固定的UA头 源码特征:checksum8(92L 93L) 当进行二次开发魔改后的CS,可以提取样本。

  端口号:msf默认使用4444端口作为反向连接的端口 数据内容:msf数据包通常包含特定的字符串("meterpreter"、"revshell"等) 特征:

  请求中的UA值为:antSword/*

  也有可能是:Mozilla/5.0(Windows NT) AppleWebKit/(KHTML,like Gecko) Chrome/* Safari/

  请求中可以监测到的关键词:eval Eval assert等

  请求体中存在@ini_set("display_errors","0");@set_time_limit(0);(这种开头的可能是蚁剑或者菜刀)

  加密后的明显参数多是0x开头的参数名,以及dirname、get_current_user函数的字眼(解密请求后判断),后面为加密数据的数据包可以鉴定为蚁剑的流量特征。

  在命令执行时有目录标记[S]、[E]、[R]、[D]等,说明已经拿到shell了(在执行系统命令)

  Payload特征

  Php:assert、eval关键词执行

  Asp:eval在jsp中使用

  Java:同时会带有base64编码解码等字符特征

  老版本采用明文传输,较好辨认。新版本采用的是base64加密,检测思路是分析流量包,发现大量的base64加密密文就需要注意;

  请求头中的UA存在百度或者火狐;

  请求体中会存在QGluaV9zZXQ攻击的开头部分后面的部分需要base64解码;

  Z0跟随后面的payload的base64的数据,z0是菜刀的默认参数;

  Eval也会替换为assert的方式(也有可能为拼接)

  QGluaV9zZXQoImRpc3BsYXlfZXJyb3JzIiwiMCIpO0BzZXRfdGltZV9saW1pdCgwKTtpZihQSFBfVkVSU0lPTjwnNS4zLjAnKXtAc2V0X21hZ2ljX3F1b3Rlc19ydW50aW1lKDApO307ZWNobygiWEBZIik7J

  冰蝎1:冰蝎1有一个密钥协商过程,该过程为明文传输,且有两次流量,用来校验;

  冰蝎2:内置了很多的UA头,所以当某一个相同的IP重复请求,但是UA头不一样的时候,就需要注意。

  冰蝎3:因为省去了协商过程,所以流量上可以绕过很多,但是其他特征依旧保留,比如UA头冰蝎数据包总是伴随着大量的content-type:application…,但无论是GET还是POST,请求的http中,content-type为application/octet-stream还有他们的accept之类的长度总是等长,正常的根据应用场景和文件不同,长度是不同的。

  冰蝎4:

  UA字段:

  强特征:cookie字段,最后一个cookie的值出现;(尾值出现分号)。 请求中的accept头是:Accept:text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,/;q=0.8 payload特征:jsp会出现xc,pass字符和java反射,base64加解密等特征,php,asp则为普通的一句话木马。 响应,哥斯拉会响应三次。注意webshell连接,一般会设置长时间的连接,所以connection这里会是keep-alive。 响应头中的cache-control头是:cache-control:no-store.no-cache,must-revalidate 静态检测通过匹配特征码。特征值,危险函数来查找webshell的方法,只能查找已知的webshell,并且误报率漏报率会比较高,但是如果规则完善,可以降低误报率,但是漏报率会有所提升。优点:快速方便,对已知的webshell查找准确率搞,部署方便,一个脚本就能搞定。缺点:漏报率、误报率高,无法查找0day型webshell,而且容易被绕过。

  Linux下是nobody启动了bash,windows下是iis user启动了cmd,这些都是动态特征。再者是如果黑客反向连接的话,更加容易检测,agent和ids都可以抓现行。

  webshell总有一个http请求,如果我在网络层监控了http,并且检测到有人访问了一个从未访问过得文件,而且返回了200状态码,则很容易定位到webshell,这个便是http异常模型检测,就和检测文件变化一样,如果非管理员新增文件,则说明被人入侵了。缺点:黑客只要利用源文件就可以轻易绕过了,并且部署代价高,网站时常更新的话规则也要不断添加。

  ①将专门存放上传文件的文件夹里面的脚本类型文件解析为其他类型的文件,服务器不会以脚本类型来执行它。

  ②匹配文件夹里的脚本类型文件,将其设置为无法读取及操作。

  ③将文件上传到一个单独的文件夹,给一个二级的域名,然后不给这个虚拟站点解析脚本的权限。

  先由客户端发起一个web请求,中间件的各个独立的组件例如listener、Filter、servlet等组件会在请求过程中做监听、判断、过滤等操作,内存马利用请求过程在内存中修改已有的组件或者动态注册一个新的组件,插入恶意的shellcode达到持久化的控制服务器。

  首先判断是通过什么方法注入的内存马,可以先查看web日志中是否有可疑的web访问日志,如果是filter或者listener类型就会有大量的URL请求路径相同参数不同的,或者页面不存在但是返回200的,查看是否有类似于哥斯拉、蚁剑、冰蝎相同的url请求,哥斯拉和冰蝎的内存马注入流量特征与普通webshell的流量特征基本吻合。通过查看返回200的url路径对比web目录下是否真实存在文件,如果不存在大概率为内存马排查中间件的error.log日志,查看是否有可疑的报错,根据注入时间和方法,根据业务使用的组件排查是否可能存在java代码执行漏洞以及是否存在webshell,排查框架漏洞,反序列化漏洞。

  清除方式:①利用条件竞争把shell内容改写或者清除比较好用②重启服务③提前占用他的目录名

上一篇:搞笑电影排行(搞笑喜剧电影推荐)
下一篇:社区护士个人总结范文