posted by 블르샤이닝 2011. 12. 15. 14:29
728x90
<출처
>

Start Here: Disk Drive Terminology

As either a review or an introduction (for those who need definitions and explanations of the terms used), we suggest that everyone read or at least glance over: Disk Drive Terminology [covers both Hard and Floppy Disk drives]. These terminology pages include useful details (even experienced techs should read them!) such as:How do you calculate the exact capacity of a floppy disk or hard drive?Why do some utilities show less drive capacity than what's printed on the HDD?What do MiB and GiB mean? and Do you know that partitioning a drive on a computer with a BIOS made earlier than 1999 will most likely waste drive space on anarchaic structure known as a Test or Diagnostic Cylinder?


Understanding Partitions and Partition Tables
 -- Completely New REVISION; now 3 pages long... still unfinished, but very useful!

How many Sectors are on a Hard Drive? -- Contains useful tables for picturing the contents of your hard drive.


Some Miscellaneous Topics:

An Introduction to Data Recovery.

How To Permanently Erase ALL the DATA On A Hard Disk -- without physically destroying your drive!

How to change your BOOT.INI Menus under Win2000/XP

HDD and OS Disk Limits: 32GB, 64GB, 137GB etc.!!!

6 to 64-bit Hex Numbers (and Basic Partition Table Limits)

Partition Magic writes "28 96 C4 17" to an HDD's 1st Track

55AAh is the Wrong Way to describe the Boot Signature on a PC
Explains why many have misunderstood how to refer to the byte sequence 55h followed by AAh on a PC: It's due to the little-endianarchitecture of PCs and incorrect usage in the documentation.


Free Software:

References. Links. Free Tools, Utilities and Boot Managers:
 MBR, Partition Table and Boot Record Tools and Links .




MBRs (Master Boot Records)

All about FDISK.EXE -- Covers all versions of Microsoft® FDISK.
Linux 
(and many other OSs) have "fdisk" programs that are safer for your data than Microsoft's FDISK; read the next selection about how MS-FDISK can destroy some of your data!
[
 NOTE: Under Windows™ 2000/XP, FDISK has been replaced by a variety of methods for partitioning (setting up the MBR on) your drives:
1) The install CD when setting up a new system,
2) The Disk Management "MMC Snap-In" program,
3) The Recovery Console's command: diskpart (found on install CDs),
4) The diskpart command under the Command Prompt of Windows™ XP; even more difficult to use than the Recovery Console version of diskpart! So, Disk Management is the best choice for most users! ]   You could, of course, still use an old Win98 Boot Diskette's FDISK program to create a FAT32 partition.

  • What does FDISK.EXE do to a hard drive? --- Everyone should read the last section entitled: "So What happens When FDISK overwrites Sectors on a Drive already containing Valuable Data?" before ever using the MS-FDISK utility!


The Windows™ 7 MBR -- The MBR created by a running Windows™ 7 OS (Disk Management) or its install DVD when installed on either a completely blank hard drive, or a disk with existing Windows OSs; includes a few details about the Windows 7 OS.

The Windows™ Vista MBR -- The MBR created by a running Windows™ Vista OS (Disk Management) or its install DVD when installed on either a completely blank hard drive, or a disk with existing Windows OSs; includes a few details about the Vista OS.

The Windows™ 2000/XP MBR -- The MBR created by a running Windows 2000 or XP OS (specifically Disk Management) when used to install a completely blank hard drive on your system; includes details about the Win 2k/XP Disk Signature bytes!

The Windows MBR for FAT32 -- The MBR created by FDISK from Windows 95B (or OSR2),Windows 98/98SE and even Windows ME.

The Standard MBR --- This is the Master Boot Record that's placed on the first sector of any hard disk partitioned by FDISK.EXE (or FDISK.COM) from all versions of MS-DOS back to MS-DOS 3.30 (including DOS 6.22 and MS-Windows 95 "A" also known as MS-DOS 7.0).

This is also the same as the Standard IPL (or MBR) code used by the Ranish Partition Manager, TestDisk (before version 5.7) and some boot managers when there's a problem that requires the MBR code to be written again.

