第十二届全国大学生信息安全竞赛
0x00 Saleae
操作内容:
下载下来是一个”.logdata”文件,百度搜索后,发现需要用到Saleae Logic,百度搜索它的官网,下载软件
用它打开Saleae.logicdata
一共四个串口,猜测是SPI传输协议,再根据其波形判断
0:规律性 等宽 猜测是 CLK
1:无波形 猜测是主输出端 MOSI
2:波形宽度不一 猜测携带数据 为主输入端 MISO
3:数据传输是低电平 猜测为CS偏选端
选择SPI分析
Save 获得Flag
FLAG值:
FLAG{12071397-19d1-48e6-be8c-784b89a95e07}
0x01 24C
操作内容:
下载下来是一个”.logdata”文件,根据上一题经验,直接打开
两个串口,猜测为I2C传输协议
使用I2C直接分析,发现只有一半Flag。
将分析结果导出进行分析,发现先进行了写入在进行读取,I2C协议在读取写入之前传输操作地址,
首先对0X20,换算为十进制32,进行写入操作:依次写入“f163bdf4e}“
之后分析读出,读操作对00开始,依次读出“flag{c46d9e10-e9b5-4d90-a883-41c“,之后回应为NAK,代表已经读到最后数据,此时恰好是第31位,与刚刚写入的数据衔接。
第三短波形,从09开始进行写操作,依次写入“ac“,覆盖掉原有的”9e”
此时得到最终flag
FLAG值:
FLAG{c46dac10-e9b5-4d90-a883-41cf163bdf4e}
0x02 puzzles
看题目,就是解出a1,a2,a3,a4,part1,part2,part3,part4就出来flag了。a1,a2,a3,a4用线代的高斯消去法转为矩阵做,解出(a1=4006,a2=3053,a3=2503,a4=2560)。part1看样子是找规律,试了递减递加的差之后不对,又有个队员说素数,果断得到part1=26365399。part2,part4是高数,part3是大物的题解出part2,3,4就行了,然后按题目转成十六进制就是最后flag了。
FLAG值:
flag{01924dd7-1e14-48d0-9d80-fa6bed9c7a00}
0x03 easygo
Gdb动态调试,正常断点,跟踪后
R12寄存器中发现flag:
FLAG值:
flag{92094daf-33c9-431e-a85a-8bfbd5df98ad}
0x04 Justsoso
抓包 其实看源代码也行
然后文件包含
通过伪协议
Hint.Php 同理 base64 解密得
然后分析代码
需要
绕正则,绕wakeup,绕private,绕rand,然后getflag
我们一步一步试
最后验证了一个正确的payload
0d00705a88c749cba0b58ddd6e16b5e13c57c1ff3ab944b3.changame.ichunqiu.com/index.php?file=hint.php&payload=O:6:%22Handle%22:2:{s:14:%22%00Handle%00handle%22;O:4:%22Flag%22:3:{s:4:%22file%22;s:8:%22flag.php%22;s:5:%22token%22;N;s:10:%22token_flag%22;R:4;}}
FLAG值:
Flag{35e42363-6274-4ef3-b10a-d422ef23bf33}
0x05 your pwn
脚本
FLAG值:
Flag{9271a620f6a09ffaf50980dcff198256}