应急响应常问面试题

应急响应常问面试题

常见的应急响应事件分类

web入侵:网页挂马、主页篡改、Webshell系统入侵:病毒木马、勒索软件、远控后门网络攻击:DDOS攻击、DNS劫持、ARP欺骗

基本思路流程

收集信息:收集客户信息和中毒主机信息,包括样本判断类型:判断是否是安全事件,何种安全事件,勒索、挖矿、断网、DoS 等等抑制范围:隔离使受害⾯不继续扩⼤深入分析:日志分析、进程分析、启动项分析、样本分析方便后期溯源清理处置:杀掉进程,删除文件,打补丁,删除异常系统服务,清除后门账号防止事件扩大,处理完毕后恢复生产产出报告:整理并输出完整的安全事件报告

Windows入侵排查思路

1.检查系统账号安全
2.查看服务器是否有弱口令,远程管理端口是否对公网开放(使用netstat -ano 命令、或者问服务器管理员)3.lusrmgr.msc 命令查看服务器是否存在可疑账号、新增账号,如有管理员群组的(Administrators)里的新增账户,如有,请立即禁用或删除掉
4.用 D 盾或者注册表中查看服务器是否存在隐藏账号、克隆账号
5.结合日志,查看管理员登录时间、用户名是否存在异常
6.检查方法:Win+R 打开运行,输入“eventvwr.msc”,回车运行,打开“事件查看器”,导出 Windows 日志–安全,利用 Log Parser 进行分析

检查异常端口、进程

netstat -ano检查端口连接情况,是否有远程连接、可疑连接
任务管理器-进程
检查启动项、计划任务、服务
查看系统版本以及补丁信息
查找可疑目录及文件
日志分析
自动化查杀

Linux入侵排查思路

建立连接后 所有请求 **Cookie的格式都为: Cookie: PHPSESSID=; path=/;**
静态分析:
各种语言的webshell中都会存在**16位数的连接密码**,默认变量为key 
who查看当前登录用户(tty本地登陆 pts远程登录)
w  查看系统信息,想知道某一时刻用户的行为
uptime查看登陆多久、多少用户,负载
1、用户信息文件/etc/passwd
root:x:0:0:root:/root:/bin/bash
account:password:UID:GID:GECOS:directory:shell
用户名:密码:用户ID:组ID:用户说明:家目录:登陆之后shell
注意:无密码只允许本机登陆,远程不允许登陆
2、影子文件/etc/shadow
root:$6$oGs1PqhL2p3ZetrE$X7o7bzoouHQVSEmSgsYN5UD4.kMHx6qgbTqwNVC5oOAouXvcjQSt.Ft7ql1WpkopY0UV9ajBwUt1DpYxTCVvI/:16809:0:99999:7:::
用户名:加密密码:密码最后一次修改日期:两次密码的修改时间间隔:密码有效期:密码修改到期到的警告天数:密码过期之后的宽限天数:账号失效时间:保留
3、/etc/passwd 存储一般的用户信息,任何人都可以访问;/etc/shadow 存储用户的密码信息,只有 root 用户可以访问
4、检查计划任务检查方法:
a、单击【开始】>【设置】>【控制面板】>【任务计划】,查看计划任务属性,便可以发现木马文件的路径
b、单击【开始】>【运行】;输入 cmd,然后输入at,检查计算机与网络上的其它计算机之间的会话或计划任务,如有,则确认是否为正常连接
5、服务自启动:检查方法:单击【开始】>【运行】,输入services.msc,注意服务状态和启动类型,检查是否有异常服务
6、自动化查杀
病毒查杀:
检查方法:下载安全软件,更新最新病毒库,进行全盘扫描
webshell查杀:检查方法:选择具体站点路径进行webshell查杀,建议使用两款webshell查杀工具同时查杀,可相互补充规则库的不足、例如:D盾、CloudWalker

基本历史命令

通过.bash_history查看帐号执行过的系统命令
1、root的历史命令
histroy
2、打开/home各帐号目录下的.bash_history,查看普通帐号的历史命令
系统信息:
查看当前系统状态 top
操作系统信息 uname -a
查看当前系统进程信息 ps
查看历史命令 history
列出本机所有的连接和监听的端口 netstat
查看谁在使用某个端口 lsof
用户登录:查看当前用户登录系统情况 who
分析超级权限账户 awk-F:‘{if($3==0)print $1}’/etc/passwd
查看可登录的账户 cat/etc/passwd|grep ‘/bin/bash’
查看用户错误的登录信息 lastb
查看所有用户最后的登录信息 lastlog
查看用户最近登录信息 last
/var/log/ 其中,/var/log/wtmp 存储登录成功的信息、btmp存储登录失败的信息、utmp存储当前正在登录的信息查看空口令账户 awk-F:‘length($2)==0 {print $1}’/etc/shadow

检查异常端口

netstat -antlp|more
查看下pid所对应的进程文件路径,
运行ls -l /proc/$PID/exe或file /proc/$PID/exe($PID 为对应的pid 号)

检查异常进程

ps aux | grep pid

检查开机启动项

开机启动配置文件
/etc/rc.local
/etc/rc.d/rc[0~6].d

检查定时任务

crontab -l 列出某个用户cron服务的详细内容
Tips:默认编写的crontab文件会保存在 (/var/spool/cron/用户名 例如: /var/spool/cron/root
crontab -r 删除每个用户cront任务(谨慎:删除所有的计划任务)
crontab -e 使用编辑器编辑当前的crontab文件
/1 * * * * echo "hello world" >> /tmp/test.txt 每分钟写入文件
2、利用anacron实现异步定时任务调度
重点关注/var/spool/cron/*
/etc/crontab/etc/cron.d/*
/etc/cron.daily/*
/etc/cron.hourly/*
/etc/cron.monthly/*
/etc/cron.weekly/
/etc/anacrontab
/var/spool/anacron/*

检查服务

chkconfig --list 命令,可以查看系统运行的服务检查异常文件检查系统日志

Linux的登录日志查看文件

日志默认存放位置:/var/log/
查看可登录的账户 cat/etc/passwd|grep ‘/bin/bash’
查看所有用户最后的登录信息 lastlog
查看用户最近登录信息 last 其中,/var/log/wtmp 存储登录成功的信息、btmp 存储登录失败的信息、utmp 存储当前正在登录的信息
查看当前用户登录系统情况 who

日志分析

系统日志
分析方法:
a、前提:开启审核策略,若日后系统出现故障、安全事故则可以查看系统的日志文件,排除故障,追查入侵者的信息等b、Win+R打开运行,输入“eventvwr.msc”,回车运行,打开“事件查看器”
C、导出应用程序日志、安全日志、系统日志,利用Log Parser进行分析
WEB访问日志分析方法:
a、找到中间件的web日志,打包到本地方便进行分析。
b、推荐工具:Window下,推荐用 EmEditor 进行日志分析,支持大文本,搜索效率还不错。
Linux下,使用Shell命令组合查询分析

挖矿常用手段

未授权访问或弱口令:Redis 未授权访问、Docker API 未授权访问、Hadoop Yarn 未授权访问、NFS 未授权访问、Rsync 弱口令、PostgreSQL 弱口令、Tomcat 弱口令、SSH 弱口令、Telnet 弱口令、Windows 远程桌面弱口令

远程命令执行漏洞:WebLogic XML 反序列化漏洞、Jenkins 反序列化、Jboss 远程代码执行、Spring 远程代码执行、ElasticSearch 命令执行、永恒之蓝、Struts2 系列漏洞、常见 CMS 的远程命令执行漏洞

新爆的高危漏洞:一般每次爆发新的高危漏洞,都会紧跟一波大规模的全网扫描利用和挖矿

清除挖矿木马

原因排查:
一旦发现服务器被挖矿,应该首先查看挖矿进程所属的用户,根据挖矿进程的运行用户去排查该用户下是否还运行着其它进程确定这些进程是否有上述经常被恶意利用的漏洞。如果有常见的漏洞,则应该重点对此进行排查找到原因
清除木马:
1.及时隔离主机
部分带有蠕虫功能的挖矿木马在取得本机的控制权后,会以本机为跳板机对同一局域网内的其他主机进行已知漏洞的扫描和进一步利用, 所以发现挖矿现象后,在不影响业务的前提下应该及时隔离受感染主机,然后进行下一步分析
2.删除文件、阻断与矿池通讯
iptables -A INPUT -S xmr.crypto- pool.fr -j DROPiptables -A OUTPUT -d xmr.crypto- pool.fr -j DROP
3.清除定时任务
大部分挖矿进程会在受感染主机中写入定时任务来完成程序的驻留,当安全人员只清除挖矿木马时,定时任务会再次从服务器下载挖矿进程或者直接执行挖矿脚本,导致挖矿进程清除失败
4.清除启动项
有的挖矿进程为了实现长期驻留,会向系统中添加启动项来确保系统重启后挖矿进程还能重新启动,所以在清除时还应该关注启动项中的内容如果有可疑的启动项,也应该进行排查,确认是挖矿进程后,对其进行清除
5.kill 挖矿进程
对于单进程挖矿程序,直接结束挖矿进程即可。但是对于大多数的挖矿进程,如果挖矿进程有守护进程,应先杀死守护进程再杀死挖矿进程,避免清除不彻底在实际的清除工作中,应找到本机上运行的挖矿脚本,根据脚本的执行流程确定木马的驻留方式, 并按照顺序进行清除, 避免清除不彻底
6.清除公钥文件
在用户 home 目录的 .ssh 目录下放置 authoruzed_keys 文件,从而免密登录该机器也是一种常见的保持服务器控制权的手段。在排查过程中应该查看该文件中是否有可疑公钥信息,有的话直接删除,避免攻击者再次免密登录该主机

服务器存在webshell,如何处理?

及时隔离主机
定位事件范围,查看文件 webshell 文件的创建时间,对 webshell 取证样本
通过创建时间结合日志分析可疑行为,以及启动用户的其他进程确定漏洞
清除 webshell 及残留文件,修复漏洞
尝试复现攻击路径,还原攻击链

排查 shell 应该用什么命令来进行排查

find 命令
find /var/www/html -name "*.php" |xargs egrep 'assert|eval|phpinfo\(\)|\(base64_decoolcode|shell_exec|passthru|file_put_contents\(\.\*\$|base64_decode\('

如何检测webshell(各类webshell工具的特征请查阅上一篇文章)

静态检测:
通过匹配特征码,特征值,危险函数函数来查找 webshell 的方法,只能查找已知的 webshell

动态检测:
webshell 传到服务器了,在执行函数时这些对于系统调用、系统配置、数据库、文件的操作动作都是可以作为判断依据

日志检测:
使用 webshell 一般不会在系统日志中留下记录,但是会在网站的 web 日志中留下 webshell 页面的访问数据和数据提交记录

语法检测:
语法语义分析形式,是根据php 语言扫描编译的实现方式,进行剥离代码、注释,分析变量、函数、字符串、语言结构的分析方式,来实现关键危险函数的捕捉方式这样可以完美解决漏报的情况

数据包或者日志,你的分析思路是什么,以及你会用到哪些工具或者那些网站进行查询?

用流量监测的安全设备,比如天眼,查看报文,分析报文里和 host 和网站目录路径,查看是否可疑,使用微步查询 host 是否为恶意,使用 wireshark 对数据包深度分析
看一下请求的网站路径,源 IP 与目的 IP 地址,host 字段的值以及发包内容等
工具有 wireshark,网站的话微步在线等威胁情报中心

文件上传和命令执行,有看过相关日志吗

文件:可能在系统有上传功能或者有文本编辑器,看一下是否有 base64 加密或者 url 加密,解码验证一下是否有恶意代码

系统日志:有没有 web 容器做了一些危险行为,比如 bash 反弹 shell 等

网络应用日志:有没有异常的网站文件,类似 webshell 等,就有可能是命令执行

给你一个比较大的日志,应该如何分析

攻击规则匹配,通过正则匹配日志中的攻击请求
统计方法,统计请求出现次数,次数少于同类请求平均次数则为异常请求
白名单模式,为正常请求建立白名单,不在名单范围内则为异常请求
HMM 模型,类似于白名单,不同点在于可对正常请求自动化建立模型,从而通过正常模型找出不匹配者则为异常请求
借助日志分析工具,如 LogForensics 

如何分析被代理出来的数据流

分析数据包请求头中的 xff、referer 等收集有用的信息

一台主机在内网进行横向攻击,你应该怎么做?

确定攻击来源,是不是员工内部误操作,比如询问运维是否有自动化轮训脚本
如果没有,确定是攻击,结合时间点,根据设备信息,看一下安全事件,进程,流量
找到问题主机:
开始应急响应流程:准备、检测、遏制、根除、恢复、跟踪,具体的操作要交给现场运维去处理

如何发现钓鱼邮件

邮件系统异常登录告警、员工上报、异常行为告警、邮件蜜饵告警
推荐接入微步或奇安信的情报数据、对邮件内容出现的 URL 做扫描,可以发现大量的异常链接

钓鱼邮件如何防御、处置

屏蔽办公区域对钓鱼邮件内容涉及站点、URL 访问
1.根据办公环境实际情况可以在上网行为管理、路由器、交换机上进行屏蔽
2.邮件内容涉及域名、IP 均都应该进行屏蔽
3.对访问钓鱼网站的内网 IP 进行记录,以便后续排查溯源可能的后果

屏蔽钓鱼邮件

1.屏蔽钓鱼邮件来源邮箱域名
2.屏蔽钓鱼邮件来源 IP
3.有条件的可以根据邮件内容进行屏蔽
4.删除还在邮件服务器未被客户端收取钓鱼邮件

处理接收到钓鱼邮件的用户

1.根据钓鱼邮件发件人进行日志回溯
2.此处除了需要排查有多少人接收到钓鱼邮件之外,还需要排查是否公司通讯录泄露。采用 TOP500 姓氏撞库发送钓鱼邮件的攻击方式相对后续防护较为简单。如果发现是使用公司通讯录顺序则需要根据通讯录的离职情况及新加入员工排查通讯录泄露时间。毕竟有针对性的社工库攻击威力要比 TOP100、TOP500 大很多
3.通知已接收钓鱼邮件的用户进行处理
4.删除钓鱼邮件
5.系统改密
6.全盘扫毒后续:溯源、员工培训提升安全意识

如何查看区分是扫描流量和手动流量

(扫描数据量大,请求有规律,手动扫描间隔较少)

遇到.exe文件如何处理?

首先看它的来源和去向,然后可以下载但不运行,放入微步沙箱中,看是否有后门
若有后门,就用 IDA 反汇编得到恶意攻击者的有用信息,再进一步描绘出攻击者画像进行溯源
  • 2
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值