Mọi công thức kết nối lại không giám sát đều cuối cùng gặp cùng một câu hỏi: mật khẩu sống ở đâu. Câu trả lời phổ biến là chính hành động của tác vụ, cũng là nơi tồi tệ nhất cho nó. Có hai thiết kế khác. Cái nào phù hợp phụ thuộc vào việc máy có thể xác thực mà không cần người và máy chủ có chấp nhận chứng chỉ hay không.

Hành động của tác vụ để lại gì có thể đọc được

Các đối số trong một tác vụ đã lên lịch là một phần định nghĩa của nó, không phải giá trị ẩn lúc chạy. Bất kỳ ai có thể đọc tác vụ, khôi phục bản sao lưu của nó hoặc xuất XML của nó đều thấy chuỗi đúng như bạn đã nhập. Trong khi chạy, cùng chuỗi đó xuất hiện trong danh sách tiến trình. Một tác nhân giám sát có thể sao chép nó vào nhật ký mà bạn không bao giờ xem lại.

schtasks /query /tn "VPN Reconnect" /xml
cmdkey /list

Hãy kiểm tra trước khi giả định điều ngược lại. Lệnh đầu tiên in toàn bộ định nghĩa, bao gồm hành động và các đối số của nó. Lệnh thứ hai hiển thị những thông tin đăng nhập nào tài khoản hiện tại đã lưu trong bộ nhớ đệm, điều này quan trọng cho các thiết kế thay thế bên dưới. Nếu mật khẩu xuất hiện trong XML của tác vụ, việc xoay vòng nó chỉ là một nửa của sửa chữa, vì tác vụ vẫn giữ giá trị cũ.

Một khóa chia sẻ trước được lưu thực sự mang lại gì

Add-VpnConnection -L2tpPsk ghi khóa vào mục sổ điện thoại của kết nối thay vì vào một tác vụ. Đó là bề mặt phơi nhiễm nhỏ hơn so với hành động của tác vụ. Nó vẫn là một bí mật có thể khôi phục, vì quản trị viên trên máy có thể đọc sổ điện thoại.

Đối với một liên kết phòng thí nghiệm giữa hai máy mà bạn kiểm soát, sự trao đổi đó có thể chấp nhận được. Đối với thông tin đăng nhập của người dùng trên một điểm cuối dùng chung thì không. Gọi nó là lưu trữ được mã hóa không thay đổi ai có thể đọc nó. Sổ điện thoại là một tệp cấu hình. Hãy lập kế hoạch cho người có thể mở nó, không chỉ cho người có thể đăng nhập với tư cách người dùng.

Thông tin đăng nhập Winlogon loại bỏ bí mật và thêm một phụ thuộc

-UseWinlogonCredential chọn một con đường khác. Kết nối xác thực bằng MSCHAPv2 với thông tin đăng nhập của người dùng đã đăng nhập. Không có gì thêm được lưu cho tài khoản đó.

Phụ thuộc mà nó thêm vào là đáng kể. Phải có một đăng nhập tương tác để vay mượn, điều này loại trừ tài khoản dịch vụ và tác vụ trước khi đăng nhập. Kết nối cũng kế thừa mọi thứ mà thông tin đăng nhập của người dùng đó có thể tiếp cận trên máy chủ. Hãy đọc công tắc như một tuyên bố về nguồn gốc của thông tin đăng nhập, không phải là một thiết lập bảo mật. Nó thay đổi nguồn, và không có gì về cách máy chủ ủy quyền phiên sau đó.

Xác thực bằng chứng chỉ mở rộng vì không có gì được lưu

Ở nơi máy chủ hỗ trợ EAP-TLS, chứng chỉ máy loại bỏ hoàn toàn bí mật chia sẻ, và việc thu hồi diễn ra ở lớp chứng chỉ. Một tác vụ chạy như SYSTEM có thể trình bày chứng chỉ đó mà không cần đăng nhập tương tác. Hãy xác nhận máy chủ chấp nhận xác thực bằng chứng chỉ trước khi xây dựng trên nó. Một thiết kế phụ thuộc vào phương thức không được hỗ trợ là một kế hoạch chứ không phải giải pháp. Sau đó quyết định nơi khóa riêng tư sống: kho máy cho danh tính thiết bị, kho người dùng cho một người.

Ở nơi không thể tránh tên người dùng và mật khẩu, hãy lưu chúng trong Credential Manager giới hạn cho chính tài khoản của tác vụ. Hãy để ứng dụng khách đọc chúng từ đó thay vì từ một đối số. Một bí mật mà tác vụ có thể lấy được mà không in nó ra là một vấn đề nhỏ hơn so với bí mật được ghi vào định nghĩa của nó.

Xem lại các thành phần trước lần xoay vòng tiếp theo

Hãy nhìn vào những gì được lưu, không phải những gì bạn dự định. Kiểm tra sổ điện thoại theo từng người dùng, bản sao cho tất cả người dùng, XML của tác vụ và bất kỳ tập lệnh nào gọi lệnh quay số. Sau đó xác nhận rằng chứng chỉ hoặc thông tin đăng nhập được lưu trong bộ nhớ đệm được giới hạn cho tài khoản mà tác vụ sử dụng, vì thông tin đăng nhập được lưu cho tài khoản tương tác của bạn là vô hình đối với SYSTEM.

Ghi lại phương thức xác thực và tài khoản trong ghi chú của chính tác vụ. Người tiếp theo thay đổi chính sách của máy chủ cần biết thiết kế nào đang được sử dụng. Câu trả lời đó không thể thấy chỉ từ hành vi kết nối lại. Viết nó ở nơi lần xoay vòng tiếp theo sẽ nhìn trước tiên.

Bài viết liên quan