계산기 커스터마이징




오랫만에 리버스 엔지니어링 관련 글을 쓰게 되는 것 같네요 ^^;

오늘의 주제는 1byte Patch 입니다.
저희팀에서 같이 일하는 haru 라는 분이 예전에 간단히 만든건데요.
간단하면서도 나름 재미있는 부분이라 한번 설명해 보겠습니다.

윈도우즈의 계산기 calc 많이들 사용하시죠.

특히 개발자나 리버서들은 16진수 사용이 필수이기 때문에 보기 - 공학용 으로 변경하셔서
많이 사용하시곤 합니다.

사용자 삽입 이미지


근데 공학용 으로 셋팅을 바꾸면 윈도우즈에서 그 설정값을 기억하고 있기 때문에
계속 저런 모양이 되지만

16진수인 Hex 를 선택해도 종료한 뒤 다시 실행하면 Dec 로 바뀌어져 버립니다.
그래서 실행할때 마다 Hex로 바꾸어야 하는....
졸~~ 짜증나죠  ㅅㅂ

그래서 계산기 Dialog 가 셋팅될때 라디오버튼을 아예 Hex가 디폴트가 되도록 바꾸는 방법이
있습니다. 그 방법은? 초기화 코드에서 처음에 UI 설정을 할 때 10진수로 라디오버튼을 셋팅하는
부분을 16진수로 바까버리는 방법입니다.

그 부분을 한번 뜯어가 볼까요.

아래 이미지를 보시면 UI 초기화 루틴인데요,  0x1001DCD 번지의 콜문을 보세요.

사용자 삽입 이미지



여기가 계산기 진법 셋팅하는 루틴입니다. 인자는 진수고요. 인자를 esi에 넣고,
esi를 2, 8, 10, 16과 각각 비교하는 코드가 보입니다. 그 숫자는 2진법, 8진법, 10진법, 16진법에
대한 숫자겠죠 :)



사용자 삽입 이미지


그러므로 0x1001DCB에 들어가는 push 0Ah 를 push 10h 로 변경시켜주면
매번 16진수로 셋팅이 되어서 실행이 되겠죠 0x0A 를 0x10 으로 바꿔주기만 하면 됩니다.
간단한 1 byte patching 이죠 :p

아주 쉬운 내용입니다. 이것으로 앞으로 매번 실행시마다 16진수가 디폴트인 채로 사용할 수
있겠죠. 다음에는 몇가지 코드를 주입해서 쵸큼 더 지능적으로 바꿔보도록 하겠습니다. :)


window31. 2008년 9월.

Posted by window31


트랙백 보낼 주소 : http://window31.com/trackback/200 관련글 쓰기

댓글을 달아주세요

  1. 2008/09/16 14:29
    댓글 주소 수정/삭제 댓글
    오옷..계산기 사용하면서 불편하다 생각은 했지만
    패칭해볼 생각은 안해봤었네요ㅠㅠ

    좋은정보감사합니다.
    바로 계산기 패칭한 ㅎㅎ
    • 2008/09/18 02:11
      댓글 주소 수정/삭제
      아랫 분이 한겁니다 ㅎ
      2부는 곧.
  2. 하루
    2008/09/17 08:43
    댓글 주소 수정/삭제 댓글
    ㅊㅈ다!!
    • 2008/09/18 02:10
      댓글 주소 수정/삭제
      자화자찬이냐 ;
  3. 2008/09/17 11:18
    댓글 주소 수정/삭제 댓글
    정작 나같은 사람은 계산기 파일을 어떻게 저런 코드로 열 수 있는지 조차 모른다는...ㅠㅠ(acroedit 같은걸로 여니 이상한 글자만 나와--ㅋ)
    • 2008/09/18 02:10
      댓글 주소 수정/삭제
      머 형은 저런거 안 열어도 돈 마니 버시자나요 ㅎㅎ
  4. neo
    2008/09/19 11:07
    댓글 주소 수정/삭제 댓글
    오~~
    별 생각 못하고 있었는데...

    저도 오늘 출근 하자 마자 해버렸다는...

    멋진 blog 잘 보고 있습니다.

    몰래몰래 눈팅하던.. 나그네 1인.ㅡㅡ
    • 2008/09/21 18:23
      댓글 주소 수정/삭제
      별거 없는 블로그 방문해 주셔서 감사합니다 ^^;
      2부를 써야 하는데 귀차니즘의 압뷁 ;
  5. BlackMusic
    2008/10/12 08:22
    댓글 주소 수정/삭제 댓글
    주인장님 잘봤습니다.^_^)^

    제 블로그에 출처를 남기고 가져가도 되나요..?
    • 2008/10/15 00:53
      댓글 주소 수정/삭제
      네~ 출처만 있다면 어디든 퍼가셔도 괜찮습니다.
      별 대단한 글도 아닌데요 몰..ㅎ

