Cách kích hoạt hệ thống tự hủy với một mật khẩu nhất định được nhập


46

Làm cách nào để định cấu hình hệ thống của tôi để hủy tất cả dữ liệu cá nhân khi nhập mật khẩu nhất định? Động lực đằng sau điều này là NSA.

Tôi tưởng tượng có ba trường hợp sử dụng chính.

  1. Khi đăng nhập, việc nhập mật khẩu được xác định trước sẽ kích hoạt hủy dữ liệu người dùng.
  2. Lúc hệ thống thức dậy. nhập mật khẩu được xác định trước sẽ kích hoạt hủy dữ liệu cá nhân.
  3. Nhập bất kỳ lệnh đặc quyền nào bằng mật khẩu được xác định trước sẽ kích hoạt hủy dữ liệu cá nhân.

Tôi biết rằng một cái gì đó như

dd if=/dev/urandom of=/dev/$HOME

Cần phải đủ để phá hủy dữ liệu. Tuy nhiên, tôi không biết làm thế nào để kích hoạt nó bằng một mật khẩu nhất định.

Điểm thưởng nếu sau đó cho phép đăng nhập trong khi dữ liệu đang bị xóa.


9
Nếu bạn thực sự muốn làm cho nó hoạt động thì bạn nên mã hóa ổ cứng của bạn. điều này là do không có mã hóa, bạn sẽ phải ghi đè lên toàn bộ ổ cứng, nhưng với mã hóa, bạn chỉ phải ghi đè lên tiêu đề LUKS (hoặc bất cứ điều gì).
strugee

1
Có một mô-đun pam_python, có thể sẽ giúp việc thực hiện những gì bạn muốn dễ dàng hơn: ace-host.stuart.id.au/russell/files/pam_python
phát lại

7
Nếu đó là NSA bạn lo lắng thì dd if=/dev/urandom of=/dev/$HOMEsẽ không làm được gì nhiều. Ngay cả khi cho rằng họ đủ ngu ngốc để sử dụng hệ điều hành thay vì tháo đĩa và đọc trực tiếp, có những công ty phục hồi pháp y có thể lấy dữ liệu từ một đĩa bị ghi đè và ghi vật lý.
Ngừng làm hại Monica

2
# 1. Nếu NSA thực sự theo đuổi bạn, họ đã âm thầm làm mất dữ liệu của bạn vài tuần trước. # 2. Mã hóa dữ liệu của bạn cung cấp cho NSA quyền hợp pháp để giữ dữ liệu của bạn mãi mãi hoặc mất bao lâu để giải mã nó, tùy theo điều kiện nào đến trước. # 3. Bằng chứng về việc phá hủy bằng chứng thường đủ để tòa án đưa bạn vào một cái gì đó. Những chương trình 'xóa an toàn' đó lấp đầy ổ đĩa của bạn bằng số không hoặc vô nghĩa ngẫu nhiên là bằng chứng cho thấy bạn đã phá hủy một cái gì đó, và điều đó sẽ được đưa ra trước tòa.
Ryan Ries

3
Nó không bao gồm tất cả 3 trường hợp của bạn, nhưng có một cái nhìn ở đây: kali.org/how-to/emergency-self-destruction-luks-kali
kẻ giả mạo

Câu trả lời:


26

Ý tưởng số 1 - Hệ điều hành ẩn

Là một phương pháp thay thế, bạn có thể sử dụng "Hệ điều hành ẩn" của TrueCrypt . Điều này cho phép bạn truy cập một hệ điều hành thay thế giả khi sử dụng một mật khẩu nhất định, thay vì hệ điều hành chính.

đoạn trích

