2007년 8월 31일 금요일

Umdh.exe를 사용하여 메모리 누수를 찾는 방법

http://support.microsoft.com/kb/268343

- UMDH를 사용하여 힙 덤프 캡처
- Umdh.exe를 사용하여 UMDH 로그 비교
- 스택 추적 설정
- 디버그 기호
- UMDH 호출
- UMDH 출력 설명
- UMDH를 사용할 때 발생할 수 있는 문제
- Visual Basic에서 UMDH 호출
- Windows NT 4.0 서비스 팩 6a(SP6a)에서 UMDH 사용


EventSystem / ID: 4609

COM+ 이벤트 시스템이 내부 처리를 하는 중 잘못된 반환 코드를 감지했습니다. HRESULT는 d:\nt\com\complus\src\events\tier2\notify.cpp의 488줄에 있는 80040205입니다. Microsoft 기술 지원 서비스를 이용하십시오.

EventSystem / ID: 4618

COM+ 이벤트 시스템에서 주소 0x5C29E690에 액세스하는 중 주소 0x5C29E690에 예기치 않은 액세스 위반이 생겼음을 보고했습니다. Microsoft 기술 지원 서비스를 이용하십시오.
+ 0x5c29e690
es! + 0x102c1
es! + 0x104de
es! + 0x10b92
es! + 0x10f30
es!DllRegisterServer + 0x4597
ole32!CoCreateInstance + 0x3b1
ole32!CoCreateInstanceEx + 0x196
ole32!CoCreateInstanceEx + 0x5b
ole32!CoCreateInstanceEx + 0x23
ole32!CoCreateInstance + 0x39
sens!ServiceMain + 0x2a01
sens!ServiceMain + 0x3204
ntdll!RtlDestroyEnvironment + 0x139
ntdll!RtlQueueWorkItem + 0x198
ntdll!RtlQueueWorkItem + 0x20f
ntdll!RtlOpenCurrentUser + 0x2da
kernel32!GetModuleHandleA + 0xdf

2007년 8월 29일 수요일

Microsoft, Windows Server 와 Linux 비교 사이트 개설

마이크로소프트가, 이전에는 Get the Facts(사실을 알자)' 캠페인 에서 이제는 좀더 유화된 비교 사이트를 열었습니다.



http://www.microsoft.com/windowsserver/compare/default.mspx


보면 알겠지만,. 기존 사이트에서 비교하던 내용과 크게 달라진것은 없어 보입니다.




관련기사: zdnet
http://www.zdnet.co.kr/news/enterprise/os/0,39031185,39160747,00.htm

"MS 홍보 담당자는 "(신 사이트 개설 목적은) 보다 많은 상세 정보의 제공과 IT관리자가 직면하는 많은 문제에 대해 고객끼리 서로 의견을 말할 장소를 제공하는 것이다. 유저들은 사람들이 OS 구입시 어떤 판단을 내렸는지 사례를 추가해 (OS에 관한) 써드파티 검증을 요구하고 있는 것으로 알고 있다. 그래서 이 사이트에 고객의 사례 연구법이나 복수 플랫폼을 비교한 연구 리포트를 추가해 최선 사례에 관한 안내, 웹 캐스트 등을 제공할 것"이라고 설명했다."


한가지 눈에 띄는 점은,.

국내 업체중 하나인 NCSoft 가 레퍼런스로 올려져 있다는 것인데요. 물론 한국지사 홈페이지에는 올려져 있으나 본사 사이트에 올려져 있다는 것은,

그만큼 NCsoft 가 외국에서 잘 알려진 개임개발사라는 것인지 궁금해 집니다.^^


2007년 8월 28일 화요일

Korea SharePoint Conference 2007 - 쉐어포인트 컨퍼런스

오는 9월 17일 한국마이크로소프트에서 준비한 Korea SharePoint Conference 2007이 강남역 한국과학기술회관에서 개최됩니다.




이제 기업에서도 직원들의 복잡한 비즈니스 문제를 해결할 수 있는 수단으로서
웹 2.0의 아이디어와 기술을 활용하는 엔터프라이즈 2.0 개념이 업무 환경에
도입되고 있습니다.

이러한 업무 환경의 변화에 대응하여 보다 높은 가치를 창출하기 위해,
사용자 중심의 비즈니스 애플리케이션을 가능하게 하는 "차세대 비즈니스 플랫폼"의 중요성을 많은 기업들이 인식하고 이를 준비하고 있습니다.

오는 9월 17일 마이크로소프트에서 준비한 Korea SharePoint Conference 2007
(이하 MOSS2007) 에서 귀사의 경쟁력을 배가시켜 줄 수 있는 차세대 비즈니스
플랫폼을 직접 경험해 보시기 바랍니다.



상세 내용은 다음 주소를 참고하시면 되고, Agenda는 다음과 같습니다.

http://www.microsoft.com/korea/sharepoint/conference/ 


13:30~14:00
등 록
14:00~14:30 차세대 비즈니스 플랫폼 MOSS 2007 기반의 엔터프라이즈 아키텍처
(한국마이크로소프트 박준석 이사)
14:30~14:40 휴 식
Track 1 Track 2
14:40~15:30 Enterprise 2.0 협업 환경 구축
- 5개 업무 혁신 시나리오 제안

(한국마이크로소프트 신희범)
MOSS 2007 아키텍처, 용량 산정,
성능 튜닝의 이해

(한국마이크로소프트 송치훈 과장)
15:30~16:20 규제 준수를 위한 전사적 문서 및
레코드 관리

(한국마이크로소프트 이국희 차장)
리스트 템플릿/사이트 템플릿/콘텐츠 형식
기반의 MOSS 2007 커스터마이징 기법

(웹타임 정홍주 수석 컨설턴트)
16:20~16:40 Coffee Break
16:40~17:30 손쉬운 비즈니스 인텔리전스(BI)
- 대시보드, 핵심성과지표(KPI), 보고서 센터

(인브레인 이준호 책임)
비즈니스 데이터 카탈로그(BDC)를 통한
기간계(LOB) 데이터 및 애플리케이션 연동

(프리엠컨설팅 모형수 팀장)
17:30~17:40 경품 추첨

W32Time / ID: 17

시간 제공자 NtpClient: 수동으로 구성된 'time.windows.com,0x1' 피어에 대해 DNS 조회를 하는 동안 오류가 발생했습니다. NtpClient에서 15분 내에 DNS 조회를 다시 시도합니다. 오류: 연결할 수 없는 호스트로 소켓 작업을 시도했습니다. (0x80072751)

자세한 정보는 http://go.microsoft.com/fwlink/events.asp에 있는 도움말 및 지원 센터를 참조하십시오.

GUI 기반 프리웨어, 쉐어웨어, 상용 FTP 서버

다음은, GUI 기반으로 하는 FTP 서버 종류 입니다.

제품중에는 오픈소스를 기반으로 하는 소프트웨어도 있고, 상용제작사에서 만든 프리웨어나 일부 기능이 제한된 쉐어웨어 형태도 있습니다.


ALFTP - 프리웨어
proprietary, freeware, Windows only. Personal FTP server.
http://www.altools.net/

ArGoSoft FTP Server
proprietary, shareware, Windows only. Some earlier version might have been freeware.
http://www.argosoft.com/ftpserver/

BulletProof FTP Server
commercial (Windows)
http://www.bpftpserver.com/

Cerberus FTP Server - 개인 프리웨어
"free for personal use and not-for-profit charitable organizations", Windows only
http://www.cerberusftp.com/

CrossFTP Server - 오픈소스 프리웨어
open source, free software, Windows, Linux, Solaris, and Mac OS X.
http://www.crossftp.com/

CrushFTP Server
FTP, FTPS, SFTP, HTTP, HTTPS, WebDAV and WebDAV over SSL protocols.
http://www.crushftp.com/

GlobalSCAPE Secure FTP Server
commercial (WinNT+) FTP/S, SSH, HTTP/S, Automation
http://www.cuteftp.com/gsftps/

FileZilla Server - 오픈소스 프리웨어
open source, free software, WinNT 4.+/2K/XP only
http://sourceforge.net/projects/filezilla/

freeFTPd - 프리웨어
free, WinNT 4.+, supports FTP/S and SFTP
http://www.freeftpd.com/

JSCAPE Secure FTP Server
free and commercial editions;  FTP, FTPS, SFTP, HTTP/S, WebDAV and WebDAV over SSL
http://www.jscape.com/secureftpserver/

Serv-U FTP Server
commercial (Windows)
http://www.serv-u.com/

Titan FTP Server

commercial (Windows)
http://www.southrivertech.com/

War FTP Daemon - 프리웨어
freeware (Windows)
http://www.warftp.org/

WS_FTP Server

commercial (Windows) (Ipswitch)
http://www.ipswitch.com/products/ws_ftp-server/index.asp

VicFTPS - 프리웨어
freeware (Windows)
http://vicftps.50webs.com/

Xlight FTP Server  - 개인 프리웨어
Free for personal, supports IPv6 (Windows)
http://www.xlightftpd.com/

zFTPServer - 프리웨어
Free Windows FTP server, supports SSL
http://www.zftpserver.com/

DCOM / ID: 10000

DCOM 서버를 시작할 수 없습니다: {3F9BDD0E-2E2C-4D74-BD11-9FEF839AB602}.
오류:
"닫기 작동이 세션에서 보류 중입니다. "이(가)
다음 명령을 시작하는 동안 발생했습니다:
C:\DOCUME~1\xxx\바탕화~1\프란차~1\SVRFRA~1.EXE -Embedding

2007년 8월 26일 일요일

URL Rewrite engine - ISAPI, HttpModule, Java 모듈

Microsoft Internet Information Server (IIS) 용 모듈

- IIS Mod-Rewrite from Micronovae

- IISRewrite from Qwerksoft

- ISAPI_Rewrite from isapirewrite.com

- URL Replacer from Motobit

- Ionic's ISAPI Rewrite Filter (IIRF) (open source) from Ionic Shade.

IIS URL-rewrite (mod_rewrite-compatible) 오픈소스프로젝트 sourceforge.net

ISAPIRewrite 오픈소스프로젝트 sourceforge.net

- Ionic's ISAPI Rewrite Filter - IIRF, Microsoft CodePlex 오픈소스프로젝트


Microsoft ASP.NET 용 HttpModule

- UrlRewriter.NET Free, open-source package. Supports .NET 1.1 and 2.0.

- URLRewriting.NET, free and open source supports, ASP.NET 2.0

- VirtualUrl.NET for ASP.NET 2 Professional URL rewriting package.


Java 2 플랫폼, J2EE 서블릿 컨테이너

- HttpRedirectFilter (open source)

- UrlRewriteFilter (open source - BSD) - allows you to rewrite URLs before they get to your Servlets, JSPs, Struts etc. Includes support for rewriting URLs passed to response.encodeURL and an annotation processor.

- URL Rewriter (open source - LGPL) - URL Rewriter is a tool for rewriting URLs in Java Servlets. It is similar to mod_rewrite.


참고해 볼만한 문서:

Tip/Trick: Url Rewriting with ASP.NET
http://weblogs.asp.net/scottgu/archive/2007/02/26/tip-trick-url-rewriting-with-asp-net.aspx

How to redirect URLs to different Web sites
http://support.microsoft.com/kb/324000/


DIRUSE.EXE - 폴더별 용량 체크

DIRUSE.EXE 는 지정된 폴더의 파일용량을 체크하는 유틸입니다. 사용자별 폴더를 만들어서 파일관리를 하는 경우에는 유용할수도 있을것 같습니다.

다운로드:

http://download.microsoft.com/download/win2000platform/diruse/
1.00.0.1/nt5/en-us/diruse_setup.exe