[서적] 리버스엔지니어링 : 역분석 구조와 원리




서적 출간 소식입니다.
국내에서도 리버싱을 full 로 다룬 첫 서적이 나올 것 같네요 ^^

http://simples.co.kr/ 에서 esniper 님께서 리버싱관련 서적을 다음달 초에 내신다고 합니다.
아래는 목차고요. 목차에 대해 어느 보안 포럼에서는 이렇다 저렇다 논란 이 있긴 하지만
아직 알맹이도 보지 못한 상황에서 내용에 대해 왈가불가 하는 것 보다 리버싱 전문 서적의
첫 출간이라는 것에 더 큰 의의를 두어야 하지 않을까 싶네요.

(목차를 보며 그나마 할 수 있는 얘기는 코드 한줄한줄에 대한 Tracing 보다는
리버싱이라는 것을 다룰 때 포괄적으로 알아야 할 지식과 개념, 용어, Tool 등을
정리해놓았다는 생각이 정도? )

리버싱에 관심 있으신 분들 한권씩 지르세요 ^^;
리버싱 잘하시는분들도 지르세요ㅎㅎ 인식이 많이 높아지긴 했지만 리버싱은 아직도 희귀학문에
속하는 지라 "C++ 일주일이면 쵸큼 잘하게 된다" 이딴 책보다는 아무래도 매출이 적을테니
훌륭한 책을 널리 알리는데 다들 공헌해야 한다고 봅니다 :)

---------------------------------

1장 리버스엔지니어링에 대하여

1 리버스엔지니어링이란 무엇인가?

2 크래커에 의한 피해사례, 개발자들이 주의할 부분

3 리버스엔지니어링의 전망과 취업

4 리버스엔지니어링 관련 법률

5 라이센스 정책에 대한 정리


2장 리버스엔지니어링을 위한 기초지식

1. 올리디버거(OllyDBG) 설정 및 사용법

2. Jump구문제어 문제풀이

3. CPU레지스터와 어셈블리언어, 진수변환

  3-1. 진수변환

  3-2. CPU 레지스터

  3-3. 어셈블리 언어

  3-4. 상황별 어셈블리 명령어

4. WinApi 분석을 통한 문제풀이

5. 메뉴얼 Unpack과 Back To User모드

6. 키젠(KeygenMe)문제풀이를 통한 스택과 콜링컨벤션의 이해

7. KeyFile체크문제풀이와 바이너리 수정

8. NAG제거 문제를 통한 PE구조의 이해


3장 리버스엔지니어링 관련 툴

1. 툴을 사용하는 것에 대하여

2. 시스템 모니터링 툴(System-Monitoring Tools)

2-1. Filemon

2-2. Regmon

2-3. TcpView

2-4. Procexp

3. 디스어셈블러(Disassemblers)

3-1. IDA 설치 (Install)

3-2. 메뉴구성과 IDA 사용방법

3-3. 디버깅 (Debugging)

3-4. IDA에서 For문 분석하기

3-5. IDA에서 if문 분석하기

3-6. 크로스레퍼런스 기능과 지뢰찾기 분석

4. 디컴파일러(Decompilers)

4-1. 플래쉬 디컴파일러(sothink SWF Decompiler)

4-2. 닷넷 프로그램 디컴파일러(Reflector)

4-3. 델파이 디컴파일러(DeDe)

4-4. 자바 디컴파일러(JAD)

