Trao đổi với tôi

http://www.buidao.com
Showing posts with label [Anti Virus]. Show all posts
Showing posts with label [Anti Virus]. Show all posts

10/28/13

[Anti Virus] Sự thật về tiến trình tự động chạy CTFMON.EXE

Rất nhiều người dùng máy tính đã từng "vò đầu bứt tai" với tiến trình tự động chạy tên là "ctfmon.exe" . Đó là gì?

Tìm kiếm trên Google với từ khóa "ctfmon.exe", bạn sẽ nhận được hàng trăm kết quả với các ý kiến khác nhau về tiến trình này. Các ý kiến đều tập trung về hai hướng giải thích đây là một tiến trình của bộ phần mềm Office hoặc là trojan. Thật vậy, có đến hai "loại" ctfmon.exe đều có biểu tượng tệp tin là

Loại 1: Đây là một dịch vụ của bộ phần mềm Office có nhiệm vụ khởi chạy Alternative User Input Text Input Processor và Office Language Bar. Dịch vụ này giám sát hoạt động nhập liệu của người dùng để cung cấp các phương pháp nhập liệu thích hợp như giọng nói, viết tay, bàn phím. Tiến trình ctfmon.exe sẽ được cài cùng với bộ Office khi bạn chọn Alternative User Input trong Office Shared Features. Để vô hiệu hóa tiến trình này bạn thực hiện như sau (áp dụng với Windows XP Professional): Vào Start->Control Panel->Add or Remove Programs, nhấn Microsoft Office và chọn Change, trong cửa sổ hiện ra, bạn đánh dấu vào ô Choose advanced optimization of applications rồi nhấn Next, trong cửa sổ tiếp theo bạn tìm đến mục Alternative User Input trong Office Shared Features, nhấn và thay đổi biểu tượng thành hình chữ X (Not available) rồi chọn Update.

Sau đó bạn trở về Control Panel, chọn Date, Time, Language and Regional Options->Regional and Language Options, nhấn vào thẻ Languages và nhấn Details, trong cửa sổ Text Services and Input Languages hiện ra bạn nhấn vào thẻ Advanced và đánh dấu chọn ô Turn off advanced text services, nhấn OK. Vậy là ctfmon.exe "loại 1" đã ra đi!

Loại hai: Đây là trojan Vb.AQT (một số tên khác như FakeRecycled.AQT!tr, Recycled.20480). Sau khi được kích hoạt trên máy tính, nó sẽ thực hiện các "hành vi bất chính" sau:

- Tạo các thư mục và tệp tin sau trên các thiết bị lưu trữ như đĩa mềm, usb, đĩa cứng:

[Tên ổ đĩa]:\autorun.inf

[Tên ổ đĩa]:\Recycled\desktop.ini

[Tên ổ đĩa]:\Recycled\INFO2

- Tạo một bản sao của chính nó ở [Tên ổ đĩa]:\Recycled\Recycled\ctfmon.exe

- Tạo các file ctfmon.exe và desktop.ini trong thư mục Startup của Windows

- Thực hiện các hành vi giống như trên nhưng với tên thư mục khác là RECYCLER

Trojan này cực kỳ mưu mô ở chỗ nếu bạn nhấn đúp vào thư mục Recycled giả thì sẽ được dẫn đến thư mục Recycled thật ngay. Để thấy được "bản chất bên trong" của thư mục này, bạn phải dùng đến một mẹo khác: cài đặt các phần mềm nén như Winrar, Winzip, mở ổ đĩa tương ứng, nhấn chuột phải lên thư mục Recycled (bạn phải chọn Show hidden files and folders và bỏ chọn ở phần Hide protected operating system files trong Folder Options mới thấy được thư mục này), dùng lệnh Compress to... trên menu ngữ cảnh để tạo một file nén từ thư mục Recycled kể trên, cuối cùng bạn mở file nén đó ra và "chiêm ngưỡng" nội dung bên trong.


Các thiết bị lưu trữ bị nhiễm trojan này sẽ gặp tình trạng không thể truy xuất trực tiếp bằng cách nhấn đúp và bạn phải nhấn chuột phải chọn Explore. Nguy hiểm hơn, theo thông tin trên một số diễn đàn tin học, trojan Vb.AQT có thể đóng vai trò như một spyware hay keylogger để đánh cắp thông tin cá nhân của người dùng.

Đừng lo lắng! Bạn có thể dễ dàng diệt trojan này với ba bước như sau:

Bước 1: Sử dụng tính năng Search của Windows với các từ khóa "Recycled", "RECYCLER", "INFO2", "ctfmon" để xác định đường dẫn của các thư mục và tệp tin tạo ra bởi trojan (bạn nhớ đánh dấu chọn phần Search hidden files and folders trước khi tìm kiếm). Đường dẫn sẽ giống với miêu tả ở phần trên, bạn có thể còn tìm thấy một số đường dẫn đến những thư mục cache của Windows như Prefetch, dllcache...

Bước 2: Xóa tất cả các tệp tin và thư mục tìm thấy. Nếu xuất hiện thông báo lỗi không thể xóa được, bạn làm như sau: Tải tệp tin ảnh iso của đĩa boot Acronis Disk Director Suite tại địa chỉ http://www.fileden.com/files/2007/5/5/1051345/AcronisDiskDiretorSuite.iso hay http://tinyurl.com/2wsbh3 rồi ghi ra đĩa CD, sau đó khởi động máy tính bằng đĩa này. Trong giao diện của chương trình, bạn nhấn đúp vào tên ổ đĩa rồi di chuyển đến các tệp tin và thư mục cần xóa, chọn và nhấn vào biểu tượng hình chữ X để xóa, bạn cứ an tâm là sẽ không có thông báo lỗi nào cả