Notes on DOS 3.30 and an early (1988) OEM version -- The Master Boot Record created by the NEC® (Revision 3) version of MS-DOS 3.30's FDISK was slightly different than that of all the other MS-DOS 3.30 MBRs (in order to allow it to have 8 Partition entriesin its Partition Table). Some important points about DOS MBRs in general are also included here.


The Ranish MBR/Compact Boot Manager -- Single sector MBR replacement included with the Ranish Partition Manager.Preliminary Listing only.

 

The IBM® Personal Computer™ DOS 2.00 MBR and How Similar it is to the Standard MBR (of DOS 3.30) --- The Master Boot Record created by IBM®'s DOS 2.00; showing each byte of code that's different from the Standard MBR.

 


 

OS Boot Records

All about SYS.COM - Shows details of all versions of Microsoft® SYS.COM which can be used to create both Hard Disk and Floppy Disk OS Boot Records.
[ NOTE: 
Under the Windows™ 2000/XP OSs, Hard Disk Boot Records are created by:
1) The install process,
2) The OSs' Disk Management 
"MMC Snap-In" program (which partitions and formats), or
3) The CMD Prompt command: format. 
]  Again, out of the these three, the Disk Management window is the easiest way for most users to accomplish this for a new drive they attach to an existing system.


1) The Basics: Floppy Disk Boot Records


MSWIN4.1 (Windows 98) Floppy Disk Boot Record
 -- 
For Booting the underlying MS-DOS 7.1 of the Windows 98 Operating Systems from a Floppy Diskette. Preliminary Listing.

MS-DOS 5.0 Floppy Disk Boot Record -- For Booting the MS-DOS 5.0 to 6.22 Operating Systems from a floppy diskette.
Preliminary Listing.

 

The IBM® Personal Computer™ DOS 1.10 Boot Record
IBM's Personal Computer™ DOS 1.10.
 These pages include facts about IBM's first International DOS version.

The IBM® Personal Computer™ DOS 1.00 Boot Record
IBM's Personal Computer™ DOS 1.00.
 These pages include many other fascinating facts about the original PC's software.




2) Hard Disk OS Boot Records


The Vista (NTFS) Boot Record Sector - The Windows Vista (NT5.x?) Boot Record sector; except for the new code (which also tests for TPM 1.2) and its tests for BOOTMGR, it's quite similar in structure to earlier NTFS Boot Records.

The NTFS Boot Record: Boot Sector - The Windows 2000 (NT5.0) and XP (NT5.1) Boot Record; including the NTFS BPB (BIOS Parameter Block). Link to "The Disk Editor View page" to view the Record as it would be seen in a disk editor.

The NTFS Boot Record: Bootstrap Code - The Windows 2000 (NT5.0) and XP (NT5.1) "Bootstrap" Sectors. . . which we refer to as the NTLDR Section of the NTFS Boot Record Preliminary Listing !

The FAT32 Boot Record under Windows™ 2000 or XP - The VBR created by Windows™ 2000/XP/2003 for a FAT32 partition, or what your old Windows 9x/Me VBRs (see MSWIN4.1 VBR) in the first partition of the firstdrive will be changed into when installing Win 2000/XP on that system.

MSWIN4.1 Boot Record - For the Windows 95B, 98 and 98SE and ME OS (or FAT32) Boot Records; includingthe BPB (BIOS Parameter Block). 



Boot Managers (MBRs)

LILO (Linux Loader) Boot Manager's MBR --  This used to be the only Boot Manager for the Linux OS, and it is still the best choice for many Linux projects such as a Linux Boot Disk Rescue System.

GRUB - The GRand Unified Boot Manager! --  This one is now the default Boot Manager for some distros such as Red Hat. You may even consider using this Boot Manager for Microsoft OSs (after installing a small Linux /boot partition for the GRUB executable and support files); this is how The Starman runs his own multi-boot systems.

The Windows™ 2000/XP/2003 BOOT.INI Menu system
This is related to various system files, such as NTLDR, which may even appear in a Windows 98/ME partition if you install Win XP/2000/2003 onto the same computer!


utilities : 유용, 유익, 효용, 실리, 공리
728x90
posted by 블르샤이닝 2011. 11. 18. 14:52
728x90

[탐색기 폴더 옵션의 파일 숨김 속성]
HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced\Hidden
HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced\ShowSuperHidden  
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced\Folder\Hidden\SHOWALL\CheckedValue


