PS:360 8.1好生猛,刚更新完,就提示写的正常程序为病毒木马恶意程序,难道有进程注入就是恶意程序?还上传我写的程序到云服务器,要斩尽杀绝吗?
          所以想到变形的重要性....
 --------------------------------------------------------------------------------------------
 
变形结果:1.每次运行时,随机内存变形
             2.每运行一次,程序本事的HASH值改变
             3.每运行一次,易被定义为特征值的二进制代码片段改变

变形思路:1.内存引擎
             2.MD5变形
             3.代码引擎
(貌似云服务器暂时只以特征值和MD5定义病毒木马恶意程序)

变形方法:1.采用病毒的感染方式加壳
              2.winrar捆绑
(第二种方法应该都能实现)
----------------------------------------------------------------
(暂时完成了三个版本,采用了注入,bat,静态修改的方式,
为了防止360把代码定义为查杀特征,这里只公布部分代码,感兴趣
的同学可以发站内信,或者加我  扣扣:2401733005)


;-------------------------------------------------------
;GetAPIAddr()
;-------------------------------------------------------
GetAPIAddr:
  
  mov  ebx,[eax+3ch]
  add  ebx,eax
  add  ebx,78h
   
  mov  ebx,[ebx]
  add  ebx, eax
  mov  ecx,ebx
  
  push ebx
  mov  ebx,[ebx+32]
  add  ebx,eax
  
  xor  edx,edx
  push esi
  push edx
    
    s3:  
      pop  edx
      pop  esi
      
      inc  edx
  mov  edi,[ebx]
  add  edi,eax
  add  ebx,4
  
  push esi
  push edx
  
    s1:
  mov  dl,[edi]
  mov  dh,[esi]

  cmp  dl,dh
  jne  s3
  
  inc  esi
  inc  edi
  cmp  BYTE PTR [esi],0
  je   s2
  
  jmp  s1

    s2:
      pop  edx
      pop  esi
        
        pop  ebx                      
        mov  ecx,[ebx+36]
        add  ecx,eax
        
        dec  edx
        shl  edx,1
        
        add  ecx,edx
        
        mov  edx,0
        mov  dx,[ecx]             
        
        shl  edx,2
        
        mov  ecx,[ebx+28]
        add  ecx,eax
        add  ecx,edx
        
        add  eax,[ecx]
        
        ret  
;-----------------------------------------------
;GetStrLen:
;------------------------------------------------
GetStrLen:

  mov eax,0
  mov ecx,0
get_start:
  mov cl,BYTE ptr [ebx]
  cmp cl,0
  je  get_over
  
  inc eax
  inc ebx
  jmp get_start
  
get_over:
  ret
  
      ;---------------------------------------------
      head                     dd      0
      file_offset              dd      0
      hMoudle                  dd      0
      strdbg              db     '%d',0ah,0
      hFile                      dd      0
      num                     dd      0
      buf                       db     MAX_PATH dup(0),0
      len                       dd      0
      fileoffset               dd      40960
      path                     db     MAX_PATH dup(0),0  
      old_oep                  dd      0  
      ;---------------------------------------------
    over:

。。。。。。。。