欢迎来到 嗅灵易学

零基础也能上手的脚本技术课,一对一答疑带你入门

[讨论]软件中有哪些隐藏明文字符串的方法

[讨论]软件中有哪些隐藏明文字符串的方法

新手请教:
玩了一段时间的CrackMe,有些是明文直接出现的。就像这样的,直接通过字符串搜索就能定位关键位置进行破解。
有些是通过字符串搜索,什么有用的信息也搜不到。像这样的。

那么问题来了
如何去隐藏字符串=。=
百度也没百度到相关的内容,只是自己想了个笨方法:申请一片空间,然后用内联汇编挨个往里边填字符。

_asm

  {

    lea esi, a;

    mov byte ptr[esi], 101;

    inc esi;

    mov byte ptr[esi], 114;

    inc esi;

    mov byte ptr[esi], 114;

    inc esi;

    mov byte ptr[esi], 111;

    inc esi;

    mov byte ptr[esi], 114;

    inc esi;

    mov byte ptr[esi], 33;

    inc esi;

    mov byte ptr[esi], 0;

  }

有没有其他的方法或关于这方面的技术文章,希望大牛不吝赐教。
顺便发一下第一次写的CrackMe,特别Low,不用笑.......
ConsoleApplication2.rar
=======================分割================================
又想到了一个办法:
for (int i = 0; i < wcslen(_Text); i++)

		_Text[i] -=10 ;

把_TEXT中的数据挨个加或减固定的数,这样中文字符的话就会变成乱码,在VS调试的时候把这些乱码保存下来,然后赋给字符串作初值,这样就算OD或IDA查到字符串,那么也是乱码。
WCHAR _Text[100] = L"砾觭旃泟D\x14;》叅陮朶xkq窡叭\x14<》侉寐砋辝兯桐叢乄叹甲\x14=》抈刄管泟";

用到的时候在把它还原,用完了再给他加或减固定的数。
for (int i = 0; i < wcslen(_Text); i++)

		_Text[i] -=10 ;

	for (int i = 0; i < wcslen(_Caption); i++)

		_Caption[i] += 10;

	MessageBox(_Text, _Caption);

	for (int i = 0; i < wcslen(_Caption); i++)

		_Caption[i] -= 10;

	for (int i = 0; i < wcslen(_Text); i++)

		_Text[i] += 10;

顺便放上用这个方法写的一个CrackMe,MFC写的,VS2015,高手笑笑就好
MFCApplication4.rar

上传的附件 捕获.PNG
捕获1.PNG
ConsoleApplication2.rar
MFCApplication4.rar

注意:上传附件及图片大小不得大于30M。

⚠️ 版权声明:
本博客所有内容(含教程、源码、工具)仅供个人技术学习与研究交流使用,严禁商用、倒卖、二次分发及非法用途
未经作者书面授权,任何组织或个人不得转载、复制或用于其他平台,违者将追究相关责任。

0 0 0 举报
复制成功