[파일의 속성 부분에서 체크박스 활성/비활성]
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced\Folder\HideFileExt\UncheckedValue
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced\Folder\HideFileExt\CheckedValue
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced\Folder\HideFileExt\DefaultValue


[오토런 설정]
HKCU\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer\NoDriveTypeAutoRun
- USB 같은 이동형 저장장치에 대해 Autorun 설정을 합니다. (0xFF로 설정 시 Block, 0x00으로 설정 시 모두 허용)


[윈도우 주요 설정 툴 실행 방지]
HKCU\Software\Microsoft\Windows\CurrentVersion\Policies\System\DisableRegistryTools
HKCU\Software\Microsoft\Windows\CurrentVersion\Policies\System\DisableTaskMgr
HKCU\Software\Microsoft\Windows\CurrentVersion\Policies\System\DisableCMD


[Image File Execution Options 이용하여 프로그램 실행 방지]
HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution\Options\calc.exe
Debugger = notepad.exe
- 계산기 실행 시 노트패드로 전환되어 실행. (AV 실행을 막거나, 포렌직 툴 실행을 막기위해 변조함)


[시작프로그램 관련]
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\userinit
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce

HKLM\Software\Microsoft\Windows\CurrentVersion\policies\Explorer
DisableLocalMachineRunOnce=1:DWORD
DisableLocalMachineRun=1:DWORD
DisableCurrentUserRunOnce=1:DWORD
DisableLocalMachineRun=1:DWORD
- 이러한 키가 설정되면 시작프로그램에 등록된 프로그램이 실행이 안됨.

HKLM\SOFTWARE\Classes\exefile\shell\open\command
@="soundmix \"%1\" %*"
- soundmix 프로세스를 KILL 하여도 계속적으로 재실행


[인터넷 익스플로러]
HKCU\Software\Policies\Microsoft\Internet Explorer\Control Panel
- 해당 키 안에 ResetWebSettings 값이나 HomePage 값이 있으면 시작 페이지 부분 비활성화. (재부팅이 필요 합니다) 

[HKEY_CURRENT_USER\Software\Policies\Microsoft\internet explorer\restrictions]
"NoBrowserOptions"=dword:00000001
- 인터넷 옵션 실행불가 관련 레지스트리

[HKCU\Software\Policies\Microsoft\Internet Explorer\Control Panel]
"AdvancedTab"=dword:00000001
"PrivacyTab"=dword:00000001
"ProgramsTab"=dword:00000001
"ConnectionsTab"=dword:00000001
"ContentTab"=dword:00000001
"SecurityTab"=dword:00000001
"GeneralTab"=dword:00000001
- 역시 인터넷 옵션 실행불가 관련 레지스트리


[네트워크 관련]
HKLM\SYSTEM\ControlSet001\Services\Tcpip\Parameters\MaxUserPort
- 윈도우에서 허용하는 네트워크 연결 개수 수정(주로 Spamer가 변조)

[HKLM\SYSTEM\ControlSet001\Services\WinSock2\Parameters\Protocol_Catalog9\Catalog_Entries\00000000000*]
"PackedCatalogItem" 이진값 문자열에 악성코드가 삽입되어 있을 경우 네트워크가 정상적으로 동작하지 않음.
netsh winsock show catalog 명령어로 확인 가능, 복구툴 : http://www.cexx.org/lspfix.htm


[윈도우 보안 정책 관련]
HKLM\SYSTEM\ControlSet001\Services\wscsvc\Start
- wscsvc : 윈도우 시큐리티 보안센터, 윈도우 시큐리티 보안센터 시작을 꺼버립니다.

HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\policies\system\EnableLUA
- 윈도우 VISTA UAC 기능 무효화

HKLM\SYSTEM\ControlSet001\Services\SharedAccess\Parameters\FirewallPolicy\StandardProfile\EnableFirewall 
HKLM\SYSTEM\ControlSet001\Services\SharedAccess\Parameters\FirewallPolicy\StandardProfile\DoNotAllowExceptions  
HKLM\SYSTEM\ControlSet001\Services\SharedAccess\Parameters\FirewallPolicy\StandardProfile\AuthorizedApplications\List
- 윈도우 방화벽 관련 정책 변경

