云曦暑期学习第四周——流量、日志分析

1 日志分析

1.1 What is 日志

日志,是作为记录系统与服务最直接有效的方法。在日志中,可以发现访问记录以及发现攻击线索。日志分析也是最常用的分析安全 事件所采用的途径。系统日志和 web 日志分别记录了不同内容,为分析攻击提供了有效证据。

日志分析主要分成两种:

●Web日志分析

●系统日志分析

1.2 Web日志分析

1.2.1日志格式类型:

目前在比赛中比较常见的WEB日志格式主要有两类:

●Apache的NCSA日志格式,NCSA格式分为:

NCSA普通日志格式(CLF)

NCSA扩展日志格式(ECLF)

●IIS的W3C日志格式

1.2.2常用日志分析方法:

常见的日志分析方法有两种:

1.特征字符分析

2.访问频率分析

特征字符分析:

特征字符分析法:顾名思义,就是根据攻击者利用的漏洞特征,进行判断攻击者使用的是哪一种攻击。

常见的类型有以下:SQL注入、XSS跨站脚本攻击、恶意文件上传、一句话木马连接等。

SQL注入:

漏洞特征:存在SQL注入语句

常见的SQL注入语句有:

通过报错注入、布尔盲注、时间盲注判断是否存在注入:

字符型

 参数后加单引号,报错:sql1.php?name=admin'

 参数后加' and '1'='2和' and '1'='2,访问正常:sql1.php?name=admin' and '1'='1       /sql1.php?name=admin' and '1'='2

 参数后加' and sleep(3)  --,是否延迟3秒打开:sql1.php?name=admin' and/or sleep(3)--

数字型

参数后加单引号,报错:sql2.php?id=1'

参数后加and 1=1和and 1=2,访问正常:sql2.php?id=1 and 1=1/sql2.php?id=1 and 1=2

参数后加and sleep(5),是否延迟3秒打开:sql2.php?id=1 and sleep(5)

通过各种注入语句进行SQL注入攻击:

联合查询注入

union select

order by

报错注入(常见报错注入函数)

floor()

extractvalue()

updatexml()

geometrycollection()

multipoint()

polygon()

multipolygon()

linestring()

multilinestring()

exp()

访问频率分析:

访问频率分析:就是通过查看攻击者访问的频率来判断攻击者使用的是哪一种攻击。

常见的类型有有以下:SQL盲注、敏感目录爆破、账号爆破、Web扫描。

1.3系统日志分析

1.3.1  windows系统日志

简介

Windows系统默认以二进制XML Windows事件日志记录格式(由.evtx扩展名指定)将日志存储在%SystemRoot%\System32\Winevt\logs目录中。日志也可以使用日志订阅远程存储。对于远程日志记录,运行Windows Event Collector服务的远程系统订阅其他系统生成的日志。

类型

Windows日志一般在事件查看器中可以进行查看,通常分为五个:应用程序、安全、Setup、系统、转发事件。并且这五个中又以应用程序、安全以及系统日志较为常见。

应用程序日志

记录了应用程序的运行情况,包括运行出错、甚至于出错的原因

默认存放路径:%SystemRoot%\System32\Winevt\Logs\Application.evtx。

系统日志

记录操作系统组件产生的事件,主要包括驱动程序、系统组件和应用软件的崩溃以及数据丢失错误等。默认存放路径:%SystemRoot%\System32\Winevt\Logs\System.evtx

安全日志

记录系统的安全审计事件,包含各种类型的登录日志、对象访问日志、进程追踪日志、特权使用、帐号管理、策略变更、系统事件。这个日志一般是安全工程师重点关注对象。

默认存放路径:%SystemRoot%\System32\Winevt\Logs\Security.evtx

查看本地日志

Win+R打开运行框,输入eventvwr.msc打开事件查看器,当使用默认的审核策略时,显示的日志内容仅仅是一些简单的内容,当修改审核策略之后,日志记录的内容会有所增加


1.3.2Linux系统日志

Linux系统拥有非常灵活和强大的日志功能,可以保存几乎所有的操作记录,并可以从中检索出我们需要的信息。

大部分Linux发行版默认的日志守护进程为 syslog,位于 /etc/syslog 或 /etc/syslogd 或/etc/rsyslog.d,默认配置文件为 /etc/syslog.conf 或 rsyslog.conf,任何希望生成日志的程序都可以向 syslog 发送信息。

Linux系统内核和许多程序会产生各种错误信息、警告信息和其他的提示信息,这些信息对管理员了解系统的运行状态是非常有用的,所以应该把它们写到日志文件中去。完成这个过程的程序就是syslog。syslog可以根据日志的类别和优先级将日志保存到不同的文件中。

默认配置下,日志文件通常都保存在“/var/log”目录下。

常见的日志类型,但并不是所有的Linux发行版都包含这些类型
 

1.4日志分析例题

1.4.1[陇剑杯 2021]日志分析(问1)

 打开access.log文件,搜索200,发现www.zip文件

1.4.2[陇剑杯 2021]日志分析(问2)

 搜索tmp

 这串编码进行了url编码,解码一下,看到sess_car

 1.4.3[陇剑杯 2021]日志分析(问3)

 发现存在反序列化,类就是SplFileObject

 1.4.4 [陇剑杯 2021]简单日志分析(问1)

这一串看着就不正常,状态量为500,参数为user

 

1.4.5[陇剑杯 2021]简单日志分析(问2)

 把参数值解密

 绝对路径为

/Th4s_IS_VERY_Import_Fi1e

1.4.6[陇剑杯 2021]简单日志分析(问3)

 

2 流量分析

2.1简介

总的来说有以下几个步骤

  • 总体把握
    • 协议分级
    • 端点统计
  • 过滤赛选
    • 过滤语法
    • Host,Protocol,contains,特征值
  • 发现异常
    • 特殊字符串
    • 协议某字段
    • flag 位于服务器中
  • 数据提取
    • 字符串取
    • 文件提取

比赛中的流量分析可以概括为以下三个方向:

  • 流量包修复
  • 协议分析
  • 数据提取

2.2wireshark简介

2.3基本语法

2.3常见关键字

2.4 例题

2.4.1  [CISCN 2023 初赛]被加密的生产流量

右击modbus流量包,选择追踪TCP流 

 可以看到这一串被加密的字符

 解密一下,就得到flag啦

2.4.2 buuctf 被嗅探的流量

 

过滤http流

 看到在第五个流量包中存在image等图像文件,于是追踪流

得到flag

2.4.3 攻防世界 流量分析1

统计协议分级

 发现主要是tcp协议,就在tcp协议里面找flag

tcp contains "flag"

追踪tcp流,发现一串编码

 解码,发现进行了两次url编码。这是时间盲注

然后以时间为规则来晒选HTTP协议

sleep(3)持续的时间大概是0.018ms

查询语句:frame.time_delta>0.018&&http,

我们得到了以时间排序好的http报文

同样追踪tcp流,然后进行解码,得到ascii码,49对应1

然后以此类推,我是手动对比ascii,得到flag

flag{1qwy2781}

2.4.4 攻防世界 流量分析2

 协议分级 

尝试导出http流 

 得到很多txt文件,拼接起来

拼接得 fl{17uaji1l}

修改成flag

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值