17 điểm bởi GN⁺ 2023-09-14 | 5 bình luận | Chia sẻ qua WhatsApp
  • Do số vụ Explorer bị crash tăng đột biến nên khi lần theo nguyên nhân, người ta phát hiện trong stack có một function pointer giống hệt mã độc
  • Tìm kỹ hơn thì hóa ra đó không phải mã độc mà là uninstaller
  • Sau khi uninstaller kết thúc, nó chờ để xóa chính binary của mình (self-deleting)
    • Đoạn mã này dùng một phương pháp được giới thiệu trên CodeProject từ 10 năm trước
  • Có lẽ nó cần gọi hàm của một DLL nào đó, nhưng hàm đó đã bị vòng qua bằng detour nên mới xảy ra sự việc này
  • Nếu muốn tự xóa, đừng chèn mã hoặc detour sang tiến trình khác (Explorer) như vậy; hãy dùng một tệp tạm như cleanup.js dưới đây
    • Đoạn mã này tự xóa chính nó, đồng thời cũng thử xóa uninstaller trong 20 giây
var fso = new ActiveXObject("Scripting.FileSystemObject");  
fso.DeleteFile("C:\\Users\\Name\\AppData\\Local\\Temp\\cleanup.js");  
  
var path = "C:\\Program Files\\Contoso\\contoso_update.exe";  
for (var count = 0; fso.FileExists(path) && count < 40; count++) {  
    try { fso.DeleteFile(path); break; } catch (e) { }  
    WSH.Sleep(500);  
}  

5 bình luận

 
[Bình luận này đã bị ẩn.]
 
kuroneko 2023-09-14

Tôi nhớ hồi đó từng dùng các chương trình dọn rác...
Dù vậy, dạo này ngay cả Windows cũng đang dần cải thiện các trình quản lý gói, nên tôi vẫn đang kỳ vọng. +_+

 
botplaysdice 2023-09-14

Có vẻ bạn đã dùng từ 'đủ mức phát triển' khá nhiều. Khoa học phát triển đến mức cao thì không thể phân biệt với ma thuật.

 
xguru 2023-09-14

Tiêu đề bài viết lấy từ một câu nói của ngài Arthur C. Clarke, nhà văn khoa học viễn tưởng nổi tiếng.

"Any sufficiently advanced technology is indistinguishable from magic."
"Bất kỳ công nghệ nào đủ tiên tiến cũng không thể phân biệt được với phép thuật."

 
GN⁺ 2023-09-14
Ý kiến trên Hacker News
  • Thảo luận về sự tương đồng giữa trình gỡ cài đặt nâng cao và phần mềm độc hại, tập trung vào các tệp thực thi tự xóa
  • Cung cấp liên kết đến một dự án mã nguồn có chứa mã cho tệp thực thi tự xóa
  • Tác giả cho rằng tệp nhị phân trông giống phần mềm độc hại vì nó tự xóa chính nó, ngủ, và tương tác với trình gỡ cài đặt
  • Tranh luận về giải pháp được đề xuất, đặt câu hỏi liệu nó có tốt hơn bản gốc hay không và liệu có đang dùng heuristic tệ để phán đoán tính độc hại hay không
  • Một số bình luận đặt câu hỏi vì sao chương trình Windows cần trình cài đặt/trình gỡ cài đặt riêng, và vì sao việc này không được chính Windows xử lý
  • Có nhắc đến việc sử dụng wscripts, thứ có thể bị phân loại là phần mềm độc hại do mã không được ký hoặc không thể xác minh trước khi chạy
  • Đưa ra khái niệm "detour", được so sánh với lệnh LD_PRELOAD của Linux
  • Hồi tưởng về một ứng dụng đơn giản cho Windows 95/98 đã thêm mọi thư mục vào danh sách gỡ cài đặt mà không bị phần mềm diệt virus phát hiện
  • Một số người bình luận bày tỏ họ thích cách tiếp cận của AmigaOS, nơi ứng dụng là một thư mục độc lập có thể cài đặt hoặc gỡ bỏ dễ dàng
  • Bài viết kết lại bằng sự thật đáng ngạc nhiên rằng Windows hỗ trợ chạy JavaScript như shell script