HKLM\SOFTWARE\Microsoft\Ole\EnableDCOM
- 분산 컴포넌트 객체 모형에 해당하는 값을 변경 [DCOM, Distributed Component Object Model]

HKLM\SOFTWARE\Microsoft\Security Center\AntiVirusDisableNotify
- 보안센터 바이러스 백신 경보에 해당하는 값을 변경

HKLM\SOFTWARE\Microsoft\Security Center\FirewallDisableNotify
- 보안센터 바이러스 사용자지정 백신에 해당하는 값을 변경

HKLM\SOFTWARE\Microsoft\Security Center\AntiVirusOverride
- 보안센터 바이러스 방화벽 경보에 해당하는 값을 변경

HKLM\SYSTEM\ControlSet001\Services\SharedAccess\Start
- 연결공유서비스에 해당하는 값을 변경한다.

HKLM\SYSTEM\CurrentControlSet\Control\Lsa\restrictanonymous
- 익명연결(널세션)에 해당 하는 값을 변경


[제어판 관련]
HKCU\Control Panel\don't load\"access.cpl" = "No"
HKCU\Control Panel\don't load\"appwiz.cpl" = "No"
HKCU\Control Panel\don't load\"hdwwiz.cpl" = "No"
HKCU\Control Panel\don't load\"inetcpl.cpl" = "No"
HKCU\Control Panel\don't load\"intl.cpl" = "No"
HKCU\Control Panel\don't load\"joy.cpl" = "No"
HKCU\Control Panel\don't load\"main.cpl" = "No"
HKCU\Control Panel\don't load\"ncpa.cpl" = "No"
HKCU\Control Panel\don't load\"netcpl.cpl" = "No"
HKCU\Control Panel\don't load\"nusrmgr.cpl" = "No"
HKCU\Control Panel\don't load\"timedate.cpl" = "No"
HKCU\Control Panel\don't load\"joy.cpl" = "No"

- 제어판에서 메뉴를 보이지 않도록 한다.


[바탕화면 배경화면 관련]
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\policies\ActiveDesktop\

윈도우 시작시 자동실행 - Run

 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run\

”Attack” = “%System%\Attack.exe” 
HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Run\

”Attack” = “%System%\Attack.exe”

 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run

==> 윈도우가 시작할때 동작할 수 있는 레지스트리.

 

윈도우 시작시 자동실행 - RunOnce

 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce\

”Attack” = “%System%\Attack.exe”

 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run

==> 윈도우가 시작할때 동작할 수 있는 레지스트리.

 

윈도우 시작시 자동실행 - RunServices

 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunServices\

”Attack” = “c:\windows\Attack.exe”

 

 

윈도우 시작시 자동실행 - Winlogon 

 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\

"Shell" = "Explorer.exe %System%\attack.exe"

 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\"Shell"

원래는 Explorer.exe 만 있는게 정상이다. explorer.exe 로 사용자와 컴퓨터간의 대화를 할 수 있게 한다.

 여기에 악성코드 경로를 넣어주면, 사용자가 명령을 할 때마다 악성코드가 실행되는 것이다.

 

윈도우 시작시 자동실행 - Userinit

 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\

"Userinit" = "%System%\userinit.exe, %System%\attack.exe"

 원래는 "%System%\userinit.exe만 있는게 정상이다. 

부팅이 되고,, winlogon 이 실행되서 로그인을 하고 들어가면, userinit 가 실행이 되서 explorer.exe 를 실행하는 것이다.

요런 흐름인데 explorer.exe 가 실행되기 전에 악성코드가 실행되어 버리니..

백신도 진단을 못할 수도 있는법이다~

 

윈도우 시작시 자동실행 - Taskman

 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\

"Taskman" = "%SystemDrive%\RECYCLER\[SID]\attack.exe"

 원래는 Taskman 이라는 값이 없다.

 

윈도우 시작시 자동실행 - Active Setup

 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Active Setup\Installed Components\
{5Y99AE78-58TT-11dW-BE53-Y67078979Y}\

 정상파일 :  system32 폴더 ==>  iedkcs32.dll /ie4uinit.exe / ieuddinit.exe / shmgrate.exe

                advpack.dll / mscories.dll / themeui.dll / shell32.dll

                c:\program files\outlook express\setup50.exe

                c:\windows\inf\unregmp2.exe

{5Y99AE78-58TT-11dW-BE53-Y67078979Y} 는 악성코드..

 

DLL Injection 을 위한 변경 - AppInit_DLLs

 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Windows\

"AppInit_DLLs" = "악성코드경로\attack.dll"

DLL Injection 이라는 것은 여러가지 방법이 있는데 그중 한 방법이다.

레지스트리에 위와 같이 등록이 된다면, 어떠한 프로세스에서 user32.dll (실행시 필요) 을 호출할 시에 user32.dll 은 LoadLibrary() 함수를 이용할 것이고, AppInit_DLLs 안에 지정된 DLL 들을 호출할 것이다.

LoadLibrary() 함수에는 인자값이 DLL_PROCESS_ATTACH 를 지정해 준다. 그러므로 중간에 끼어들어갈 수 있다.

 

DLL Injection - InprocServer32

 HKEY_CLASSES_ROOT\CLSID\{00000000-0000-0000-0000-000000000000}\InprocServer32\

"기본값" = "....\attack.dll"

이것은 attack.dll 에 있는 값을 얻어 컴포넌트 파일의 경로를 알아낸다.

즉.. LoadLibrary() 를 호출하면 (user32.dll 사용시) 클라이언트 프로세스 안에 DLL 컴포넌트를 로드시킨다.

 

DLL Injection - RemoteAccess

 HKEY_LOCAL_MACHINE\System\CurrentControlSet\RemoteAccess\Parameters

"ServiceDLL" = "....\attack.dll"

서비스에서 Routing and Remote Access 를 가로챈다.

정상적인 값은 %SystemRoot%System32\mprdim.dll 이다.

 

 

윈도우 시작시 자동실행 - Active Setup

 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Active Setup\Installed Components\{12345678-1234-1234-1234-123456789101(임의의번호)}\

"StubPath" = "%SystemDrive%\RESTORE\[SID]\악성코드.exe"

 위의 경로에서 c:\RESTORE\[SID]\ 에는 Desktop.ini 가 같이 존재하여 두개가 유기적으로 동작한다.

 

서비스 변경

HKEY_LOCAL_MACHINE\system\CurrentControlSet\Services\[Service Name]\

"Start" = 3

2 = 자동 /  3 =  수동 / 4 = 사용안함

정상적인 서비스의 레지스트리 값을 조정한다.

 

IFEO 값 변경

 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\악성코드.exe\"Debugger" = "ntsd -d"

프로그램이 실행되면 위 경로로 가기 때문에 파일들이 실행이 되지 않는다.

정상적인 것은 c:\windows\system32\ntsd.exe ..

나머지는 Debugger 값이 없다.

 

BHO 값 변경 - Browser Helper Objects

 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Browser Helper Objects\

[Random CLSID]\"기본값" = "%Windir%\attack.dll"

 

 HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Browser Helper Objects\

[Random CLSID]\"기본값" = "%Windir%\attack.dll"

BHO 는 개발자들이 인터넷 익스플로어를 제어하고 사용자가 원하는대로 바꾸도록 지원해 주는 것이다.

인터넷 익스플로어가 시작될 때, 레지스트리에서 BHO 를 찾고 자동으로 생성한다. 그러므로 이 특징을 이용해 악의적인 행위를 한다.

  

안전모드에서 부팅 못하게..

 HKEY_LOCAL_MACHINE\system\CurrentControlSet\Control\SafeBoot\

악성코드는 위의 키를 아예 삭제해 버린다.

 

방화벽 우회 - 방화벽 내리기 

 HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001(&ControlSet002&CurrentControlSet)Services\SharedAccess\Parameters\FirewallPolicy\StandardProfile

"EnableFirewall" = 0

 EnableFirewall 의 값은 원래부터 있는 값은 아니고, 윈도우 방화벽을 내리면 생기는 키값이다.

위의 방법으로 윈도우 방화벽을 우회한다.

다른 우회 방법도 있다.   아래를 참고하자.

 

방화벽 우회 - 악성코드 권한주기  

HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\SharedAccess\Parameters\FirewallPolicy\DomainProfile\AuthorizedApplications\List\

%Windir%\system32\"attack.exe" = "%Windir%\system32\attack.exe:*:Enabled:@xpsp2res.dll,-22019" = "Explorer.exe %System%\attack_1.exe"

 ControlSet002 / CurrentControlSet 도 마찬가지 이다.

그리고 위에서는 보라색 글자와 같이 DomainProfile 에서 바꾸어 주었는데 이곳이 아닌 StandardProfile 에서도 바꾸어 준다.

뭐.... 워낙 영어에 취약한 지라..  한글로 풀어써서 이해를 하였다.

서비스\공유접근\매개변수\방화벽정책\사용자프로파일\권한응용프로그램\목록\

오호~  방화벽 정책에서 악성코드에 권한을 주는구만?    이라고.. 난 해석하였다.ㅋ

 

 트레이의 말풍선 도움말 설정

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced\

"EnableBalloonTips" = "1"

 위의 내용은 허위로 안내 도움말을 하기 위해 켜놓은 것이다. 원래의 값은 0이다. 보통 허위안티바이러스에서 많이 사용을 한다.

사용자에게 지속적으로 감염되었다고 알려주어 겁주고 결제 요구한다...

EnableBalloonTips  ==> 표시줄 트레이의 풍선 도움말

HKEY_LOCAL_MACHINE 이외에 HKEY_CURRENT_USER 도 수정한다.

 

작업관리자 사용금지하게 하는 것

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\policies\system\

"DisableTaskMgr" = "1"

Task Manager 를 비활성화 시킨다. 이것은 우리가 흔히 알고 있는 작업관리자이다.

작업관리자(Ctrl+Alt+Del)가 뜨지 않는다면 요 레지스트리가 1로 되어있기 때문에 뜨지 않는 것이다.

악성코드들은 자기자신을 은폐하려 들기 때문에 작업관리자를 사용하지 못하도록 한다.

HKEY_LOCAL_MACHINE 이외에 HKEY_CURRENT_USER 도 수정한다.

 

제어판 사용 금지

HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer\

"NoControlPanel" = "1"

NoControlPanel 은 제어판에 사용자가 접근하는 것을 제한하는 것이다.

이것을 1로 설정해 놓으면 제어판을 열수가 없다.

HKEY_LOCAL_MACHINE 이외에 HKEY_CURRENT_USER 도 수정한다.

 

레지스트리 사용 금지

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\policies\system\

"DisableRegistryTools" = "1"

Disable (무능력하게 하다) RegistryTools (레지스트리툴을)

레지스트리 툴 사용을 무능력하게 하여, 사용자의 접근을 막는다.

 

업데이트 사용 금지 - HKLM

HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows\WindowsUpdate\AU\

"NoAutoUpdate" = "1"

 자동 업데이트를 막는다.

 

 업데이트 사용 금지 - HKCU

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer\

"NoWindowsUpdate" = "1"

 

보호된 운영체제 파일 숨기기  - 폴더 옵션

HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced\Folder\SuperHidden

"Type" = "nonprintable characters"

 악성코드 자신을 보호하고 파일을 숨기면 사용자는 악성코드에 접근할 수 없다.  그러므로 이 레지스트리 값을 이용하여 자신에게 접근을 보호한다.

Type 값에 이상한 글자를 넣게 된다면..  폴더 옵션에서 아예 메뉴가 나오지 않는다.

 

다운시 보안 팝업창 무력화

HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Download

"CheckExeSignatures" = "no"

인터넷에서 다운로드를 해 실행을 하면 경고창을 띄우는 것을 우리는 알고 있다.

그러나 위의 레지값을 변경하면 경고창 없이 설치가 되버린다.

 

 exe 파일이 열리지 않을때 - 프로그램 선택하라는 창이 나올 때  

 HKEY_CLASSES_ROOT\exefile\shell\open\command\

"기본값" = ""악성코드경로" /START "%1" %*"

 HKEY_CLASSES_ROOT\exefile\shell\open\command\

"기본값" = "%1" %* 

위와 같이 기본값을 변경해 주어야 한다. 

 

 HKEY_CLASSES_ROOT\.exe\