Bước 3 (tùy chọn): Dù hai bước trên đã đủ để tống khứ trojan Vb.AQT, nhưng bạn nên dùng các phần mềm antivirus như Bitdefender hay Kaspersky để kiểm tra lại cho... chắc ăn.

(Lưu ý, nếu bạn bỏ hai bước trên mà chỉ dùng phần mềm antivirus để diệt thì sẽ không thành công, vì thường phần mềm này chỉ quét và phát hiện chứ không "xử lý” được trojan).

Những kinh nghiệm chia sẻ ở trên hy vọng sẽ giúp ích cho các bạn. Nếu vẫn còn thắc mắc, các bạn có thể gửi email đến phuc_asimo@yahoo.com, mình sẽ sẵn sàng giải đáp.

Nguyễn Phúc
Email:
phuc_asimo@yahoo.com

http://www.pcworld.com.vn/articles/cong-nghe/ung-dung/2008/04/1192076/su-that-ve-tien-trinh-tu-dong-chay-ctfmon-exe/ 

Ghi chú: Khởi động bằng DVD mini Windows, vào các ổ đĩa xóa hết các thư mục  "Recycled", "RECYCLER"; "System Volume Information" và file ctfmon.exe. Khởi động lại là OKe

2/7/11

[Anti Virus] Mã nguồn Kaspersky Anti-Virus đã bị leak

Kaspersky.zip (password: ads)


Mã nguồn của Kaspersky Anti-Virus hiện đang bị phát tán online trên internet thông qua các mạng torrent.

Source code này đã bị đánh cắp từ đầu năm 2008. Theo thông tin trên các file source code, ngày thay đổi cuối cùng là tháng 12/2007. Như vậy có thể đây là mã nguồn của bộ Kaspersky's security suite 8.0 . Phiên bản hiện nay là 11.0 (năm 2011)

Mã nguồn này được viết bởi C++ và Delphi, bao gồm nhiều project khác nhau như: Anti virus engine, anti-phishing, anti-dialer, anti-spam ...
Danh sách các project:


Hacker đã từng rao bán bộ source code này vào năm 2009.
Hiện Kaspersky chưa có bình luận gì về các thông tin trên.
Last edited by Fire Dragon; 01-29-2011 at 12:28 PM.
Reflink: http://virusvn.com/forum/showthread.php?3090-Download-Ma-nguon-Kaspersky-Anti-Virus-da-bi-leak&p=17638#post17638

1/6/11

[Anti Virus] QFX KeyScrambler Premium


KeyScrambler = No user effort + Peace of mind.


Keylogger đang là nỗi e ngại của người dùng Internet. Họ có thể gặp nguy cơ bị ăn cắp các thông tin gõ trên bàn phím trên bất kỳ máy tính nào. Chương trình KeyScrambler sẽ là công cụ bảo vệ hữu ích.

Các phần mềm ác tính thuộc "họ" keylogger hoạt động dựa trên nguyên tắc lưu lại tất cả những thao tác của người dùng trên bàn phím. Khi bạn nhấn một phím bất kỳ, chúng sẽ không tới ngay trình duyệt mà thực hiện một cuộc “chu du” dài trong phạm vi hệ điều hành trước khi tới được trình duyệt và keylogger sẽ đứng “đợi” sẵn, theo dõi và ghi lại những thao tác bàn phím. Keylogger cũng có khả năng chụp ảnh màn hình và tự động gởi đến một địa chỉ email định trước hoặc lưu lại thông tin đó trên chính máy của khổ chủ. Để ngăn ngừa việc này, KeyScrambler có khả năng mã hóa thao tác nhấn phím để bảo vệ thông tin cá nhân của người dùng trước keylogger.



KeyScrambler "xáo trộn" thao tác gõ phím của bạn nên các chương trình keyloggers chỉ có thể ghi lại các dãy chữ/số vô nghĩa
  • Giao diện thân thiện cho phép bạn nhìn thấy ở thời gian thực các thao tác được mã hóa giúp các thông tin nhạy cảm của bạn được bảo vệ khỏi các keyloggers.
  • Mã hóa sâu trong nhân hệ thống kernel của HĐH giúp bạn có thêm một lớp phòng thủ chắc chắn
  • Không cần phải cập nhật cơ sở dữ liệu liên tục
  • Không còn lo lắng về các nguy cơ keylog hiện hữu
KeyScrambler Premium
Bảo vệ bạn từ màn hình truy cập Windows và các thao tác gõ phím trên 160 ứng dụng và các vùng thông tin nhạy cảm. Là phần mềm anti-keylogging tốt nhất cho người sử dụng gia đình và doanh nghiệp.
Yêu cầu hệ thống:
KeyScrambler hỗ trợ Windows 2000, 2003, XP, Vista, Windows 7 (32-bit & 64-bit). Nó đồng thời cũng hỗ trợ các ngôn ngữ: Hoa, Nhật và Hàn ngữ.
Thông tin thêm:
Vào đây để tìm hiểu thêm!
Các giải thưởng:


[Dịch bởi playboy6006 - Softvnn.com]

Homepage - Trang chủ

Download - Tải về phần mềm [1.22MB]
Download - Tải về [Tất cả mọi phiên bản]

Keymaker - Thuốc [ZWT Keygen]
Patch - Thuốc [BOX v1.1]

RefLink Download: TTMT 01/2011 : tinyurl.com/pctips4020

Copyright © easyvn.net

RefLink: http://easyvn.net/forum/showthread.php/12698-QFX-Software-KeyScrambler-Premium-v2-7-1-0

1/4/11

[Anti Virus] Tiên ích phục hồi khi bị virus làm mất tính năng hệ thống

Tiên ích phục hồi khi bị virus làm mất tính năng hệ thống

+ Disable Task Manager



Download Enable Task Manager
+ Disable Registry


Download Enable Registry

+Hidden Folders Options


Download Default Folder Options

+ Loại bỏ hộp thoại Open With +Autorun



My Computer -> Tools -> Folder Options.. -> View -> Chọn Show hidden files and folders và bỏ dấu tích Hide protected
operating system files(Recommended)
sau đó xóa File Autorun.inf

+Hidden system


>Start\Run gõ cmd gõ attrib -s -h /s /d
(C: , D:, E: ) gõ từng câu lệnh trên các ổ )

