免责声明:用户因使用公众号内容而产生的任何行为和后果,由用户自行承担责任。本公众号不承担因用户误解、不当使用等导致的法律责任
**本文以攻防世界部分题为例进行演示,后续会对攻防世界大部分的流量分析题目进行演示,如果你感兴趣请关注**
目录
一:Flag trafficker
打开题目提示如下
翻译:我们嗅探到了某个疑似在网上查找旗帜相关内容的人的通信流量!遗憾的是,仅在其通信流量中搜索旗帜格式似乎行不通…… 你能找到泄露的旗帜吗?
没啥用的提示
打开如下所示,我们搜索http流量包
保存为html
打开得到flag
二:ez_usb
打开是键盘流量
经过分析发现其中有2.4.1,2.8.1,2.10.1.我们需要分离这些流量
tshark -r *.pcapng -T fields -e usb.capdata >*.txt
利用键盘流量脚本
经过分析发现只有2.8.1和2.10.1输出
2.8.1输出:
526172211a0700<CAP>c<CAP>f907300000d00000000000000c4527424943500300000002<CAP>a000000<CAP>02b9f9b0530778b5541d33080020000000666c61672<CAP>e<CAP>747874<CAP>b9b<CAP>a013242f3a<CAP>fc<CAP>000b092c229d6e994167c05<CAP>a7<CAP>8708b271f<CAP>fc<CAP>042ae3d251e65536<CAP>f9a<CAP>da87c77406b67d0<CAP>e6316684766<CAP>a86e844d<CAP>c81aa2<CAP>c72c71348d10c4<CAP>c<DEL>3d7b<CAP>00400700e
2.10.1输出:35c535765e50074a
经过分析发现2.8.1输出的为一个rar压缩包(52,61,72,21开头400700结尾),所以将cap包含的全部大写,然后去掉C[DEL]和最后一个字母e
526172211A0700CF907300000D00000000000000C4527424943500300000002A00000002B9F9B0530778B5541D33080020000000666C61672E747874B9BA013242F3AFC000B092C229D6E994167C05A78708B271FFC042AE3D251E65536F9ADA87C77406B67D0E6316684766A86E844DC81AA2C72C71348D10C43D7B00400700
打开winhex
得到压缩包后需要密码那应该就是2.10.1
c
成功拿到flag
三:USB
打开依旧为usb流量
依旧放入kali导出2.2.1并分离键盘流量
tshark -r *.pcapng -T fields -e usb.capdata >*.txt
删除没用的就是flag
四:破损的flag
打开后依旧为键盘流量
tshark -r *.pcap -T fields -e usb.capdata >*.txt
利用键盘流量脚本得到如下,这其实是一个屏幕键盘加密
Ujko=i(包含),以此类推得到flag(i m g u l f f l a g i s w e l c o m e t f j n u)
最后得到welcome_ to_ fjnu
五:秘密传输
打开随意追踪发现什么都没有
分析每一个流量包发现都有idenn....,这应该是一个16进制,我们在kali中将其提取出来
成功提取
tshark -r *.pcap -T fields -e ip.id > *.txt
放入随波逐流得到16进制转字符结果
将字符复制剔除多余的利用base91成功解密flag
六:键盘流量分析脚本
normalKeys = {"04": "a", "05": "b", "06": "c", "07": "d", "08": "e", "09": "f", "0a": "g", "0b": "h", "0c": "i",
"0d": "j", "0e": "k", "0f": "l", "10": "m", "11": "n", "12": "o", "13": "p", "14": "q", "15": "r",
"16": "s", "17": "t", "18": "u", "19": "v", "1a": "w", "1b": "x", "1c": "y", "1d": "z", "1e": "1",
"1f": "2", "20": "3", "21": "4", "22": "5", "23": "6", "24": "7", "25": "8", "26": "9", "27": "0",
"28": "<RET>", "29": "<ESC>", "2a": "<DEL>", "2b": "\t", "2c": "<SPACE>", "2d": "-", "2e": "=", "2f": "[",
"30": "]", "31": "\\", "32": "<NON>", "33": ";", "34": "'", "35": "<GA>", "36": ",", "37": ".", "38": "/",
"39": "<CAP>", "3a": "<F1>", "3b": "<F2>", "3c": "<F3>", "3d": "<F4>", "3e": "<F5>", "3f": "<F6>",
"40": "<F7>", "41": "<F8>", "42": "<F9>", "43": "<F10>", "44": "<F11>", "45": "<F12>"}
shiftKeys = {"04": "A", "05": "B", "06": "C", "07": "D", "08": "E", "09": "F", "0a": "G", "0b": "H", "0c": "I",
"0d": "J", "0e": "K", "0f": "L", "10": "M", "11": "N", "12": "O", "13": "P", "14": "Q", "15": "R",
"16": "S", "17": "T", "18": "U", "19": "V", "1a": "W", "1b": "X", "1c": "Y", "1d": "Z", "1e": "!",
"1f": "@", "20": "#", "21": "$", "22": "%", "23": "^", "24": "&", "25": "*", "26": "(", "27": ")",
"28": "<RET>", "29": "<ESC>", "2a": "<DEL>", "2b": "\t", "2c": "<SPACE>", "2d": "_", "2e": "+", "2f": "{",
"30": "}", "31": "|", "32": "<NON>", "33": "\"", "34": ":", "35": "<GA>", "36": "<", "37": ">", "38": "?",
"39": "<CAP>", "3a": "<F1>", "3b": "<F2>", "3c": "<F3>", "3d": "<F4>", "3e": "<F5>", "3f": "<F6>",
"40": "<F7>", "41": "<F8>", "42": "<F9>", "43": "<F10>", "44": "<F11>", "45": "<F12>"}
nums = []
keys = open(r"2.10.1.txt")
for line in keys:
if len(line) != 17: # 首先过滤掉鼠标等其他设备的USB流量
continue
nums.append(line[0:2] + line[4:6]) # 取一、三字节
keys.close()
output = ""
for n in nums:
if n[2:4] == "00":
continue
if n[2:4] in normalKeys:
if n[0:2] == "02": # 表示按下了shift
output += shiftKeys[n[2:4]]
else:
output += normalKeys[n[2:4]]
else:
output += ''
print('output :' + output)
七:总结
本文介绍了多个与网络流量分析相关的挑战,主要涉及USB键盘流量、HTTP流量和加密数据的解密。首先,通过分析HTTP流量包,成功提取了隐藏的旗帜信息。接着,通过分离和分析USB键盘流量,解密了多个压缩包和加密信息,最终获取了多个flag。其中,使用了tshark工具提取数据,并通过WinHex和脚本进行进一步分析。最后,通过追踪和提取特定流量包中的16进制数据,利用Base91解密成功获取了最终的flag。这些挑战展示了网络流量分析在信息安全中的重要性,以及如何通过工具和脚本解密隐藏信息。
(需要源代码及各类资料联系博主免费领取!!还希望多多关注点赞支持,你的支持就是我的最大动力!!!)