Skip to content

Latest commit

 

History

History
553 lines (425 loc) · 33.4 KB

应急.md

File metadata and controls

553 lines (425 loc) · 33.4 KB

应急


免责声明

本文档仅供学习和研究使用,请勿使用文中的技术源码用于非法用途,任何人造成的任何负面影响,与本人无关.


应急离不开调查取证,请配合 取证 使用

大纲


相关文章

应急案例

溯源案例

指南

资源

环境模拟


威胁情报

情报中心

样本分析检测

恶意样本查询


钓鱼监测


暗网监测


URL分析


IP分析

在线查询

相关工具

  • wgpsec/tig - Threat Intelligence Gathering 威胁情报收集,旨在提高蓝队拿到攻击 IP 后对其进行威胁情报信息收集的效率。

PassiveDNS

Passive DNS 对安全研究非常重要,因为它可以在前期帮助我们构建出目标的基础设施结构,并且可以得到以下三方面的答案

  1. 该域名曾经绑定过哪些 IP
  2. 这个 IP 有没有其他的域名
  3. 该域名最早/最晚什么时候出现

相关资源


IOCs

相关文章

相关资源

APT事件


系统层面

Windows 应急工具

Linux 应急工具

病毒分析工具

相关文章

TTP

  1. 在网络设备上确认下 nat 前后是哪台?不要搞错机器
  2. 疑似机器上查端口
  3. 疑似机器上查进程
  4. 查内网安全设备上的日志

Rootkit

什么是 Rootkit

Rootkit 是一种特殊的程序(或一组程序),通常与木马、后门等其他恶意程序结合使用。

Rootkit 主要任务是隐藏并长期驻留在感染机器上,从事各类恶意活动,达到高隐藏高持久化目的。

相关文章

Rootkit 检测工具

  • chkrootkit - 本地检查 rootkit 的工具
    wget ftp://ftp.pangeia.com.br/pub/seg/pac/chkrootkit.tar.gz
    tar zxvf chkrootkit.tar.gz
    cd chkrootkit-*
    make sense
    ./chkrootkit
  • Rootkit Hunter - 查找 rootkit 的工具
    wget https://svwh.dl.sourceforge.net/project/rkhunter/rkhunter/1.4.6/rkhunter-1.4.6.tar.gz
    tar -zxvf rkhunter-1.4.6.tar.gz
    cd rkhunter-1.4.6
    ./installer.sh --install
    rkhunter -c
  • process_list - 隐藏进程检测工具
  • dgoulet/kjackal - Linux Rootkit Scanner
  • nbulischeck/tyton - Kernel-Mode Rootkit Hunter
  • bytedance/Elkeid - Elkeid是一个云原生的基于主机的安全(入侵检测与风险识别)解决方案。
  • qilingframework/qiling - 一个高级二进制仿真框架,能够模拟多平台,多架构的运行环境,通过类似于沙箱的环境运行 Rootkit,并且记录 Rootkit 运行过程中的行为。这为恶意Rootkit 的检测和分析提供了一种全新的思路。传统沙箱对恶意软件的检测很难达到这种细粒度的监控效果。
  • Gui774ume/ebpfkit-monitor - 该工具可用于静态分析 eBPF 字节码或在运行时监控可疑的 eBPF 活动

DLL劫持

相关工具


勒索软件

识别样本

解密工具


Web层面

暗链

Tips

  1. 在整个网站目录下面搜索关键字 spider 来定位黑链,因为直接访问黑链链接发现并不存在,而从搜索引擎去访问的时候却存在,说明黑链文件判断了访问的来源是否是搜索引擎,而一般这种做法就是来判断 UA 是否来自搜索引擎,关键字就是 spider,搜索后找到黑链文件
  2. 搜索引擎 : 黑产关键字+site:"网站域名",查看更多 黑产seo关键词
  3. 用工具批量爬取网站外链查看有无关键字

检测工具

相关文章


webshell后门

本地扫描工具

在线扫描

Tips