+Hidden Files And Folders


Download Default Hidden Files And Folders
++Tổng hợp các công cụ
Hình ảnh này đã được thay đổi kích thước. Click vào đây để xem hình ảnh gốc với kích thước là 511x254


Hình ảnh này đã được thay đổi kích thước. Click vào đây để xem hình ảnh gốc với kích thước là 503x478


+Download ToolsInOne

[Anti Virus] Khắc phục lỗi Registry editing has been disabled by your administrator




Vào Start -> Run -> gpedit.msc
Ở cửa sổ bên trái vào User Cofniguration -> Administrative Template -> System
Ở cửa sổ bên phải: double click vào Prevent access to registry editing tools
Nếu nó ở trạng thái Not Configured hoặc Enabled thì bạn chọn Disabled -> OK
Nếu nó đang ở trạng thái là Disable thì chọn thì bạn chọn là Enabled, click vào OK, rồi chọn lại là Disabled -> OK
Cần điều chỉnh các mục trong gpedit.msc giống như hình trên nếu máy bạn khác biệt.
Xong thoát ra ngoài. Thử lại regedit xem có được hay kô?

Trong trường hợp ngay cả việc mở gpedit.msc cũng bị ngăn cấm. Để Enable Registry editing, tôi xin cung cấp thêm giải pháp này:

- Mở Notepad, soạn nội dung sau:
var Shell = new ActiveXObject("WScript.Shell");
Shell.RegWrite ("HKCU\\Software\\Microsoft\\Windows\\CurrentVersion \\Policies\\System\\DisableRegistryTools",0,"REG_DWORD");- Lưu lại với phần mở rộng: *.js

- Thực thi file .js để 'enable' (0) hoặc 'disable' (1).


[Anti Virus] Máy tính không vào được một số trang web (*)

Máy tính của tôi mới mua, cài Windows XP SP2, IE7. Máy hoạt động tốt và vào các website khác thì bình thường nhưng không thể vào một số web như BKAV và một số web khác.

Mong nhận được giải đáp.

Vũ Công Điều

Câu hỏi khác xin gửi về: vitinh@vnexpress.net

Đây là do virus đã ghi đè vào file C:/WINDOWS/system32/drivers/etc/hosts. Để khắc phục tình trạng này bạn mở file này ra (có thể mở bằng Notepad) rồi xóa hết nội dung trong fike này sau đó save file lại thì máy của bạn có thể vào được các website bình thường.

Tuy nhiên để khắc phục triệt để tình trạng trên, sau khi làm như trên, bạn nên tải BKAV mới nhất và quét 1 lượt vì máy bạn đang nhiễm virus.

Nguyen Trong Ngoc

Mình đã làm thử và có kết quả

Máy của bạn chắc là dính 1 số lỗi sau: 1/ Do nhiễm Virus(Cắc là con Conficker roài) 2/ Máy có cài 1 chương trình chống virus (vd như KIS hay NIS) block kết nối. 3/ Vào Start > Run > services.msc > restart lại service DNS Client. 4/ Kiểm tra lại các config của Modem. 5/ Nếu vẫn chưa được, gọi điện tới trung tâm nhờ kiểm tra kết nối.

( CAOVANDUONG )


http://vnexpress.net/GL/Vi-tinh/Hoi-dap/2009/03/3BA0CD7F/

[Anti Virus] Sửa lỗi “Task Manager has been disabled by your administrator”

Khi mở Task Manager lên mà gặp phải câu báo lỗi “Task Manager has been disabled by your administrator” thì thường do bạn vô ý, do ai phá hoại, do virus hoặc do các nguyên nhân khác. Để sửa được lỗi trên thì làm 1 trong các cách sau đây:

Cách 1: Vào Start ~> Run ~> copy đoạn lệnh sau rồi paste vào rồi Enter :
REG add HKCU\Software\Microsoft\Windows\CurrentVersion\Policies\System /v DisableTaskMgr /t REG_DWORD /d 0 /f

Cách 2: Vào Registry Editor để chỉnh sửa: (Start -> Run -> gõ vào regedit rồi bấm Enter)
HKEY_CURRENT_USER \ Software \ Microsoft \ Windows \ CurrentVersion \ Policies\ System

Tìm khóa DisableTaskMgr bên phải và thay đổi giá trị thành 0.

Cách 3: Còn nếu sợ làm sai thì copy đoạn code này rồi save thành file có định dạng là *.reg rồi chạy file này.
Windows Registry Editor Version 5.00
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\System]
“DisableTaskMgr”=dword:00000000


Cách 4: Cuối cùng là dùng Group Policy Editor (chính sách nhóm)
Start ~> Run ~> nhập vào gpedit.msc rồi OK.
Tìm theo: Administrative Templates ~> System ~> Ctrl+Alt+Delete Options ~> Remove Task Manager.
Double click vào Remove Task Manager rồi thiết lập là Not Configured, xong rồi thì Ok.

Nhớ sau khi làm xong 1 trong các cách trên phãi khỡi động lại máy nha (Reset)

