星巡研究院

渗透视角下的C语言

``` #define _XOPEN_SOURCE #include <crypt.h> #include <stdio.h> int main(void) { /* salt参数携带算法标记与盐,crypt在用户态完成单向哈希,不发系统调用 */ const char *hash = crypt("plaintext-demo", "$6$fixedsalt"); if (hash == NULL) { perror("crypt"); return 1; } printf("(仅演示算法调用,不输出真实口令哈希)\n"); return 0; } ``` 链路:`crypt()` 全程在用户态按盐中标记选择算法,把明文与盐经多轮压缩 / 置换得到摘要,不陷入内核。认证程序取出存储哈希,用同一盐对候选明文再算一次,逐字符串比对是否相等。单向意味着正向可算、逆向不可推。 ``` # 隔离靶场内观察crypt无系统调用,仅用户态计算 strace -e trace=read,write ./程序 ```
这是进阶内容

升级理论包获取本册全部章节,从机器本质系统入门