DIRUSE [/S | /V] [/M | /K | /B] [/C] [/,] [/Q:# [/L] [/A] [/D] [/O]] [/*] DIRS

/S      Specifies whether subdirectories are included in the output.
/V      Output progress reports while scanning subdirectories.  Ignored if /S is specified.
/M      Displays disk usage in megabytes.
/K      Displays disk usage in kilobytes.
/B      Displays disk usage in bytes (default).
/C      Use Compressed size instead of apparent size.
/,      Use thousand separator when displaying sizes.
/L      Output overflows to logfile .\DIRUSE.LOG.
/*      Uses the top-level directories residing in the specified DIRS
/Q:#    Mark directories that exceed the specified size (#) with a "!".
        (If /M or /K is not specified, then bytes is assumed.)
/A      Specifies that an alert is generated if specified sizes are exceeded.
        (The Alerter service must be running.)
/D      Displays only directories that exceed specified sizes.
/O      Specifies that subdirectories are not checked for specified size overflow.

옵션에 대한 설명은 위 사용법에도 쉽게 설명이 되어 있으므로 따로 붙이지 않아도 될것 같네요..^^


[예제]

c:\users 폴더내 폴더별 하위폴더 포함 Mbyte 단위 출력 및 로그파일 저장:
diruse /s /m /l c:\users

DiskUse.exe - 사용자별 디스크 사용량 체크

diskuse 는 NTFS 파일시스템에서 파일별 소유권을 체크해서 사용량을 체크하는 것이므로 계정별로 소유권이 지정되어 있지 않으면 크게 의미가 없습니다.

USAGE:  diskuse <path> [switches]

/f:<file>         =   Store Results in <file> 출력파일
/e:<file>         =   Store Errors in <file>  오류에 대한 출력파일
/u:<user>         =   Only Search for <user> 사용자형식: 도메인\계정명
/s                =   Include Subdirectories
/t                =   Table Format
/w                =   Unicode Output (Wide Characters)
/q                =   Quiet Mode
/?|h              =   This Screen
-----------
/r:<file>         =   Restriction are stored in <file>
/o                =   Show Only Users Over Limit
-----------
/v                =   Verbose Mode
/d:a|c|w          =   Date to Display     Access | Create | Write
/n:<number>       =   Display <number> Largest Files Per User
/x:<number>       =   Display Files of <number> Bytes or Larger


[예제]

C드라이브 전체 사용량 :
diskuse c:\ /s   

크기가 2M 넘는 파일 상위 5개에 대한 결과를 maxsize.txt 에 저장 :
diskuse c:\ /s /v /n:5 /x:2000000 /f:maxsize.txt

지정된 쿼타를 초과한 사용자 체크:
diskuse c:\ /s /v /o /r:restrict.txt

C드라이브전체에서 Administrator 계정의 사용현황:
diskuse c:\ /s /u:SERVERINFO\Administraotr

UNC 공유폴더의 사용현황을 .csv 파일로 저장
diskuse \\server\share /s /t /f:usage.csv 

2007년 8월 23일 목요일

MSSQLSERVER / ID: 17189

이벤트 ID( 17189 )(원본 ( MSSQLSERVER )에 있음)에 대한 설명을 찾을 수 없습니다. 로컬 컴퓨터에 원격 컴퓨터에서 보낸 메시지를 표시하기 위해 필요한 레지스트리 정보 또는 메시지 DLL 파일이 없을 수 있습니다. 이 설명을 검색하는 데 /AUXSOURCE= 플래그를 사용할 수 있습니다. 자세한 정보는 도움말 및 지원을 참조하십시오. 다음 정보는 이벤트의 일부입니다. c0000000, [클라이언트: 127.0.0.1].

Windows Server 2003 SP2 설치후 네트워크가 되지 않는 문제

최근 일부에서 Windows Server 2003 서비스팩 2 설치 이후 네트워크가 안되는 문제가 발생하고 있습니다.

현상은,. 주로 이더넷이 On 상태임에도 전혀 네트워크가 되지 않으며, Off 후 다시 On 을 하면 된다는 것인데요.. 이러한 문제는 주로 INTEL S5000 메인보드 계열에서 발생하고 있는 호환성 문제 입니다.

이 문제는,. 서비스팩 2에서 네트워킹 성능 향샹을 위한 팩 때문인데요. Microsoft 에서는 이 문제 대해서 해당 기능을 disalbe 할라고 하라고 합니다.

제가 봐도 그렇군요..^^ 유독 인텔 S5000 계열 보드에서만 발생하는 것 같고...

아뭏튼,. 서비스팩 2 를 uninstall 하면 되나,. 굳이 그렇게 할필요까지는 없습니다. 왜냐면,. 해당 네트워킹 성능 향상 팩 기능만 disable 하면 되기 때문이죠.

이런 기능은 필요한 이유는, 기존에는 대부분의 I/O 처리를 CPU 에서 처리를 했으나,. 그래픽카드처럼 별도의 GPU가 처리를 하는 것처럼  또는 SCSI 처럼 이더넷도 그렇게 다중 CPU에 분산 해서 성능향상을 꾀하자는 것입니다.


<그림.TechNet. TCP Chimney 오프로드>

다음은,.
Windows Server 2003 및 Windows XP x64 서비스 팩 2 의 네트워킹 성능향상 팩에 관련된 설명 내용입니다.

Scalable Networking Pack

조직의 내부 네트워크와 외부 네트워크 트래픽은 빠른 속도로 늘어나고 있습니다. 이러한 트래픽 증가는 네트워크 기반 비즈니스 응용 프로그램, 네트워크 기반 저장소 및 백업 솔루션, 그리고 비디오 회의, 오디오/비디오 프레젠테이션, 기타 다양한 고급 솔루션을 비롯한 리치 미디어 사용 증가에 부분적으로 원인이 있습니다.

Fast Ethernet, Gigabit Ethernet, 다중 Gigabit Ethernet의 보급으로 네트워크 트래픽 증가를 수용하는 가용 대역폭은 확장되었지만 네트워크가 빨라질수록 네트워크와 상호 작용하는 서버의 부하는 커집니다. 따라서 더욱 빨라진 네트워크를 지원해야 하는 부담이 가중되고 있습니다.

Microsoft Windows Server 2003 SP2에는 CPU 리소스에 오버로드를 유발하지 않고 네트워크 트래픽 증가를 지원하여 문제를 해결할 수 있는 Scalable Networking Pack이 포함되어 있습니다. Scalable Networking Pack은 네트워크 패킷 처리와 관련한 운영 체제의 병목 상태를 해소하는 데 주력하는 네트워킹 기술을 지원하여 이 문제를 해결합니다. 설치하기 쉬운 이 패키지에는 다음과 같은 향상된 기능이 포함되어 있습니다.

?

TCP Chimney 오프로드. TCP Chimney 오프로드는 TCP(Transmission Control Protocol) 트래픽 처리의 자동화된 상태 저장 오프로드를 TOE(TCP Offload Engine)를 구현하는 특수 네트워크 어댑터로 분산합니다. 파일 서버, 백업 및 저장소 작업 부하, 기타 콘텐츠 사용량이 많은 응용 프로그램과 관련된 대량의 패킷 페이로드가 있는 장시간의 연결에서 TCP Chimney 오프로드는 패킷 조각화 및 리어셈블리와 같은 네트워크 패킷 처리 작업을 네트워크 어댑터에 위임하여 CPU 오버헤드를 크게 낮춥니다. TCP Chimney 오프로드를 사용하면 CPU 주기를 다른 응용 프로그램 작업에 사용할 수 있게 되어 더욱 많은 사용자 세션을 지원하거나 응용 프로그램 요청을 훨씬 짧은 대기 시간으로 처리할 수 있습니다.

?

수신측 조정. 수신측 조정(Receive-side Scaling)을 사용하면 새로운 네트워크 인터페이스 하드웨어 향상 기능을 통해 인바운드(수신) 네트워킹 트래픽을 여러 CPU에 분산하여 처리할 수 있습니다. 수신측 조정은 시스템 로드나 네트워크 상태 변화에 따라 인바운드 네트워크 트래픽의 부하를 동적으로 분산합니다. 웹 서버나 파일 서버와 같이 인바운드 네트워킹 트래픽이 많으며 다중 프로세서 호스트에서 실행되는 모든 응용 프로그램은 수신측 조정의 이점을 얻을 수 있습니다.

?

NetDMA. NetDMA는 Intel의 I/OAT(I/O Acceleration Technology)와 같은 기술을 지원하는 서버에서 직접 메모리 액세스(DMA) 오프로드를 통해 메모리 관리 효율성을 향상시킵니다.

<설명.TechNet>


<그림. TechNet. 수신측 조정(Receive-side Scaling)>



서비스팩 2의 네트워킹 성능 향상 기능은 문제가 없다면 enable 상태로 유지하는 것이 좋습니다. 서비스팩 2를 설치하면 다음과 같은 몇가지 레지스트리 값이 추가 됩니다.

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters

EnableRSS
EnableTCPA
EnableTCPChimeny


TCP Chimney 오프로드 및 NetDMA 는 다음과 같은 기능과 호환이 되지 않습니다.

- Windows Firewall
- Internet Protocol security (IPsec)
- Internet Protocol Network Address Translation (IPNAT)
- Third-party firewalls
- NDIS 5.1 intermediate drivers


실제 오프로드 상태는 "Netstat -T" 를 통해서 확인할 수 있습니다.

프로토콜  로컬 주소              외부 주소              상태            오프로드 상태
TCP    serverinfo:4169        222.231.15.177:http    TIME_WAIT       InHost
TCP    serverinfo:4188        203.101.8.243:http    ESTABLISHED     Offloaded
TCP    serverinfo:4237        microsoftio.com:http   ESTABLISHED     InHost


성능향상 기능을 disalbe 할려면, 위 3가지 값을 모두 0 으로 변경하거나, DisableTaskOffload 를 추가후에 1 로 설정하는 방법이 있습니다.

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
DisableTaskOffload DWORD
value: 1


다만, 위와 같은 방법은 NIC 드라이버에 따라서 여러가지 호환성 문제가 있을수 있으므로, 완전한 해결이 아닐수 있습니다. 말하자면 위와 같은 설정으로도 문제가 해결되지 않을수 있습니다.




그런 경우에는 업데이트된 NIC 드라이버를 설치를 해보거나 SP2가 아닌 SP1 으로 다운그레이드를 해서 운영하는 것도 임시방편 일수도 있습니다.

또하나, 방법은 NIC 드라이버의 설정에서 아예 Off 를 해버리는 방법이 있습니다. NIC 드라이버 설정을 Off 해버리면 Windows 에서 그 어떤 설정을 하더라도 필요가 없게 됩니다.

왜냐면,. 성능향상이 문제가 아니라 다운타임을 최소화 하는게 더 큰 이득이기 때문이죠..^^


참고해 볼만한 문서:
http://technet.microsoft.com/en-us/network/bb545631.aspx
http://support.microsoft.com/kb/912222
http://support.microsoft.com/kb/904946
http://support.microsoft.com/kb/936594
http://www.microsoft.com/technet/technetmag/issues/2007/01/CableGuy/default.aspx


23-win2003_cg060601.gif
23-ScalableNetworking-rss.jpg
23-intel-nic-config-rss-off.png

2007년 8월 22일 수요일

COM+ / ID: 4205

아래 시스템 API에 있는 오류 때문에 COM+ 서비스를 초기화하지 못했습니다. 이것은 주로 로컬 컴퓨터에 시스템 리소스가 부족하기 때문일 수 있습니다.
CryptAcquireContext
프로세스 이름: dllhost.exe
이 오류의 원인이 심각하기 때문에 프로세스를 종료했습니다.
오류 코드 = 0x80090017 : 공급자 유형이 정의되지 않았습니다.
COM+ 서비스 내부 정보:
파일: .\security.cpp, 줄: 643

MSSQLSERVER / ID: 1438

서버 인스턴스 Witness이(가) 구성 요청을 거부했습니다. 자세한 내용은 해당 오류 로그 파일을 참조하십시오. 원인 1451 및 상태 3은(는) Microsoft에 진단 요청 시 사용할 수 있습니다. 임시 오류이므로 요청을 다시 시도하면 성공할 수 있습니다. 원인을 수정한 다음 다시 시도하십시오.

Windows Server 2003용 Windows PowerShell 1.0 한국어 설치 패키지

Windows PowerShell 에 포함되는 사항은 다음과 같습니다.

- 서비스, 프로세스, 이벤트 로그, 인증서, 레지스트리 등의 일상적인 시스템 관리 작업을 수행하고 WMI(Windows Management Instrumentation)를 사용할 수 있는 130개 이상의 명령줄 도구("cmdlets"라고도 함)

- 명령줄 도구는 표준 명명 규칙 및 일반 매개 변수를 쉽게 익히고 사용하도록 설계되었으며 데이터와 개체를 정렬, 필터링 및 서식 적용할 수 있는 간단한 도구입니다.

- 기존 스크립팅 언어와 명령줄 도구 및 Windows XP, Windows Server 2003, Windows Vista™, Windows Server 코드 이름 "Longhorn"을 비롯한 여러 Windows 버전 지원

- 사용자가 레지스트리 저장소와 인증서 저장소 같은 데이터 저장소를 파일 시스템처럼 탐색할 수 있는 기능

- Windows 데이터를 ADSI(Active Directory 서비스 인터페이스), WMI(Windows Management Instrumentation), COM(구성 요소 개체 모델) 개체, ADO(ActiveX 데이터 개체), HTML 및 XML을 포함한 서로 다른 저장소와 형식으로 관리할 수 있는 표준 유틸리티.

- 명령줄에서 정교한 식 구문 분석 및 .NET Framework 개체 처리 가능(예: 개체를 파이프라인하면 IT 전문가들이 보다 효율적으로 작업할 수 있음)

- 개별 소프트웨어 공급업체 및 엔터프라이즈 개발업체가 고유 응용 프로그램 및 시스템 관리 요구 사항에 부응하도록 사용자 지정 cmdlets를 빌드할 수 있는 확장 인터페이스


Windows Server 2003 서비스 팩 1 x86 기반 버전용 Windows PowerShell 1.0
http://go.microsoft.com/fwlink/?LinkID=75795&clcid=0x412

Windows Server 2003 x64 기반 버전용 Windows PowerShell 1.0
http://go.microsoft.com/fwlink/?LinkID=75796&clcid=0x09

2007년 8월 21일 화요일

Windows Installer 설치 트랜잭션 로그 이벤트 종류 지정

설치에 대한 트랜잭션 로그에 Windows Installer가 기록하는 이벤트의 종류를 지정합니다. Msi.log 파일은 시스템 볼륨의 임시 디렉터리에 나타나며, 설치 패키지에 따라서, 로그파일이 저장되는 위치 및 파일명이 다르게 나타납니다.

설정은 레지스트리나 그룹정책을 이용해서 Windows Installer가 기록할 이벤트의 종류를 지정할 수 있습니다. 기록된 이벤트 종류를 나타내기 위해 이벤트 종류를 나타내는 문자를 입력해야 하며, 사용자가 원하는 만큼의 이벤트 종류를 나열할 수 있으며 원하는 순서대로 문자를 입력할 수 있습니다.

이 설정을 사용하지 않거나, 설정이 구성되어 있지 않으면, Windows Installer는 "iweap" 문자를 갖는 기본 이벤트 종류만을 기록합니다.

이벤트의 종류

i - 상태 메시지
w - 중요하지 않은 경고
e - 모든 오류 메시지
a - 작업 시작
r - 특정 작업 레코드
u - 사용자 요청
c - 시작 UI 매개 변수
m - 메모리 부족
p - 터미널 속성
v - 자세한 정보 출력
o - 디스크 공간 부족 메시지

위 옵션종류 지정은 레지스트리의 다음 경로에서 설정이 가능합니다.

HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows\Installer
Reg_SZ: Logging
Value: voicewarmup

그룹정책에서도 설정이 가능하며, [컴퓨터구성]-[관리 템플릿]-[Windows 구성 요소] 에서 Windows Installer 의 로깅항목에서 설정을 할수 있습니다.


물론,. 매번 패키지 설치시마다 패키지 별로 지정이 가능합니다.


Windows (R) Installer. V 3.01.4000.3959

msiexec /옵션 <필수 매개 변수> [옵션 매개 변수]

설치 옵션
 </package | /i> <Product.msi>
  제품을 설치 또는 구성합니다.
 /a <Product.msi>
  관리 설치 - 네트워크에서 제품을 설치합니다.
 /j<u|m> <Product.msi> [/t <Transform List>] [/g <Language ID>]
  제품을 보급합니다. - m 모든 사용자, u 현재 사용자
 </uninstall | /x> <Product.msi | ProductCode>
  제품을 제거합니다.
표시 옵션
 /quiet
  자동 모드, 사용자 작업이 필요 없습니다.
 /passive
  무인 모드 - 진행률만 표시
 /q[n|b|r|f]
  사용자 인터페이스 수준을 설정합니다.
  n - UI 표시 안 함
  b - 기본 UI만 표시
  r - 간단한 UI만 표시
  f - 전체 UI 표시(기본값)
 /help
  도움말 정보
재시작 옵션
 /norestart
  설치 완료후 재시작을 하지 않습니다.
 /promptrestart
  필요한 경우 사용자에게 재시작 여부를 묻습니다.
 /forcerestart
  설치 후 항상 재시작합니다.
로깅 옵션
 /l[i|w|e|a|r|u|c|m|o|p|v|x|+|!|*] <LogFile>
  i - 상태 메시지
  w - 치명적이지 않은 경고
  e - 모든 오류 메시지
  a - 작업 시작
  r - 작업 관련 기록
  u - 사용자 요청
  c - 초기 UI 매개 변수
  m - 메모리 부족 또는 치명적인 종료 정보
  o - 디스크 부족 메시지
  p - 터미널 속성
  v - 자세한 정보 출력
  x - 추가 디버깅 정보
  + - 기존 로그 파일에 추가
  ! - 로그의 각 줄에 플러시
  * - v 및 x 옵션을 제외한 모든 정보를 기록

 /log <LogFile>
  Equivalent of /l* <LogFile>
업데이트 옵션
 /update <Update1.msp>[;Update2.msp]
  업데이트를 적용합니다.
 /uninstall <PatchCodeGuid>[;Update2.msp] /package <Product.msi | ProductCode>
  제품에 대한 업데이트를 제거합니다.
복구 옵션
 /f[p|e|c|m|s|o|d|a|u|v] <Product.msi | ProductCode>
  제품을 복구합니다.
  p - 파일이 없는 경우에만
  o - 파일이 없거나 이전 버전이 설치되어 있는 경우(기본값)
  e - 파일이 없거나 이전 또는 같은 버전이 설치되어 있는 경우
  d - 파일이 없거나 다른 버전이 설치되어 있는 경우
  c - 파일이 없거나 체크섬이 계산된 값과 다를 경우
  a - 모든 파일을 강제로 다시 설치
  u - 필요한 모든 사용자 특정 레지스트리 항목(기본값)
  m - 필요한 모든 컴퓨터 특정 레지스트리 항목(기본값)
  s - 기존의 모든 바로 가기(기본값)
  v - 원본에서 실행하여 로컬 패키지에 연결
공개 속성 설정
 [PROPERTY=PropertyValue]


참고로, 터미널 관리자 세션에서는 기본값(EnableAdminTSRemote)으로 설치가 가능하도록 되어 있습니다. 또한 Installer 캐시파일은 C:\WINDOWS\Installer 폴더에 저장되어 있습니다.


21-gpo-windowsinstaller.png

Tlist.exe - 프로세스 상세 및 트리구조 조회


tlist.exe는 Windows 2000 Server의 Support폴더에 있는 툴을 설치하면 그중에 있는 리소스킷입니다. 이 툴은 해당 프로세스에 종속되어 실행 및 로드된 프로세스 및 DLL들을 확인할수 있는 툴 입니다.

usage:
TLIST (-t) pid | -p processname


다음은 2가지 옵션에 따른 결과 입니다.

C:\temp>tlist cmd.exe 3584 
cmd.exe           

C:\WINDOWS\system32\cmd.exe - tlist cmd.exe    
CWD:     C:\temp\    CmdLine: "C:\WINDOWS\system32\cmd.exe"    
VirtualSize:    14924 KB   
PeakVirtualSize:    14992 KB    
WorkingSetSize:  1652 KB   
PeakWorkingSetSize:  1652 KB    
NumberOfThreads: 1    2376 
Win32StartAddr:0x4ad0b814 
LastErr:0x000000cb State:Waiting      5.2.3790.0 shp  0x4ad00000  
cmd.exe      5.2.3790.0 shp  0x77f20000  
ntdll.dll      5.2.3790.0 shp  0x77de0000  
kernel32.dll      7.0.3790.0 shp  0x77b40000  
msvcrt.dll      5.2.3790.0 shp  0x77d30000  
ADVAPI32.dll     5.2.3790.76 shp  0x77bf0000  
RPCRT4.dll     5.2.3790.73 shp  0x77ca0000  
USER32.dll      5.2.3790.0 shp  0x77ba0000  
GDI32.dll      5.2.3790.0 shp  0x71a80000  
MPR.dll      5.2.3790.0 shp  0x76120000  
IMM32.DLL      5.2.3790.0 shp  0x63050000  
LPK.DLL    1.421.3790.0 shp  0x72e60000  
USP10.dll 


C:\temp>tlist -t 

System Process (0) System (4)   
smss.exe (516)     
csrss.exe (564)     
winlogon.exe (588)       
services.exe (632)         
svchost.exe (824)           
wmiprvse.exe (2776)         
svchost.exe (876)         
svchost.exe (1048)        
 svchost.exe (1100)         
svchost.exe (1112)         
spoolsv.exe (1364)         
inetinfo.exe (1496)         
mdm.exe (1524)         
vmware-authd.exe (1564)         
vmnat.exe (1620)         
svchost.exe (508)           
w3wp.exe (2224)         
svchost.exe (1784)         
sqlservr.exe (2408)         
sqlagent.exe (3128)         
dllhost.exe (456)         
msdtc.exe (432)       
lsass.exe (644) 
explorer.exe (1988) 
Program Manager   
AGRSMMSG.exe (232) 
Agere Systems Soft Modem Monitor   HotKey.exe (252)   
SynTPLpr.exe (256) 
Touchpad driver helper window   SynTPEnh.exe (260) 
TouchPad object helper window   batterymiser.exeBattery miser (272) 
Battery miser   ctfmon.exe (340)   sqlmangr.exe (364) 
SQL Server 서비스 관리자     .     
.     .     . 
 



SubInAcl.EXE


■Discription :

관리자 임의로 해당 objcet의 소유권을 특정 유저로 변경할 수 있다.

■Usage :

1.파일에 대한 소유권 변경
SubInAcl /noverse /file text.txt /setowner=onwer명

2.폴더에 대한 소유권 변경
SubInAcl /noverse /subdirectories 변경할폴더명 /setowner=onwer명

/object_type 의 종류에는 다음과 같은 타입이 대상이다.
/service , /keyreg , /subkeyreg
/file , /subdirectories , /share
/clustershare , /kernelobject , /metabase
/printer , /onlyfile

*자세한 Usage는 help를 참고하시면 될듯 ^^.


REG.EXE


항목 레지스트리의 레지스트리 하위 키 정보와 값에 대한 추가, 변경, 가져오기, 내보내기 및 기타 연산 작업을 수행합니다.

반환 코드(REG COMPARE 제외) : 0 - 성공 / 1 - 실패

각 특정 작업 유형에 대한부분은 usage를 참고하세요...

REG QUERY /?
REG ADD /?
REG DELETE /?
REG COPY /?
REG SAVE /?
REG RESTORE /?
REG LOAD /?
REG UNLOAD /?
REG COMPARE /?
REG EXPORT /?
REG IMPORT /?


예:
REG QUERY HKLM\Software\Microsoft\ResKit /v Version
레지스트리 값 Version의 값을 표시합니다.

REG QUERY \\ABC\HKLM\Software\Microsoft\ResKit\Nt\Setup /s
원격 컴퓨터 ABC의 레지스트리 키 Setup 아래의 모든 하위
키와 값을 표시합니다.

원격서버의 작업도 가능합니다.
REG \\192.168.1.100\HKLM\Software\Microsoft\ResKit /v Version

*당근 원격서버에 대한 권한이 있어야 할 뿐더러,,, 원격레지스트리 서비스가 실행되고 있어야 함.^^;

*주의 : 레지스트리 잘못 하면.. 부팅 불가. 시스템이 작살나는수가 있음..


Renamer.exe


Renamer.exe는 주로 해킹에 의해서 삭제되지 않는 파일이나 폴더의 이름을 변경해 줍니다.
다음과 같은 예 가 그러한 경우에 해당합니다.




D:\>renamer.exe  

Found file: -=Tagged By iWiSH =-      -    =    T    a    g    g    e    d         
B    y               i    W    i    S    H         
= -   002d 003d 0054 0061 0067 0067 0065 0064 0020 0042 0079 0020 0069    
0057 0069 0053  

Do you want to rename this object? (y/N): y 

Rename the object as: bbbbbbb Success!  Found file: aspnet_client      
a    s    p    n    e    t    _    c    l    i    e    n    t  
 0061 0073 0070 006e 0065 0074 005f 0063 006c 0069 0065 006e 0074 

Do you want to rename this object? 
(y/N): ^C 

D:\> 

삭제가 되지 않는 이유는 위에 있는 폴더나 파일이 쓰여진 NTFS 파티션의 해당 block 위치값이 아니라 다른 위치를 접근하기 때문입니다.

Win32 호출시, "text.txt " 이라는 파일을 열면 "text.txt" 의 위치값을 찾기 때문입니다.

엄연히 "text.txt " 와 "text.txt"는 다르기 때문이죠.. Win32호출에서는 마지막 공백을 무시하기 때문입니다.



ListDLLs.exe


■ Discription :
프로세스에 종속되거나 로드된 DLL목록을 확인할 수 있다.
tlist.exe 보다 자세하게 DLL 파일 위치까지 출력해 준다.

■ File Path : http://www.sysinternals.com/


■ Example :

C:\temp>listdlls.exe 1228

ListDLLs V2.23 - DLL lister for Win9x/NT
Copyright (C) 1997-2000 Mark Russinovich
http://www.sysinternals.com

------------------------------------------------------------------------------
CMD.EXE pid: 1228
Command line: "C:\WINNT\system32\cmd.exe"

Base Size Version Path 0x4ad00000 0x5a000 5.00.2195.6656 C:\WINNT\system32\cmd.exe
0x77f80000 0x7b000 5.00.2195.6685 C:\WINNT\system32\ntdll.dll
0x77e50000 0xe1000 5.00.2195.6794 C:\WINNT\system32\KERNEL32.dll
0x77de0000 0x5f000 5.00.2195.6799 C:\WINNT\system32\USER32.dll
0x77f40000 0x39000 5.00.2195.6762 C:\WINNT\system32\GDI32.dll
0x796d0000 0x62000 5.00.2195.6710 C:\WINNT\system32\ADVAPI32.dll
0x786f0000 0x6e000 5.00.2195.6802 C:\WINNT\system32\RPCRT4.DLL
0x78000000 0x45000 6.01.9844.0000 C:\WINNT\system32\MSVCRT.dll
0x75df0000 0x1a000 5.00.2195.6655 C:\WINNT\system32\IMM32.DLL

DSADD.EXE


Windows Server 2003에서는 ds 관리툴을 새롭게 제공합니다.
ds 명령어는 디렉토리에 특정 개체 유형을 추가할수 있습니다.

추가 가능한 개체:
dsadd computer - 디렉터리에 컴퓨터를 추가합니다.
dsadd contact - 디렉터리에 연락처를 추가합니다.
dsadd group - 디렉터리에 그룹을 추가합니다.
dsadd ou - 디렉터리에 조직 구성 단위를 추가합니다.
dsadd user - 디렉터리에 사용자를 추가합니다.
dsadd quota - 디렉터리 파티션에 할당량 지정을 추가합니다.


다음은 계정을 추가하는 example입니다.
C:\>dsadd user CN=wjkim,OU=Clients,DC=serverinfo,DC=pe,DC=kr -samid wjkim -pwd 1234@dd$rfg


다음과 같은 메시지가 출력됩니다.
dsadd 성공:CN=wjkim,OU=Clients,DC=howtowindows,DC=com



피라미터에는
-email samle@serverinfo.pe.kr
-webpg http://www.serverinfo.pe.kr
-pwdneverexpires yes (-패스워드 이용기간 제한없음)
-memberof "CN=Users,DC=serverinfo,DC=pe,DC=kr"


ds명령어는 이외에도 다음과 같은 기능이 있습니다:
dsadd - 개체 추가
dsget - 개체 표시
dsmod - 개체 수정
dsmove - 개체 이동
dsquery - 검색 조건에 해당되는 개체 찾기
dsrm - 개체 삭제

*만약 개체가 여러개일경우 list파일 목록을 만들어서 loop를 돌면서 추가가 가능한 배치파일이나 vbscript를 만들어서 일괄작업이 가능하겠죠...


2007년 8월 19일 일요일

Perflib / ID: 1008

"ASP.NET_2.0.50727" 서비스("C:\WINNT\Microsoft.NET\Framework\v2.0.50727\aspnet_perf.dll" DLL)의 open 프로시저가 실패했습니다.
이 서비스에 대한 성능 데이터를 사용할 수 없습니다.
상태 코드는 DWORD 0입니다.

dmio / ID: 35

dmio: 디스크 Harddisk1 블록 71816535 (마운트 지점 E:): 고칠 수 없는 읽기 오류
데이터:
0000: 00 00 00 00 04 00 4a 00 ......J.
0008: 00 00 00 00 23 00 05 80 ....#..€
0010: 00 00 00 00 00 00 00 00 ........
0018: 01 00 00 00 00 00 00 00 ........
0020: 00 00 00 00 00 00 00 00 ........

dmio / ID: 26

dmio: 블록 번호 71816594에서 Harddisk1 디스크에 있는 잘못된 블록을 찾았습니다.
데이터:
0000: 00 00 00 00 03 00 4a 00 ......J.
0008: 00 00 00 00 1a 00 05 40 .......@
0010: 00 00 00 00 00 00 00 00 ........
0018: 01 00 00 00 00 00 00 00 ........
0020: 00 00 00 00 00 00 00 00 ........

2007년 8월 16일 목요일

Virtual Server의 취약점으로 인한 권한 상승 문제점 - 2007년 8월

오랜만에 뉴스에 글을 올려 보는것 같습니다..^^

2007년 8월 마이크로소프트 보안 공지가 발표 되었습니다. 이번에도 서버운영에 치명적인 패치는 나오지 않았습니다.

패치중에 아래는 서버운영과 관련있는 패치인데요,. 그런데 Virtual Server 를 운영하는 곳이 거의 없죠..  그래서 그리 위험하지는 않을듯 싶고,.


보안 공지 MS07-049

제목: Virtual PC 및 Virtual Server의 취약점으로 인한 권한 상승 문제점 (937986)

요약: 이 중요 보안 업데이트는 비공개적으로 보고된 취약점 1건을 해결합니다. 이 취약점은 권한 상승 취약점입니다.  Microsoft Virtual PC 및 Microsoft Virtual Server의 취약점으로 인해 게스트 운영 체제 사용자가 호스트 또는 다른 게스트 운영 체제에서 코드를 실행할 수 있습니다.

최대 심각도: 중요

취약점으로 인한 영향: 권한 상승

영향을 받는 소프트웨어: Virtual PC, Virtual Server

시스템 재시작: 보안 업데이트 적용 후 시스템을 재시작해야 할 수도 있습니다.

업데이트 제거: 이 보안 업데이트는 제거할 수 없습니다.

추가 정보: http://go.microsoft.com/?linkid=7244911


그외 패치는 거의 대부분이 클라이언트 운영체제 환경에서 필요한 패치입니다. 매월 패치에서 빠지지 않고 나오는게 인터넷 익스플로러 패치인데요..

혹시 서버에서 웹브라우져로 여기저기 웹서핑하는 관리자는 없겠죠?...^^




보안 공지 MS07-042

제목: Microsoft XML Core Services의 취약점으로 인한 원격 코드 실행 문제점 (936227)

요약: 이 긴급 보안 업데이트는 비공개적으로 보고된 취약점을 해결합니다. 이 취약점은 사용자가 Internet Explorer를 사용하여 특수하게 조작된 웹 페이지를 볼 경우 원격 코드 실행을 허용할 수 있습니다. 이 취약점은 Microsoft XML Core Services에 대한 공격을 통해 악용될 수 있습니다. 시스템에 대한 사용자 권한이 적게 구성된 계정의 사용자는 관리자 권한으로 작업하는 사용자에 비해 영향을 적게 받습니다.

최대 심각도: 긴급

취약점으로 인한 영향: 원격 코드 실행

영향을 받는 소프트웨어: Windows, XML Core Services

시스템 재시작: 보안 업데이트 적용 후 시스템을 재시작해야 합니다.

업데이트 제거: 업데이트되는 대상 제품 버전에 따라 제거 가능할 수도 가능하지 않을 수도 있습니다.

추가 정보: http://go.microsoft.com/?linkid=7244904

________________________________________

보안 공지 MS07-043

제목: OLE 자동화의 취약점으로 인한 원격 코드 실행 문제점 (921503)

요약: 이 긴급 보안 업데이트는 비공개적으로 보고된 취약점을 해결합니다. 이 취약점은 사용자가 특수하게 조작된 웹 페이지를 볼 경우 원격 코드 실행을 허용할 수 있습니다. 취약점은 OLE(Object Linking and Embedding)에 대한 공격을 통해 악용될 수 있습니다.

최대 심각도: 긴급

취약점으로 인한 영향: 원격 코드 실행

영향을 받는 소프트웨어: Windows, Visual Basic, Office for Mac

시스템 재시작: 보안 업데이트 적용 후 시스템을 재시작해야 합니다.

업데이트 제거: 업데이트되는 대상 제품 버전에 따라 제거 가능할 수도 가능하지 않을 수도 있습니다.

추가 정보: http://go.microsoft.com/?linkid=7244905

________________________________________

보안 공지 MS07-044

제목: Microsoft Excel의 취약점으로 인한 원격 코드 실행 문제점 (940965)

요약: 이 보안 업데이트는 조사 과정에서 확인된 기타 보안 문제점과 함께 비공개적으로 보고된 취약점 1건을 해결합니다. 이러한 취약점으로 인해 사용자가 특수하게 조작된 Excel 파일을 열 경우 원격 코드 실행이 허용될 수 있습니다. 시스템에 대한 사용자 권한이 적게 구성된 계정의 사용자는 관리자 권한으로 작업하는 사용자에 비해 영향을 적게 받습니다.

최대 심각도: 긴급

취약점으로 인한 영향: 원격 코드 실행

영향을 받는 소프트웨어: Office

시스템 재시작: 보안 업데이트 적용 후 시스템을 재시작할 필요가 없습니다.

업데이트 제거: 업데이트되는 구성 요소에 따라 제거 가능할 수도 가능하지 않을 수도 있습니다.

추가 정보: http://go.microsoft.com/?linkid=7244906

________________________________________

보안 공지 MS07-045

제목: Internet Explorer 누적 보안 업데이트 (937143)

요약: 이 긴급 보안 업데이트는 비공개적으로 보고된 취약점 3건을 해결합니다. 이러한 취약점은 사용자가 Internet Explorer를 사용하여 특수하게 조작된 웹 페이지를 볼 경우 원격 코드 실행을 허용할 수 있습니다. 시스템에 대한 사용자 권한이 적게 구성된 계정의 사용자는 관리자 권한으로 작업하는 사용자에 비해 영향을 적게 받습니다.

최대 심각도: 긴급

취약점으로 인한 영향: 원격 코드 실행

영향을 받는 소프트웨어: Windows, Internet Explorer

시스템 재시작: 보안 업데이트 적용 후 시스템을 재시작해야 합니다.

업데이트 제거: [Windows 2000, Windows XP, Windows Server 2003] 제어판의 프로그램 추가/제거를 통해 이 보안 업데이트를 제거할 수 있습니다.
[Windows Vista] 제어판의 보안을 누르고, Windows Update에서 설치된 업데이트 보기 메뉴에서 제거할 수 있습니다.

추가 정보: http://go.microsoft.com/?linkid=7244907

________________________________________

보안 공지 MS07-046

제목: GDI의 취약점으로 인한 원격 코드 실행 문제점 (938829)

요약: 이 긴급 보안 업데이트는 비공개적으로 보고된 취약점을 해결합니다. 그래픽 렌더링 엔진에서 특수하게 조작된 이미지를 처리하는 방식에 원격 코드 실행 취약점이 존재합니다. 공격자는 사용자가 특수하게 조작된 전자 메일의 첨부 파일을 열 때 원격 코드가 실행되도록 이미지를 조작하여 이러한 취약점을 악용할 수 있습니다. 이 취약점을 악용한 공격자는 영향을 받는 시스템을 완전히 제어할 수 있습니다.

최대 심각도: 긴급

취약점으로 인한 영향: 원격 코드 실행

영향을 받는 소프트웨어: Windows

시스템 재시작: 보안 업데이트 적용 후 시스템을 재시작해야 합니다.

업데이트 제거: 제어판의 프로그램 추가/제거를 통해 이 보안 업데이트를 제거할 수 있습니다.

추가 정보: http://go.microsoft.com/?linkid=7244908

________________________________________

보안 공지 MS07-047

제목: Windows Media Player의 취약점으로 인한 원격 코드 실행 문제점 (936782)

요약: 이 중요 보안 업데이트는 비공개적으로 보고된 취약점 2건을 해결합니다. 이러한 취약점은 사용자가 특수하게 조작된 파일을 Windows Media Player에서 볼 경우 원격 코드 실행을 허용합니다. 시스템에 대한 사용자 권한이 적게 구성된 계정의 사용자는 관리자 권한으로 작업하는 사용자에 비해 영향을 적게 받습니다.

최대 심각도: 중요

취약점으로 인한 영향: 원격 코드 실행

영향을 받는 소프트웨어: Windows

시스템 재시작: 보안 업데이트 적용 후 시스템을 재시작할 필요가 없습니다.

업데이트 제거: [Windows 2000, Windows XP, Windows Server 2003] 제어판의 프로그램 추가/제거를 통해 이 보안 업데이트를 제거할 수 있습니다.
[Windows Vista] 제어판의 보안을 누르고, Windows Update에서 설치된 업데이트 보기 메뉴에서 제거할 수 있습니다.

추가 정보: http://go.microsoft.com/?linkid=7244909

________________________________________

보안 공지 MS07-048

제목: Windows 가젯의 취약점으로 인한 원격 코드 실행 문제점 (938123)

요약: 이 중요 보안 업데이트는 비공개적으로 보고된 취약점 2건과 조사 과정에서 확인된 기타 취약점을 해결합니다. 이러한 취약점으로 인해 익명의 공격자가 로그온한 사용자 권한으로 실행되는 코드를 원격으로 실행할 수 있습니다.

최대 심각도: 중요

취약점으로 인한 영향: 원격 코드 실행

영향을 받는 소프트웨어: Windows Vista

시스템 재시작: 보안 업데이트 적용 후 시스템을 재시작해야 합니다.

업데이트 제거: 제어판의 보안을 누르고, Windows Update에서 설치된 업데이트 보기 메뉴에서 제거할 수 있습니다.

추가 정보: http://go.microsoft.com/?linkid=7244910

________________________________________

보안 공지 MS07-050

제목: 벡터 표시 언어의 취약점으로 인한 원격 코드 실행 문제점 (938127)

요약: 이 보안 업데이트는 Windows에 구현된 VML(벡터 표시 언어)에 대해 비공개적으로 보고된 취약점을 해결합니다. 이 취약점은 사용자가 Internet Explorer를 사용하여 특수하게 조작된 웹 페이지를 볼 경우 원격 코드 실행을 허용할 수 있습니다. 시스템에 대한 사용자 권한이 적게 구성된 계정의 사용자는 관리자 권한으로 작업하는 사용자에 비해 영향을 적게 받습니다.

최대 심각도: 긴급

취약점으로 인한 영향: 원격 코드 실행

영향을 받는 소프트웨어: Windows, Internet Explorer

시스템 재시작: 이 업데이트를 설치한 후 다시 시작하지 않아도 됩니다. 필요한 파일이 사용 중이면 시스템을 다시 시작해야 합니다. 이러한 경우에는 시스템을 재시작해야 한다는 메시지가 표시됩니다.

업데이트 제거: [Windows 2000, Windows XP, Windows Server 2003] 제어판의 프로그램 추가/제거를 통해 이 보안 업데이트를 제거할 수 있습니다.
[Windows Vista] 제어판의 보안을 누르고, Windows Update에서 설치된 업데이트 보기 메뉴에서 제거할 수 있습니다.

추가 정보: http://go.microsoft.com/?linkid=7244912

2007년 8월 14일 화요일

NTBackup / ID: 8001

백업 종료: 'EXCHANGE\Microsoft Information Store\기본 저장소 그룹' '경고 또는 오류가 발생했습니다.'

확인: On
모드: Append
종류: Inc

자세한 내용은 백업 보고서를 참고하십시오.



'Microsoft Information Store'이(가) 'ESE 함수 호출에서 오류가 반환되었습니다(d).

'을(를) 'HrESEBackupGetLogAndPatchFiles()' 호출(추가 데이터: '-')로부터 반환했습니다.'Microsoft Information Store'이(가) '함수 호출 순서가 잘못되었습니다.

'을(를) 'HrESEBackupClose()' 호출(추가 데이터: '-')로부터 반환했습니다.
작업이 종료되었습니다.

작업을 성공적으로 완료하지 못했습니다.

2007년 8월 12일 일요일

DNS 서버 운영지침서 - 한국인터넷진흥원

본 PDF 문서는 정통부산하 한국인터넷진흥원(http://domain.nida.or.kr/)에서 배포하는 자료 입니다.

DNS 에 대한 자세한 설명 및 서버종류별 설치 및 운영 방법을 기술해 놓은 111 페이지의 꽤 많은 양의 내용으로 채워진 문서입니다.




물론 아래와 같은 내용은 이미 수많은 웹사이트의 문서로 존재하며, 각 벤더 및 기술포럼 등에도 많은 내용이 공개되어 있습니다.


<목 차>

1장 DNS 일반 
    1.1 DNS 개요 ............................................................ 1 
    1.2 DNS 구조 ............................................................ 4 
    1.3 도메인(Domain)과 존(Zone) 개요 ............................. 9 
    1.4 DNS 리소스 레코드 개요 .......................................... 14 
    1.5 DNS 네임서버 및 리졸버 개요 ................................. 28 
    1.6 DNS 도메인 위임설정 개요 ....................................... 31 
    1.7 도메인 네임 리졸루션(resolution) ............................. 37 
    1.8 관련 표준 목록 ...................................................... 40

2장 BIND 
    2.1 BIND 소개 ........................................................... 42 
    2.2 BIND 설치하기 ........................................................ 44 
    2.3 BIND 설정하기 ........................................................ 46 
    2.4 BIND 운영 .............................................................. 61

3장 Windows 2003 DNS 서버 
    3.1 Windows 2003 DNS 서버 설치 ................................. 72 
    3.2 윈도우 2003 DNS 서버 구성 ................................... 74 
    3.3 윈도우 2003 DNS 서버 설정 ................................... 85

4장 Q&A 
    4.1 BIND 관련 Q&A ...................................................... 89 
    4.2 네임서버 관련 Q&A ................................................. 102


다운로드: http://www.serverinfo.pe.kr/File/TipnTech/DNS/dns_server_manual.pdf
(* 되도록이면 원본 배포 웹사이트에서 최신 버젼을 다운로드 하는게 좋습니다.)



11-dns.gif

DNSSEC: DNS Security Extentions(DNS 보안성 확장)" 구성

- 다음 내용은 정통부 산하 한국인터넷진흥원(http://dnssec.nida.or.kr/)의 DNSSEC 기술의 내용을 발췌 한것으로 서버운영,보안 기술에 도움이 되는 내용입니다. -


DNSSEC은 전자서명과 서명검증 절차를 지원하기 위한 신규 리소스 레코드를 정의하였다.
이에는 RRSIG RR, DNSKEY RR, NSEC RR, DS RR의 4 가지가 있다.

리소스 레코드 각각의 주요 용도는 다음과 같다.

RRSIG(Resource Record Signature) RR은 도메인 네임 시스템의 각 리소스 레코드 데이터에 대한 전자서명 데이터를 저장하기 위한 리소스 레코드이다. RRSIG은 서명 데이터만 단순하게 제공하는 것은 아니며 전자서명에 관련된 여러 가지 정보 필드를 함께 정의하고 있다. RRSIG은 DNS 응답 메시지에 그 서명 대상 리소스 레코드와 함께 응답된다.


[그림]


DNSKEY(DNS Public Key) RR은 도메인 존(zone)의 공개키(public key) 데이터를 저장하여 제공하기 위한 리소스 레코드이다. RRSIG RR에서 제공되는 리소스 레코드별 전자서명에 대한 서명검증 절차는 이 서명에 사용된 개인키(private key)에 상응하는 공개키(public key)를 필요로 한다. 이 공개키의 소유자는 도메인 존(zone)이며, 도메인 존(zone)의 공개키(public key)는 DNSKEY RR에 저장되어 DNS 질의응답을 통해 배포된다.

하나의 도메인 존에는 두 가지 공개키 암호화 방식의 키 쌍(key pair)이 존재한다.
하나는 도메인 존(zone)의 소유하고 있는 모든 리소스 레코드 각각을 서명하기 위한 키 쌍(key pair)이다. 이 키 쌍 중에서 공개키(public key)를 "ZSK(Zone Singing Key)"라고 한다. 곧, 존을 서명하는 데에 사용된 개인키에 대응하는 공개키임을 의미한다.

[그림]


다른 한 쌍은 존을 서명하는 데에 사용된 개인키의 대응 공개키인 ZSK 자체를 서명하기 위한 키 쌍(key pair)이다. 이 중에서 공개키(public key)를 "KSK(Key Signing Key)"라 한다. 곧, 공개키인 ZSK를 서명하는 데에 사용된 개인키의 대응 공개키임을 의미한다.

DS(Delegation Signer) RR은 DNS 고유의 위임체계에 따라 보안측면의 인증된 위임체계를 구성하기 위한 데이터를 저장한다. 여기에 저장되는 데이터는 자식 도메인 존(zone)의 공개키 중에서 KSK(Key Signing Key)에 대한 다이제스트(digest) 데이터이다.

이 다이제스트(digest) 값은 KSK 공개키 데이터에 대한 지문(fingerprint) 역할을 한다. 곧, 하위 자식 도메인 존(zone)의 KSK를 확증할 수 있는 수단을 제공함으로써, 부모 도메인 존(zone)의 인증된 권한에 의해 자식 도메인의 KSK를 인증할 수 있게 한다.

이를 통해 부모 도메인과 자식 도메인 간에 인증사슬(authentication chain)을 형성한다. 이 DS RR은 부모 도메인 존(zone)이 소유하는 리소스 레코드이며, 따라서 부모 도메인 존(zone)의 ZSK(Zone Signing Key)의 대응 개인키로 서명한 RRSIG RR이 DS RR에 대하여 생성되어 제공된다.

[그림]


NSEC(Next Secure) RR은 DNSSEC이 제공하는 보안 기능 중 "DNS 데이터의 부재 인증(authenticated denial of existence of DNS data)"을 위해 정의된 리소스 레코드이다. 특정 리소스 레코드가 존재하지 않음을 전자서명을 통해 인증할 수 있는 메커니즘을 제공하기 위한 리소스 레코드 타입이다.

이는 도메인 존에서 설정하여 존재하고 있는 도메인 네임이 존재하지 않는 것으로 위-변조하여 응답되는 경우, 또는 존재하고 있는 리소스 레코드를 존재하지 않는 것으로 위-변조하여 응답되는 경우에 대하여 실제로 그 도메인 네임이나 리소스 레코드의 존재여부를 서명검증을 통해 확인할 수 있는 수단을 제공하기 위함이다.

NSEC RR은 DNSSEC의 적용상에서 문제점을 유발하는 요소로 인식되고 있다.

NSEC RR의 목적이 "DNS 데이터의 부재인증"을 위한 것이지만, 이는 역으로 도메인 존에 설정되어 있는 전체 도메인 네임 리스트와 리소스 레코드 리스트를 쉽게 파악할 수 있는 도구로 활용될 수 있다. 이 문제는 존 목록화(zone enumeration) 이슈로 알려져 있다.

이 문제 외에 .COM이나 .NET, .KR과 같이 위임설정 정보만 갖는 도메인 존에서 NSEC RR이 존재함으로 인해, 도메인 존의 서명된 데이터가 급증하고, 일반 도메인에 대한 대량의 위임설정 정보 각각에 대한 서명처리로 인해 DNSSEC 적용이 곤란하고 비용이 과다하게 발생한다는 문제점이 있다.

이 문제를 해소하기 위해 IETF DNSEXT 워킹그룹에서는 NSEC RR의 기능을 대신할 수 있는 NSEC3 RR에 대한 표준화 작업이 진행 중에 있다.

[그림]


DNSSEC은 리졸버에서의 신뢰할 수 있는 서명검증이 가능하도록 설계된 표준이다.

DNSSEC 표준의 RRSIG RR과 DNSKEY RR, DS RR을 사용하여 리커시브 네임서버의 리졸버는 응답된 리소스 레코드 데이터에 대한 서명검증을 수행한다. 서명검증 대상 데이터는 기존의 리소스 레코드 데이터이며, 서명은 RRSIG RR에서 얻을 수 있고, 이 서명에 대한 검증에서 필요한 공개키 데이터는 도메인 존의 DNSKEY RR에 대한 질의응답으로 얻는다.

DNSKEY RR 자체에 대한 위-변조 위험 가능성이 존재하므로 이에 대한 검증 또한 필요하다. 그 부모 도메인 존에서 서명된 위임설정의 DS RR과 이 DS RR에 대한 서명을 갖는 RRSIG RR, 그리고 부모 존의 공개키를 갖는 DNSKEY RR을 질의응답으로 조회하여 서명 검증을 수행한다.
 
이러한 검증은 상위 도메인으로 지속되며, 결국에는 리커시브 네임서버에 미리 설정된 신뢰앵커(Trust Anchor)를 사용한 검증이 가능하게 되면 그 검증은 신뢰할 수 있게 된다.

DNSSEC: DNS Security Extensions, Securing the Domain Name System 기술포럼
http://www.dnssec.org/


11-rrsig_rr.png
11-zsk_ksk_key.png
11-ds_rr.png
11-verification.png

DNSSEC: DNS Security Extentions(DNS 보안성 확장)" 이란?

- 다음 내용은 정통부 산하 한국인터넷진흥원(http://dnssec.nida.or.kr/)의 DNSSEC 기술의 내용을 발췌 한것으로 서버운영,보안 기술에 도움이 되는 내용입니다. -


DNSSEC이란?

DNSSEC은 도메인 네임 시스템(DNS)이 갖고 있는 보안 취약점을 극복하기 위한 DNS 확장 표준 프로토콜이다.

"DNS Security Extentions(DNS 보안성 확장)"을 축약하여 DNSSEC이라 부른다.

DNS 프로토콜은 데이터 위-변조 침해공격의 위협에 취약하다는 문제점을 가지고 있었다.

DNS 데이터의 위-변조 침해공격은 진짜 사이트와 동일한 모습으로 위장하고 있는 가짜 사이트로 사용자들이 접속하게끔 유도할 수 있다.

자신이 접속하고 있는 사이트가 가짜 사이트인 줄 모르는 사용자는 자신의 로그인 계정과 암호, 그리고 신용카드 비밀번호와 같은 개인정보를 가짜 사이트의 웹 페이지에서 입력하게 되어, 개인 정보가 악의를 가진 공격자에게 노출되는 사고가 발생할 수 있다.


DNS 데이터 위-변조 공격, DNS 캐시 포이즈닝


DNS 데이터를 위-변조하는 공격 형태를 "DNS 캐시 포이즈닝(DNS Cache Poisoning)"이라 하며, 혹은 "파밍(Pharming)"이라고도 한다.

예로써, 온라인 뱅킹 서비스를 이용하기 위해 은행 웹 사이트 www.a-bank.co.kr에 접속하는 경우를 상정해 보자.

그림에서와 같이, www.a-bank.co.kr의 진짜 주소는 202.31.188.5이지만, 악의의 공격자는 이 www.a-bank.co.kr의 주소가 192.0.2.100인 것처럼 위변조할 수 있다.





사용자는 PC에서 웹 브라우저의 주소창에 "http://www.a-bank.co.kr"을 입력하고 접속을 시도한다.
웹 브라우저는 접속 사이트의 IP 주소를 알아야 해당 서버에 접근할 수 있으므로, 도메인 네임 www.a-bank.co.kr의 IP 주소를 파악하는 절차를 먼저 수행한다.

그림에서와 같이, PC 호스트 시스템은 리커시브 네임서버에 대해 www.a-bank.co.kr에 대한 IP 주소를 질의한다.

PC 호스트는 DNS 응답 패킷에서 www.a-bank.co.kr 사이트의 웹 접속에 필요한 IP 주소를 얻게 된다.

리커시브 네임서버는 PC 호스트로부터의 질의에 응답할 때, DNS 데이터를 임시로 저장하는 캐시에서 해당 데이터로서 응답한다.

문제는 이 캐시에 저장된 DNS 데이터가 위-변조된 데이터일 경우에 발생한다.

www.a-bank.co.kr 은행사이트의 진짜 IP 주소는 202.31.188.5인데, 누군가가 위-변조된 DNS 응답 메시지로 리커시브 네임서버를 속여 www.a-bank.co.kr의 IP 주소가 192.0.2.100인 것으로 믿게 하여 이를 캐시에 저장하는 경우가 이에 해당한다.

이렇게 되면 이 리커시브 네임서버를 사용하고 있는 모든 PC 호스트는 www.a-bank.co.kr 사이트에 접속을 하려 할 때, 202.31.188.5 주소의 서버가 아니라 192.0.2.100의 서버에 접속하게 된다.

이 과정은 PC 호스트와 네임서버 간에 일어나는 절차에 의한 것이므로, 사용자는 자신이 가짜 웹 사이트에 접속하고 있다는 것을 알 수가 없다.

특히 이런 경우 192.0.2.100의 가짜 웹 사이트는 www.a-bank.co.kr 사이트와 동일한 모습으로 위장된 웹 사이트이게 된다.

공격자가 사용자의 개인정보를 입력받기 위해서 미리 준비한 위장된 웹 사이트이다.

사용자는 이 접속된 사이트가 www.a-bank.co.kr의 은행 사이트인 것으로 착각하고 아무런 의심 없이 자신의 로그인 정보와 계좌 비밀번호를 입력하게 된다.

악의의 공격자는 사용자가 입력하는 개인정보를 저장하여 금융범죄에 사용하거나 수집된 정보를 다른 악의를 가진 이에게 판매할 수 있다.

이러한 형태의 공격을 "DNS 캐시 포이즈닝(DNS cache Poisoning)"이라 부른다.

리커시브 네임서버가 관리하는 캐시(cache)에 위-변조된 데이터를 저장하도록 유도하기 위한 공격 형태이다.

이와 유사하게 "파밍(Pharming)"이라 하는 공격형태가 있다.

파밍(Pharming)은 사이트 접속 트래픽을 진짜 사이트처럼 위장된 사이트로 전환시키는 것을 목적으로 하는 모든 다양한 형태의 공격을 가리킨다.

파밍(Pharming)은 리커시브 네임서버의 DNS 캐시 포이즈닝 뿐만 아니라, 도메인 등록기관의 네임서버 위임등록 정보를 변경하여 도메인을 가로채는 공격형태, 호스트에 존재하는 hosts 파일의 설정 데이터를 변조하는 공격 형태까지를 모두 포괄한다.

파밍(Pharming)의 위험성은 주로 피싱(Phishing)과 비교된다.

피싱(Phishing)은 사용자로 하여금 접속하는 도메인 네임과 철자기 유사한 도메인 네임을 사용하여 부주의하게 위장된 사이트로 접속하게 한다.

피싱(Phishing)은 사용자가 도메인 네임과 URL 등을 충분히 주의깊게 살피면 그 피해를 예방할 수 있다.

그러나 파밍(Pharming)은 사용자가 올바른 도메인 네임을 확인하는 등의 충분한 주의를 기울이더라도 이 도메인 네임의 IP 주소가 이미 위-변조된 주소로 매핑되어 있어서, 위장된 서버에 접속하는 것을 피할 수가 없다.

이 점에서 위협적인 공격 형태로 인식되고 있다. 사용자가 아무리 주의하더라도 자신이 가짜 IP 주소를 갖는 사이트에 접속하고 있다는 사실을 사용자는 쉽게 알아챌 수 없다.

파밍(Pharming)은 DNS 캐시 포이즈닝 공격으로 유발될 수 있다.

특히 DNS 캐시 포이즈닝의 경우, 공격 대상인 리커시브 네임서버를 사용하고 있는 수많은 호스트들이 모두 동시에 이 공격의 피해자가 될 수 있다는 점에서 심각한 위협요인을 가지고 있다.


DNS 보안 확장(DNSSEC) 표준의 개발

도메인 네임 시스템(DNS) 표준은 이와 같은 침해공격의 가능성을 고려하지 않던 시대에 정해진 표준 프로토콜이다.

인터넷이 상업적으로 이용되기 시작하면서, 이러한 침해공격으로부터 DNS 데이터를 보호해야 할 필요성이 점차 중요하게 인식되고 있다.

DNSSEC은 도메인 네임 시스템(DNS)이 제공하는 다양한 DNS 데이터가 데이터 위-변조 침해공격에 의해 위-변조되어 호스트 PC의 어플리케이션으로 전달되는 사태를 방지하기 위해 DNS 표준 프로토콜을 확장하고 보완하는 표준 프로토콜이다.

DNSSEC의 도입적용은 DNS 데이터의 위-변조 공격을 원천적으로 불가능하게 하여 DNS 캐시 포이즈닝 공격을 불가능하게 만든다.

현재 추진되고 있는 차세대 인터넷은 높은 수준의 보안 안전성을 필요로 한다.

차세대 인터넷 환경에서의 DNS에 대해서도 그 근본적 보안 취약점을 극복함으로써 신뢰할 수 있는 데이터를 차세대 인터넷 응용 어플리케이션에 제공할 수 있는 안전한 기반 인프라 시스템으로의 진화가 요청되고 있다.

DNSSEC은 안전하고 신뢰성을 보장할 수 있는 DNS를 구현하기 위한 표준 프로토콜이다.

궁극적으로 인터넷 전체에 DNSSEC 기반의 DNS 체계가 완성된다면, DNS의 보안 안전성 향상은 단지 DNS의 안전성 향상에 그치는 것이 아니라, 모든 인터넷 어플리케이션의 보안기능을 보다 널리 적용할 수 있게 되어 인터넷 전체의 보안성을 전반적으로 향상, 강화시키는 효과를 기대할 수 있게 한다.

예를 들면, DNSSEC이 적용된 DNS 환경을 대비하여, IPSec의 경우는 IPSec 메커니즘에서 필요로 하는 공개키 데이터를 DNS 시스템에 DNS 데이터로 설정 저장할 수 있도록 IPSECKEY RR을 표준 정의해 두고 있기도 하다.


DNSSEC: DNS Security Extensions, Securing the Domain Name System 기술포럼
http://www.dnssec.org/


11-cash_poisoning_attack.gif

2007년 8월 11일 토요일

WSUS: Windows Server Update Services 3.0 - 한국어




기존의 WSUS 의 버젼업이 되어 3.0 입니다.

다운로드:
http://www.microsoft.com/downloads/details.aspx?FamilyID=e4a868d7
-a820-46a0-b4db-ed6aa4a336d9&DisplayLang=ko



이미 많은 관리자들이 설치를 해서 패치관리에 이용하고 있는데요. 기존에는 웹콘솔이었으나 3.0 으로 업데이트 되면서 MMC 로 변경되었습니다.


그리고, DB로는 MSDE 가 기본이었으나 WMSDE 로 바뀌었습니다. 물론 SQL Server 2005 Express 기반이구요..^^

UI 가 MMC 변경으로 많이 바뀌었을 뿐이지 기존 2.0 을 운영해 보신분들이라면 쉽게 적응이 가능하리라 봅니다.

참고문서:
Microsoft Windows Server Update Services 3.0 시작을 위한 단계별 가이드
http://www.microsoft.com/downloads/details.aspx?FamilyID=c8fa2fd1-
72f6-4f19-a1b0-f689dae14be6&DisplayLang=ko

IP주소 추적에 관한 오해 - 한국인터넷진흥원

한국인터넷진흥원(http://www.krnic.or.kr/)은 IP주소를 할당하고 관리하는 인터넷주소자원관리기관으로 IP주소를 추적할 수 있는 정보를 가지고 있지 않습니다.
 
IP주소는 할당 체계에 따라 한국인터넷진흥원이 ISP(인터넷서비스제공자)에게 할당하며 ISP는 초고속인터넷 가입자 등 고객에게 다시 할당합니다.
 
Whois 서비스는 ISP가 고객에게 할당한 IP주소 사용정보를 한국인터넷진흥원에 등록한 경우 서비스를 제공하는 것입니다.
 
고정 IP주소인 경우 추적하고자 하는 IP주소가 어느 회사나 기관에서 사용하고 있는지 whois를 통해 확인할 수 있으나, 실제 IP주소 사용자를 파악하기 위하여 그 회사나 기관에 연락하여도 대부분 일반인에게 알려주지 않습니다.
 
유동 IP주소인 경우 추적하고자 하는 IP주소뿐만 아니라 접속 일시, 웹페이지 주소 등 추가정보가 필요합니다. 이런 정보들은 해당 ISP나 포털 등을 통해야 파악 가능하나 고정 IP주소와 마찬가지로 일반인에게는 상기 정보를 제공하지 않습니다.
 
결론적으로 수사기관 등을 통하지 않고 개인이 IP주소 사용자를 추적하는 것은 사실상 불가능합니다.



- IP 추적해 달라고 요청이 많은가 봅니다..^^ 실제 도용이나 금전적 손실등의 피해가 있더라도 해당 당사자에게 직접 알려주지는 않습니다. 제가 근무하는 회사도 호스팅회사이므로 종종 연락이 오지만 절대 통보해 주지 않으며 법적기관인 정보보호진흥원이나 경찰청사이버수사대에 신고 하라고 해줍니다.

IP 주소는, 서버측에 기록이 남는 것중에 대부분이 웹서버로그나 FTP 로그등입니다. 이들 로그에 기록된것은 모두 공인 IP 기록이며, 위 내용처럼 ADSL 사용자 처럼 유동인 경우 해당 ISP 의 DHCP 서버에서 할당된 호스트 기록이 있어야 추적이 가능합니다.

또한 보통 일반적인 포털이 아닌 경우에는 해당 서버의 로그는 결재 로그와 같은 중요정보가 아닌 이상 장기간 보관을 하지 않으므로 오래된 사항은 아예 기록조차 찾아 볼수가 없는게 대부분이죠.

외국에서 접속된 IP 에 대한 수사도 쉽지 않습니다. 국내 사법기관이 해외 ISP 업체에 요구를 해도 해당 외국 ISP 업체가 요구를 들어줄 이유가 전혀 없을뿐더러, 해당 국가의 사법기관이나 인터폴등도 심대한 법위반이 아닌 경우에는 협조를 해주지 않죠..-

2007년 8월 10일 금요일

COM+ / ID: 4830

사용할 수 있는 메모리가 매우 부족한 상태에서 컴퓨터가 실행되고 있습니다. 시스템을 올바로 작동하기 위해 구성 요소 활성화를 거부했습니다. 이 문제가 계속되면 메모리를 더 설치하거나 페이징 파일 크기를 늘리십시오. 메모리 통계는 다음과 같습니다. dwMemoryLoad = 78
ullTotalPhys = 0x07ff63000
ullAvailPhys = 0x01b033000
ullTotalPageFile = 0x176617000
ullAvailPageFile = 0x01a4b0000
ullTotalVirtual = 0x07ffe0000
ullAvailVirtual = 0x07e6a1000

프로세스 이름: svchost.exe
Comsvcs.dll 파일 버전: not loaded

MSExchangeAL / ID: 8260

로컬 서비스 자격 증명을 사용하여 'exchange.serverinfo.pe.kr' 디렉터리에 LDAP 세션을 열 수 없습니다.
주소 목록 구성 정보에 액세스할 수 없습니다. 'exchange.serverinfo.pe.kr' 서버가 실행되고 있는지 확인
하십시오.
DC=serverinfo,DC=pe,DC=kr

MSExchangeAL / ID: 8026

exchange.serverinfo.pe.kr 디렉터리에서 고유 이름 ''에 대한 LDAP 바인딩을 수행하지 못했습니다. 디렉터리에서 다음 오류를 반환했습니다. [0x51] 서버 작동 안함
DC=serverinfo,DC=pe,DC=kr

Linked Server 의 MySQL 트랜잭션 문제 - MSDASQL 0x80004002

Linked Server 의 설정방법은 이미 등록된 다음 문서를 참고해 보시구요,.


분산쿼리를 위한 Linked Server 설정
http://www.serverinfo.pe.kr/TipnTech.aspx?Seq=172


같은 SQL Server 끼리 연결은 크게 발생하는 문제는 여러 SQL 전문 웹사이트를 보면 거의 없는 것으로 보입니다.

간혹 발생하는 문제가 MySQL 이나 Oracle 연결시에 문젝 발생하는 것 같은데요,. MySQL 에서 트랜잭션을 지원하지 않거나 기타 이유로 인해서 일부에서 다음과 같은 오류가 발생하기도 합니다.

서버: 메시지 7390, 수준 16, 상태 1, 줄 1
OLE DB 공급자 'MSDASQL'이(가) 필요한 트랜잭션 인터페이스를 제공하지 않아서 요청한 작업을 수행할 수 없습니다.
OLE DB 오류 추적 [OLE/DB Provider 'MSDASQL' IUnknown::QueryInterface returned 0x80004002].


위와 같은 오류메시지를 보면, 트랜잭션 처리를 할수 없다는 내용입니다.

아시다 시피 SQL Server 는 insert, update, delete 같은 쿼리는 명시적인 트랜잭션 처리를 하지 않더라도 암시적인 트랜잭션 처리를 하게 되어 있습니다.

트랜잭션처리는, 쿼리실행도중 예기치 않는 상황에서 쿼리실행이전의 상태로 롤백처리를 하기 위해서 입니다. 트랜잭션에 대한 내용은 관련 도움말을 참조해보시고요..^^


위와 같은 오류발생시에, 해당 프로바이더가 트랜잭션 처리를 하지 않도록 설정을 해주면 됩니다.



SQL Server 2005 에서는 MS 의 다음 프로바이더 리스트에서 설정해 주면 됩니다.



공급자옵션에서, 각 옵션의 의미는 다음과 같습니다.

- 동적매개변수
0이 아니면 공급자에서 매개 변수화된 쿼리에 대해 '?' 매개 변수 표식 구문을 허용한다고 나타냅니다. 이 옵션은 공급자가 ICommandWithParameters 인터페이스를 지원하고 '?'를 매개 변수 표식으로 지원하는 경우에만 설정하십시오. 이 옵션을 설정하면 SQL Server가 공급자에 대해 매개 변수화된 쿼리를 실행하도록 합니다. 공급자에 대해 매개 변수화된 쿼리를 실행할 수 있어서 일부 쿼리의 경우 성능이 향상될 수 있습니다.

- 중첩쿼리
0이 아니면 공급자에서 FROM 절의 SELECT 중첩문을 허용한다고 나타냅니다. 이 옵션을 설정하면 SQL Server에서 FROM 절의 SELECT 중첩문을 요청하는 공급자에게 일부 쿼리를 위임할 수 있습니다.

- InProcess 허용
0이 아니면 SQL Server에서는 공급자가 종속 프로세스 서버로 인스턴스화되도록 합니다. 이 옵션이 레지스트리에 설정되어 있지 않으면 기본 동작은 SQL Server 프로세스 외부에서 공급자를 인스턴스화합니다. SQL Server 프로세스 외부에서 공급자를 인스턴스화하면 공급자에 있는 오류로부터 SQL Server 프로세스를 보호할 수 있습니다. 공급자가 SQL Server 프로세스 외부에서 인스턴스화되면 긴 열(text, ntext 또는 image)을 참조하는 업데이트나 삽입은 허용되지 않습니다.

- 트랜잭션 처리된 업데이트 아님
0이 아니면 ITransactionLocal을 사용할 수 없어도 SQL Server에서 업데이트를 허용합니다. 이 옵션이 사용되면 공급자가 트랜잭션을 지원하지 않으므로 공급자에 대해 업데이트를 복구할 수 없습니다.

- 엑세스 경로인 인덱스
0이 아니면 SQL Server에서는 공급자 인덱스를 사용하여 데이터를 반입하려고 시도합니다. 기본값으로 인덱스는 메타 데이터에만 사용되며 열리지 않습니다.

- 임시 액세스 허용 안함
0이 아닌 값이 설정되어 있으면 SQL Server에서는 OLE DB 공급자에 대해 OpenRowset()OpenDataSource() 함수를 사용하여 임의 액세스를 허용하지 않습니다. 이 옵션이 설정되어 있지 않으면 기본 동작은 OpenRowset OpenDataSource를 허용합니다.



09-linkedserver-1.png
09-linkedserver-2.png

SQL Server 2000 - 나만의 노하우 & Tip

다음 문서는, SQL Server 2000 관련해서 공개 팁중 각 분류별 유용한 팁을 정리해 놓은 PDF 파입니다.

배포는 Microsoft 에서 하고 있으며, 2005년 한국데이터베이스진흥센터 주최 SQL Server 나만의 노하우 공개 페티스벌 이벤트를 통해서 수집되어진 자료를 기반으로 한국데이터베이스 진흥센터 승인하에 제작된 문서라고 합니다.

문서발행이 2006년 11월인데요,. 현재 SQL Server 2005 버젼이므로 이미 관련 팁은 수 많은 웹사이트에 공개가 많이 되어 있을것입니다.


다운로드:

http://download.microsoft.com/download/6/8/f/68f15f44-e957-4a1a-
97b8-b7444e4d0379/MyKnowhow,Tips_SQL_Server_2000.pdf



세미나 같은게 참석하시면 가끔식 MS에서 나눠주기도 합니다.^^

2007년 8월 9일 목요일

NETLOGON / ID: 5719

이벤트 형식: 오류
이벤트 원본: NETLOGON
이벤트 범주: 없음
이벤트 ID: 5719
날짜: 2007-07-03
시간: 오전 4:00:52
사용자: N/A
컴퓨터:
설명:
다음 이유로 중부지역본부 도메인에 사용할 수 있는 도메인 컨트롤러가 없습니다.
RPC 서버를 사용할 수 없습니다. .
컴퓨터가 네트워크에 연결되어 있는지 확인한 후 다시 시도하십시오. 문제가 지속되면 도메인 관리자에게 문의하십시오.

자세한 정보는 http://go.microsoft.com/fwlink/events.asp에 있는 도움말 및 지원 센터를 참조하십시오.
데이터:
0000: 17 00 02 c0 ...À

찾아보니까 레지스트리편집기를 잘못 만져서 그렇다고 하는데요..
레지스트리는 만진적이 전혀 없거든요~
레지스트리를 잘못만져서 그런게 맞는지 좀 알려주세요~
누가 원격으로 들어와서 만졌을 가능성도 있기는 하거든요~

SQL Server 블로킹,병목현상,트레이스,서버상태 분석툴 - SQL Nexus

SQL Nexus는  SQL Server 에 대해서

- Blocking & Wait Statistics
- Bottleneck Analysis
- Profiler Trace Analysis
- Realtime Server Status


분석기능을 지원하는 Freeware 입니다.  프리웨어 치고는 기능과 UI가 상용툴 수준과 흡사하게 꽤 돋보입니다.

http://sqlnexus.net/

이툴은, 닷넷프레임워크 2.0 기반이며 설치배포는 닷넷의 웹을 통한 소프트웨어 배포기능인 ClickOnce 를 통해서 설치가 가능합니다.




기능중에 Email 전송기능이 있는데요,. 요건 Microsoft Office Word 가 설치되어 있어야 가능합니다. 워드의 닷넷 어셈블리를 이용하는 지라.. -_-;

데이터베이스내 테이블 사용량 체크 - dba_spaceused

다음 스크립트는,. 해당 데이터베이스내 테이블별 사용량 체크를 하도록 하기 위한 사용자 저장프로시져 스크립트 일부 입니다.

스크립트:
http://www.novicksoftware.com/Articles/sql-server-table-space-reporting-sp_spaceused.htm
http://www.novicksoftware.com/Articles/dba_spaceused.zip

DECLARE @Tab sysname -- table name
      , @Sch sysname -- owner,schema

DECLARE TableCursor CURSOR FOR
    SELECT [SCHEMA], TabNAME
         FROM #tables

OPEN TableCursor;
FETCH TableCursor into @Sch, @Tab;

WHILE @@FETCH_STATUS = 0 BEGIN

 SELECT @sql = 'exec [' + @SourceDB
    + ']..sp_executesql N''insert #TabSpaceTxt exec sp_spaceused '
    + '''''[' + @Sch + '].[' + @Tab + ']' + '''''''';

 Delete from #TabSpaceTxt; -- Stores 1 result at a time
 EXEC (@sql);

    INSERT INTO #TabSpace
 SELECT @Sch
      , [TabName]
         , convert(bigint, rows)
      , convert(numeric(18,3), convert(numeric(18,3),
          left(reserved, len(reserved)-3)) / 1024.0)
                ReservedMB
      , convert(numeric(18,3), convert(numeric(18,3),
          left(data, len(data)-3)) / 1024.0) DataMB
      , convert(numeric(18,3), convert(numeric(18,3),
          left(index_size, len(index_size)-3)) / 1024.0)
                 Index_SizeMB
      , convert(numeric(18,3), convert(numeric(18,3),
          left(unused, len([Unused])-3)) / 1024.0)
                [UnusedMB]
        FROM #TabSpaceTxt;

 FETCH TableCursor into @Sch, @Tab;
END;

CLOSE TableCursor;
DEALLOCATE TableCursor;


프로시져는 exec dbo.dba_spaceused 를 실행하면 테이블별 사용량 체크가 가능합니다.^^




물론,. 이러한 통계는 EM 의 작업창 - 테이블 정보에서도 확인이 가능한 부분이기도 합니다만 스크립트의 장점은 SQL 에이젼트등을 이용한 정기적인 체크등 추가적인 작업이 가능한 이점이 있습니다.



08-mssql_table_used.png

2007년 8월 8일 수요일

MssCi / ID: 4106

오류 2147942408 때문에 c:\program files\microsoft sql server\mssql\ftdata\sql0000800005\build\indexer\cifiles에서 마스터 병합을 다시 시작할 수 없습니다.

웹캐시,웹가속기,프록시 - Squid for Windows

http://www.squid-cache.org/ 는 웹가속을 위한 케시를 지원하는 프록시서버 입니다. Windows 분야에서는 ISA 서버가 있기는 합니다만,. 우리나라에서는 잘 쓰이질 않죠.. -_-;

리눅스계열에서는 Squid 가 꽤 쓰입니다. 접속자가 작은 중소규모 웹사이트 크게 개선효과가 없으나 대용량 접속을 호스팅하는 웹서버에서는 아주 큰 효과가 있습니다.^^

특히나,. 동적컨텐츠보다는 고정컨텐츠가 많을수록 그 효과는 커지는데요,. 웹서버에서 처리할때 여러과정을 거치게 되서 속도가 느려지는 부분을 과정 단순화를 통해서 개선을 하는 것입니다.

공식사이트는 위 주소이고, Windows 용은 다음 사이트에서 다운로드가 가능합니다.

http://www.acmeconsulting.it/SquidNT/

완전한 서비스형태로 운영이되며, Windows 만의 여러가지 인증방식 또한 지원을 합니다. ^^

설치 방법은 매우 쉬우나 conf 파일 설정에 수많은 옵션이 주워지므로 설정이 조금 까다롭기는 합니다만,. 기본옵션으로 운영하면서 해당 사이트 특성에 맞게 옵션을 조정해주면 됩니다.

요거를 굳이 Windows 머신에서 돌릴필요가 있는지는 의문이고,. Linux 기반과의 성능차가 분명 있을진데 그 차이는 모르겠네요.. -_-;

네트워크 대역폭 측정 유틸 - iperf.exe

http://dast.nlanr.net/Projects/Iperf 는 네트워크 구간에 있는 2대의 호스트간 네트워크 대역폭 측정을 해볼수 있는 유틸입니다.

이를테면,. 원격지에 서버가 있고,. 클라이언트 컴퓨터에서 서버와 클라이언트간에 얼마만큼의 대역폭이 가능하지 테스트 해볼수가 있습니다.

프로그램 사용법은,. 매우 다양한 옵션을 지원하기는 하나 간단하게 테스트 해볼수 있습니다.

방법은 서버측에 아래와 같이 프로그램을 실행해 놓은 다음에 클라이언트 측에서도 아래와 같이 프로그램을 실행하면 됩니다.


원격지서버> iperf -s
------------------------------------------------------------
Server listening on TCP port 5001
TCP window size: 60.0 KByte (default)
------------------------------------------------------------
[  4] local <IP Addr node2> port 5001 connected with <IP Addr node1> port 2357
[ ID] Interval       Transfer     Bandwidth
[  4]  0.0-10.1 sec   6.5 MBytes   5.2 Mbits/sec


클라이언트> iperf -c 원격지서버
------------------------------------------------------------
Client connecting to node1, TCP port 5001
TCP window size: 59.9 KByte (default)
------------------------------------------------------------
[  3] local <IP Addr node1> port 2357 connected with <IP Addr node2> port 5001
[ ID] Interval       Transfer     Bandwidth
[  3]  0.0-10.0 sec   6.5 MBytes   5.2 Mbits/sec


다운로에 첨부된 설명서에 프로토콜별,IPV4,6 나 포트지정, 측정크기나 간격등 다양한 옵션에 대해서 설명되어 있으니 참고해 보세요.^^


2007년 8월 7일 화요일

Microsoft SQL Server 2005 JDBC 드라이버

상호 운용성에 대한 끊임 없는 노력의 일환으로, Microsoft는 SQL Server 2005용 새 JDBC(Java Database Connectivity) 드라이버를 출시하였고 이를 지원합니다.

SQL Server 2005 JDBC 드라이버는 추가 비용 없이 모든 SQL Server 사용자가 다운로드할 수 있으며, Java 응용 프로그램, 응용 프로그램 서버 또는 Java 사용 애플릿에서 SQL Server 2000 및 SQL Server 2005에 대한 액세스 권한을 제공합니다.

이 드라이버는 J2EE(Java2 Enterprise Edition)에서 사용 가능한 표준 JDBC API(응용 프로그래밍 인터페이스)를 통해 데이터베이스 연결을 제공하는 Type 4 JDBC 드라이버입니다.

http://go.microsoft.com/fwlink/?LinkId=82746

Microsoft SQL Server 2005 명령줄 쿼리 유틸리티 - SQLCMD

SQLCMD 유틸리티를 사용하면 Transact-SQL에 연결하고 Transact-SQL 일괄 처리를 전송하여 SQL Server 7.0, SQL Server 2000 및 SQL Server 2005 인스턴스에서 행 집합 정보를 출력할 수 있습니다.

SQLCMD는 ISQL과 OSQL의 대체용 유틸리티이긴 하나, ISQL 또는 OSQL과 함께 설치할 수 있습니다.

참고: Microsoft SQL Server 2005 명령줄 쿼리 유틸리티에는 Microsoft SQL Server 네이티브 클라이언트가 필요합니다(이 페이지에서도 다운로드 가능함).


X86 패키지(SQLServer2005_SQLCMD.msi) - 2535KB
http://download.microsoft.com/download/9/d/a/9da2c9c3-3638-4688-86db-b7eb390e299a/
SQLServer2005_SQLCMD.msi


X64 패키지(SQLServer2005_SQLCMD_x64.msi) - 4273KB
http://download.microsoft.com/download/9/d/a/9da2c9c3-3638-4688-86db-b7eb390e299a/
SQLServer2005_SQLCMD_x64.msi



Microsoft SQL Server 2005 이전 버전과의 호환성 구성 요소

SQL Server의 이전 버전과의 호환성 패키지에는 최신 버전의 DTS(데이터 변환 서비스) 2000 런타임, SQL-DMO(SQL 분산 관리 개체), DSO(의사 결정 지원 개체) 및 SQLVDI(SQL Virtual Device Interface)가 포함되어 있습니다.

이러한 버전은 SQL Server 2005와의 호환성을 위해 업데이트되었으며 SQL Server 2000 SP4를 통해 배포된 수정 사항이 모두 포함되어 있습니다.

X86 패키지(SQLServer2005_BC.msi) - 11258KB
http://download.microsoft.com/download/9/d/a/9da2c9c3-3638-4688-86db-b7eb390e299a/
SQLServer2005_BC.msi


X64 패키지 (SQLServer2005_BC_x64.msi) - 18552KB
http://download.microsoft.com/download/9/d/a/9da2c9c3-3638-4688-86db-b7eb390e299a/
SQLServer2005_BC_x64.msi

Microsoft SQL Server 2005 네이티브 클라이언트

Microsoft SQL Server 네이티브 클라이언트(SQL 네이티브 클라이언트)는 SQL OLE DB 공급자와 SQL ODBC 드라이버를 포함하는 단일 DLL(동적 연결 라이브러리)입니다.

여기에는 네이티브 코드 API(ODBC, OLE DB 및 ADO)를 사용하여 Microsoft SQL Server 7.0, 2000 또는 2005에 연결하는 응용 프로그램에 대한 런타임 지원이 포함되어 있습니다.

SQL 네이티브 클라이언트는 새로운 SQL Server 2005 기능 활용에 필요한 새로운 응용 프로그램을 작성하거나 기존 응용 프로그램을 향상시키는 데 사용됩니다.

SQL 네이티브 클라이언트에 대한 이러한 재배포 가능 설치 관리자는 새로운 SQL Server 2005 기능을 활용하기 위해 런타임에 필요한 클라이언트 구성 요소를 설치하고, SQL 네이티브 클라이언트 API를 사용하는 응용 프로그램을 개발하는 데 필요한 헤더 파일을 설치하기도 합니다.

X86 패키지(sqlncli.msi) - 3516KB
http://download.microsoft.com/download/9/d/a/9da2c9c3-3638-4688-86db-b7eb390e299a
/sqlncli.msi


X64 패키지(sqlncli_x64.msi) - 6403KB
http://download.microsoft.com/download/9/d/a/9da2c9c3-3638-4688-86db-b7eb390e299a
/sqlncli_x64.msi


MOM 2005용 Microsoft SQL Server 관리 팩

Microsoft SQL Server 관리 팩을 사용하면 기업 환경에서 SQL Server 2005 및 SQL Server 2000을 모니터링할 수 있습니다.

리소스 가용성과 구성 모니터링, 성능 데이터 수집 및 기본 임계값 테스트를 수행할 수 있도록 기업 수준의 기능이 포함되어 있습니다. 로컬 및 원격 연결성을 검사하여 데이터베이스 가용성을 확보할 수 있습니다.

SQL Server 관리 팩에 포함된 관련 지식을 갖추면 문제 발생 시 상황이 심각해지기 전에 문제를 파악하여 해결할 수 있습니다. 이 관리 팩은 SQL Server 인프라의 보안, 가용성 및 성능을 강화시킵니다.
동봉된 Microsoft SQL Server 관리 팩 사용 설명서에서는 관리 팩의 내용과 배포 방법에 대해 설명합니다.

http://go.microsoft.com/fwlink/?LinkId=82747

Microsoft OLE DB Provider for DB2

Microsoft OLE DB Provider for DB2는 IBM DB2 데이터베이스에 저장된 중요 데이터를 Microsoft SQL Server 2005 Enterprise Edition 및 Developer Edition 기반의 새로운 솔루션과 통합하기 위한 COM 구성 요소입니다.

SQL Server 개발자 및 관리자는 Integration Services, Analysis Services, 복제, Reporting Services 및 분산 쿼리 프로세서와 함께 이 공급자를 사용할 수 있습니다. 자동 압축 풀기 다운로드 패키지를 실행하여 설치 폴더를 만듭니다.

단일 설치 프로그램으로 x86, x64 및 IA64 컴퓨터에 공급자 및 도구를 설치합니다. 이 패키지는 통합 서비스 팩 1의 형식으로 제품 업데이트를 포함하고 있습니다. 자세한 내용은 설치 지침 및 추가 정보 파일을 참조하십시오.

대상: 고객, 개발자

http://download.microsoft.com/download/9/d/a/9da2c9c3-3638-4688-
86db-b7eb390e299a/DB2OLEDB.exe

MSXML(Microsoft Core XML Services) 6.0

MSXML(Microsoft Core XML Services) 6.0은 최신 버전의 네이티브 XML 처리 스택입니다. MSXML 6.0을 사용하여 표준을 준수하는 XML 1.0, XSD(XML 스키마) 1.0, XPath 1.0 및 XSLT 1.0을 구현할 수 있습니다. 또한 64비트를 지원할 뿐 아니라 신뢰할 수 없는 XML 데이터 작업 시 보안이 강화되었고 이전 버전의 MSXML에 대한 안정성도 향상되었습니다.

대상: 파트너, 개발자

http://go.microsoft.com/fwlink/?LinkId=3999

2007년 8월 4일 토요일

W3SVC-WP / ID: 2269

작업자 프로세스가 http.sys 통신 또는 w3svc 통신 레이어를 초기화하지 못했으므로 시작하지 못했습니다. 데이터 필드에 오류 번호가 있습니다

2019년 12월 MS 취약점 패치 주요 사항

서버 관련 주요 중요 취약점 CVE-2019-1470 | Hyper-V 정보 유출 취약성 https://portal.msrc.microsoft.com/ko-KR/security-guidance/advisory/CVE-2019-1470 CVE...