Bạn có thể down ở đây: http://www.taskmanagerfix.com/dl/download.php?id=1
Đây là phần mên nhỏ có thể fix taskmanager, làm xuất hiện trên thanh taskbar, mình đã dùng thử. Nó không hoàn toàn triệt để mà chỉ là tạm thời. Để triệt để thì bạn có lẽ nên cài lại win.

6/11/10

[Anti Virus] SecureIt Easy Bảo mật dữ liệu bằng cách chặn các kết nối trái phép qua cổng USB

Ổ đĩa USB, thẻ nhớ hiện nay rất phổ biến do gọn nhẹ, dễ sao chép chia sẻ, giá của USB ngày càng giảm do đó USB là một vật bất ly thân đối với các thần dân download tài liệu, âm nhạc, phần mềm hay video.


Cũng chính vì sự tiện dụng, gọn nhẹ, dễ sao chép mà chúng ta cũng gặp phải những rắc rối do chúng mang lại như: mất dữ liệu do sao chép không được sự đồng ý của bạn, nguy cơ lây nhiễm virut qua USB ( virut Autorun,…). Để tự bảo vệ mình các bạn thường dùng các phần mềm như Disk Drive Protector, Disable USB hay các phần mềm có tác dụng chặn hết các kết nối qua cổng USB.

Nếu bạn chặn hết các cổng USB thì cũng bất tiện cho chính bạn, đó là chương trình đó cũng chặn luôn, không cho phép bạn sử dụng USB của bạn trên chính máy bạn, muốn sử dụng được USB thì bạn lại phải mở lại cổng USB bằng phần mềm, khởi động lại máy thì mới có thể sử dụng được USB. Trong trường hợp bạn vừa muốn bảo vệ dữ liệu của mình, tránh được virut lây qua USB và sử dụng được USB của mình một cách bình thường thì bạn có thể sử dụng đến phần mềm SecureIt Easy.

SecureIt Easy là một phần mềm rất thông minh , SecureIt Easy có thể phân biệt được USB của địch và USB của ta, nếu là USB của ta thì SecureIt Easy sẽ cho phép sử dụng, nếu là USB của địch thì SecureIt Easy sẽ từ chối và đòi hỏi phải có mật khẩu thì mới cho phép sử dụng USB. Sở dĩ SecureIt Easy có thể phân biệt được USB của ta và của địch là do SecureIt Easy quản lý USB ở số Serial Number của USB. Serial Number của USB là số riêng, hoàn toàn khác nhau ở từng hãng sản xuất ra USB nên sẽ không thể có 2 USB cùng số Serial Number.

Dựa vào số Serial Number có hoặc không có trong danh sách mà SecureIt Easy sẽ từ chối hoặc cho phép sử dụng USB.
Các bạn có thể tại phiên bản SecureIt Easy tại http://www.cososys.com/software/surfiteasy.html, bản dùng thử 30 ngày không hạn chế tính năng, phiên bản mới nhất tính đến thời điểm viết bài là 1.2.9.0 với dung lượng 3.30 Mb. SecureIt Easy cài được trên Windows 2000 SP4, Windows XP Home or Professional SP2 và Windows Vista, đòi hỏi 16 Mb đĩa cứng trống và 256 Mb ram.

1. Cài đặt

SecureIt Easy chạy trên nền Microsoft .NET Framework Version 2.0, đó đó nếu máy chưa được cài Microsoft .NET Framework Version 2.0 thì bạn download tại http://tinyurl.com/amxh8. Sau khi cài đặt xong Microsoft .NET Framework Version 2.0 thì bạn tiến hành cài đặt SecureIt Easy. SecureIt Easy sẽ có biểu tượng chiếc mũ bảo hiểm mầu trắng ở khay hệ thống (system tray).

2. Sử dụng.

ở lần đầu tiên khi bạn cắm USB vào máy tính thì SecureIt Easy sẽ hiện bảng thông báo Security Warning.

itGatevn_2008052710_01.jpg

Bạn click chuột phải vào biểu tượng của SecureIt Easy và chọn Settings

itGatevn_2008052710_02.jpg

Trong Devices, bạn click vào Status để chọn USB cho phép sử dụng, sau đó click vào Apply Changes, click Close để thoát ra. Những USB nào được phép sử dụng sẽ có màu xanh, những USB nào chưa ( không ) được phép sử dụng sẽ có màu đỏ. Nếu bạn muốn bỏ không cho USB này lần sau được sử dụng nữa, bạn click bỏ chọn (khi này Usb đang sẽ có màu xanh) vào USB đó click vào Apply Changes, click Close.

Sau khi xác nhận những USB nào có trong danh sách được phép sử dụng thì khi cắm usb vào máy sẽ sử dụng được ngay, những USB,thẻ nhớ, máy ảnh,… nào không có trong danh khi cắm vào cổng USB đều nhanh chóng bị tắt và không sử dụng được, bạn không thể tìm thấy USB đó trong Device Manager hay My Computer.

Để tránh người khác thiết lập lại cho phép USB của mình được phép sử dụng bạn nên đặt mật khẩu để bảo vệ SecureIt Easy. Bạn chuyển qua thẻ Settings\General Settings và click vào mục Changge Password trong Security – Application Password Protection. Vì là ở lần đầu tiên nên bạn sẽ nhập mật khẩu vào ô New password, nhập lại mật khẩu vào ô Confim new password và câu gợi ý khi quên mật khẩu vào ô Password hint, click Ok 2 lần và click Apply Changes để lưu lại mật khẩu.

itGatevn_2008052710_03.jpg

Để tạm thời vô hiệu hóa chức năng chặn các kết nối trái phép qua cổng USB bạn làm như sau click vào thẻ Settings\General Settings, click vào Stop trong Service Control click Apply Changes, Close để lưu lại và thoát, khi nào muốn chặn các kết nối trái phép thì bạn chọn Start vẫn trong Service Control .

