sub_140001560 函数是用于验证 "flag" 的核心函数。它执行一个非常直接的检查:它将输入字节序列 a1 的每个字节与一组硬编码的十进制值进行比较。如果输入字符串的长度是 25 字节且每个字节都与预定的值匹配,则函数返回 true。
sub_140001560
a1
将这些十进制值转换为 ASCII 字符可以得到完整的 flag。
a1 == 102 -> f
a1 == 102
a1[1] == 108 -> l
a1[1] == 108
a1[2] == 97 -> a
a1[2] == 97
a1[3] == 103 -> g
a1[3] == 103
a1[4] == 123 -> {
a1[4] == 123
a1[5] == 107 -> k
a1[5] == 107
a1[6] == 99 -> c
a1[6] == 99
a1[7] == 116 -> t
a1[7] == 116
a1[8] == 102 -> f
a1[8] == 102
a1[9] == 95 -> _
a1[9] == 95
a1[10] == 116 -> t
a1[10] == 116
a1[11] == 105 -> i
a1[11] == 105
a1[12] == 109 -> m
a1[12] == 109
a1[13] == 101 -> e
a1[13] == 101
a1[14] == 95 -> _
a1[14] == 95
a1[15] == 108 -> l
a1[15] == 108
a1[16] == 101 -> e
a1[16] == 101
a1[17] == 97 -> a
a1[17] == 97
a1[18] == 112 -> p
a1[18] == 112
a1[19] == 95 -> _
a1[19] == 95
a1[20] == 50 -> 2
a1[20] == 50
a1[21] == 48 -> 0
a1[21] == 48
a1[22] == 50 -> 2
a1[22] == 50
a1[23] == 53 -> 5
a1[23] == 53
a1[24] == 125 -> }
a1[24] == 125
将这些字符按顺序组合起来,得到最终的 flag。
flag{kctf_time_leap_2025}
[培训]《冰与火的战歌:Windows内核攻防实战》!从零到实战,融合AI与Windows内核攻防全技术栈,打造具备自动化能力的内核开发高手。