-
-
第一题解题思路
-
2015-1-25 20:04 2078
-
第一题原理:
密码藏在图片里。图片文件名为logo.png,大小92307字节。密码由密码表table和密码索引pw组成。
密码表位于图片文件的偏移量89473(0x15d81)处,大小768(0x300)字节,通过函数getTableFromPic()获取。
密码索引位于图片文件的偏移量91265(0x16481)处,大小18(0x12)字节,通过函数getPwdFromPic()获取。
有了密码索引和密码表再通过函数bytesToAliSmsCode()进行加密得出加密后的密码pw = "义弓么丸广之"。
通过输入“1234567890”用IDA跟踪调试可以得到"么广亡门义之尸弓己丸"。再与"义弓么丸广之"对比可以得到密码为
"581026"
后记:
由于从没分析过Android代码,找相应的工具以及在8年前的旧脑上搭建调试环境用了近2天的时间。在离比赛结束还
剩不到3个小时之前总算完成了一道题,没交白卷。
还剩不到2小时的时间,顺便分析了一下第二题。第二题的加密算法是在libcrackme.so文件中的securityCheck()函数,
目前只得知密码加密后应该为"wojiushidaan"(我就是答案)。由于不懂ARM汇编代码也不知道如何用IDA来调试.so文
件,无法解答此题目。
附:第一题的数据
第一题密码表数据(offset=0x15d81, length=0x300):
unsigned AnsiChar table[768] = {
0xE4, 0xB8, 0x80, 0xE4, 0xB9, 0x99, 0xE4, 0xBA, 0x8C, 0xE5, 0x8D, 0x81, 0xE4, 0xB8, 0x81, 0xE5,
0x8E, 0x82, 0xE4, 0xB8, 0x83, 0xE5, 0x8D, 0x9C, 0xE4, 0xBA, 0xBA, 0xE5, 0x85, 0xA5, 0xE5, 0x85,
0xAB, 0xE4, 0xB9, 0x9D, 0xE5, 0x87, 0xA0, 0xE5, 0x84, 0xBF, 0xE4, 0xBA, 0x86, 0xE5, 0x8A, 0x9B,
0xE4, 0xB9, 0x83, 0xE5, 0x88, 0x80, 0xE5, 0x8F, 0x88, 0xE4, 0xB8, 0x89, 0xE4, 0xBA, 0x8E, 0xE5,
0xB9, 0xB2, 0xE4, 0xBA, 0x8F, 0xE5, 0xA3, 0xAB, 0xE5, 0xB7, 0xA5, 0xE5, 0x9C, 0x9F, 0xE6, 0x89,
0x8D, 0xE5, 0xAF, 0xB8, 0xE4, 0xB8, 0x8B, 0xE5, 0xA4, 0xA7, 0xE4, 0xB8, 0x88, 0xE4, 0xB8, 0x8E,
0xE4, 0xB8, 0x87, 0xE4, 0xB8, 0x8A, 0xE5, 0xB0, 0x8F, 0xE5, 0x8F, 0xA3, 0xE5, 0xB7, 0xBE, 0xE5,
0xB1, 0xB1, 0xE5, 0x8D, 0x83, 0xE4, 0xB9, 0x9E, 0xE5, 0xB7, 0x9D, 0xE4, 0xBA, 0xBF, 0xE4, 0xB8,
0xAA, 0xE5, 0x8B, 0xBA, 0xE4, 0xB9, 0x85, 0xE5, 0x87, 0xA1, 0xE5, 0x8F, 0x8A, 0xE5, 0xA4, 0x95,
0xE4, 0xB8, 0xB8, 0xE4, 0xB9, 0x88, 0xE5, 0xB9, 0xBF, 0xE4, 0xBA, 0xA1, 0xE9, 0x97, 0xA8, 0xE4,
0xB9, 0x89, 0xE4, 0xB9, 0x8B, 0xE5, 0xB0, 0xB8, 0xE5, 0xBC, 0x93, 0xE5, 0xB7, 0xB1, 0xE5, 0xB7,
0xB2, 0xE5, 0xAD, 0x90, 0xE5, 0x8D, 0xAB, 0xE4, 0xB9, 0x9F, 0xE5, 0xA5, 0xB3, 0xE9, 0xA3, 0x9E,
0xE5, 0x88, 0x83, 0xE4, 0xB9, 0xA0, 0xE5, 0x8F, 0x89, 0xE9, 0xA9, 0xAC, 0xE4, 0xB9, 0xA1, 0xE4,
0xB8, 0xB0, 0xE7, 0x8E, 0x8B, 0xE4, 0xBA, 0x95, 0xE5, 0xBC, 0x80, 0xE5, 0xA4, 0xAB, 0xE5, 0xA4,
0xA9, 0xE6, 0x97, 0xA0, 0xE5, 0x85, 0x83, 0xE4, 0xB8, 0x93, 0xE4, 0xBA, 0x91, 0xE6, 0x89, 0x8E,
0xE8, 0x89, 0xBA, 0xE6, 0x9C, 0xA8, 0xE4, 0xBA, 0x94, 0xE6, 0x94, 0xAF, 0xE5, 0x8E, 0x85, 0xE4,
0xB8, 0x8D, 0xE5, 0xA4, 0xAA, 0xE7, 0x8A, 0xAC, 0xE5, 0x8C, 0xBA, 0xE5, 0x8E, 0x86, 0xE5, 0xB0,
0xA4, 0xE5, 0x8F, 0x8B, 0xE5, 0x8C, 0xB9, 0xE8, 0xBD, 0xA6, 0xE5, 0xB7, 0xA8, 0xE7, 0x89, 0x99,
0xE5, 0xB1, 0xAF, 0xE6, 0xAF, 0x94, 0xE4, 0xBA, 0x92, 0xE5, 0x88, 0x87, 0xE7, 0x93, 0xA6, 0xE6,
0xAD, 0xA2, 0xE5, 0xB0, 0x91, 0xE6, 0x97, 0xA5, 0xE4, 0xB8, 0xAD, 0xE5, 0x86, 0x88, 0xE8, 0xB4,
0x9D, 0xE5, 0x86, 0x85, 0xE6, 0xB0, 0xB4, 0xE8, 0xA7, 0x81, 0xE5, 0x8D, 0x88, 0xE7, 0x89, 0x9B,
0xE6, 0x89, 0x8B, 0xE6, 0xAF, 0x9B, 0xE6, 0xB0, 0x94, 0xE5, 0x8D, 0x87, 0xE9, 0x95, 0xBF, 0xE4,
0xBB, 0x81, 0xE4, 0xBB, 0x80, 0xE7, 0x89, 0x87, 0xE4, 0xBB, 0x86, 0xE5, 0x8C, 0x96, 0xE4, 0xBB,
0x87, 0xE5, 0xB8, 0x81, 0xE4, 0xBB, 0x8D, 0xE4, 0xBB, 0x85, 0xE6, 0x96, 0xA4, 0xE7, 0x88, 0xAA,
0xE5, 0x8F, 0x8D, 0xE4, 0xBB, 0x8B, 0xE7, 0x88, 0xB6, 0xE4, 0xBB, 0x8E, 0xE4, 0xBB, 0x8A, 0xE5,
0x87, 0xB6, 0xE5, 0x88, 0x86, 0xE4, 0xB9, 0x8F, 0xE5, 0x85, 0xAC, 0xE4, 0xBB, 0x93, 0xE6, 0x9C,
0x88, 0xE6, 0xB0, 0x8F, 0xE5, 0x8B, 0xBF, 0xE6, 0xAC, 0xA0, 0xE9, 0xA3, 0x8E, 0xE4, 0xB8, 0xB9,
0xE5, 0x8C, 0x80, 0xE4, 0xB9, 0x8C, 0xE5, 0x87, 0xA4, 0xE5, 0x8B, 0xBE, 0xE6, 0x96, 0x87, 0xE5,
0x85, 0xAD, 0xE6, 0x96, 0xB9, 0xE7, 0x81, 0xAB, 0xE4, 0xB8, 0xBA, 0xE6, 0x96, 0x97, 0xE5, 0xBF,
0x86, 0xE8, 0xAE, 0xA2, 0xE8, 0xAE, 0xA1, 0xE6, 0x88, 0xB7, 0xE8, 0xAE, 0xA4, 0xE5, 0xBF, 0x83,
0xE5, 0xB0, 0xBA, 0xE5, 0xBC, 0x95, 0xE4, 0xB8, 0x91, 0xE5, 0xB7, 0xB4, 0xE5, 0xAD, 0x94, 0xE9,
0x98, 0x9F, 0xE5, 0x8A, 0x9E, 0xE4, 0xBB, 0xA5, 0xE5, 0x85, 0x81, 0xE4, 0xBA, 0x88, 0xE5, 0x8A,
0x9D, 0xE5, 0x8F, 0x8C, 0xE4, 0xB9, 0xA6, 0xE5, 0xB9, 0xBB, 0xE7, 0x8E, 0x89, 0xE5, 0x88, 0x8A,
0xE7, 0xA4, 0xBA, 0xE6, 0x9C, 0xAB, 0xE6, 0x9C, 0xAA, 0xE5, 0x87, 0xBB, 0xE6, 0x89, 0x93, 0xE5,
0xB7, 0xA7, 0xE6, 0xAD, 0xA3, 0xE6, 0x89, 0x91, 0xE6, 0x89, 0x92, 0xE5, 0x8A, 0x9F, 0xE6, 0x89,
0x94, 0xE5, 0x8E, 0xBB, 0xE7, 0x94, 0x98, 0xE4, 0xB8, 0x96, 0xE5, 0x8F, 0xA4, 0xE8, 0x8A, 0x82,
0xE6, 0x9C, 0xAC, 0xE6, 0x9C, 0xAF, 0xE5, 0x8F, 0xAF, 0xE4, 0xB8, 0x99, 0xE5, 0xB7, 0xA6, 0xE5,
0x8E, 0x89, 0xE5, 0x8F, 0xB3, 0xE7, 0x9F, 0xB3, 0xE5, 0xB8, 0x83, 0xE9, 0xBE, 0x99, 0xE5, 0xB9,
0xB3, 0xE7, 0x81, 0xAD, 0xE8, 0xBD, 0xA7, 0xE4, 0xB8, 0x9C, 0xE5, 0x8D, 0xA1, 0xE5, 0x8C, 0x97,
0xE5, 0x8D, 0xA0, 0xE4, 0xB8, 0x9A, 0xE6, 0x97, 0xA7, 0xE5, 0xB8, 0x85, 0xE5, 0xBD, 0x92, 0xE4,
0xB8, 0x94, 0xE6, 0x97, 0xA6, 0xE7, 0x9B, 0xAE, 0xE5, 0x8F, 0xB6, 0xE7, 0x94, 0xB2, 0xE7, 0x94,
0xB3, 0xE5, 0x8F, 0xAE, 0xE7, 0x94, 0xB5, 0xE5, 0x8F, 0xB7, 0xE7, 0x94, 0xB0, 0xE7, 0x94, 0xB1,
0xE5, 0x8F, 0xB2, 0xE5, 0x8F, 0xAA, 0xE5, 0xA4, 0xAE, 0xE5, 0x85, 0x84, 0xE5, 0x8F, 0xBC, 0xE5,
0x8F, 0xAB, 0xE5, 0x8F, 0xA6, 0xE5, 0x8F, 0xA8, 0xE5, 0x8F, 0xB9, 0xE5, 0x9B, 0x9B, 0xE7, 0x94,
0x9F, 0xE5, 0xA4, 0xB1, 0xE7, 0xA6, 0xBE, 0xE4, 0xB8, 0x98, 0xE4, 0xBB, 0x98, 0xE4, 0xBB, 0x97,
0xE4, 0xBB, 0xA3, 0xE4, 0xBB, 0x99, 0xE4, 0xBB, 0xAC, 0xE4, 0xBB, 0xAA, 0xE7, 0x99, 0xBD, 0xE4,
0xBB, 0x94, 0xE4, 0xBB, 0x96, 0xE6, 0x96, 0xA5, 0xE7, 0x93, 0x9C, 0xE4, 0xB9, 0x8E, 0xE4, 0xB8,
0x9B, 0xE4, 0xBB, 0xA4, 0xE7, 0x94, 0xA8, 0xE7, 0x94, 0xA9, 0xE5, 0x8D, 0xB0, 0xE4, 0xB9, 0x90
};
第一题密码索引数据(offset=0x16081, length=0x12):
unsigned AnsiChar pw[18] = {
0xE4, 0xB9, 0x89, 0xE5, 0xBC, 0x93, 0xE4, 0xB9, 0x88, 0xE4, 0xB8, 0xB8, 0xE5, 0xB9, 0xBF, 0xE4,
0xB9, 0x8B
};
密码藏在图片里。图片文件名为logo.png,大小92307字节。密码由密码表table和密码索引pw组成。
密码表位于图片文件的偏移量89473(0x15d81)处,大小768(0x300)字节,通过函数getTableFromPic()获取。
密码索引位于图片文件的偏移量91265(0x16481)处,大小18(0x12)字节,通过函数getPwdFromPic()获取。
有了密码索引和密码表再通过函数bytesToAliSmsCode()进行加密得出加密后的密码pw = "义弓么丸广之"。
通过输入“1234567890”用IDA跟踪调试可以得到"么广亡门义之尸弓己丸"。再与"义弓么丸广之"对比可以得到密码为
"581026"
后记:
由于从没分析过Android代码,找相应的工具以及在8年前的旧脑上搭建调试环境用了近2天的时间。在离比赛结束还
剩不到3个小时之前总算完成了一道题,没交白卷。
还剩不到2小时的时间,顺便分析了一下第二题。第二题的加密算法是在libcrackme.so文件中的securityCheck()函数,
目前只得知密码加密后应该为"wojiushidaan"(我就是答案)。由于不懂ARM汇编代码也不知道如何用IDA来调试.so文
件,无法解答此题目。
附:第一题的数据
第一题密码表数据(offset=0x15d81, length=0x300):
unsigned AnsiChar table[768] = {
0xE4, 0xB8, 0x80, 0xE4, 0xB9, 0x99, 0xE4, 0xBA, 0x8C, 0xE5, 0x8D, 0x81, 0xE4, 0xB8, 0x81, 0xE5,
0x8E, 0x82, 0xE4, 0xB8, 0x83, 0xE5, 0x8D, 0x9C, 0xE4, 0xBA, 0xBA, 0xE5, 0x85, 0xA5, 0xE5, 0x85,
0xAB, 0xE4, 0xB9, 0x9D, 0xE5, 0x87, 0xA0, 0xE5, 0x84, 0xBF, 0xE4, 0xBA, 0x86, 0xE5, 0x8A, 0x9B,
0xE4, 0xB9, 0x83, 0xE5, 0x88, 0x80, 0xE5, 0x8F, 0x88, 0xE4, 0xB8, 0x89, 0xE4, 0xBA, 0x8E, 0xE5,
0xB9, 0xB2, 0xE4, 0xBA, 0x8F, 0xE5, 0xA3, 0xAB, 0xE5, 0xB7, 0xA5, 0xE5, 0x9C, 0x9F, 0xE6, 0x89,
0x8D, 0xE5, 0xAF, 0xB8, 0xE4, 0xB8, 0x8B, 0xE5, 0xA4, 0xA7, 0xE4, 0xB8, 0x88, 0xE4, 0xB8, 0x8E,
0xE4, 0xB8, 0x87, 0xE4, 0xB8, 0x8A, 0xE5, 0xB0, 0x8F, 0xE5, 0x8F, 0xA3, 0xE5, 0xB7, 0xBE, 0xE5,
0xB1, 0xB1, 0xE5, 0x8D, 0x83, 0xE4, 0xB9, 0x9E, 0xE5, 0xB7, 0x9D, 0xE4, 0xBA, 0xBF, 0xE4, 0xB8,
0xAA, 0xE5, 0x8B, 0xBA, 0xE4, 0xB9, 0x85, 0xE5, 0x87, 0xA1, 0xE5, 0x8F, 0x8A, 0xE5, 0xA4, 0x95,
0xE4, 0xB8, 0xB8, 0xE4, 0xB9, 0x88, 0xE5, 0xB9, 0xBF, 0xE4, 0xBA, 0xA1, 0xE9, 0x97, 0xA8, 0xE4,
0xB9, 0x89, 0xE4, 0xB9, 0x8B, 0xE5, 0xB0, 0xB8, 0xE5, 0xBC, 0x93, 0xE5, 0xB7, 0xB1, 0xE5, 0xB7,
0xB2, 0xE5, 0xAD, 0x90, 0xE5, 0x8D, 0xAB, 0xE4, 0xB9, 0x9F, 0xE5, 0xA5, 0xB3, 0xE9, 0xA3, 0x9E,
0xE5, 0x88, 0x83, 0xE4, 0xB9, 0xA0, 0xE5, 0x8F, 0x89, 0xE9, 0xA9, 0xAC, 0xE4, 0xB9, 0xA1, 0xE4,
0xB8, 0xB0, 0xE7, 0x8E, 0x8B, 0xE4, 0xBA, 0x95, 0xE5, 0xBC, 0x80, 0xE5, 0xA4, 0xAB, 0xE5, 0xA4,
0xA9, 0xE6, 0x97, 0xA0, 0xE5, 0x85, 0x83, 0xE4, 0xB8, 0x93, 0xE4, 0xBA, 0x91, 0xE6, 0x89, 0x8E,
0xE8, 0x89, 0xBA, 0xE6, 0x9C, 0xA8, 0xE4, 0xBA, 0x94, 0xE6, 0x94, 0xAF, 0xE5, 0x8E, 0x85, 0xE4,
0xB8, 0x8D, 0xE5, 0xA4, 0xAA, 0xE7, 0x8A, 0xAC, 0xE5, 0x8C, 0xBA, 0xE5, 0x8E, 0x86, 0xE5, 0xB0,
0xA4, 0xE5, 0x8F, 0x8B, 0xE5, 0x8C, 0xB9, 0xE8, 0xBD, 0xA6, 0xE5, 0xB7, 0xA8, 0xE7, 0x89, 0x99,
0xE5, 0xB1, 0xAF, 0xE6, 0xAF, 0x94, 0xE4, 0xBA, 0x92, 0xE5, 0x88, 0x87, 0xE7, 0x93, 0xA6, 0xE6,
0xAD, 0xA2, 0xE5, 0xB0, 0x91, 0xE6, 0x97, 0xA5, 0xE4, 0xB8, 0xAD, 0xE5, 0x86, 0x88, 0xE8, 0xB4,
0x9D, 0xE5, 0x86, 0x85, 0xE6, 0xB0, 0xB4, 0xE8, 0xA7, 0x81, 0xE5, 0x8D, 0x88, 0xE7, 0x89, 0x9B,
0xE6, 0x89, 0x8B, 0xE6, 0xAF, 0x9B, 0xE6, 0xB0, 0x94, 0xE5, 0x8D, 0x87, 0xE9, 0x95, 0xBF, 0xE4,
0xBB, 0x81, 0xE4, 0xBB, 0x80, 0xE7, 0x89, 0x87, 0xE4, 0xBB, 0x86, 0xE5, 0x8C, 0x96, 0xE4, 0xBB,
0x87, 0xE5, 0xB8, 0x81, 0xE4, 0xBB, 0x8D, 0xE4, 0xBB, 0x85, 0xE6, 0x96, 0xA4, 0xE7, 0x88, 0xAA,
0xE5, 0x8F, 0x8D, 0xE4, 0xBB, 0x8B, 0xE7, 0x88, 0xB6, 0xE4, 0xBB, 0x8E, 0xE4, 0xBB, 0x8A, 0xE5,
0x87, 0xB6, 0xE5, 0x88, 0x86, 0xE4, 0xB9, 0x8F, 0xE5, 0x85, 0xAC, 0xE4, 0xBB, 0x93, 0xE6, 0x9C,
0x88, 0xE6, 0xB0, 0x8F, 0xE5, 0x8B, 0xBF, 0xE6, 0xAC, 0xA0, 0xE9, 0xA3, 0x8E, 0xE4, 0xB8, 0xB9,
0xE5, 0x8C, 0x80, 0xE4, 0xB9, 0x8C, 0xE5, 0x87, 0xA4, 0xE5, 0x8B, 0xBE, 0xE6, 0x96, 0x87, 0xE5,
0x85, 0xAD, 0xE6, 0x96, 0xB9, 0xE7, 0x81, 0xAB, 0xE4, 0xB8, 0xBA, 0xE6, 0x96, 0x97, 0xE5, 0xBF,
0x86, 0xE8, 0xAE, 0xA2, 0xE8, 0xAE, 0xA1, 0xE6, 0x88, 0xB7, 0xE8, 0xAE, 0xA4, 0xE5, 0xBF, 0x83,
0xE5, 0xB0, 0xBA, 0xE5, 0xBC, 0x95, 0xE4, 0xB8, 0x91, 0xE5, 0xB7, 0xB4, 0xE5, 0xAD, 0x94, 0xE9,
0x98, 0x9F, 0xE5, 0x8A, 0x9E, 0xE4, 0xBB, 0xA5, 0xE5, 0x85, 0x81, 0xE4, 0xBA, 0x88, 0xE5, 0x8A,
0x9D, 0xE5, 0x8F, 0x8C, 0xE4, 0xB9, 0xA6, 0xE5, 0xB9, 0xBB, 0xE7, 0x8E, 0x89, 0xE5, 0x88, 0x8A,
0xE7, 0xA4, 0xBA, 0xE6, 0x9C, 0xAB, 0xE6, 0x9C, 0xAA, 0xE5, 0x87, 0xBB, 0xE6, 0x89, 0x93, 0xE5,
0xB7, 0xA7, 0xE6, 0xAD, 0xA3, 0xE6, 0x89, 0x91, 0xE6, 0x89, 0x92, 0xE5, 0x8A, 0x9F, 0xE6, 0x89,
0x94, 0xE5, 0x8E, 0xBB, 0xE7, 0x94, 0x98, 0xE4, 0xB8, 0x96, 0xE5, 0x8F, 0xA4, 0xE8, 0x8A, 0x82,
0xE6, 0x9C, 0xAC, 0xE6, 0x9C, 0xAF, 0xE5, 0x8F, 0xAF, 0xE4, 0xB8, 0x99, 0xE5, 0xB7, 0xA6, 0xE5,
0x8E, 0x89, 0xE5, 0x8F, 0xB3, 0xE7, 0x9F, 0xB3, 0xE5, 0xB8, 0x83, 0xE9, 0xBE, 0x99, 0xE5, 0xB9,
0xB3, 0xE7, 0x81, 0xAD, 0xE8, 0xBD, 0xA7, 0xE4, 0xB8, 0x9C, 0xE5, 0x8D, 0xA1, 0xE5, 0x8C, 0x97,
0xE5, 0x8D, 0xA0, 0xE4, 0xB8, 0x9A, 0xE6, 0x97, 0xA7, 0xE5, 0xB8, 0x85, 0xE5, 0xBD, 0x92, 0xE4,
0xB8, 0x94, 0xE6, 0x97, 0xA6, 0xE7, 0x9B, 0xAE, 0xE5, 0x8F, 0xB6, 0xE7, 0x94, 0xB2, 0xE7, 0x94,
0xB3, 0xE5, 0x8F, 0xAE, 0xE7, 0x94, 0xB5, 0xE5, 0x8F, 0xB7, 0xE7, 0x94, 0xB0, 0xE7, 0x94, 0xB1,
0xE5, 0x8F, 0xB2, 0xE5, 0x8F, 0xAA, 0xE5, 0xA4, 0xAE, 0xE5, 0x85, 0x84, 0xE5, 0x8F, 0xBC, 0xE5,
0x8F, 0xAB, 0xE5, 0x8F, 0xA6, 0xE5, 0x8F, 0xA8, 0xE5, 0x8F, 0xB9, 0xE5, 0x9B, 0x9B, 0xE7, 0x94,
0x9F, 0xE5, 0xA4, 0xB1, 0xE7, 0xA6, 0xBE, 0xE4, 0xB8, 0x98, 0xE4, 0xBB, 0x98, 0xE4, 0xBB, 0x97,
0xE4, 0xBB, 0xA3, 0xE4, 0xBB, 0x99, 0xE4, 0xBB, 0xAC, 0xE4, 0xBB, 0xAA, 0xE7, 0x99, 0xBD, 0xE4,
0xBB, 0x94, 0xE4, 0xBB, 0x96, 0xE6, 0x96, 0xA5, 0xE7, 0x93, 0x9C, 0xE4, 0xB9, 0x8E, 0xE4, 0xB8,
0x9B, 0xE4, 0xBB, 0xA4, 0xE7, 0x94, 0xA8, 0xE7, 0x94, 0xA9, 0xE5, 0x8D, 0xB0, 0xE4, 0xB9, 0x90
};
第一题密码索引数据(offset=0x16081, length=0x12):
unsigned AnsiChar pw[18] = {
0xE4, 0xB9, 0x89, 0xE5, 0xBC, 0x93, 0xE4, 0xB9, 0x88, 0xE4, 0xB8, 0xB8, 0xE5, 0xB9, 0xBF, 0xE4,
0xB9, 0x8B
};
[培训]内核驱动高级班,冲击BAT一流互联网大厂工 作,每周日13:00-18:00直播授课
赞赏
他的文章
看原图