itGatevn_2008052710_04.jpg

Ngoài chức năng chặn kết nối trái phép SecureIt Easy còn có thêm 2 chức năng là theo dõi USB nào đã được cắm trái phép vào thời gian nào trong Reporting.

itGatevn_2008052710_05.jpg

Và gửi thông báo khi có thiết bị USB lạ nào cắm vào máy tính trong mục Email Notification\ Enble email notification, bạn cần nhập vào địa chỉ mail của bạn, địa chỉ mail nhận báo cáo ( cũng của bạn), tiêu đề và địa chỉ máy chủ gửi thư, bạn nhập user và password của máy chủ gửi thư.

itGatevn_2008052710_06.jpg

Tính năng này tuy khá hữu dụng nhưng chỉ dùng được với các máy không sử dụng chương trình đóng băng và luôn luôn có kết nối mạng. vì nếu sử dụng chương trình đóng băng và không có kết nối mạng thì tính năng này là thừa vì không thể lưu lại log đã có usb nào cắm trái phép và không thể gửi email báo cáo được.

Tải bản đầy đủ tại:
http://www.mediafire.com/?tdjt2yi9hxm hoặc
http://rapidshare.com/files/104938532/SIE_v1.2.9.0.rar


Reflink: http://roseandgun.wordpress.com/2010/04/24/secureit-easy-b%E1%BA%A3o-m%E1%BA%ADt-d%E1%BB%AF-li%E1%BB%87u-b%E1%BA%B1ng-cach-ch%E1%BA%B7n-cac-k%E1%BA%BFt-n%E1%BB%91i-trai-phep-qua-c%E1%BB%95ng-usb/

6/8/10

[Anti Virus] Phương pháp nhận dạng Icon thư mục theo đặc trưng

Hi !
Cuối cùng cũng thi xong môn LS Đảng, giangho+ lại trở về với a e VNN ^^!
Trước đây thì giangho+ có đề cập đến phương pháp nhận dạng icon thư mục theo khái niệm. Tuy nhiên cách này có 1 vài nhược điểm
+ Cài đặt khó, thuật toán phức tạp (khó mà cài đặt chuẩn được)
+ Tốc độ xử lý chậm


Hôm nay mình xin mạn phép giới thiệu 1 phương pháp khác. Nhận dạng theo đặc điểm (hay đặc trưng). Chắc chắn bạn từng thấy dòng chữ kiểu như thế này trong CMND: “Có vết sẹo cách đuôi mắt phải khoảng 5cm”, … Đó là 1 đặc điểm riêng có thể dùng làm cơ sở nhận dạng.

Vậy với FolderIcon thì sao? ở đây mình tạm thời chỉ quan tâm đến Folder Icon của Windows XP

Ý TƯỞNG THUẬT TOÁN:



Các bạn thấy những đặc điểm cơ bản nào chung của 2 hình trên ?
** Màu chủ đạo vàng nhạt: Ở đây, để đơn giản giangho+ chỉ quét 1 vùng hình dấu + để xác định xem có tồn tại 1 lượng màu vàng không



** Các đường biên thì sao nhỉ ?



Ở đây mình sẽ chú ý vào góc tạo bởi 2 đường biên trái và dưới, nó có dạng như 1 hình chữ L nghiêng khoảng 20 độ.
Và đây là sau khi tìm biên :



Ta thấy các đường biên sẽ có dạng như sau



Sau khi tìm biên chúng ta chỉ cần xác định xem chúng có dạng như trên không. Mình chỉ cài đặt kiểm tra 2 biên, các bạn có thể kiểm tra thêm biên phải để tăng độ chính xác.

=> Như vậy chỉ cần dựa vào màu sắc và các đường biên ta đã có thể đoán được đó có phải là Icon của Folder không.

Các ưu, nhược điểm của phương pháp này:
* Ưu điểm
- Cài đặt đơn giản
- Tốc độ xử lý rất nhanh
* Nhược điểm:
- Phải các đặt riêng cho các kiểu Icon khác nhau
- Không phải lúc nào cũng chính xác

Để chứng minh tính hiệu quả thì người ta bao giờ có demo để kiểm chứng tính hiệu quả

Ở đây mình cũng xin viết 1 demo nhỏ để các bạn test cùng. Và đây là kết quả:


Kết quả là 68/68 trong khoảng thời gian ~0.5s
Một tốc độ khá ấn tượng đấy chứ nhỉ ^^!

Mình chỉ có 68 mẫu này (thanks dungcoi đã share 48 mẫu).
Hiện tại quét trên máy mình thì chương phát hiện ra trường hợp nhầm lẫn hoặc bỏ sót. Các bác test giùm giangho+ với nhé. Nếu có mẫu nào chưa detect được thì các bác có thể report lại (cùng mẫu virus đó) cho em nhé. Thanks

** Dự định tiếp theo:
+ Quét bộ nhớ
+ Cài đặt thêm 1 số “mánh” Heuristic đã trình bày ở đây
+ Scan with Shell
File được đính kèm
Kiểu file:  rar FakeFolderRecognition.rar‎ (137,0 KB, 0 xem)

RefLink: http://virusvn.com/forum/showthread.php?p=14604#post14604

6/4/10

[Anti Virus] Building an Anti-Virus engine

This one is taken from Megapanzer

Building an Anti-Virus engine (by Markus Schmall, 2002)

The article will describe the basic ideas, concepts, components and approaches involved in developing an anti-virus program from scratch from a developer’s/software engineer’s point of view. It will focus on the main elements of an anti-virus engine (hereafter referred to as AV engine) and will exclude aspects like graphical user interfaces, real-time monitors, file system drivers and plug-ins for certain application software like Microsoft Exchange or Microsoft Office. Although AV engines running/scanning for single platforms (such as Palm OS or EPOC/Symbian OS) can be designed in the same way, this article will focus on designing multi-platform scanning engines, which are far more complex.


