
命令
:printf ‘testing\012\011\011testing\014\010\012more testing\012\011\000\013\000even more testing\012\011\011\011\012’ 》 /tmp/testing.txt现在用不同的编辑器软件打开,
显示
的结果会不同。用简单的cat打开将显示:
$ cat /tmp/testing.txt
testing
testing
more testing
even more testing
如果用nano或者vim打开,将会看到:
testing
testing^L^H
more testing
^@^K^@even more testing
现在我们给cat加上一些选项参数,以便能显示出特殊字符来。
用cat -T命令来显示TAB键的字符^I
cat -T /tmp/testing.txt
testing
^I^Itesting
more testing
^I
even more testing
^I^I^I
用cat -E命令来显示行尾的结束字符$
$ cat -E /tmp/testing.txt
testing$
testing
$
more testing$
even more testing$
$
用简单的cat -A命令就可以显示所有不可见的字符:
$ cat -A /tmp/testing.txt
testing$
^I^Itesting^L^H$
more testing$
^I^@^K^@even more testing$
^I^I^I$上面就是Linux使用cat命令显示隐藏字符的方法介绍了,cat命令除了能够显示不可见字符外,还有其他的功能,具体的可以参考系统之家Linux下如何使用cat命令?首先,要对这个常量字符串进行加密。然后,加密用的密码(
密钥
)需要进行特殊处理。
比如:要保护字符串123456,用密钥13579进行加密。
密钥13579的16进制数组形式为:{0x31, 0x33, 0x35, 0x37, 0x39, 0x00}
你可以对这个数组进行数据干扰。比如:高位乱填数据(因为你知道是3),低位都加/减某数值:
变为了:{ 0xA3, 0xF5, 0x67, 0xD9, 0x3A, 0x00 }
你在代码中对每一位进行恢复:
*p &= 0x0F, *p |= 0x30, *p -= 0x02,如此得到你的原始密码:13579;
反汇编看到的你的密钥串为:0xA3, 0xF5, 0x67, 0xD9, 0x3A, 0x00。
不知道你思路的话,只能碰运气猜啦。
在上面两种干扰方法基础上,你甚至还可以把高低位调换,这样就又加了一层干扰信息。
欢迎分享,转载请注明来源:内存溢出

