抱歉,您的浏览器无法访问本站

本页面需要浏览器支持(启用)JavaScript


了解详情 >

BlackBird的博客

这世界上所有的不利状况,都是当事者能力不足导致的

从 CNSS 偷来的 SMC

最早接触SMC(Self Modify Code)这个词语是在看《加密与解密》的时候看的。我印象中碰到的第一个SMC的题目是第二届全国中学生网络安全竞赛线上赛的一个maze题,它smc的内容是地图……那个题目比较简单,导致我认为smc很简单……然后我在今年的SWUPCTF里面被很很打脸,第一个smc直接不会。

这个题的smc感觉还是比较简单的(bushi,但是我一开始没做出来是因为我被swup的那个题目给影响了,直接全局找vm函数,在函数表里面没有找到,又往main函数前面手动查找,但是也没有找到,就不会了……直到前两天碰见rx神,谈到这个题,他说:垃圾bb,你知道什么是NX(堆栈不可执行)保护么????我留着屈辱的泪水,终于明白了。这个题的text有修改权限,不需要vm函数来修改权限。那么我在main函数里面找了找,终于找到了smc函数:image-20201224205530210

image-20201224205337596

main函数里面可以看到三个参数,写一下ida_python脚本(嫖RX的:

from ida_bytes import *
for i in range(0x138):
    patch_byte(0x408b06+i, get_byte(0x408b06+i)^74)

image-20201224211443049

好了,知道了……maze题,扣迷宫,手动走:

image-20201224212041719

image-20201224212054162

ByteCTF 2020 AWD TikTokAdmin 简单花指令

这个题只是要求去花嘛~~,那直接在问题窗口里面找花就好了:

image-20201226085406121

两处花指令都是十分简单的那种

je loc_8125+1
jnz loc_8125+1

je loc_81f2+1
jnz loc_81f2+1

直接patch一下,然后p一下就好了。

attachment

上周的第三题那个C艹艹逆向,思路很简单,但是那么多dll,反汇编哪一个???而且怎们知道是image-20201226085221239 这个事件里面……

image-20201226085141053思路很简单,把“DD01903921EA24941C26A48F2CEC24E0BB0E8CC7SHA1解密:1001,再md5加密:“b8c37e33defde51cf91e1e03e51657da”,然后再跟进md5那个加密函数: image-20201226085152993好家伙,取20位…… BJDCTF{b8c37e33defde51cf91e}

但还是最前面的两个问题很难受……不太懂

PS:

​ 那两个问题RX解答了,他的专业回复是这样的:看这里:Unity - Manual: Assembly definitions (unity3d.com)

评论