Các cách để ngăn chặn các tệp có ký tự Unicode ghi đè từ phải sang trái trong tên của chúng (một phương thức giả mạo phần mềm độc hại) khỏi bị ghi hoặc đọc là gì?


20

Các cách để tránh hoặc ngăn các tệp có ký tự Unicode RLO (Ghi đè từ phải sang trái) trong tên của chúng (một phương pháp phần mềm độc hại để giả mạo tên tệp) khỏi bị ghi hoặc đọc trong PC Windows?

Thông tin thêm về ký tự unicode RLO tại đây:

Thông tin về ký tự unicode RLO, vì nó được sử dụng bởi phần mềm độc hại:

Tóm tắt báo cáo sự cố vi rút máy tính / truy cập máy tính trái phép vào tháng 10 năm 2011, được biên soạn bởi Cơ quan xúc tiến công nghệ thông tin, Nhật Bản (IPA) [ Mirror (Google Cache) ]

Bạn có thể thử trang web kiểm tra ký tự RLO này để xem cách hoạt động của nhân vật RLO.

Ký tự RLO cũng đã được dán trong trường Test Kiểm tra đầu vào 'trong trang web đó. Hãy thử gõ ở đó và nhận thấy rằng các ký tự bạn đang gõ sắp ra theo thứ tự ngược lại (từ phải sang trái, thay vì từ trái sang phải).

Trong tên tệp, ký tự RLO có thể được định vị cụ thể trong tên tệp để giả mạo hoặc giả trang là có tên tệp hoặc phần mở rộng tệp khác với những gì nó thực sự có. (Vẫn sẽ bị ẩn ngay cả khi ' Ẩn tiện ích mở rộng cho các loại tệp đã biết ' không được chọn.)

Thông tin duy nhất tôi có thể tìm thấy có thông tin về cách ngăn các tệp có ký tự RLO được chạy là từ Cơ quan Xúc tiến Công nghệ Thông tin, trang web Nhật Bản .

Bất cứ ai cũng có thể đề xuất bất kỳ giải pháp tốt nào khác để ngăn chặn các tệp có ký tự RLO trong tên của chúng được ghi hoặc đọc trong máy tính, hoặc một cách để cảnh báo người dùng nếu phát hiện thấy một tệp có ký tự RLO?

HĐH của tôi là Windows 7, nhưng tôi sẽ tìm giải pháp cho Windows XP, Vista và 7 hoặc một giải pháp sẽ hoạt động cho tất cả các HĐH đó, để giúp mọi người sử dụng các HĐH đó.


1
Câu hỏi rất hay! Tôi cũng muốn biết điều này. Liên kết của bạn dường như không hoạt động.
Cerberus

@Cerberus Chỉ cần phát hiện ra rằng liên kết không hoạt động. Tôi hy vọng nó chỉ tạm thời ngừng hoạt động. Tôi sẽ cập nhật câu trả lời nếu tôi tìm thấy một tấm gương.
galacticninja


@Cerberus Cảm ơn. Tôi đã thêm các liên kết gương cho câu hỏi.
galacticninja

4
They adviced to use the Local Security Policy settings manager to block files with the RLO character in its name from being run.Bạn có thể vui lòng cho chúng tôi biết lý do tại sao đây không phải là một giải pháp?
Tamara Wijsman

Câu trả lời:


3

Bạn có thể sử dụng Mọi thứ kết hợp với AutoHotkey để tạo cảnh báo mỗi khi ký tự điều khiển văn bản hai chiều tạo thành một phần của tên tệp.

Kịch bản

AlertText = A bidirectional text control character was detected in a filename.
AlertText = %AlertText%`n`nClick OK to re-hide the window.

SetTitleMatchMode RegEx
DetectHiddenWindows, On
EnvGet, ProgramFiles32, ProgramFiles

Start:
Run, %ProgramFiles32%\Everything\Everything.exe
WinWaitActive, Everything, , 5
if Errorlevel
    Goto Start