5. 메모리패치(Memory Patch)

5-1. 티서치(TSearch)

5-2. 치트엔진 (Cheat Engine)

6. 바이너리분석(Binary Analysis)

6-1. PEiD

6-2. 리소스해커

6-3. Strings

6-4. Dependency Walker와 DumpBin

7. 언패커(Unpacker)

7-1. Universal Extractor

7-2. VMUnpacker

8. 리빌더 (Rebuilder) - ImpRec

9. 헥스에디터(Hex-editors) - XVI32와 QuickBe

10. 루트킷탐지(Rootkit Detection)

10-1. GMER

10-2. IceSword

11. 네트워크 모니터링 툴(Network-Monitoring Tool) - Wireshark

12. 가상머신 (Virtual Machine)

12-1. Vmware

12-2. VirtualBox


4장 악성코드 분석

1. 악성코드란?

1-1. 파일 바이러스

1-2. 웜

1-3. 트로이 목마

1-4. 백도어

1-5. 스파이웨어

2. 악성코드 감염경로

2-1. 메신저에서의 파일 전송

2-2. 이메일에서 파일 다운

2-3. 의심스러운 사이트에서의 Activex 설치

2-4. P2P 사이트에서의 파일 다운

2-5. 인터넷에서 감염된 파일 다운

4.3 악성코드 분석 (IRC Bot) 


5장 안티디버깅(Anti Debugging)

01. 안티디버깅이란?

02. 안티디버깅의 종류

03. IsDebuggerPresent

04. Microsoft Visual Studio 2005 에서 컴파일 및 실행

05. Microsoft Visual Studio 6.0 에서 컴파일 및 실행

06. IsDebuggerPresent 우회방법

07. IsDebugged

08. IsDebugged 우회방법

09. NtGlobalFlags

10. NtGlobalFlags 우회방법

11. CheckRemoteDebuggerPresent

12. CheckRemoteDebuggerPresent 우회방법

13. FindWindow

14. FindWindow 우회방법


-----------------------------

개인적인 생각이지만, 사실 리버싱 글을 쓰기가 어려운 이유는
target 을 잡기가 힘들기 때문이라고 생각합니다.
無 에서부터 시작하는 일반 프로그래밍과는 달리, 리버싱은 분석을 당할 대상이 반드시 필요하고.




그래서 대상을 선정하기 어렵고, 리버싱 하기 위해 ㅄ될 플그램을 직접 몇개 맹글어야 하고
하지만 리버싱하는거보다 코딩하는게 더 귀찮을 때가 있고
그리고 웬지 사람들 눈에는 UI도 제대로 없는 추리한 애플리케이션보다는
누구나 아는 익숙한 프로그램을 리버싱해주길 원하고
뭐 그런 ㅈ같은 현실 때문에 글 쓰는것, 그리고 크리티컬한 분석내용과 코멘트를 작성하는 것
이매우 힘든 것 같습니다.

이 서적을 쓰신 작가분도 그러한 고민을 하지 않았을까 하고 생각되네요.
리버싱이 P2P 프로그램 속도패치나 상용 S/W 시리얼 크랙 에만 이용되지 않고
좀더 전문적인 학문이 되려면 이같은 작가의 고민이나 현실적인 문제가 좀더 극복되어야 할 것
같습니다.




Posted by window31


트랙백 보낼 주소 : http://window31.com/trackback/195 관련글 쓰기

댓글을 달아주세요

  1. 2008/08/25 18:26
    댓글 주소 수정/삭제 댓글
    예전에 한번 툴 사용에 대해 적어놓은 국내 해킹 책을 본 것 같은데, 살짝 그런 느낌이 나는군요. ^^
    나중에 하나 사봐야겠습니다. ^^
    • 2008/08/27 23:49
      댓글 주소 수정/삭제
      ㅎㅎ 까마귀님도 홈브류 책 하나 내주세요
  2. 2008/09/01 22:12
    댓글 주소 수정/삭제 댓글
    헉... 쓰는건 둘째치고 저작권에 걸리지나 않을까 모르겠군요. ㅠㅠ
    ㅎㄷㄷㄷ
    • 2008/09/08 22:57
      댓글 주소 수정/삭제
      아! 그렇군요 ㅎㅎ
  3. 2008/10/14 15:02
    댓글 주소 수정/삭제 댓글
    리버싱쪽으로 관심이 많았었는데...

    한번 사봐야 겠어요 ㅋ
    • 2008/10/15 00:58
      댓글 주소 수정/삭제
      네. 간장게장 저도 참 좋아하는데 사먹어야겠어요.

