-
-
[原创]看雪.京东 2018CTF-第一题分析
-
发表于: 2018-6-16 13:45 1872
-
int __cdecl main(int argc, const char **argv, const char **envp) { int v3; // ST08_4 signed int v4; // ebx char v5; // al int result; // eax int v7; // [esp+0h] [ebp-70h] int v8; // [esp+0h] [ebp-70h] char v9; // [esp+12h] [ebp-5Eh] char inputKeyBuf[20]; // [esp+14h] [ebp-5Ch] char inputKeyHexBuf; // [esp+28h] [ebp-48h] __int16 v12; // [esp+48h] [ebp-28h] char v13; // [esp+4Ah] [ebp-26h] char key; // [esp+4Ch] [ebp-24h] // 输入的key经过变换后与其比较 strcpy(&key,"437261636b4d654a757374466f7246756e"); while ( 1 ) { memset(&inputKeyHexBuf, 0, 0x20u); //获取输入的key v12 = 0; v13 = 0; sub_40134B((int)aPleaseInputYou, v7); scanf(aS, inputKeyBuf, v3); if (strlen(inputKeyBuf) > 0x11) { break; } //将输入的key字符串转换成16进制字符 v4 = 0; do { v5 = inputKeyBuf[v4]; if ( !v5 ) break; sprintf(&v9, asc_408044, v5); strcat(&inputKeyHexBuf, &v9); ++v4; } //将转换成16进制字符的key与"437261636b4d654a757374466f7246756e" if ( !strcmp(&inputKeyHexBuf, &key) ) { //比较成功 sub_40134B((int)aSuccess, v8); } else { //比较失败 sub_40134B((int)aWrong, v8); } } sub_40134B((int)aWrong, v8); result = stru_408090._cnt-- - 1; if ( stru_408090._cnt < 0 ) return _filbuf(&stru_408090); ++stru_408090._ptr; return result; }
通过上面分析,输入的key转换成16进制的字符串是"437261636b4d654a757374466f7246756e"
由此可知 key为:CrackMeJustForFun
[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!
最后于 2018-6-16 13:46
被oooAooo编辑
,原因:
赞赏
他的文章
- 看雪CTF 2019总决赛 第六题 三道八佛 IDA脱壳脚本 5669
- [原创]看雪CTF2019Q3第四题WP 5934
- [原创]看雪CTF2019Q3 第二题WP 6760
- [2019看雪CTF晋级赛Q3第九题WP 12491
- [原创]看雪CTF2019晋级赛Q2第三题 5022
看原图
赞赏
雪币:
留言: