题目:--宝贝儿约吗~ --约~老地方吗 --嗯呐~等你哦 --上次送你的那张会员卡,我是用我们的门牌号的密码,爱你 --晚上等我! 惊了!怪不得柠檬师傅最近总往北街跑。看他午休的时候,我悄悄拿走了他的会员卡, 是一张4442的接触式卡。你知道吗,通过逻辑分析仪可以嗅探出他的加密密钥。快来 跟我念出密钥,把他揪出来!(以16进制表示)
下载得到logicdata格式文件。Saleae Logic打开。
可以看到有时钟电平clk和数据电平data。查4442卡手册可以得知指令格式为:
1、每个指令从时钟高电平时数据下降沿后开始,数据从低位到高位的顺序发送。每个命令由三个字节组成:控制字节、地址字节、数据字节。时钟高电平数据电平上升沿代表本次命令结束。
2、与加密密钥相关的指令类型是0x33,用于校验口令。而4442卡的口令为三字节。
因此我们需要找到这样一串数据:
0x33 0x01 flag[1] 0x33 0x02 flag[2] 0x33 0x03 flag[3]
在6s950ms处找到这串数据:
第一段
因此密钥的第一个字节是0x40。重点是在时钟电平找到开始和结束标志(表现为一个较宽的峰),然后从数据电平按从高到低读取数据。第二段和第三段就在第一段后,各相隔3位。以此类推得到flag。
flag:SCTF{403110}