Reverse Engineering 강의.



사용자 삽입 이미지
 

모 대학 컴퓨터시스템학과 학생들을 대상으로 리버싱 강의 요청이 와서
모교도 아니고 아무 상관없는 사람이지만 어쩌다가 강의를 하게 되었습니다.
저같은넘이 대학강단에 서보다니 학생들의 불운이 시작될거라고 제 친구가 그러는군요 ㅎㅎ
(음 날짜가 어제였는데, 3/15로 되어있네 타이핑 미스 ;; )

3시간이 넘는 강의였는데 그래도 조는 학생들 한명 없이 눈도 똘망똘망하게 뜨고 잘 경청해줘서
감사 드립니다. 질문도 많이 해 주셔서 고맙고요.

강의자료와 사용 툴, 바이너리는(공격코드 제외) 교수님을 통해 전달해드리도록 하겠습니다.


Posted by window31


트랙백 보낼 주소 : http://window31.com/trackback/145 관련글 쓰기

댓글을 달아주세요

  1. 2008/03/23 13:44
    댓글 주소 수정/삭제 댓글
    오오 대학강의!!
    저도 좀 해주세요 ㅋ_ㅋ)/
    • 2008/03/23 21:41
      댓글 주소 수정/삭제
      다음에 도강 하세요 :p
  2. 리미
    2008/03/23 14:12
    댓글 주소 수정/삭제 댓글
    조는 사람이 없었다니, 대단한 명강의였나봅니다.+_+
    • 2008/03/23 21:42
      댓글 주소 수정/삭제
      교수님이 뒤에서 눈을 부라리고 앉아있었기 때문에 아닐까요 ㅋ
  3. 2008/03/23 19:52
    댓글 주소 수정/삭제 댓글
    멋지다~~
    담학기부터 고정으로 하면 좋겠다~~
    • 2008/03/23 21:49
      댓글 주소 수정/삭제
      제가 머 정식 강사도 아니고 -_- 걍 필요할 때 쓰는 조커같은 겁니다. :p
  4. 2008/03/23 20:11
    댓글 주소 수정/삭제 댓글
    세시간 씩이나.. 목이 많이 아프셨겠네요.
    전 1시간 정도 세미나만 해도 목이 아파서 걸걸해 지던데..
    자료는 비공개 인가요?
    • 2008/03/23 21:46
      댓글 주소 수정/삭제
      네 중간에 한 십여분 쉬었어요 : )
      에피소드 하나,, 누군가 준비해준 얼음주스 마시면서 했는데, 중간에 한번 평소의 버릇처럼
      아무생각 없이 얼음을 입에 넣고 씹으며 "우둑우둑 자 그럼 이 코드를 보시면요...아 죄송합니다" OTL
      자료는 회사 인사팀 끼고 컨펌 받은거라 제 맘대로 뿌려도 되는지 모르겠네요 ;;
      (머 사실 별 내용 없기도 합니다 ㅋ)
  5. 2008/03/24 02:00
    댓글 주소 수정/삭제 댓글
    와우~ 멋지십니다. ^^)/~
    부럽네요~ >ㅁ<;)/~
    • 2008/03/26 02:21
      댓글 주소 수정/삭제
      감사합니다^^;
  6. 2008/03/24 14:32
    댓글 주소 수정/삭제 댓글
    멋쟁이 당신~~ 떠나라~ =0=;;;
    • 2008/03/26 02:21
      댓글 주소 수정/삭제
      어딜 떠나 -_?
  7. sungmirr
    2008/03/25 05:54
    댓글 주소 수정/삭제 댓글
    그날 강의 정말 최고였습니다. 말씀도 잘하시고, 강의 내용이 워낙 흥미로워서 3시간 넘는시간이 어떻게 갔는지도 모를 정도로 빠르게 갔네요. 정말 괜찮은 영화 한편 본 듯이 여운이 계속 남아요.ㅎㅎ 좋은 선물 감사드리고. 그날 수고많으셨습니다. 질문 너무 많이 해서 죄송하고요..복받으세여~ㅋㅋ
    • 2008/03/26 02:24
      댓글 주소 수정/삭제
      네 어떤 분인지 알 것 같네요 ^^ 질문 많이 해주시면 고맙죠 ㅎㅎ
      좋게 들어 줘서 감사합니다.
  8. 익명의R
    2008/03/25 15:12
    댓글 주소 수정/삭제 댓글
    분명 미모 때문에 안 졸았을꺼야..(중얼중얼)
    • 2008/03/26 02:24
      댓글 주소 수정/삭제
      무슨 소린지 -_-
  9. 2008/03/25 16:58
    댓글 주소 수정/삭제 댓글
    오우~ 강의~~ 쵝오!
  10. kaline
    2008/03/25 21:28
    댓글 주소 수정/삭제 댓글
    저도 그날 강의 들었는데요. 무척 재미있었어요.
    오히려 시간이 너무 빨리가서 아쉬웠다는...
    • 2008/03/26 02:23
      댓글 주소 수정/삭제
      감사합니다 ^^ 지겹지 않았다니 다행이네요 ^^
  11. 2008/03/25 23:10
    댓글 주소 수정/삭제 댓글
    비밀댓글 입니다
  12. 2008/04/07 17:19
    댓글 주소 수정/삭제 댓글
    >ㅁ< 저도 들어보고 싶네요~
    부럽다 ㅠㅠㅎ
    • 2008/04/08 21:12
      댓글 주소 수정/삭제
      다 아는걸 왜 들으려고 하는지 ㅋ
  13. 2008/09/23 19:16
    댓글 주소 수정/삭제 댓글
    비밀댓글 입니다
  14. 2008/11/13 17:46
    댓글 주소 수정/삭제 댓글
    오오오오~~~~~ 저희 고등학교에도 강의를(압박)