Overview

Currently, innovations in AV engines consist primarily of minor changes to existing engines. Complete redesigns of overall engine concepts are rarely seen. One exception is the highly respected Kaspersky AntiVirus (AVP) version 4.0, which was released in early 2002.

The main parts of an AV engine are typically compiled based on the same source code for various platforms, which may have differences in the byte order (little/big endian), CPUs and general requirements on aligned code. All of these considerations must be kept in mind when developing the concept of an AV engine, as the platform on which the engine is designed to run will be a central design consideration. As well, when developing a new AV engine from the ground up, the following consideration or requirements must be considered:

  • Targeted platforms
  • Programming language
  • File access
  • Required modularity.

Targeted Platforms

A lot of platforms execute code faster when the data parts are aligned to long word (32 bit) addresses. Other platforms are not able to access 16bit/32 bit values, which are not on even addresses; for example, older Motorola CPUs like MC68020 had this limitation. The choice of programming language depends directly on the platform or platforms of implementation. Generally an AV engine should be developed in a programming language that is available for all platforms. Optimizing compilers for all platforms are available. Typical AV engines are currently developed using the programming languages C or C++. C++ is considered the more modern language but, being based on the object orientated approach, it is typically bigger and slightly slower than C code. As certain data types will be interpreted differently on different platforms (for example, as determined by. long or integer variables), it is also very helpful to define data types based on standard data types, which are the same on all supported platforms.

File Access

To enable the core AV engine to be independent from the surrounding operating system, there must to be an abstraction layer between the core AV engine and the file system, which layer has to include conditional compilation for dedicated platforms. Another straightforward technique is to compile certain parts of the AV engine only for dedicated operating systems and not to use a file system layer at all. While this way approach results in faster programmed results, for the long term, it turns out to be neither easily maintainable nor expandable. An abstraction layer, comparable to the file system abstraction layer, should be also implemented for the memory interface and the graphical user interface, so that the core scan engine always has to call the same API calls to allocate memory, generate message boxes etc.

Modularity

Modularity is an important consideration in modern software development. Obviously, it is advantageous to create clean interfaces and make all program parts modular. By designing the overall AV engine with modularity in mind, single parts can be replaced later against a more powerful module by keeping the functionality the same. (This aspect will be covered in the discussion of on-line update functionalities later in this paper.) For corporate customers, it is especially important to offer a flexible management console/interface. This part obviously does not belong to the AV engine core, but should be kept in mind when designing overall interfaces, engine modules and communication matrixes. Speaking of modularity, it is also a good idea to divide the parts of the core AV engine into components, whereby the separation in a binary virus engine and a macro/script engine can be seen as a high level approach.

Pragmatic Functions

Now that some of the conceptual aspects of the AV engine design have been discussed, it would be helpful to consider some of the pragmatic functions that must be incorporated into the design of an AV engine. The following components or functions must all be taken into account in the development of a “modern” AV engine:

  • Engine core
  • File system layer
  • File type scanners (rtf, ppt, mz, pe, etc.)
  • Memory scanners
  • File Decompression (e.g. ZIP archives, UPX compressed executables)
  • Code emulators (e.g. Win32)
  • Heuristic engines
  • Update mechanisms.

AV Engine Core

The AV engine core can be seen as a straightforward framework that calls “external” scan modules and therefore can be expected to be the necessary “glue”. As a result, it needs to be designed as a “registration” mechanism, so that additional components, such as a scanner for a new file format, can be registered and updated. This mechanism needs to be protected by digital certificates or similar mechanisms. Currently, there are scan engine frameworks, such as the Exchange virus protection, that offer to use between one and five different scan engines from different vendors, which will be directly called out of the framework. For example, besides their own scan technologies, F-Secure utilizes several solutions in their AV products, including F-Prot and AVP scan engines.

File System Layer

As mentioned in the previous section, it is a good idea to implement a file system layer so that all parts of the AV engine can invoke the same API calls on all platforms. The following functionalities (close to the Ansi-C standard) should be supported to enable easy access to files:

  • open(filename)
  • close(filehandle)
  • read(file handler, buffer, length, number of read bytes)
  • write(file handler, buffer, length, number of written bytes)
  • seek(offset, optional fields)
  • find first(handle)
  • find next(handle)

In case a seek() functionality is not intended to be supported as an API call, the read/write functionality needs to be enhanced by adding a “file offset” field. The general “find first/find next” file functionality will typically only be used within the core AV engine, as this core part then passes the file pointer-like structure to the “external” scan modules for further operations.

File Type Scan

In regards to the program progression, one of the first steps is to identify the file type/archive type. For the time being, let’s call this point within the engine the “entry point”. This can be handled from the core AV engine or from a dedicated function call within every scanner module for a dedicated file format/type. In order to enable easy change/adaptation of a new scanner module, the latter method is preferred.

Typically, this file type check can be performed rather quickly (e.g. for Windows PE files, OLE documents etc.). In dedicated cases like PalmOS PRC files the detection is more complex and, again, should not be placed within the core AV engine. If a compressed file is detected, decompression engine/functionality, which shall be discussed in greater detail later in this article, has to be called. More generally speaking, decompression engines can also be seen as some kind of a scanner module, which necessarily has to call back to the AV engine’s entry point.

After the file type has been determined, the corresponding scanner module has to be called to perform the scan routine itself. Every module should have the ability to call back to the entry point of the AV engine. This may be required in the case of scanning embedded files within other files (for example, a Word document embedded within a PowerPoint presentation). Depending on the result of the scan, the AV engine must be able to interact with the user interface via a generic abstraction layer to show certain warnings, requests, etc.

