首页 > 其他分享 >第三届上海市大学生网络安全大赛-crackme

第三届上海市大学生网络安全大赛-crackme

时间:2024-03-27 10:13:24浏览次数:38  
标签:网络安全 Buffer 大赛 flag crackme v4 printf byte

第三届上海市大学生网络安全大赛

Reverse-crackme:

题目描述:crackme

解题方法:把附件下载下来发现是一个.EXE文件,把它放进exeinfope.exe里面来查看一下他的信息

这里我们发现它是一个32位的有壳的程序,但这里显示的不是UPX壳,而是nsPack的壳,所以我们这里就用一个专门脱nspack的脱壳软件:

脱壳成功之后我们再把它放进exeinfope.exe里面去查看一下:

现在就可以发现没有壳了,然后我们把它放进32位的IDA里面去分析的源代码:

进去shift+f12,搜索字符串,找到关键信息(right),最后索引回去F5一下,反汇编它的核心代码:

int __cdecl main(int argc, const char **argv, const char **envp)
{
  int v4; // eax
  char Buffer[52]; // [esp+4h] [ebp-38h] BYREF

  memset(Buffer, 0, 50);
  printf("Please Input Flag:");
  gets_s(Buffer, 0x2Cu);
  if ( strlen(Buffer) == 42 )   //判断我们的输入是否为42
  {
    v4 = 0;
    while ( (Buffer[v4] ^ byte_402130[v4 % 16]) == dword_402150[v4] )  //这里将我们的输入进行一系列的转换,也是最关键的部分,转换后比较相同就输出right
    {
      if ( ++v4 >= 42 )
      {
        printf("right!\n");
        return 0;
      }
    }
    printf("error!\n");
    return 0;
  }
  else
  {
    printf("error!\n");
    return -1;
  }
}

这里我们分析完后是一个清晰的加密转换过程,只有将它逆向回去就可以得到我们的输入flag,我们先获取byte_402130函数里面的内容:

再找到dword_402150函数里的值:

解密python代码:

byte = 'this_is_not_flag'
down = [0x12,4,8,0x14,0x24,0x5C,0x4A,0x3D,0x56,0x0A,0x10,0x67,0,0x41,0,1,0x46,0x5A,0x44,
        0x42,0x6E,0x0C,0x44,0x72,0x0C,0x0D,0x40,0x3E,0x4B,0x5F,2,1,0x4C,0x5E,0x5B,0x17,
        0x6E,0x0C,0x16,0x68,0x5B,0x12,2,0x48,0x0E]
flag = ''
for i in range(0,42):
        flag += chr(ord(byte[i % 16]) ^ down[i])
print(flag)

注意再获取dword_402150函数里面的值的时候,要细心0也不能省去

最后得到flag:

flag{59b8ed8f-af22-11e7-bb4a-3cf862d1ee75}

标签:网络安全,Buffer,大赛,flag,crackme,v4,printf,byte
From: https://www.cnblogs.com/xyweiwen/p/18098269

相关文章

  • 【蓝桥杯选拔赛真题48】C++九进制回文数 第十四届蓝桥杯青少年创意编程大赛 算法思维
    目录C++九进制回文数一、题目要求1、编程实现2、输入输出二、算法分析三、程序编写四、程序说明五、运行结果六、考点分析七、推荐资料C++九进制回文数第十四届蓝桥杯青少年创意编程大赛C++选拔赛真题一、题目要求1、编程实现提示信息:回文数:反向排列与原......
  • 【Python程序开发】2024年安徽省职业院校技能大赛中职组“Python程序开发”赛项规程
    2023年安徽省职业院校技能大赛(中职组)“Python程序开发”竞赛规程一、赛项名称(一)赛项名称Python程序开发赛项归属产业类型电子信息产业赛项归属专业大类组别专业大类专业类专业代码专业名称中职电子与信息大类电子信息类710101电子信息技术中职电子与信息大类计算机类7......
  • 网络安全(黑客)自学 【2024版】
    前言首先,在准备进入这个网络安全之前,我们要问一下我们的内心,工作千千万,为什么要想进入这个行业?相信每个人的答案都不一样,有的人会说,这个行业整体上比其他行业赚钱多,有的人会说特别喜欢黑客技术,想钻研一下。还有人会说,这个行业处于风口,未来积攒人脉创业。不管你的回答是怎......
  • 网络安全体系架构设计
             ......
  • 0基础成功转行网络安全工程师,年薪25W+,经验总结都在这(建议收藏)
    我曾经是一名普通的销售人员,工作了三年,每天重复着相同的工作内容,感觉自己的职业生涯停滞不前,毫无发展前景。我开始思考,如何才能让自己的职业生涯更有意义,更具有挑战性。经过一番调研,我决定转行网络安全工程师。工作了越久,越觉得当初转行网络安全的决定还是非常正确的。目......
  • 2024年甘肃省职业院校技能大赛高职学生组“软件测试“赛项竞赛卷A-自动化测试解析答案
    任务二:自动化测试需要更多ERP资源或培训可私信博主或参考以下专栏!传送链接:全国职业院校技能大赛-软件测试大赛备赛参考资料一、任务要求题目1:按照以下步骤在PyCharm中进行自动化测试脚本编写并执行。1、设置智能时间等待3秒并将浏览器窗口最大化;2、引入By方法......
  • 【整理】2024史上最全的信息安全、数据安全、网络安全标准
    2024史上最全的信息安全、数据安全、网络安全标准下载一、证券JRT0021.4-2023上市公司公告电子化规范第4部分:公司治理类临时公告.pdfJRT0021.3-2023上市公司公告电子化规范第3部分:交易类临时公告.pdfJRT0021.2-2023上市公司公告电子化规范第2部分:首次披露.pdfJRT0021.1......
  • 入门【网络安全/黑客】启蒙教程
    01什么是网络安全网络安全可以基于攻击和防御视角来分类,我们经常听到的“红队”、“渗透测试”等就是研究攻击技术,而“蓝队”、“安全运营”、“安全运维”则研究防御技术。无论网络、Web、移动、桌面、云等哪个领域,都有攻与防两面性,例如Web安全技术,既有Web渗透,也有W......
  • 【网络安全】VPN数据安全原理与应用
    ✨✨欢迎大家来到景天科技苑✨✨......
  • 第十五届“北斗杯”全国青少年空天 科技体验与创新大赛参赛须知
    一、报名要求 1.全国在校小学生、初中生、高中生(含中专、中技、职 高)、高职生、本科生、研究生均可报名参加(截止 2024 年 6 月 30 日前的在校学生)。2.团队参赛作品要求:(1)团队作品的参赛人数应按照各赛项规则要求,不得 超出;团队成员应来自同一省级赛区、同一学段。 (2)......