"기본값" = "secfile"

 HKEY_CLASSES_ROOT\.exe\

"기본값" = "exefile"

 secfile 값을 exefile 로 고쳐준다.

 

 HKEY_CLASSES_ROOT\.exe\shell\open\command\

"기본값" = ""악성코드경로" /START "%1" %*"

 HKEY_CLASSES_ROOT\.exe\shell\open\command\

"기본값" = "%1" %* 

 키를 삭제해주어도 무방.

 

 HKEY_CLASSES_ROOT\secfile\shell\open\command\

"기본값" = ""악성코드경로" /START "%1" %*"

 HKEY_CLASSES_ROOT\secfile\shell\open\command\ 

"기본값" = "%1" %*

키를 삭제해주어도 무방.

 악성코드는 secfile 이라는 것을 만들어 exe 가 실행되면 자신이 만들어 놓은 레지스트리 대로 행동하게 한다.

오른쪽 값들처럼 복구를 해주어야 한다.

 

아래 표와 같이 레지스트리를 생성하는 경우도 있다. 그럴 때는 이 키들을 삭제해주어야 한다.

HKEY_CURRENT_USER\Software\Classes\.exe\shell\open\Command\

"기본값" = "악성코드 경로" /START "%1" %*

 

HKEY_CURRENT_USER\Software\Classes\secfile\shell\open\Command\

"기본값" = "악성코드 경로" /START "%1" %*

 

 간혹,,, 아래 표와같은 레지스트리 변경건도 있을 수 있다.

HKEY_LOCAL_MACHINE\SOFTWARE\Clients\StartMenuInternet\FIREFOX.EXE\shell\open\Command\

"기본값" = "악성코드 경로" /START "C:\Program File\MozillaFirefox\firefox.exe"

 

HKEY_LOCAL_MACHINE\SOFTWARE\Clients\StartMenuInternet\FIREFOX.EXE\shell\safemode\Command\

"기본값" = "악성코드 경로" /START "C:\Program File\MozillaFirefox\firefox.exe"  -safe-mode

 

HKEY_LOCAL_MACHINE\SOFTWARE\Clients\StartMenuInternet\IEXPLORE.EXE\shell\open\Command\

"기본값" = "악성코드 경로" /START "C:\Program File\InternetExplorer\iexplore.exe"  -safe-mode

 위 레지스트리 값은 삭제해준다.

 

 익스플로어 검색 기본값 변경

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Main\

"Default_Search_URL" = "정상적인 것은 microsoft 주소가 적혀 있어야함"

 

익스플로어 검색 페이지 변경 

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Main\

"Search page" = "정상적인 것은 microsoft 주소가 적혀 있어야함"

 

익스플로어 시작 페이지 변경 

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Main\

"Start Page" = "정상적인 것은 microsoft 주소가 적혀 있어야함"

 


출처 : http://yeoungpc.tistory.com/18



728x90
posted by 블르샤이닝 2011. 10. 12. 13:48
728x90
Sysinternals 최신업데이트되는 bat파일 입니다. 

 아는 선배에게 받아서 올립니다. 

 파일의 의심스러운면 안에 텍스트파일로 열어보시면 됩니다.


728x90
posted by 블르샤이닝 2011. 7. 13. 17:21
728x90
해당파일은 루트킷.com에서 제공하던거지만 사이트가 망한지금 임의로 다른데서 퍼왔습니다~




728x90
posted by 블르샤이닝 2011. 7. 12. 15:20
728x90
가상 시리얼을 통해 Windbg로 커널 디버깅을 할 때에는 속도가 느리고, 나만 그런지는 모르겠는데, 가끔 심볼파일 다운로드도 안되고 뭔가 가끔은 시리얼이 제대로 연결되지 않아서 커널 디버깅 시작을 못하는 경우도 여러 번 있었다.

 

그런데, Virtual KD 라는 디버깅 전용 툴을 사용하면 손쉽게 커널 디버깅을 시작할 수 있다.

 

다운로드는 아래 링크와 같다.

 

http://sourceforge.net/projects/virtualkd/files/virtualkd/2.5.1/VirtualKD-2.5.1-sfx.exe/download

 

다운로드를 받고 압축을 풀면, Vmmon.exe 라는 실행파일이 있다.

