前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >聊聊应急响应

聊聊应急响应

作者头像
crhua
修改2019-08-26 10:22:30
1K0
修改2019-08-26 10:22:30
举报
文章被收录于专栏:huasechuasec

“俗话说:好记性不如烂笔头,最近做了几个应急响应就来总结下。”

     应急响应分为四个阶段:前期沟通,事件处理,事件分析,报告交付,前期沟通主要是和客户交流事件情况,了解是什么安全事件,客户是否做了处理,如果做了处理,做了那些处理。了解相关情况后后,下一步,就是帮助客户止血,即处理安全事件,减轻客户损失。服务器恢复正常后,进行事件分析,通过排查日志还原攻击者的入侵轨迹,最后一步就是整理报告。

沟通贯穿整个应急响应流程,也是最重要的,切记不要一上来就查,了解事件原因才会事半功倍。

0x01 "止血"

    应急响应事件分为五大类,网络攻击事件,恶意程序事件,web恶意代码,信息破坏事件和其他事件,每个事件的具体描述如下

(图片来源:https://help.aliyun.com/document_detail/53549.html?spm=a2c4g.11186623.6.546.2101716ep738zG)

不同的安全事件止血的办法也不一样,下面介绍几种常规事件“止血”办法。

(1)web攻击事件

    例如网站存在注入、上传、或者RCE,首先给服务器加waf,阻断大部分攻击源,提升攻击成本,如果客户使用CMS建站,那么一定要按官方修复建议修复。

(2)支付安全事件

    首先禁用支付密钥或者关闭提现功能,避免金额进一步损失。然后了解支付/提现的业务流程,如果是第三方支付,那么需要第三方提供相关支持。 (3)数据泄露事件     首先确认泄露数据的真实性,根据数据时间、数据字段、数据内容、数据的大小来定位什么漏洞产生的,是拖库还是越权遍历。如果是拖库,那么下一步排查SQL注入、数据库密钥、getshell、备份文件等等。常规的业务场景通过越权获取到数据不是全量的。 (4)恶意程序事件     首先kill掉进程,如果是从远程下载的恶意程序,可以修改hosts绑定远程地址为0.0.0.0,然后在排查原因。 (5)webshell事件     服务器上存在webshell,攻击者的攻击思路可能是业务存在上传点,且未对上传做严格限制,或者是系统存在RCE漏洞可以写webshell,如果无法彻底删除webshell,那么通过计划任务删除webshell,封禁上传webshell的ip,添加waf等一系列措施,阻止webshell的产生。

0x02 Linux 排查思路

1.用户,查系统是否存在异常用户

cat  /etc/passwd

2.进程,查看是否存在异常进程,名字特别,CPU使用率高

top
ps aux

3.网络连接,查看服务器当前是否有异常连接,例如22端口连接的IP是国外的,那就要注意了。

netstat -antp

判断ip归属地脚本1.0版

#!/bin/bash
#linux
#print Foreign Address
connect=`busybox netstat -pant | grep ":" | awk '{print $5}'`;
#echo $connect;

#loop to get address
for i in $connect;do
temp_ip=`echo -e $i | cut -d ":" -f1`
#echo $temp_ip
temp=`echo -e $temp_ip | grep -E '^0'`
#echo $temp
if [[ $temp != $temp_ip ]]
then
    m=`curl -s https://www.ip.cn/index.php?ip=$temp_ip`
    echo $m
fi
done

4.计划任务

cat /var/log/cron | grep "bash"cat /var/log/cron | grep "wget"cat /var/log/cron | grep "cat"cat /var/log/cron | grep "id"cat /var/log/cron | grep -E -o "(([0-9]{1,3})\.([0-9]{1,3})\.([0-9]{1,3})\.([0-9]{1,3}))"cat /etc/crontab
ls -al /var/spool/cron/*cat /var/spool/cron/*
ls -al /etc/cron.d/*
for u in `cat /etc/passwd |cut -d ":" -f1`;do crontab -l -u $u; done

5.开机启动项

chkconfig --list

6.查看登录情况,历史登录成功ip和账号,当前登录成功账号ip

lastcat /etc/secure

7.查看ssh key

cat .ssh/authorized_keys 

8.查杀webshell  使用河马,但是误报有点大,或者自写的脚本。 9.查看日志     关于日志分析,一般是通过和客户沟通定位攻击点或者ip,然后在日志中查询完整路径,分析日志一般常用的命令有awk、grep、find。 统计top 10 IP

cat www.log | awk '{print $1}' | sort | uniq -c | sort -nr | more

统计访问admin/dashboard.html这个路径的ip

cat www.log | grep "admin/dashboard.html" | awk '{print $1}' | sort | uniq -c | sort -nr  | more

日志分析根据业务场景构造相应的命令,这里只是抛砖引玉。最近了解到一个python库 ngxtop,可以辅助日志分析,有兴趣的小伙伴可以了解下。

0x03 Windows 排查思路

1.用户,查看当前系统用户是否存在隐藏账号,或者guest账号被激活

(1)net user

(2)查看注册表HKEY_LOCAL_MACHINE\SAM\SAM\Domains\Account\Users\Names

2.进程

3.网络连接

4.开机启动项

5.补丁情况

6.漏洞情况

7.webshell查杀

8.日志分析

针对上述排查项,推荐几款工具

(1)360全家桶

(2)Autoruns

(3)D盾webshell查杀

(4)D盾防火墙

(5)火绒剑

0x04 总结

   从前期的沟通确认,到异常发现与追踪,最后刻画攻击行为,应急响应不仅仅是一场事件的处理,我觉得更重要的是攻击者的攻击思路,他在这个系统里做了什么,他为什么要这么做,他这么做得到了什么,换作是你,你发现了这个漏洞,你会怎么做,向高手学习,才能成长更快,总而言之,应急响应,任重道远。

本文系转载,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文系转载前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 0x01 "止血"
  • 0x02 Linux 排查思路
  • 0x03 Windows 排查思路
  • 0x04 总结
相关产品与服务
访问管理
访问管理(Cloud Access Management,CAM)可以帮助您安全、便捷地管理对腾讯云服务和资源的访问。您可以使用CAM创建子用户、用户组和角色,并通过策略控制其访问范围。CAM支持用户和角色SSO能力,您可以根据具体管理场景针对性设置企业内用户和腾讯云的互通能力。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档