WinGet, Id, ID, A
StatusBarWait, objects, , 1, ahk_id %Id%
StatusBarGetText, Status, 1, ahk_id %Id%
Backup := ClipboardAll
Transform, Clipboard, Unicode, ‎|â€|‪|‫|‬|‭|‮
Send, ^v
WinHide, ahk_id %Id%
Sleep, 100
Clipboard := Backup
Backup =
StatusBarWait, ^(?!^\Q%Status%\E$)
Loop
{
    StatusBarWait, [1-9], , 1, ahk_id %Id%
    IfWinNotExist, ahk_id %Id%
        Goto Start
    WinShow, ahk_id %Id%
    WinRestore, ahk_id %Id%
    MsgBox, %AlertText%
    WinHide, ahk_id %Id%
}

Những gì nó làm

Kịch bản khởi chạy Mọi thứ và tìm kiếm ‎|â€|‪|‫|‬|‭|‮(UTF8), tức là tất cả bảy ký tự điều khiển văn bản hai chiều ( nguồn ), được phân tách bằng |.

Sau đó, tập lệnh ẩn cửa sổ Mọi thứ và theo dõi thanh trạng thái của nó. Khi nó chứa bất kỳ chữ số nào khác với 0, một trận đấu đã được tìm thấy, cửa sổ Mọi thứ sẽ được hiển thị và hộp thông báo sau sẽ bật lên:

Một ký tự điều khiển văn bản hai chiều được phát hiện trong một tên tệp.

Nhấn OK để ẩn lại cửa sổ.

Kịch bản cũng khởi chạy lại mọi thứ trong trường hợp nó bị đóng.

Cách sử dụng

  1. Tải về , cài đặt và khởi chạy mọi thứ.

  2. Nhấn Ctrl+ Pvà chuyển sang tab Khối .

    Đối với tất cả các khối lượng cần được kiểm tra, kích hoạt thay đổi Màn hình .

  3. Tải xuống và cài đặt AutoHotkey.

  4. Lưu vào kịch bản trên như find-bidirectional-text-control-characters.ahk.

  5. Bấm đúp vào tập lệnh để khởi chạy nó.

  6. Tạo lối tắt đến tập lệnh trong thư mục Khởi động của bạn .



0

Có thể có nhiều cách khác, nhưng cách dễ nhất - nhưng không tầm thường - là triển khai bộ lọc hệ thống tệp (hoặc bộ lọc mini hệ thống tệp) để lọc các yêu cầu này. Trong trường hợp đọc từ một tệp như vậy, bạn có thể quay lại STATUS_ACCESS_DENIEDvà khi viết, bạn không nên làm bất cứ điều gì mà thay vào đó, ngăn chặn các tệp đó được tạo ra (có thể cũng với mã lỗi ở trên) ở vị trí đầu tiên. Sáng tạo là một loại yêu cầu khác.

Người ta có thể tưởng tượng các phương pháp khác để đạt được kết quả tương tự, chẳng hạn như kết nối SSDT. Nhưng cách đáng tin cậy duy nhất sẽ là ở trên.

Để làm được điều đó, bạn sẽ phải nhờ ai đó viết loại bộ lọc này cho bạn (tương đối tầm thường đối với các bộ lọc mini cho nhà phát triển kernel) và sau đó ký tên để có được nó thông qua chính sách ký chế độ kernel kể từ Vista. Nếu bạn không muốn thực hiện sau, bạn vẫn có thể kiểm tra ký nhị phân trình điều khiển và sửa đổi các tùy chọn khởi động của mình để cho phép nội dung được ký kiểm tra - do đó ảnh hưởng đến bảo mật của hệ thống tương ứng.

Trong ánh sáng của thông tin này tôi sẽ mạnh mẽ khuyên bạn nên tận dụng các giải pháp mà galacticninja và Tom Wijsman chỉ ra.


2
" Tôi thực sự khuyên bạn nên sử dụng giải pháp mà Tom Wijsman đã chỉ ra. " Thật ra, đó là một giải pháp mà tôi đã chỉ ra. Tôi đã thiết lập Windows để làm điều đó. Giống như những gì tôi đã trả lời với Tom Wijsman, tôi đang tìm kiếm các giải pháp khác sẽ ngăn không cho viết và đọc ký tự RLO , hoặc một giải pháp sẽ tự động thông báo hoặc cảnh báo cho người dùng nếu phát hiện ký tự RLO. Tôi sợ rằng tôi không có bí quyết kỹ thuật để viết bộ lọc mà bạn mô tả.
galacticninja

@galacticninja: Tôi xin lỗi, tôi sẽ sửa nó trong câu trả lời của tôi.
0xC0000022L

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.