zoukankan      html  css  js  c++  java
  • vc++中字符串的免杀

    一:格式字符:

    http://baike.baidu.com/view/2194593.htm

    d:以十进制形式输出带符号整数(正数不输出符号)
    o:以八进制形式输出无符号整数(不输出前缀o)
    x:以十六进制输出无符号整数(不输出前缀0x)
    s:输出字符串

     


    二:字符串免杀的几种方法

    1.字符串隐藏法
    char str1[] = {'a','b','c','d','e','f','g',''};
    MessageBox(0, str1,"ok", 0);//用MessageBox来显示这个被我们隐藏的字符串
    
    2.wsprintf连接字符串
    使用到wsprintf函数
    char str1[20]="12345";
    char str2[20]="67890";
    char str3[40];
    wsprintf(str3,"%s%s",str1,str2);
    MessageBox(0,str3,"ok", 0);
    
     
    3.sprintf连接字符串
    使用到sprintf函数
    char * str1 = "01234";
    char * str2 = "56789";
    sprintf(str1, "%s%s", str1, str2);//把字符串str2连接到str1后面去
    MessageBox(0,str1,"ok", 0);
    
     
    4.strcat连接字符串
    使用到strcat函数
    char str1[20]="12345";
    char str2[20]="67890";
    strcat(str1,str2);
    MessageBox(0,str1,"ok", 0);
    
     
    5.指针连接法
    用指针来连接两个字符串
    char str1[50]="01234";
    char str2[20]="56789";
    
    char *ptr1 = str1;
    char *ptr2 = str2;
    while(*ptr1 != '')
    ptr1++;
    while(*ptr2 != '')
    *ptr1++ = *ptr2++;
    *ptr1='';
    ptr1=str1;
    ptr2=str2;
    
    MessageBox(0,ptr1,"ok", 0);
    
     
    6.字符串反转函数strrev
    把字符串倒转
    char *forward = "abcdefghijklmnopqrstuvwxyz"; 
    printf("反转前: %s
    ", forward); 
    strrev(forward); 
    printf("反转后: %s
    ", forward); 
    return 0;
    
    7.改大小写等等
     


    以后如果你定位到特征码是一个字符串,那么就可以使用上面的任何一个方法,来做源码免杀。

    如果遇到卡巴启发查杀一个服务端,首先得分析它是不是杀了字符串,如果是杀字符串的话,那上面的方

    法都不能用,而只能用修改大小写的方法来达到免杀的目的。另外还可以用字符串加密法来达到免杀的目

    的,但考虑到如果以上方法都不能达到免杀的目的,则使用字符串加密的方法也不一定能免杀,所以就不

    考虑使用字符串加密的方法来做字符串的免杀了

  • 相关阅读:
    [Unity]关于Physic Material,物理碰撞
    [Unity]当多个立方体堆叠,堆叠处出现缝隙的处理方法
    反射基础
    数据库三种事务
    一、手写ORM实现数据库查询
    UDP协议
    Wireshark抓包理解APR协议
    DBeaver用户界面窗口失效 查询窗口不显示
    二、IP、路由协议
    解决图片存入时 A generic error occurred in GDI+ 报错
  • 原文地址:https://www.cnblogs.com/-qing-/p/10809349.html
Copyright © 2011-2022 走看看