find /var/www/ -name "*.php" |xargs egrep 'assert|phpspy|c99sh|milw0rm|eval|(gunerpress|(base64_decoolcode|spider_bc|shell_exec|passthru|($_\POST[|eval (str_rot13|.chr(|${"_P|eval($_R|file_put_contents(.*$_|base64_decode'

grep -i -r eval($_post /app/website/*

find /app/website/ -type f|xargs grep eval($_post

网络层面

IP 信息


DDOS

SYN 类攻击

特征:

  1. 服务器 CPU 占用率很高。
  2. 出现大量的 SYN_RECEIVED 的网络连接状态。
  3. 网络恢复后,服务器负载瞬时变高。网络断开后瞬时负载下将。

UDP 类攻击

由于 UDP 是一种无连接的协议,因此攻击者可以伪造大量的源 IP 地址去发送 UDP 包,此种攻击属于大流量攻击。正常应用情况下,UDP 包双向流量会基本相等,因此在消耗对方资源的时候也在消耗自己的资源。

特征:

  1. 服务器 CPU 占用率很高。
  2. 网卡每秒接受大量的数据包。
  3. 网络 TCP 状态信息正常。

CC 类攻击

原理就是借助代理服务器针对目标系统的消耗资源比较大的页面不断发起正常的请求,造成对方服务器资源耗尽,一直到宕机崩溃。因此在发送 CC 攻击前,我们需要寻找加载比较慢,消耗资源比较多的网页。比如:需要查询数据库的页面、读写硬盘的文件等。

特征:

  1. 服务器 CPU 占用率很高。
  2. Web 服务器出现类似 Service Unavailable 提示。
  3. 出现大量的 ESTABLISHED 的网络连接状态且单个 IP 高达几十个甚至上百个连接。
  4. 用户无法正常访问网站页面或打开过程非常缓慢,软重启后短期内恢复正常,几分钟后又无法访问。

icmp flood

此攻击属于大流量攻击,其原理就是不断发送不正常的 ICMP 包(所谓不正常就是 ICMP 包内容很大),导致目标带宽被占用。但其本身资源也会被消耗,并且目前很多服务器都是禁 ping 的(在防火墙里可以屏蔽 ICMP 包),因此这种方式已经落伍。

syn flood

原理就是伪造大量不存在的 IP 地址,阻断 TCP 三次握手的第三次 ACK 包,即不对服务器发送的 SYN+ACK 数据包做出应答。由于服务器没有收到客户端发来的确认响应,就会一直保持连接直到超时,当有大量这种半开连接建立时,即造成 SYN Flood 攻击。

特征:

  • 大量 syn+ack netstat -n -p TCP | grep SYN_RECV

防御:

  • /proc/sys/net/ipv4/tcp_max_syn_backlog : 在 Linux 上可以修改以下配置提高 TCP 半开连接队列大小的上限
  • /proc/sys/net/ipv4/tcp_synack_retries : 可以减少半开状态下等待 ACK 消息的时间或者重试发送 SYN-ACK 消息的次数

CLDAP 协议 Reflection DDoS

在 CLDAP 中只提供三种操作:searchRequest、searchResponse (searchResEntry和searchResDone)、abandonRequest,在不提供身份验证功能的情况下,客户端可以使用 UDP 数据报对 LDAP 服务器 389 端口发起操作请求。由于客户端发起 searchRequest 后服务端将返回 searchResEntry 和 searchResDone 两条应答消息,一般情况下执行该操作将具有较小数据包反射出较大数据包的效果,这一缺陷随即被利用进行反射放大 DDoS 攻击

ACK flood

ACK Flood 攻击是在 TCP 连接建立之后进行的。所有数据传输的 TCP 报文都是带有 ACK 标志位的,主机在接收到一个带有 ACK 标志位的数据包的时候,需要检查该数据包所表示的连接四元组是否存在。如果存在则检查该数据包所表示的状态是否合法,然后再向应用层传递该数据包。如果在检查中发现该数据包不合法(例如:该数据包所指向的目的端口在本机并未开放),则主机操作系统协议栈会回应 RST 包告诉对方此端口不存在。

当发包速率很大的时候,主机操作系统将耗费大量的精力接收报文、判断状态,同时要主动回应 RST 报文,正常的数据包就可能无法得到及时的处理。这时候客户端的表现就是访问页面反应很慢,丢包率较高。

Connection Flood

典型的并且非常有效的利用小流量冲击大带宽网络服务的攻击方式。这种攻击的原理是利用真实的 IP 地址向服务器发起大量的连接,并且建立连接之后很长时间不释放。长期占用服务器的资源,造成服务器上残余连接 (WAIT 状态) 过多,效率降低,甚至资源耗尽,无法响应其它客户所发起的连接。

DNS 放大攻击

伪造 DNS 数据包,向DNS服务器发送域名查询报文了,而 DNS 服务器返回的应答报文则会发送给被攻击主机。放大体现在请求 DNS 回复的类型为 ANY,攻击者向服务器请求的包长度为69个字节,而服务器向被攻击主机回复的 ANY 类型 DNS 包长度为535字节,大约放大了7倍(放大倍数视具体情况)。 构造受害者 IP 为源 IP 大量 DNS 服务器实现 DDoS

防御:IPS 规则、关闭递归查询,DNS解析器应仅向源自受信任域的设备提供其服务,acl,增大带宽、联系ISP上游阻断。

慢速连接攻击

针对 HTTP 协议,先建立起 HTTP 连接,设置一个较大的 Conetnt-Length,每次只发送很少的字节,让服务器一直以为 HTTP 头部没有传输完成,这样连接一多就很快会出现连接耗尽。

Slowloris 攻击

Slowloris 是一种慢速连接攻击,Slowloris 是利用 Web Server 的漏洞或设计缺陷,直接造成拒绝服务。其原理是:以极低的速度往服务器发送 HTTP 请求,Apache 等中间件默认会设置最大并发链接数,而这种攻击就是会持续保持连接,导致服务器链接饱和不可用。Slowloris 有点类似于 SYN Flood 攻击,只不过 Slowloris 是基于 HTTP 协议。

网络层 DDoS 防御

  1. 限制单 IP 请求频率。
  2. 网络架构上做好优化,采用负载均衡分流。
  3. 防火墙等安全设备上设置禁止 ICMP 包等。
  4. 通过 DDoS 硬件防火墙的数据包规则过滤、数据流指纹检测过滤、及数据包内容定制过滤等技术对异常流量进行清洗过滤。
  5. 采用 ISP 近源清洗,使用电信运营商提供的近源清洗和流量压制,避免全站服务对所有用户彻底无法访问。这是对超过自身带宽储备和自身 DDoS 防御能力之外超大流量的补充性缓解措施。

应用层 DDoS 防御

  1. 优化操作系统的 TCP/IP 栈。
  2. 应用服务器严格限制单个 IP 允许的连接数和 CPU 使用时间。
  3. 编写代码时,尽量实现优化并合理使用缓存技术。尽量让网站静态化,减少不必要的动态查询。网站静态化不仅能大大提高抗攻击能力,而且还给骇客入侵带来不少麻烦,至少到现在为止关于 HTML 的溢出还没出现。
  4. 增加 WAF(Web Application Firewall)设备,WAF 的中文名称叫做 Web 应用防火墙。Web 应用防火墙是通过执行一系列针对 HTTP / HTTPS 的安全策略来专门为 Web 应用提供保护的一款产品。
  5. 使用 CDN / 云清洗,在攻击发生时,进行云清洗。通常云清洗厂商策略有以下几步:预先设置好网站的 CNAME,将域名指向云清洗厂商的 DNS 服务器;在一般情况下,云清洗厂商的 DNS 仍将穿透 CDN 的回源的请求指向源站,在检测到攻击发生时,域名指向自己的清洗集群,然后再将清洗后的流量回源。
  6. CDN 仅对 Web 类服务有效,针对游戏类 TCP 直连的服务无效。这时可以使用 DNS 引流 + ADS (Anti-DDoS System) 设备来清洗,还有在客户端和服务端通信协议做处理(如:封包加标签,依赖信息对称等)。

流量分析