반응형
작년 말(?), 회사다닐 때 일입니다.
'포스트잇' 같은 메모 프로그램을 써볼까 싶어서~ 회사 PC 에 'N'모 라는 프로그램을 설치했습니다.
잠깐 써보니 인터페이스도 조금 불편하고, 이것저것 마음에 들지 않아서 바로~ 제거를 했죠;;
물론~ 프로그램 설치할 때 제공된 해당 프로그램의 '언인스톨러' 를 실행시켰습니다~
그리곤 기분 전환겸 재부팅을 했는데 =_=;; PC 상태가 약~~간 이상하더군요;;;
백신 / 방화벽이 시작되지도 않고, 트레이에 아이콘들도 안보이고~~
일시적인 현상이려나 싶어서~ 다시 재부팅... 그래도 그 이상한 상태 그대로더군요.
'시작프로그램' 쪽이 조금 이상해진건가 싶어서 아래의 키들을 살펴봤습니다.
HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
살펴보던 순간 등에서 식은땀이 흐르던 기억은 아직도 생생하네요..;;;
분명히 있어야 할.. "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run" 키가 없었습니다.
"Run" 키에 이상한 값이 있는지 없는지 판단할 수는 있어도, 기록된 값들을 외우진 못했는데.. 한방 먹었죠;;;
급한대로 백신 / 방화벽, 디스플레이 드라이버는 새로 설치하고, OS 차원에서 등록된 키는...
옆에 분 PC 의 레지스트리 참고해서 복사하고... 한 30분 가량~ 삽질을 했었네용..;;;
=_=;; 어제... 집에 있는 개인 PC 에서 안쓰는 프로그램들 정리하던 중에 이 사건이 또 터졌습니다...;;
참 난감하더군요... 참고할 다른 PC 도 없고, 프로그램 삭제 후 다시 설치하는 건 시스템이 지저분해지고;;;
결국 포맷을 하게 만들더군요...=_=;;
( 참고로 어제는 'M' 모사의 'C~~~S~~' 라는 컨텐츠 보호 프로그램 때문이었습니다. )
생각난 김에~~ 문제의 '언인스톨러' 코드를 봤습니다...
< 그림. 01> 언인스톨러의 레지스트리 제거 코드
간단하게 코멘트를 달아보면..
RegDeleteKeyA() 는 인자로 ESI, EBX 값을 사용하는데... 이 값들은 각각 아래와 같습니다.
ESI = 0x9B89C0 : "SOFTWARE\Microsoft\Windows\CurrentVersion\Run"
EBX = HKEY_LOCAL_MACHINE
RegDeleteKeyA(HKEY_LOCAL_MACHINE, "SOFTWARE\Microsoft\Windows\CurrentVersion\Run");
"Run" 키 자체를 날려버리는군요... ( 원래는 키안의 값을 찾아서 그 값만 지워야되는데 말이죠...;;; )
이게, 설치파일 패키지를 묶을 때, 삭제부분 설정을 잘못해서 이런건지,
설치 프로그램에서 제공되는 언인스톨러 자체에 버그가 있던건지는 모르겠습니다만...
당해보면 심히 난감합니다... =_=;;;
... 뭔가 작업을 할 때는, " 테스트를 확실하게 해야겠구나~!! " 하고 느끼게해준 사건이었습니다..ㅋ
제가 만들고 뿌리는 프로그램에서 요런 문제가 발생하면 안되니깐요...
반응형
'Reverse Engineering' 카테고리의 다른 글
같은 명령어, 다른 헥사코드~? (4) | 2011.02.13 |
---|---|
Windows7 에서의 올리디버거 플러그인 셋팅~ (2) | 2010.03.27 |
3rd 코드엔진(CodeEngn) 컨퍼런스~!! (18) | 2009.06.24 |
간단한 안티-덤프 트릭~ ( LordPE, OllyDBG, etc... ) (6) | 2009.02.26 |
Anti-Unpacker Tricks ( by Peter Ferrie ) (3) | 2009.02.25 |