내가 제일 싫어하는 코드



핵 드라이버에서 종종 발견되는 코드
정말 이거 싫다
대책이 있을랑가 ㅋ
무슨 코드인지 알만한 분들은 다 아실겁니다 :p
머 이 드라이버 만든 사람도 제 블로그 보고 있을지 모르겟지만 ;;



사용자 삽입 이미지

Posted by window31


트랙백 보낼 주소 : http://window31.com/trackback/119 관련글 쓰기

댓글을 달아주세요

  1. 하루
    2008/02/19 19:29
    댓글 주소 수정/삭제 댓글
    보자 마자 뒷골 땡김 -_-
  2. 2008/02/20 21:36
    댓글 주소 수정/삭제 댓글
    허헛... 예전에 자주 썼던 코드군요. ^^;;; 왠지 반가웠다는... ㅎㅎ
    • 2008/02/22 18:21
      댓글 주소 수정/삭제
      이런, 나쁜짓을 해보셨군요 ㅋ
  3. Dual
    2008/02/21 08:49
    댓글 주소 수정/삭제 댓글
    ㅋㅋ Inline hook bypass같군요.
    • 2008/02/22 18:21
      댓글 주소 수정/삭제
      ㅋㅋ 친절한 해석
  4. 2008/02/22 15:19
    댓글 주소 수정/삭제 댓글
    재밌네요 ㅋㅋ
  5. Dylan
    2008/02/24 01:51
    댓글 주소 수정/삭제 댓글
    UDM 뜯어보신건가 ㅋ
    • 2008/02/24 19:35
      댓글 주소 수정/삭제
      잘 아네 ^^
  6. codediv
    2008/02/24 17:31
    댓글 주소 수정/삭제 댓글
    후훗
  7. 2008/02/25 23:44
    댓글 주소 수정/삭제 댓글
    싫어하실만합니다. ㅎㅎ
    • 2008/02/26 01:29
      댓글 주소 수정/삭제
      블로그 잘 봤습니다 ^^
      OBT 잘하세요 !!
  8. 2008/10/16 21:19
    댓글 주소 수정/삭제 댓글
    제가 생각해본 방법중의 하나로는, internal함수인 KiAttachProcess(); 함수를 후킹해서 protected 프로세스에 접근하려고 하면, 몰래 다른 프로세스로 redirect하는 방식으로 보호를 하면 어떨지 궁금하네요...
    • 2008/10/18 18:00
      댓글 주소 수정/삭제
      Ki 도 + 5 하면요? ^^;
    • 2008/10/18 19:57
      댓글 주소 수정/삭제
      KiAttachProcess()는 바로 호출하면 시스템이 크래쉬되더군요...

      중간에 무슨 CRITICAL_SECTION 개체를 lock하던데...(?) lock 하는것도 undocumented함수라...

      조금 더 힘들겠지요 ㅋㅋ
    • 2008/10/19 05:14
      댓글 주소 수정/삭제
      호출 방법에 문제가 있던 게 아닐까요?
      Ki 를 바로 호출하는 넘을 여러번 봤는데 ^^;
  9. 2008/10/16 21:20
    댓글 주소 수정/삭제 댓글
    N모사의 보안 솔루션에서는 code 블럭 자체를 옮겨버리는 것 같던데...
    조금 무섭네요 ^^;
    • 2008/10/18 18:00
      댓글 주소 수정/삭제
      무섭죠 ^^; n모사에서 어떻게 하는지는 모르겠네요
    • 2008/10/18 19:58
      댓글 주소 수정/삭제
      retn(0xC3) 블럭 까지를 전부 코드를 다른 메모리에 옮겨버린 후, JMP를 후킹 함수로 지정해버리더군요. 우회하지 못하도록...
    • 2008/10/19 05:16
      댓글 주소 수정/삭제
      네 그렇게 해도 위 스타일의 방법은 막을 수가 없는데요 ㅎㅎ
    • 2008/11/13 17:48
      댓글 주소 수정/삭제
      JMP뒤의 코드는 전부 0xCC로 바꿔버리면 우회할 수 없을 것으로 생각됩니다...
    • 2008/11/13 21:46
      댓글 주소 수정/삭제
      연구용으로는 그런 시도를 해볼 수도 있겠지만
      실전에서는 그런 구조로 개발을 할 수가 없어요
      여기를 나만 후킹하고 나만 사용한다면 이런처리가 가능하겠죠.
      연구가 입장에서 왜 그건 이렇게 안하나? 라고 생각하는 상당히 많은 것들을
      현업 개발자들이 몰라서 안하는게 아닙니다. 필드에서는 적용할 수 있는 기술이 있고
      결코 건드려서는 안되는 부분이 존재합니다.
      왜냐면 클라이언트는 너무도 다양하니까요.
      그리고 나랑 똑같은 생각을 가진 똑같은 기술을 만드려는 개발자도 넘쳐나고요.
      10만명의 유저중 10명의 해커를 막으려고 한 짓이
      정상적인 1만명의 실행을 방해할 수도 있습니다.
    • 2008/11/14 00:29
      댓글 주소 수정/삭제
      결국, 제일 마지막 방법이 방법론적에서는 최강임에도 불구하고, 후방 호환성과 안정성을 고려하고 시장성과 효율성에 비추어볼 때, 그 방법을 사용할 수 없는 것이군요.

      말씀을 듣고나니 추가적으로 궁금한 것이 생겼는데요. 그렇다면 이미 GG나 HackShield같은 게임 보안 솔루션을 보면 하나같이 후킹을 하면 죄다 강제 재부팅과 같은 증상을 보이는데, 그런 경우엔 어차피 보안 솔루션 혼자 후킹해서 먹고 살겠다는 거니 마지막 방법을 써도 되는것이 아닌가요? (실제로 GG의 경우 함수의 끝 부분인 RET 명령어 까지의 Code Snippet을 다른 메모리에 옮긴 후, 실제 함수의 첫 부분에 JMP를 삽입시켜두고, 첫 부분을 제외한 RET명령어까지의 부분을 쓰레기 바이트로 채우는것 같더군요. - 이는 제가 위에서 언급한 방법에서 0xCC로 채우는 것을 쓰레기 바이트로 채우는 것이 다를 뿐, 본질적으로 같은 방법으로 보여집니다.)
    • 2008/11/14 01:18
      댓글 주소 수정/삭제
      네. 그래서 처음 그 기술을 만들었을 때 수많은 프로그램들과 문제가 불거졌고
      핵을 쓰지도 않는데 문제가 계속된 애꿎은 유저들만 고생을 했습니다.
      그리고 그 부분은 지금도 논쟁이 되고 있는 것 중 하나고요
      GG가 다른 보안회사들에게 욕을 겁나게 들어먹고 있는 이유에도 포함이 됩니다.
      혼자 먹고 살겠다고 해놓은 그 기술을 아직도 사용하고 있는 이유는
      공개적인 자리에서 남의회사 사정을 밝힐수는 없고,
      (머 비공개적인 자리에서도 얘기할 생각은 없습니다)
      이 업계에서 직접 일을 해보시거나
      아니면 그 회사에 입사해보시면 알 수 있을것 같네요.
      HackShield는 혼자 먹고 살수는 없다고 판단하여 그 부분을 해제시켜놓은 것으로 알고 있습니다.
      그리고 JMP뒤의 코드를 0xCC로 바꿨는데 다시 해커가 바꿔버린다면 어떻게 하시겠어요?
      다시 또 0xCC로 바꾸실건가요? 또다시 해커가 바꾸면요?
      저는 사실 이런 논쟁은 별로 좋아하지 않습니다.
      끝이 없기 때문이죠.
      그리고 어떤 것도 최강의 기능은 없다고 생각합니다