At this point it makes sense to define what functionalities should exist within every scanner module:

  • file type detection code, which checks whether the given input can be handled by the scan module;
  • scan functionality (which should be able to interact with the GUI elements to show requesters etc.); and,
  • removal functionality (e.g. remove link viruses from infected files or delete files completely).

The idea is to keep the interface as small and clean as possible. The scan modules should not rely on any buffers located in the core AV engine. Furthermore, the core scan module should just see file/memory pointers and work with these pointers. All underlying operations/layers should be fully transparent for the scan module.

Removal Functionality

In the case of removal functionality, it is often necessary to remove registry entries in order to disable the activation of certain malicious code. This functionality, which is obviously heavily dependent on the underlying platform, should be programmed using direct operating system functions, and should be compiled only when needed. At this point it makes no sense to implement an abstraction layer.


Memory Scanning Components

The memory scanning components (e.g. memory scanner for Windows 95/98 IFS-based malicious codes) can be placed within the same category as the registry cleaning functionalities described above. It should be noted that the memory scanning components are often not within the main focus of the development of the AV engine.

Decompression

The decompression functionality within AV engines is often seen as a small task, but it is truly a complex program. On the one hand, archives, like .zip, .tar, etc., and exchange formats, such as mime, uuencode etc., are decompressed recursively and without the need for external decompression programs. On the other hand, executable files should be able to be decompressed. Speaking of decompression of archives/exchange formats, it seems to be a good approach to decompress all files within a predefined directory and perform recursive decompression operations, if necessary. In the past we have seen a couple of attacks (see [42]) against decompression modules, that decompressed the embedded files within memory and the system was running out of memory. The file located at [42] is a .zip archive with a total length of 42 kb. Recursively unpacked, the files archived within this file are far more than 100 MB, so that an “in memory” decompression would obviously decrease performance drastically.

Additionally it should be possible to compress the files into archives again to enable meaningful cleaning operations. The decompression operation, therefore, also needs access to the generic file system layer to store/access decompressed files.

Speaking of compressed executable files (e.g. compressed with UPX), a similar approach is possible. The decompressed file can be saved in a predefined directory and then scanned. Another typical approach is to decompress the entire file into memory and pass back the pointer and length of the file to the calling instance. The file system layer would have then to be able to address a memory range also as a file.

Finally, it should be noted that encrypted files/archives are still a major problem for decompression engines and therefore also for AV engines. Nearly all archive tools offer the possibility to encrypt the content.

Detection Engines and Techniques

Right now it is worth taking a look at detection engines and techniques beside heuristic engines.

Nearly every modern AV engine contains checksum-based engines (often straight forward CRC32) and scan string-based engines. In addition to these basic techniques, script-based interpreters can often also be found in engines. By implementing these interpreters with complex instruction sets, it is possible to write detection/removal routines even for highly complex polymorphic viruses, and often without the need to change the engine/program detection code in C/C++. Obviously, these interpreters need access to emulators, memory layers and file system layers to become as powerful as possible. The interpreters typically work with precompiled code (pcode) located in the data/definition files.

Designing the On-Line Update

The core points of AV engine architecture have now been discussed. Another point to consider is the design of the “on-line update” functionality that allows users to update their AV protection. Basically there are two choices of update functionality: update data files or update data files and update executable code.

Generally speaking, all updates should be digitally signed to protect the users from installing malicious updates. It is not critical to implement this in the data file updates. Sending out only updated from previously installed versions, instead of complete update files, will keep network traffic low and, as such, is an attractive feature for users in corporate environments. To update executable code using on-line functionality is usually a more complex operation. This approach typically replaces complete modules of an AV scanner. Therefore the AV engine needs to have the functionality to register, remove, update and add modules of its own. This interface obviously needs to be protected (for example, by digital certificates), otherwise malicious codes could start to attack this registration interface and disable certain important functionality.

Conclusion

At this point it is clear that the development of a complete AV engine for a platform like Windows is an extremely complex task, one that needs to be undertaken by a group of developers. To keep an AV engine stable and maintainable over a long time is a difficult job that requires a lot of investment of money and experience in software engineering. Therefore it is not likely that the selection of independent AV solutions will increase significantly within the next years. This is unfortunate because the technical requirements on AV engines continue to grow and a greater variety of possible solutions can only help AV developers and AV users.

RefLink: http://c0llateral.wordpress.com/2009/12/27/building-an-anti-virus-engine/

5/31/10

[Anti Virus] Demo phương pháp nhận dạng virus giả dạng thư mục

RefLink: http://virusvn.com/forum/showthread.php?p=14529#post14529

Posted by DungCoi:

Dựa trên code cũ mình sử dụng trong project QuickVK, lần này mình chỉnh lại một số yếu tố :
- Chỉnh lại kích thước icon : Icon cũ 48x48 pixel, icon mới dùng 32x32 pixel
- Chỉnh lại một số tham số
- Chỉnh lại cái giao diện cho bớt rối


Không quá nhiều thay đổi. Số lượng icon sử dụng để nhận dạng là 1 icon duy nhất.
Sau đây là kết quả thực nghiệm :


(1) : Số mẫu virus giả dạng thư mục
(2) : Số các icon khác nhau trong các mẫu Virus giả dạng thư mục (Nhiều dòng virus có thể dùng chung 1 icon)

Sau đây là hình ảnh demo


Scan : C:\


Scan : …\Sample\FakeFolder

Bạn có thể tải chương trình demo trong file đính kèm

Cùng nhau test để xem nó nhầm nào

Posted by Gianghoplus:


Thank dungcoi. Scan với đống sample của mình thì nó detect được hơn 70%, tuy nhiên cách quét khá chậm

