大佬教程收集整理的这篇文章主要介绍了linux – 从内存中读取变量,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
read -s -p "password: " PASSWD; printf "%b" "\n"
显然这不安全,因为它存储在内存中的明文中,并且可以通过核心转储访问它?我如何从内存中读取此变量.
请注意,我不是在寻找更好的解决方案我只是好奇,如果我能真正读取这个密码/变量.
在您的示例中,PASSWD将存储在本地变量中.进程的环境变量存储在/ proc / PID / environ中,可由该用户或root读取:
[choad ~]$read -s -p "password: " PASSWD; echo password: [choad ~]$echo $PASSWD soopersekrit [choad ~]$ls -al /proc/self/environ -r-------- 1 michael michael 0 May 6 14:46 /proc/self/environ [choad ~]$grep PASSWD /proc/self/environ [choad ~]$export PASSWD [choad ~]$tr '\000' '\n' < /proc/self/environ | grep PASSWD PASSWD=soopersekrit [choad ~]$echo $$ 19613 [choad ~]$gdb -p 19613 (gdb) info proc mappings 0x91f2000 0x9540000 0x34e000 0 [heap] (gdb) dump memory /tmp/bash.mem 0x91f2000 0x9540000 [choat ~]$Strings /tmp/bash.mem |grep ^PASSWD PASSWD=soopersekrit PASSWD=soopersekrit
以上是大佬教程为你收集整理的linux – 从内存中读取变量全部内容,希望文章能够帮你解决linux – 从内存中读取变量所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。