2012-09-06 33 views
23

Bắt đầu lên từ xa gỡ một ++ Dự án C ngày hôm nay trên một máy Win 7 chạy trong VMWare và đã ngạc nhiên khi thấy mẫu sau trên một vị trí bộ nhớ ngẫu nhiên:Các mẫu trực quan trong bộ nhớ?

enter image description here

Ai có thể mã này (nó không phải là tôi!) và vì lý do gì ?? Chỉ cần tò mò nếu có ai đã nhìn thấy một cái gì đó như thế này.

+5

Đúng, đồng ý. Chúng trông giống như mặt nạ màu xám cấp cho bốn số không. Nó có thể chỉ là trái-overs từ một bộ đệm bitmap cũ. Đừng lo lắng về nó trừ khi bạn bắt đầu thấy 'QQ' và' = P' xuất hiện ở mọi nơi. Sau đó, bạn nên nghi ngờ rằng HAL9000 đang gây rối với ứng dụng của bạn. – paddy

+3

Ít nhất nó không phải là một số logo cho một nhóm hacker đi kèm với một rootkit. – tadman

+0

Đây là một ví dụ tuyệt vời về cách phân tích tần số có thể đánh bại obfuscation. – Mehrdad

Trả lời

22

Dường như mặt nạ được hiển thị cho phông chữ (mỗi ký tự trong một phông chữ (kiểu chữ + cỡ +) được hiển thị một lần trong bộ nhớ, sau đó được chuyển sang bề mặt đầu ra) bằng 8bpp. đã bật tính năng chống răng cưa.

Tôi giả sử dự án của bạn liên quan đến GUI, bạn có thể đang xem khu vực bộ nhớ dùng chung mà GDI sử dụng để lưu trữ phông chữ được rasterized.

Nếu không, thì điều này có thể chỉ là bộ nhớ còn sót lại từ quá trình trước đó hoặc thành phần hệ điều hành không được đánh số 0 trước khi ứng dụng của bạn sử dụng.

+6

Có lẽ họ đã làm cho nó hơi quá tốt. –

6

Thật khó để nói. Có thể bộ nhớ được sử dụng để đệm một số phông chữ (trong trường hợp này là số không) hoặc thậm chí là nội dung trên màn hình hoặc máy in được đệm.

+0

Nó không thể là từ một bộ đệm màn hình hoặc cửa sổ vì nó là 8bpp. – Dai

+1

Vâng, giả sử một màn hình hiện đại, bạn nói đúng. Tôi đã cập nhật câu trả lời của mình để bao gồm máy in. –

+0

Tuyệt vời, cảm ơn! Tất nhiên, làm thế nào tôi có thể bỏ lỡ nó. Tôi nghĩ rằng tôi sẽ phát điên khi tôi lần đầu tiên nhìn thấy nó :) Quá nhiều gỡ lỗi :) – Isso

Các vấn đề liên quan