• IDApython学习记录


    1.异或解密

    Byte是以字节为单位进行解密,也可以有Dword,Word,在最后你可是使用MakeCode转化为代码,不过我这里是数据,就不用这句代码了。

    def XorBytes(start,length):
      for i in range(0,length):
            byte_value = Byte(start+i)
            byte_value =  byte_value^0xFF
            PatchByte(start,dword_value)
    
            XorBytes(0x403010,49)     
    

    2.替换指令为Nop

    def nopIt(start,length):
          for i in range(0,length);
            PathByte(start+i,0x90)
          MakeCode(start)

     3、Xorddos—MD5:0B3456561B7942AA67403CDDC1FAD2BD

    因为xorkey是Ascii,需要用ord转换为数字

    xorkeys = 'BB2FA36AAA9541F0'
    
    def XorBytes(start,length):
        for i in range(0,length):
            byte_value = Byte(start+i)   
            byte_value = byte_value^ord(xorkeys[i % 16])	
            PatchByte(start+i,byte_value)
    
    XorBytes(0x080B0E60,0xC)
    

     4、Nitol---MD5:412D5F1933BE177131B4AF6711305FBE

    Base64+异或相加,python用a=int(encode_b[i])+0x38

    import base64
    encode = "1ObhHd/a4t3g4t3e3NYdy8rJCRUTExVD"
    encode_b = base64.b64decode(encode)
    for i in range(0,len(encode_b)):
        a = ord(encode_b[i]) + 0x38
        if a >256:
            a = a - 256
        a = a ^ 0x7B
        PatchByte(0x004013D4+i,a)
    

      

      

  • 相关阅读:
    JAVA EE企业级开发四步走
    区间dp笔记√
    TYVJ P1016 装箱问题
    树状数组的笔记√(hzwer blog)
    忠诚//线段树
    线段树笔记√
    P1005 采药
    超级书架【未完】
    P1082 找朋友
    数字三角形系列
  • 原文地址:https://www.cnblogs.com/Ghost3C/p/3757509.html
Copyright © 2020-2023  润新知