Nếu phân vùng hệ thống hoặc ổ đĩa hệ thống của bạn được mã hóa bằng TrueCrypt, bạn cần nhập mật khẩu xác thực trước khi khởi động vào màn hình Trình tải khởi động TrueCrypt sau khi bạn bật hoặc khởi động lại máy tính. Nó có thể xảy ra rằng bạn bị ai đó buộc phải giải mã hệ điều hành hoặc tiết lộ mật khẩu xác thực trước khi khởi động. Có nhiều tình huống mà bạn không thể từ chối để làm như vậy (ví dụ, do tống tiền). TrueCrypt cho phép bạn tạo một hệ điều hành ẩn mà không thể chứng minh được sự tồn tại của nó (miễn là các hướng dẫn nhất định được tuân theo - xem bên dưới). Do đó, bạn sẽ không phải giải mã hoặc tiết lộ mật khẩu cho hệ điều hành ẩn.

Bruce Schneier bảo vệ tính hiệu quả của việc sử dụng các hệ thống này ( Hệ thống tệp từ chối , vì vậy bạn có thể muốn điều tra thêm trước khi đi sâu vào.

Toàn bộ ý tưởng về Mã hóa từ chối là một chút sâu, vì vậy hãy thận trọng khi sử dụng nó trong một số tình huống nhất định cần phải suy nghĩ kỹ trước thời hạn.

Ý tưởng số 2 - Thêm tập lệnh vào / etc / passwd

Bạn có thể chèn các tập lệnh thay thế vào mục nhập của người dùng trong /etc/passwdtệp.

Thí dụ

# /etc/passwd
tla:TcHypr3FOlhAg:237:20:Ted L. Abel:/u/tla:/usr/local/etc/sdshell

Bạn có thể thiết lập tài khoản người dùng để nó chạy tập lệnh như /usr/local/etc/sdshellsẽ kiểm tra xem mật khẩu nào được cung cấp. Nếu đó là mật khẩu ma thuật kích hoạt việc xóa, nó có thể bắt đầu quá trình này (nền chẵn) và thả vào vỏ hoặc làm một cái gì đó khác.

Nếu mật khẩu được cung cấp không phải là mật khẩu kỳ diệu này, thì hãy tiếp tục chạy shell bình thường /bin/bash, chẳng hạn.

Nguồn: 19.6.1 Tích hợp mật khẩu một lần với Unix


2
Ý tưởng số 2 sẽ không hoạt động. Shell sẽ chỉ được gọi khi mật khẩu chính xác đã được nhập (như được định cấu hình trong / etc / bóng). Ngay cả khi nó hoạt động, sẽ không có cách nào để tập lệnh kiểm tra mật khẩu nào được nhập vào lúc đăng nhập.
mạo

@faker - phương pháp này đúng với mật khẩu một lần trong unix, vì vậy tôi tin rằng nó sẽ hoạt động. Nó có thể không tích hợp trực tiếp với mật khẩu / etc / bóng của hệ thống, nhưng hoàn toàn khả thi.
slm

@slm từ trang bạn đã liên kết đến: This puts two passwords on the account: the traditional account password followed by the one-time password.Tất nhiên bạn có thể trong tập lệnh kiểm tra mật khẩu hủy, nhưng chỉ sau khi bạn nhập đúng mật khẩu tài khoản. Về cơ bản bạn có 3 mật khẩu. Mật khẩu tài khoản chung, mật khẩu bước 2 chính xác và tự hủy mật khẩu bước 2. Không đẹp lắm và khá đáng nghi ...
mạo

@faker: slm là đúng - Tôi sẽ không theo dõi liên kết từng bước, nhưng nó sẽ hoạt động. Nó vẫn sẽ chỉ liên kết đến một shell hoặc script khác. Tôi thấy không có lý do tại sao nó không chính xác.
Josh

@Josh nó hoạt động nếu bạn xem xét phải nhớ 3 mật khẩu là OK. Nếu không thì nó không hoạt động.
mạo

16

Cách tiếp cận của tôi cho việc này sẽ là kích hoạt tự hủy trong mô-đun pam . Có các cơ chế để bắt mật khẩu bằng một tập lệnh, kiểm tra xem đó có phải là mật khẩu "đặc biệt" không và bắt đầu quá trình tự hủy.

Viết một dòng trong /etc/pam.d/common-authdòng đầu tiên của bạn như thế này:

auth    optional        pam_exec.so debug expose_authtok /etc/security/suicide.sh

(hoặc ví dụ trong trường /etc/pam.d/gdmhợp bạn chỉ muốn nó hoạt động với xác thực qua gdm) expose_authtokkhiến pam_exec.somô-đun gửi mật khẩu qua stdin đến tập lệnh đăng nhập được gọi /etc/security/suicide.sh. Kịch bản này sẽ được chạy với quyền riêng tư gốc và ví dụ như thế này:

#!/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

Nó sẽ hoạt động ngay cả khi bạn thay đổi mật khẩu của người dùng "bình thường".


8

Chỉ để bạn biết nếu có ai trong gov, v.v. Điều tương tự được thực hiện bất cứ lúc nào ai đó làm pháp y máy tính vì vậy nếu bạn làm hỏng trong khi phân tích một ổ đĩa, bạn chỉ làm hỏng bản sao.

Vì vậy, giả sử NSA xấu lớn lấy máy tính của bạn và đặt ngón tay cái của bạn vào một phó để giúp bạn nói với họ mật khẩu. Khi bạn cung cấp cho họ mật khẩu sai thì nó sẽ chỉ sao chép và không phải là bản gốc. Bây giờ họ biết bạn nhắn tin với họ.

Vì vậy, bất kỳ việc sử dụng từ khóa kill nào cũng chỉ có hiệu quả nếu bạn chạy nó trước khi bất kỳ ai nắm giữ hệ thống của bạn. Vì vậy, tất cả những gì nó sẽ làm là cung cấp cho bạn một cách phức tạp để thực hiện một cái gì đó bạn có thể bí danh.


6

Nếu bạn thực sự muốn phá hủy dữ liệu của bạn. Trước tiên, bạn phải đảm bảo rằng không ai tạo một bản sao dữ liệu của bạn (tức là toàn bộ đĩa) ngay từ đầu. Nhưng điều này là không thể ở cấp độ hệ điều hành.

Cách duy nhất để đảm bảo dữ liệu của bạn sẽ không rơi vào tay kẻ xấu là sử dụng mật mã. Đặc biệt mã hóa từ chối sẽ là điều đúng trong trường hợp của bạn: Nếu bạn nhập đúng mật khẩu, dữ liệu cá nhân của bạn sẽ hiển thị. Nếu bạn nhập mật khẩu khác, một số dữ liệu vô hại sẽ xuất hiện.


Tôi lo lắng nhất cho kịch bản ai đó buộc tôi nhập mật khẩu hoặc lấy máy tính sau khi tôi nhập mật khẩu.
Josh

3
Nếu ai đó buộc bạn nhập mật khẩu, bạn chỉ cần nhập mật khẩu "khác", mở khóa dữ liệu vô hại. - Do đó, bạn có thể từ chối sự tồn tại của dữ liệu thực. - Nếu tôi nghiêm túc về việc lấy dữ liệu của bạn, tôi sẽ không cho phép bạn chạm vào máy tính của bạn, nhưng trước tiên hãy tạo một bản sao của mọi thứ.
michas

6

Nếu bạn thực sự muốn có thể phá hủy dữ liệu của mình, để bảo vệ dữ liệu khỏi NSA, bạn cần một thứ gì đó bằng chất nổ và lửa sẽ làm chảy kim loại trong đĩa, và bạn cần có thể kích hoạt nó từ xa.

Tôi nghi ngờ điều này là không thực tế.


0

Chà, bạn có thể có một tập lệnh để dọn rác thư mục chính / người dùng chính của bạn (cũng như / var, / tmp và mọi nơi khác bạn có dữ liệu chỉ dùng mắt) nếu bạn đăng nhập bằng tên người dùng khác ... tập lệnh sẽ bắt đầu tại đăng nhập và sau đó tự động tải một cái gì đó đánh lừa người xem bằng cách làm một cái gì đó hữu ích. Nếu nó làm hỏng hệ thống của bạn mà không lừa dối người xem, họ chỉ có thể rút phích cắm và do đó ngăn kế hoạch được đặt tốt nhất của bạn hoạt động. Điều đó cũng cho phép bạn đăng nhập trong khi điều này đang diễn ra ... mặc dù tôi sẽ đưa người dùng TRASHME vào một ổ đĩa khác cho ổ đĩa bị hỏng sẽ khá bận rộn và do đó là pokey.


1
Không trong giới hạn đã nêu.
Josh

0

Một ổ cứng an toàn, hoặc ổ flash cho vấn đề đó, là một oxymoron. Cách duy nhất để bảo mật thông tin của bạn là sử dụng hệ điều hành ảo chạy trong bộ nhớ và bay hơi khi bạn tắt nguồn, với bất kỳ dữ liệu nào cần được lưu trên phương tiện bên ngoài mà bạn có thể ẩn nếu muốn. Có một số bản phân phối Linux "Trực tiếp" ngoài kia cho phép bạn làm điều đó. Với nỗ lực tương đối ít, bạn có thể làm lại CD hoặc DVD và tùy chỉnh nó cho phù hợp nhất với nhu cầu của bạn. Ngoài ra, hãy lưu ý rằng phần lớn thông tin hành vi của bạn đang được trình duyệt của bạn chuyển tiếp và đối với mọi tìm kiếm mà bạn cho là đang xâm phạm, bạn nên sử dụng một trình duyệt an toàn như Tor.


Không phải yêu cầu của tôi. Tôi hoàn toàn nhận thức được bảo mật hoàn hảo là không thực tế. Tôi không yêu cầu một giải pháp hoàn hảo.
Josh

0

Nếu bạn muốn giữ mọi thứ an toàn, hãy hiểu rằng không có thứ gọi là bảo mật hoàn hảo và an ninh đó không hơn gì một sự đánh đổi chấp nhận sau khi đánh giá rủi ro chính xác đã diễn ra.

Để bắt đầu, tại sao phá hủy bất cứ điều gì. Đầu tiên nhìn vào giảm dễ dàng truy cập. Tạo một khe hở không khí. Mua một hộp bcheaap cho các công cụ trực tuyến và bất cứ điều gì bạn muốn gửi từ vận chuyển hộp chính của bạn ở đó bằng cách lén lút. Sử dụng mã hóa tốt , như Scrypt. Truecrypt và những người khác đã có một ngày đáng kính của họ.

Có nhiều chiến lược khác mà bạn có thể sử dụng, không có đủ không gian để thực hiện chúng ở đây và thật lòng tôi không có đủ thời gian để đi sâu vào chúng. Tôi nghĩ rằng bạn đã khám phá ra một con đường học tập hoàn toàn mới.


Không trong bối cảnh đã nêu.
Josh

0

Như đã được chỉ ra cho tôi, và đặc trưng trên Phoronix, Kali Linux đã tạo ra một phương pháp để làm điều này là tốt. Nhìn vào một số mã, có một điểm yếu vẫn sẽ cho phép bản vá bị đánh bại, nhưng nó còn đi một chặng đường dài để cho phép mật khẩu tự hủy hiệu quả. Lưu ý, điểm yếu là tính đặc biệt của phần cứng liên quan đến việc xóa dữ liệu - các công cụ của nhà sản xuất có thể khôi phục dữ liệu bằng 0 và ghi đè các vị trí quan trọng trên phương tiện nên được thực hiện với trình tạo số ngẫu nhiên nhiều lần để đảm bảo dữ liệu được xáo trộn.

Liên kết tại đây: http://www.kali.org/how-to/emergency-elf-destrraction-luks-kali/


0

Có, bạn phải phá hủy bề mặt của ổ đĩa. Nên sử dụng lựu đạn nhiệt (đó là những gì họ đã dạy chúng tôi) Bạn có thể tự chế tạo bằng bộ khởi động lửa (khối magiê) và nguồn đánh lửa ... mục tiêu là tạo ra lửa D lớp .... không thể dập tắt .


Tôi không nghĩ OP đã nói về sự hủy diệt vật lý ...
don_crissti
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.