24数证杯决赛
1. 分析网络流量包,请问目录遍历攻击开始时间是什么时候?(答案格式:1990-01-01 01:01:01)

2024-10-24 17:26:12
2. 分析网络流量包,可以发现哪种攻击行为? (1.0分)
A. 网络钓鱼
B. SQL注入
C. 拒绝服务攻击
D. 恶意软件传播
E. 中间人攻击

3. 分析网络流量包,黑客获取到的数据库名称是?(答案格式:小写)

把上面的表达式转换出来就是
1 2 3
| SELECT GROUP_CONCAT(table_name) FROM information_schema.tables WHERE table_schema = 'secret'
|
secret
4. 分析网络流量包,黑客通过时间盲注获取到的数据是什么?(答案格式:与实际大小写保持一致)

时间盲注,这里使用了sleep(3),就是如果满足条件就延迟三秒,从而达到获取数据的目的,题目中用的是字段的ascii码是否大于某个值,比如这里设定大于x+1,如果有回显,我们设定为x,如果没有回显,那就说明ascii码就是x+1了。 用数学方法表示就是x+1>=ascii码>x,比如第一个字符就是84有回显,但是83没有回显,所以,第一个字符的ascii码就是84

这里手搓也行,我这里用了ctfneta

这里附一个大佬写的脚本2024数证杯决赛个人 - WXjzc - 博客园
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65
| import pyshark import re
cap_file = r"G:\tmp\2024数证杯个人\时间盲注.pcapng"
cap = pyshark.FileCapture(cap_file, display_filter="http")
requests = {} pattern = r'200,1\),(\d{1,2}),1\)\)\)%3E(\d+),sleep' sqls = {}
for packet in cap: tcp_stream = packet.tcp.stream dic = { 'request_uri':'', 'response_code':'' } if 'HTTP' in packet: if hasattr(packet.http, 'request_method'): if tcp_stream not in sqls: dic['request_uri'] = packet.http.request_uri sqls[tcp_stream] = dic else: dic = sqls[tcp_stream] dic.update({'request_uri':packet.http.request_uri}) sqls[tcp_stream] = dic if hasattr(packet.http, 'response_code'): if tcp_stream not in sqls: dic['response_code'] = packet.http.response_code sqls[tcp_stream] = dic else: dic = sqls[tcp_stream] dic.update({'response_code':packet.http.response_code}) sqls[tcp_stream] = dic
words = {} for i in range(1,100): words[str(i)] = { '_min':0, '_max':9999 } for key,value in sqls.items(): uri = value['request_uri'] response_code = value['response_code'] matches = re.findall(pattern, uri) if matches: pos = matches[0][0] asc = int(matches[0][1]) _min = words[pos]['_min'] _max = words[pos]['_max'] if response_code == '200': if asc < _max: words[pos]['_max']=asc else: if asc > _min: words[pos]['_min']=asc
for key,value in words.items(): if value['_max'] == value['_min']+1: print(chr(value['_max']),end='')
cap.close()
|
5. 分析网络流量包,黑客使用什么webshell管理工具控制服务器?(答案格式:请写中文名,无需填写版本号)

筛选一下传post的数据
webshell管理工具的流量特征分析
这是冰蝎的一个强特征

Accept: text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2
随便点进去看就能看到

冰蝎
6. 分析网络流量包,黑客通过后门执行的最后一条命令是什么?(答案格式:与实际大小写保持一致)
最简单的办法,一把梭:

这里最后一个上传是No.453829,ctfneta选择冰蝎流量分析:

最后一个指令是$cmd=”type login.php“;\r\nmain($cmd);’