logo

“Thuần hóa” UAC của Microsoft Windows Vista


“Thuần hóa” UAC của Microsoft Windows Vista Liệu có tính năng nào của Microsoft Windows Vista gây bực tức trên toàn cầu hơn User Account Control, tức UAC viết rút gọn, hay không? Trong điều kiện cần thiết nó vô cùng hữu ích nhưng khi ngược lại nó trở thành sự bất tiện không thể chịu nổi. Giải pháp hấp dẫn ở đây là tắt UAC đi và xem như xong, nhưng đây không phải là giải pháp xác đáng. Sẽ có những lần bạn muốn sự bảo vệ của UAC và có nhiều cách bạn biến UAC thân thiện hơn là xâm chiếm. Hợp tác với nó hơn là chống lại nó, và bạn sẽ thấy ngạc nhiên thú vị là nó dễ điều khiển đến mức nào. Sau đây là 7 cách khiến UAC của Vista ít xâm phạm hơn mà vẫn tránh xa được hiểm nguy an ninh. Liệu có tính năng nào của Microsoft Windows Vista gây bực tức trên toàn cầu hơn User Account Control, tức UAC viết rút gọn, hay không? Trong điều kiện cần thiết nó vô cùng hữu ích nhưng khi ngược lại nó trở thành sự bất tiện không thể chịu nổi. Hay nhìn theo một quan điểm ôn hòa hơn, nó là một tính năng đôi lúc cũng tối cần thiết với Windows – một cách để kiểm soát quyền truy cập tài khoản người dùng quản trị để những chương trình không có quyền truy cập quản trị không nhận được nó. Chúng tôi theo quan điểm thứ 2, ngoài việc phá vỡ nhiều thói quen làm việc hiện hành, cũng có nhiều câu hỏi xung quanh cách hoạt động, hoặc phải hoạt động như thế nào, của nhiều chương trình dưới sự điều khiển của UAC. Giải pháp hấp dẫn ở đây là tắt UAC đi và xem như xong, nhưng đây không phải là giải pháp xác đáng. Sẽ có những lần bạn muốn sự bảo vệ của UAC và có nhiều cách bạn biến UAC thân thiện hơn là xâm chiếm. Hợp tác với nó hơn là chống lại nó, và bạn sẽ thấy ngạc nhiên thú vị là nó dễ điều khiển đến mức nào. 1. Xung đột quyền quản trị Điều quan trọng đầu tiên cần được nói đến là trong trường hợp nào hộp thoại của UAC nên và không nên xuất hiện. Nhiều người than phiền rằng UAC quấy rầy họ ngay khi đó dường như chỉ là một hành động hệ thống hoàn toàn bình thường, như mở một file hoặc copy một thứ gì đó sang một nơi khác. Đây không phải là cách làm việc hợp lý của UAC, vì vậy sau đây là bài phân tích nhanh khi nào bạn nên và không nên nhận những câu lệnh của UAC. UAC có thể khởi động không cần thiết nếu các điều khoản của bạn được thiết lập không chính xác. Đầu tiên, UAC nên khởi sự bất cứ khi nào bạn click vào một biểu tượng hoặc hộp thoại Windows có biểu tượng hình cái khiên (shield). Logo này được tạo ra làm lời chú thích bằng hình ảnh rằng bất cứ hành động có liên quan đến nó sẽ phải có sự chấp thuận của UAC, một dạng cảnh báo trước cho người dùng. Những hành động này bao gồm những thứ như bộ cài đặt ứng dụng, thứ rõ ràng cần phải có sự cho phép của quản trị (admin) để hoạt động. Có lẽ giờ bạn sẽ thấy các biểu tượng cài đặt ứng dụng sẽ được trang trí thêm biểu tượng hình khiên; đó chính là chỉ thị cần sự chấp thuận của UAC để chạy chúng. UAC không nên bật ra khi bạn mở những tài liệu trong thư mục người dùng, khi truy cập vào những tài liệu trên một ổ đĩa khác mà bạn biết là của mình, hoặc khi chạy những chương trình bình thường như Office hoặc Firefox mà không cần quyền quản trị để hoạt động đúng. Nếu điều này xảy ra, có khả năng cao là điều khiển sự cho phép trên những file đó bị hỏng hoặc thiết lập sai. Trường hợp này thường xảy ra khi làm việc với những file trên ổ cứng được di chuyển từ một máy tính khác, ví dụ như máy chạy Windows phiên bản trước đó. Một ổ cứng định dạng FAT hoặc FAT32 thường không hiển thị những vấn đề đó vì những hệ thống file này không cần đến sự cho phép, nhưng ổ cứng định dạng NTFS có thể có quyền sở hữu trên file và thư mục thuộc về một user nào đó chứ không phải hệ thống hiện tại của bạn. Kết quả là, bất kỳ hoạt động file nào trên ổ đấy cũng phải thực hiện dưới chế độ admin, mà có khi vẫn thất bại. Giải pháp: thu lại quyền sở hữu Giải pháp ở đây là lấy lại quyền sở hữu tất cả mọi thứ trên ổ, dù bạn là user hiện tại hay là một quản trị viên. Điều này có thể được thực hiện thông qua GUI, nhưng thường sẽ nhanh hơn và linh hoạt hơn nếu thực hiện thông qua cửa sổ lệnh. Nếu ổ E: là ổ có vấn đề, bạn có thể dùng lệnh ICACLS, ví dụ như: Icacls e:\* /setowner Administrators /T /C Nên nhớ rằng lệnh này mất một lúc mới hoàn tất, vì nó lặp đi lặp lại trên từng đối tượng trong hệ thống file và áp dụng thay đổi về bảo mật. Có thể bạn cũng sẽ muốn tự động gỡ bỏ Recycle Bin ra khỏi ổ này sau khi thực hiện xong, vì nó sẽ không hoạt động chính xác sau khi thay đổi các điều khoản hoặc quyền sở hữu. Điều này cũng thực hiện được từ cửa sổ lệnh: attrib -s -h e:\RECYCLER rd /s e:\RECYCLER (vẫn giả định thực hiện trên ổ e:) Recycle Bin của ổ này sẽ được tái tạo tự động lần kế tiếp bạn khởi động lại hệ thống. Có thể bạn cần phải gán các điều khoảncho ổ đĩa này để có thể truy cập vào tất cả mọi thứ trong nó, nhưng quyền sở hữu đã là mức cao nhất. 2. Sử dụng Process Explorer Bây giờ đến câu hỏi kế tiếp: Liệu có thể khởi động những chương trình nhất định mà không phải đối phó với các lệnh UAC không? Câu trả lời ngắn gọn là có, mặc dù có “nhiều con đường dẫn đến thành Rome”. Con đường chính xác mà bạn sẽ đi tùy thuộc vào thói quen làm việc và bạn muốn chỉnh sửa nó đến mức nào. Chạy Process Explorer với quyền admin sẽ cho phép bạn khởi chạy những chương trình khác với đặc quyền quản trị Cách tránh UAC của chúng tôi là chạy chương trình Process Explorer của Sysinternals.com thay thế cho Task Manager. Khi bạn dùng PE với tùy chọn dòng lệnh /T, nó sẽ tự khởi động chương trình với tư cách Administrator. Đặt shortcut tới PE trong trong nhóm Startup và sau khi đăng nhập bạn sẽ gặp nhắc nhở của UAC để chạy chương trình với quyền quản trị. Vậy giải pháp nằm ở đâu? Khi PE khởi động với quyền admin, một trong những điều bạn có thể thực hiện là dùng nó để mở những chương trình khác cũng với quyền admin. Hãy thực hiệnđiều này thông qua hộp thoại File/Run của chương trình, nó cũng có chức năng History và có thể được sử dụng để lưu những nhiệm vụ admin phổ biến, như mở một phiên CMD hoặc chạy COMPMGMT.MSC /S (bảng điều khiển Computer Management). Tất cả những chương trình đó sẽ chạy với quyền admin mà không vướng hộp thoại của UAC. Dĩ nhiên PE không phải là chương trình duy nhất có thể sử dụng theo hướng này để khởi chạy các chương trình khác cũng với quyền admin, mà nó là một trong những chương trình tốt hơn vì nhiều lý do – chí ít nó đã được viết để thay thế cho một thành phần của hệ thống, chính vì vậy nó là một phần mã tin cậy mà không ảnh hưởng gì đến bạn. Phương pháp này có một số hạn chế, phần lớn trong số này là những gì liên quan đến sự thoải mái cho người dùng. Hạn chế lớn nhất là tốn nhiều công sức: muốn khởi chạy PE bạn cần phải mở nó từ khay hệ thống (hoặc bằng cách nhấn Ctrl – Shift – Esc), sau đó mở menu Run (Ctrl – R) và gõ thứ bạn đang tìm kiếm hoặc kéo xuống để tìm. Nó sẽ tốt đẹp nếu (a) bạn để PE chạy liên tục; (b) bạn cần phải chạy một chương trình với quyền admin. Chính vì vậy bạn có thể cảm thấy hẳn phải có một cách tốt hơn để thực hiện điều này, và thực sự là có vài cách. 3. Lên lịch cho một nhiệm vụ chạy với quyền quản trị Cách duy nhất để tránh UAC là khởi động một chương trình với quyền admin thông qua Task Scheduler. Vì bạn không thể khởi động Task Scheduler và thêm vào một nhiệm vụ quyền admin nếu không phải là admin (và không phải thông qua UAC) ngay từ ban đầu, tuy nhiên điều này không phải là lỗ hổng. Những thông tin admin cần thiết được lưu cùng với bản thân nhiệm vụ. Khi được thiết lập, nó có thể được dùng để chạy những nhiệm vụ riêng lẻ (an toàn hơn) hoặc như một framework để khởi chạy những nhiệm vụ quản trị (hơi ít an toàn hơn, nhưng tiện lợi hơn). Sau đây là một ví dụ cách tạo một nhắc lệnh quản trị theo cách này. Task Manager có thể tránh UAC. Chỉ cần chọn “Run with highest privileges” 1. Truy cập với tài khoản quản trị và khởi động Task Scheduler. Một cách nhanh chóng là gõ sched trong menu Start, sau đó nhấn vào Task Scheduler khi nó xuất hiện. Nó cũng có sẵn trong Control Panel, dưới mục “Schedule tasks” ở bảng bên trái theo cách hiển thị chuẩn, hoặc trong Administrative Tools theo hiển thị Classic. 2. Tạo một nhiệm vụ mới bằng cách nhấn “Create Task” trong bảng Actions (“Create Basic Task” có thể không đưa ra hết các tùy chọn mà bạn cần.) 3. Trong thẻ General, đặt tên cho task. “Admin” sẽ hoạt động tốt. Bất kỳ tên nào cũng được miễn là bạn thấy dễ nhớ; vì bạn sẽ cần nó sau này. Chọn hộp chọn “Run with highest privileges”. 4. Trong thẻ Actions, chọn “New” và chọn “Start a program”. Đưa đường dẫn đến chương trình bạn muốn chạy với quyền admin. Trong trường hợp này là cmd.exe. Chọn OK và thêm hành động đó vào danh sách. 5. Trong thẻ Conditions, bỏ chọn tất cả các tùy chọn đưa ra. 6. Trong thẻ Settings, bỏ chọn tất cả các tùy chọn đưa ra, trừ “Allow task to be run on demand”. 7. Chọn OK và thêm vào nhiệm vụ được lên lịch. 8. Để chạy nhiệm vụ, tạo một shortcut dẫn đến vị trí sau C:\Windows\System32\schtasks.exe /run /tn "" (tên nhiệm vụ) là tên bạn chọn trong bước 3. Cần phải có dấu trích dẫn (“”) xung quanh tên. Bạn có thể đặt một icon để nhấn mạnh đây là một hoạt động quyền admin. 9. Khởi động shortcut. Bạn sẽ thấy xuất hiện một cửa sổ CMD với dòng chữ Administrator: taskeng.exe ở thanh tiêu đề. Một trong những mẹo mà bạn nên làm trên cửa sổ CMD admin là đặt màu nền cửa sổ thành màu đỏ thẫm để có thể liếc qua mà vẫn phân biệt được liệu đang gõ vào một cửa sổ lệnh admin hay cửa sổ thường. Để thực hiện điều này, khởi động cửa sổ CMD, nhấn Alt – Space để mở menu của cửa sổ, và chọn Properties. Dưới mục “Colors”, chọn bộ màu bạn muốn sử dụng cho cửa sổ admin, nhấn OK. Phương pháp tương tự cũng được sử dụng để khởi động trường hợp “nâng cao” của Explorer. Sử dụng explorer/separate để mở Explorer trong một trường hợp riêng– nếu không nó sẽ khởi động như một cửa sổ lệnh thường khác chứ không phải “nâng cao”. (Cẩn thận với những trường hợp Explorer nâng cao, vì bạn có khả năng làm rối tung hoàn toàn mọi thứ lên theo cách này.) Thêm nữa, nếu bạn khởi động trường hợp Explorer “nâng cao”, hãy nhớ rằng bạn không thể sao chép hoặc di chuyển file giữa các trường hợp “nâng cao” và không nâng cao của Explorer. Ví dụ, nếu bạn thử sao chép vào hoặc ra khỏi thư mục Windows, khởi động chương trình Explorer như trên và nhấn Ctrl-N để mở một cửa sổ thứ 2 từ trường hợp trên để có thể sao chép giữa chúng với nhau. Một ứng dụng khác cho Task Scheduler Cũng có thể dùng Task Scheduler để mở một ứng dụng với quyền quản trị. Hơn nữa, vốn đã có một ví dụ bằng chứng về việc thực hiện điều này như thế nào, và đó là bằng chứng điều đó tiện lợi như thế nào. Có một số hướng dẫn về cách sử dụng Task Scheduler để tạo ra một tập lệnh có thể được dùng để chạy bất cứ thứ gì mà không cần lệnh UAC, bằng một menu ngữ cảnh chuột phải. SkipUAC, đây là chương trình sử dụng cả nhiệm vụ lịch biểu và ứng dụng chạy trên nhiệm vụ để đạt được thành tích của nó. Nên nhớ rằng bạn phải có khả năng chạy các nhiệm vụ với quyền admin để cài đặt chương trình này ngay từ bước đầu, và chất lượng của toàn bộ điều này là khá tốt – nó được dành cho những người thực sự biết họ đang làm gì. 4.Sử dụng “Chế độ im lặng” của UAC Một trong những tính năng của UAC mà ít được ghi nhận rộng rãi là “quiet mode” (chế độ im lặng), điều giúp cho sự nâng cao UAC có thể được cài đặt diễn ra câm lặng mà không cần sự đồng ý của người dùng. Những chương trình cần “nâng cao” vẫn chạy trong tình trạng bảo mật riêng biệt, và người dùng vẫn chạy chế độ mặc định với quyền ưu tiên giảm. TweakUAC có thể được dùng để bật/tắt UAC, hoặc khiến nó làm việc im lặng Chế độ im lặng không được đặt sẵn mặc định qua bản điều khiển UAC Vista, có lẽ bởi vì có khả năng nó sẽ bị lạm dụng. Bật lên và những chương trình đòi quyền ưu tiên từ hệ thống có thể chạy mà không cần sự đồng ý đặc biệt của người dùng. Tuy nhiên, nó vẫn là một cách hữu dụng để tạm thời tăng tốc một số hoạt động đòi quyền nâng cao nếu bạn không sử dụng trình tiện ích nâng cao. Để bật chế độ im lặng bằng tay, bạn sẽ cần chỉnh sửa Registry (một hành động UAC). Đặt các giá trị DWORD: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft (NSDQ: MSFT)\ Windows\CurrentVersion\Policies\System\ ConsentPromptBehaviorAdmin và HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\ CurrentVersion\Policies\System\ConsentPromptBehaviorUser Về 0 (mặc định là 2). Bạn có thể sẽ cần làm mới policy sau đó, bằng cách sử dụng lệnh gpupdate từ một nhắc lệnh nâng cao. Một cách khác để bật chế độ im lặng là sử dụng một phần mềm freeware của các hãng thứ ba, TweakUAC. TweakUAC cho phép bạn tắt UAC hoàn toàn (đòi phải reboot), tái kích hoạt và đưa nó vào chế độ im lặng theo yêu cầu. 5. Tắt Secure Desktop Một trong những tính năng – hoặc nỗi phiền toái, tùy thuộc vào quan điểm – của UAC là cách UAC bật lên được khởi động trên một màn hình an toàn, và tách biệt hoàn toàn. Đó là lý do vì sao màn hình tối đi trong vòng một giây và lệnh của UAC xuất hiện trên phiên bản xám xịt của màn hình (nghĩa là bạn không thể thao tác được nữa). Điều này ngăn cản tất cả mọi thứ trừ bạn, người dùng, thao tác trực tiếp với lệnh của UAC, vì vậy một chương trình độc hại không thể kích hoạt UAC mạo danh bạn. Điều Secure Desktop làm phiền mọi người nhất là mất vài giây để quay trở lại, đặc biệt khi bạn đang sử dụng một máy tính không có phần cứng video nhanh nhất hoặc không sử dụng giao diện Aero. Có thể vô hiệu hóa Secure Desktop và khiến lệnh UAC biến mất nhanh hơn trên màn hình chính. Để đối phó với Secure Desktop, chỉnh sửa Registry và đặt giá trị DWORD: i>HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies \ System\PromptOnSecureDesktop Đặt về 1 để bật Secure Desktop và 0 để tắt nó. Bạn có lẽ sẽ cần chạy gpupdate/force sau khi thực hiện để chắc chắn thay đổi có hiệu lực. Nếu bạn không thoải mái với ý tưởng hy sinh về độ an toàn quá nhiều chỉ vì tốc độ nhanh hơn một chút, đừng tắt Secure Desktop; bạn có thể chọn một trong những cách được trình bày trong bài. 6. Thắt chặt điều khiển của UAC Cùng với tất cả các cách để việc sử dụng UAC dễ dàng hơn, chúng tôi cũng đưa vào một số mẹo vặt có thể hữu dụng cho những ai muốn UAC an toàn hơn. Ở chế độ mặc định, UAC bắt buộc người dùng không phải admin gõ mật khẩu admin, nhưng cho phép người dùng admin chỉ cần đơn giản nhấn OK để đồng ý một hành động của UAC. Có nghĩa là có thể buộc UAC yêu cầu password cho tất cả các người dùng, bao gồm cả admin. Để thực hiện điều này, chỉnh sửa Registry, và cài đặt giá trị DWORD HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft (NSDQ: MSFT)\Windows\ CurrentVersion\Policies\System\ConsentPromptBehaviorAdmin về 1. Giá trị mặc định là 2, tức là hành vi admin tiêu chuẩn. Cài đặt ConsentPromptBehaviorAdmin để bắt buộc các admin cung cấp password khi UAC xuất hiện. 7. Thực thi chạy mã có xác thực Sau đây là một cách tăng cường bảo mật có thể có ích với những người muốn chạy UAC im lặng những vẫn muốn có thêm sự bảo vệ chống lại những đoạn mã giả tạo. UAC có thể được thiết lập để chạy chương trình với tư cách admin chỉ nếu khi chúng có chữ ký số hợp lệ, mặc dù theo mặc định tính năng này bị tắt đi. Phần lớn các bộ cài chương trình có một số dạng chữ ký; bạn có thể tìm xem một ứng dụng có chữ ký hay không bằng cách nhấn chuột phải lên biểu tượng chương trình, chọn Properties, tìm thẻ Digital Signatures. Đây là một dạng bảo hiểm rằng chương trình đang chạy không độc hại và có nguồn gốc. Để chắc chắn UAC chỉ chấp nhận những mã được ký, chỉnh sửa Registry và đặt giá trị DWORD: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\ Policies\System\ValidateAdminCodeSignatures về 1. Thay đổi này thường xảy ra ngay lập tức. Nhớ rằng có nhiều chương trình vô hại nhưng không được ký sẽ không hoạt động, và nếu bạn cố gắng chạy chúng với quyền admin mà tính năng này được kích hoạt thì chúng sẽ bị lỗi. Nếu bạn nhận được dòng lỗi “A referral was returned from the server” thì đó là dấu hiệu chương trình bạn đang muốn chạy chưa được ký. (Đây có lẽ là nguyên nhân chức năng này bị vô hiệu hóa theo mặc định, vì nó sẽ khiến nhiều chương trình “vô tội” không hoạt động.) Nếu có gì đó bạn biết là hợp lệ và muốn chạy nó với quyền admin, bạn có thể làm được bằng cách chạy nó thông qua dòng lệnh nâng cao, Explorer, hoặc thông qua Process Explorer được nhắc đến trước đó.
DMCA.com Protection Status Copyright by webtailieu.net