Mình cũng mạo muội xin chia sẻ 1 số "mánh" của mình để detect những mẫu virus này. Nói chung là rất hiệu quả nếu quét USB (chưa thấy trường hợp nhầm)

Ở đây mình có viết 3 hàm:
- bool IsHiddenFile()
- int SameFolderIcon() -> (trả về % tỉ lệ giống với icon folder)
- bool PathIsRemovableDisk()

Nhập cuộc:

Scan File:

Heuristic 1 (Ex: Z:\Image\ & Z:\Image\Image.exe)
Mô tả điều kiện:
+ Có 1 tập tin .exe giống tên với thư mục cha chứa nó

Điều kiện bổ sung:
+ SameFolderIcon() > 50%
+ Có ít nhất 2 bản sao của file này dính Heur bất kì

Heuristic 2 (Ex: Z:\Image.exe & Z:\Image\)
Mô tả điều kiện:
+ Có 1 tập tin .exe giống tên với 1 thư mục cùng mức
+ Thư mục đó bị ẩn.

Điều kiện bổ sung:
+ SameFolderIcon() > 75%
+ Có ít nhất 2 bản sao của file này dính Heur bất kì

Heuristic 3
Mô tả điều kiện:
+ SameFolderIcon() > 90%
+ Có ít nhất 3 bản sao của file này dính Heur bất kì

Heuristic 4 (Ex: Folder shortcut A, B, C, ... => Hidden file )
Mô tả điều kiện:
+ Có nhiều shortcut (nằm cùng mức) cùng trỏ về 1 tập tin .exe
+ Icon hiển thị của shortcut đó có thuộc tính SameFolderIcon() > 50%
+ Tập tin .exe được trỏ về có thuộc tính IsHiddenFile() == true

Heuristic 5 (Executable files hidden on USB)
Mô tả điều kiện:
+ Trong RemovableDisk có tập tin thực thi có thuộc tính ẩn
+ PathIsRemovableDisk() == true
+ IsHiddenFile() == true

Điều kiện bổ sung:
+ SameFolderIcon() > 40%

Heuristic 6 (Ex: Z:\autorun.inf & Z:\autorun.exe)
Mô tả điều kiện:
+ Tồn tại 1 tập tin autorun.inf nằm trong RemovableDisk hoặc HardDisk
+ Trỏ tới 1 file .exe, .pif, .src, .bat .... có thể thực thi

Scan Memory

Heuristic 1
Mô tả điều kiện:
+ Tập tin thực thi của tiến trình dính bất cứ Heur nào ở trên

Heuristic 2
Mô tả điều kiện:
+ Tập tin thực thi của tiến trình có thuộc tính IsHiddenFile() == true

Điều kiện bổ sung:
+ SameFolderIcon > 50%

Heuristic 3
Mô tả điều kiện:
+ SameFolderIcon() > 90%

Real-time detect

Heuristic 1 (Detecting action)
Mô tả điều kiện:
+ Tiến trình có hành động tạo file autorun.inf hoặc tự sao chép mình vào RemovableDisk.

Một số kĩ thuật của Heur này:
+ Checksum & Compare
+ Hook API (Ex: CreateFile, CopyFile, ...) sau đó dựa vào GetCurrentThreadId() hoặc GetCurrentProcessId() để xử lý tùy vào trường hợp

Heuristic 2 (Detecting action)
Mô tả điều kiện:
+ Có hành động sửa đổi giá trị một số vùng nhạy cảm của Registry (Ex: UserInit, Show/Hide file of Folder Option, ...)

Một số kĩ thuật của Heur này:
+ Hook API (Ex: RegSetValueEx ...) sau đó dựa vào GetCurrentThreadId() hoặc GetCurrentProcessId() để xử lý tùy vào trường hợp


Tạm thời post chừng đó đã, đến giờ cơm trưa rồi

Những "ngu kiến" nhận dạng Heur trên là do gianghoplus tự tổng hợp và suy luận được trong thời gian nghiên cứu về dòng virus autorun này. Có thể nó ko hoàn toàn chính xác hoặc có nhiều điểm chưa hợp lý, mong các bác chân thành đóng góp ý kiến hoặc bổ sung

Thân !

@Dungcoi: Share cho mình đống sample fake folder của cậu nhá


Posted by DungCoi:

Chỉnh lại thêm một tý.
Tỷ lệ nhận dạng là : 47/48 (1 icon có hình thù hơi mới mẻ )
Vẫn chưa thấy trường hợp nhầm trong máy mình.

Lại nhờ các bạn test tiếp
GiangHo test dùm xem có lên được % nào không

Mình vừa nhận được 20 sample từ GiangHo.
GiangHo chịu khó xem lại chút, nếu nhiều sample có thuộc tính System thì tất nhiên app phải có quyền Admin mới xử lý lấy icon được thì phải.

Mình vừa thử 2 cách :
1. Cho app chạy quyền Admin
2. Bỏ thuộc tính System trong các sample


Kết quả của 48 mẫu của mình + 20 mẫu từ GiangHo = 68 mẫu



Vẫn bỏ xót một mẫu có kiểu hình icon khác so với icon mình dùng để detect (Nếu giảm các tham số truyền vào cũng được nhưng như vậy sẽ mất tính an toàn)


PS : Do chương trình viết bằng VB6 chạy vài thứ liên quan tới đồ họa không tương thích ổn với Win7 + Vista nên để chương trình chạy ổn định bạn làm 2 thao tác sau
1. Chuột phải vào chương trình chọn Properties -> Chọn thẻ Compatibity -> Nhấn dấu chọn Disable desktop composition
2. Cho chương trình chạy quyền admin (Chuột phải chọn Run as Administrator)


Dowload: http://megashare.vn/dl.php/1230789