의심 드라이버 발견




저는 컴터를 쓰다가 하루에도 여러번씩 내 컴터에 깔린 커널 드라이버 리스트를 확인합니다.
드라이버를 은밀하게 깔아서 할 수 있는 짓이 워낙 많다 보니.. 저 또한 피해자의 예외대상은
아니라고 생각되어 걍 머 버릇처럼 확인하고 있습니다.

그런데 오늘 출근해서 보니 vzthni.sys 라는 묘한 드라이버가 올라와 있더군요 -_-
파일 날짜를 보니 어제 퇴근 시간 직전 시간입니다.
어떤 개쉑이 내 PC에 기 들어와서 이상한거 깔아놓은건가 하는 압뷁에 순간 혼미해지더군요
저희가 짱개들로부터 해킹 공격을 하도 많이 받다 보니 그런 생각이 더했습니다.
그리고 제 PC는 워낙 음흉한 자료가 많다보니 ㅎㅎㅎ 더 심장이 조여오더군요 -_-

일단 바이러스 토탈에 먼저 넣어 봤습니다.

사용자 삽입 이미지

2개 백신에서 걍 오진인지 휴리스틱의 원인인지 암튼 의심스럽다 정도만을 내뱉는거 빼고는
아주 깔끔합니다 -_-

사실 깔끔해서 더 무섭더군요.
보통은 세상에 등장하지 않은 갓 태어난 싱싱한 바이러스에게 공격당하는 경우가 많거든요.
그 경우는 백신이 당연히 본적이 없는 바이러스이기 때문에 진단이 되지 않는것은 당연하고요 -_-

아무튼 드라이버를 얼른 뜯어 봤습니다.
크기도 상당히 크고, 의심스러운 짓을 너무나 많이 하더군요.

노티파이 루틴이 있어서 새 프로세스 생성도 감지하고 있고
그리고 SDT 도 건드리고 있는데, 테이블을 후킹하는게 아니고 오버라이트 훅을 하더군요
루트킷 디텍터에 걸리지 않으려고 아주 지대로 만들었군 하는 생각에 더 두려움에 떨었습니다....;
TCP접속도 체크하더군요.
난 완전 당한거야 무슨 파일들이 나갔을까 떨면서 IDA를 계속 보고 있는데
뭔가 이상합니다....

어디서 언젠가 본 드라이버