掘安杯破解wp整理坑点记录

 

https://download.csdn.net/download/useror/11102888  IDB下载链接 

第二题

enflag=[0x62, 0x49, 0x77, 0x68, 0x72, 0x6F, 0x6F, 0x38, 0x63, 0x77,0x71, 0x67, 0x77, 0x72, 0x78, 0x75, 0x73, 0x69]

v1=[]
v2=[]
v3=[]
v7=18
flag=''

for i in range(0,len(enflag),3):
    v3.append((enflag[i]^v7)-6)
    v2.append((enflag[i+1]^v7)+6)
    v1.append(enflag[i+2]^v7^6)

print(v7/3)
for j in range((v7/3)):
    flag+=chr(v3[j])+chr(v2[j])+chr(v1[j])
    print(flag)

此处学到2个坑点

 

IDA使用快捷键Shift+E进行字符串提取的时候 在C下会默认提取到结束字符串‘0x00’ 在使用python进行字符串填充的时候要删掉

  Python2与Python3在操做除法的时候会有不同 Python3会默认为浮点型 需要注意版本的选择

第三题 Re_crypto

 在获取文件之后第一意识应该先去查看文件的格式信息,此处由于直接去丢到IDA里没有发型UPX壳 思考去混淆浪费了一定时间

52破解虚拟机里运行的时候不能运行程序,而且使用它的三款脱壳机脱出来的东西有问题,但使用UPX Shell搞出来的8KB文件没有问题。。

010文件对比显示两个脱壳有大量不一样,初步怀疑是由于脱壳引擎的版本不一样导致的。此处有时间需再研究

使用OD全手脱,不使用修复工具修复OD默认修复的文件大小是38KB IDA中可正常显示,此处也有问题。

计算首尾值 新建数组(选取数据不建立数组也可以) Shift+E提取字符串

  不可以乱改数组长度 会出现误会~~这里就出现了多了字节的情况

而且在伪c界面出现不识别

flag = ""

v4 = 0
while(1):
    v8 = b[2 * v4]
    if (v8 < 48 | v8 > 57):
        v9 = v8 - 87
    else:
        v9 = v8 - 48
    v10 = b[2 * v4+1]
    v11 = 16 * v9
    if ( v10 < 48 | v10 > 57 ):
        v12 = v10 - 87
    else:
        v12 = v10 - 48

    for v5 in range(0,127):     #v5从ASCII表中遍历取值爆破
        v6 = (v5 >> 4) % 16
        v7 = (16 * v5 >> 4) % 16
        if a[16 * v6 + v7] == (v11 + v12) ^ 0x19:
            flag += chr(v5)
            break

    v4 += 1

    if (v4 >= 35):
        break
print(flag)

 

   在IDA中可以通过选择 然后Shift+E来实现数据提取 不用添加修改数组也行

   

  这个就是个坑~

   

  

第6题

   

   手动添加数据快捷键Shift+Ctrl+I

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值