실행하면 다음 화면을 볼 수 있다.


 

Debugger path를 눌러서 Windbg를 선택해서 설정해 놓으면, 왼쪽 라디오 박스에 Enable True가 되어 디버깅을 준비할 수 있다.

 

자동으로 가상 운영체제를 부팅해주는 프로그램을 자동으로 인식해서 목록에 추가한다.

만약에 Vmware VirtualBox를 실행했다면 다음 그림과 같이 목록에 추가 된다.

 

 

 

그리고 Run Debugger를 누르면 자동으로 Windbg를 실행해 주는데, 실행된 Windbg는 연결대기를 계속 기다리고 있다. 다음에는, 동일한 폴더에 있는 Target 폴더를 디버깅할 Vmware 윈도우에 복사한다.

 

그리고 VmInstall을 사용하여 설치한다. 

 

Target PC에 설치하는 모습이다.



설치되면 자동으로 재 부팅이 되는데, 재 부팅 되고 나면 밑의 화면이 나온다.

 

 

이후에 디버그 모드로 진입하면 자동으로 Windbg와 연결된 것을 볼 수 있다.


 

 

이제 명령어를 칠 수 있고, 시작할 때, g를 누르면 OllyDbg에서 F9를 누른 효과다. (실행 모드)

 

그리고 윈도우가 부팅되고 나서 디버그를 계속 진행하고 싶으면 Ctrl + Break를 눌러서 잠시 실행 상태를 멈출 수 있다. 자세한 방법은 아직 공부를 안 해서 진행을 못하겠다.

다음 포스팅에……

728x90
posted by 블르샤이닝 2011. 7. 12. 15:19
728x90

 

위 파일은 XP Servicepack3 환경에서 연동 시 필요한 ddkbuild 입니다. 이건 배치파일인데 메모장으로 열어서 어디에든
똑같이 따라 쳐줍니다.


set WNETBASE=C:\WinDDK\7600.16385.1

사실 Bold된 부분이 가장 중요합니다. 나중에 윈도우 7을 쓴다면 WIN7을 써주면 됩니다. 그렇게 되면 배치파일도 최신버전으로
사용해 주는게 좋습니다. 보통 Visual Studio를 어디다가 설치하는지는 모르겠지만,

C:\Program Files\Microsoft Visual Studio 10.0\VC\bin

저의 경우 이곳에 설치되어 있고, bin에 배치파일을 넣어주시면 됩니다.



다음 파일은 SOURCES와 MAKEFILE 그리고 기본 Driver.c 파일입니다. 지금부터가 가장 중요합니다. -_-;;

프로젝트를 만들 때, 메이크파일에서

빌드 명령줄 : ddkbuild -WNETXP checked .
재 빌드 명령줄 : ddkbuild -WNETXP checked . -cZ

릴리즈는 checked 대신에 free로 해주면 됩니다.

그리고 Alt + F7을 눌러서, VC++ 디렉토리에서 포함 디렉토리에

WinDDK\7600.16385.1\inc\api
WinDDK\7600.16385.1\inc\mfc42
WinDDK\7600.16385.1\inc\ddk

포함시켜주고, 포함 라이브러리는

WinDDK\7600.16385.1\lib\wxp\i386

프로젝트 파일이 들어있는 곳에 SOURCES와 MAKEFILE를 넣고, 디바이스 코딩을 하고! F7뿅 누르면 빌드 완료!

근데 워닝이 3개나 흙흙.. 이유를 모르겠심다..

ps : 내가 빌드할때 문제점에 대해서 적어본다. 나같은 경우는 ddk의 경로가 달랐는데 그것이 1번째요, 2번째는 bat파일을 7버젼을 사용했다는 것이 다. 자세히는 모르겠지만 구별이 심하다고 한다. 그래서 이버젼으로 하게 되었고 경로는 bat파일안에서 해당파일을 검색하면서 바꾸어 주었다.
 
굿럭!!!
728x90
posted by 블르샤이닝 2011. 6. 10. 18:24
728x90
http://alones.kr/817

http://simples.kr/index.php?mid=ITTalk&page=3

http://cworldlab.com/board/board.cgi?bname=ProfUIS230&action=view&unum=156&page=1
728x90