https://adworld.xctf.org.cn/task/answer?type=reverse&number=4&grade=0&id=5075
先拖进IDA康康,
反编译
大概就是先把一串字符赋值给v13,开一个v10,你需要输入v9(点进去aS发现v9是字符串)且其长度不能大于17,v10即v8即把字符串(v9)按照十六进制输出,最后看v10和v13是否相等,相等输出success,反之输出wrong。
(备注1:sprintf 返回以format为格式argument为内容组成的结果被写入string的字节数,结束字符‘\0’不计入内。如果成功,则返回写入的字符总数,不包括字符串追加在字符串末尾的空字符。如果失败,则返回一个负数。
备注2:strcat把后面的复制到前面的字符串的后面,即两个字符串相连)
简单点,就是把v13转换成char(把v13看作是16进制的数,两位十六进制对应一个字符)
懒人网站:http://www.ab126.com/goju/1711.html#ecms
没错,懒人网站
success!