Jos*_*osh 47 security password
如何配置我的系统以在输入特定密码时销毁所有个人数据?这背后的动机是 NSA 的东西。
我想有三个主要用例。
我知道像
dd if=/dev/urandom of=/dev/$HOME
Run Code Online (Sandbox Code Playgroud)
应该足以进行数据销毁。但是,我不知道如何通过某个密码触发它。
如果在删除数据时允许登录,则奖励积分。
slm*_*slm 28
作为替代方法,您可以使用TrueCrypt 的“隐藏操作系统”。这允许您在使用特定密码时访问虚假的替代操作系统,而不是主操作系统。
摘抄
如果您的系统分区或系统驱动器使用 TrueCrypt 加密,您需要在打开或重新启动计算机后在 TrueCrypt 引导加载程序屏幕中输入您的预引导验证密码。可能会发生有人强迫您解密操作系统或泄露预启动身份验证密码的情况。在很多情况下,您无法拒绝(例如,由于敲诈勒索)。TrueCrypt 允许您创建一个隐藏的操作系统,它的存在应该是不可能证明的(前提是遵循某些准则——见下文)。因此,您不必解密或泄露隐藏操作系统的密码。
Bruce Schneier介绍了使用这些(可否认文件系统)的功效,因此您可能需要在深入研究之前对其进行进一步调查。
Deniable Encryption的整个想法有点像蠕虫,因此在某些情况下谨慎使用它需要提前深思熟虑。
您可以在/etc/passwd
文件中的用户条目中插入替代脚本。
# /etc/passwd
tla:TcHypr3FOlhAg:237:20:Ted L. Abel:/u/tla:/usr/local/etc/sdshell
Run Code Online (Sandbox Code Playgroud)
您可以设置用户的帐户,以便它运行一个脚本,例如/usr/local/etc/sdshell
检查提供的密码。如果是触发擦除的神奇密码,它可以开始此过程(甚至是背景),然后落入外壳或执行其他操作。
如果提供的密码不是这个神奇的密码,那么继续运行一个普通的 shell,/bin/bash
例如。
cha*_*aos 16
我对此的方法是在pam 模块中触发自毁。有一些机制可以用脚本捕获密码,检查它是否是“特殊”密码并启动自毁过程。
在你的/etc/pam.d/common-auth
第一行写一行,如下所示:
auth optional pam_exec.so debug expose_authtok /etc/security/suicide.sh
Run Code Online (Sandbox Code Playgroud)
(或者例如,/etc/pam.d/gdm
如果您只是希望它通过身份验证工作gdm
)
expose_authtok
会导致pam_exec.so
模块通过标准输入将密码传递给名为 的登录脚本/etc/security/suicide.sh
。该脚本将以 root 权限运行,例如如下所示:
#!/bin/bash
# read the users password from stdin (pam_exec.so gives the provided password
# if invoked with expose_authtok)
read password
# if its an authentication and it's the user "user" and the special password
if [ "$PAM_TYPE" == "auth" ] && [ "$PAM_USER" == "user" ] && [ "$password" == "magic" ]; then
# do whatever you want in the background and the authentication could continue
# normally as though nothing had happened
exit 0
else
exit 0
fi
Run Code Online (Sandbox Code Playgroud)
即使您更改“普通”用户的密码,它也会起作用。
小智 9
只是为了让您知道如果来自政府等的任何人确实抓住了您的计算机,他们会做的第一件事就是一点一点地复制驱动器并清除副本。任何时候有人进行计算机取证都会做同样的事情,因此如果您在分析驱动器时损坏,您只会损坏副本。
因此,让我们说大坏的 NSA 拿走你的电脑,用你的大拇指让你告诉他们密码。当你给他们错误的密码时,它只会删除复制而不是原始密码。现在他们知道你惹他们了。
因此,只有在有人控制您的系统之前运行它,才能使用终止密码。所以它会做的就是给你一种复杂的方式来执行你可以别名的东西。