admin

[DDK] Sfilter 디바이스 드라이버와 어플리케이션 통신

SFilter를 사용하고자 하면, 종류가 다르다. 2000 버전에서 사용하는 SFilter는 정적 로딩이고, XP버전으로 새로나온 SFilter는 동적 로딩도 가능하다. 다들 그냥 Filemon으로 동적 후킹을 하는 경우가 많다. 그것도 좋은 방법 이지만 볼륨관련작업을 하기 위해서는 SFilter도 접근해보는게 좋다. Sfilter에서 드라이버와 통신하기 위해서는 심벌릭 링크를 생성해야한다.   /**           심볼릭 링크를 생성하는 루틴     […]

[DDK] Sfilter 디바이스 드라이버와 어플리케이션 통신 더 읽기"

[DDK] 비스타와 XP의 디렉터리 쿼리의 차이점

폴더를 감추는 방법은 다양하다. 다양하지만 정형화된 방법으로 인해서 더이상 아이디어가 나오지 못하는 형편이다,,큭 일단 XP의 상황에서 IRP_MJ_DIRECTORY_CONTROL의 MAJOR IRP가 날라오면, MINOR로 IRP_MN_QUERY_DIRECTORY이다. 이때 여기에 감추는 루틴을 작성하면 된다. 근데 XP와 VISTA는 사용하는 Class가 다르다는 것이다,, – _-; 삽질끝에 알았는데, XP의 경우 폴더 목록 요청시 Class가 FileBothDirectoryInforamation이고, Vista의 경우에는 FileIdBothDirectoryInformation을 사용하더라,, 췌   NTSTATUS InitializeHiddenFileList()  

[DDK] 비스타와 XP의 디렉터리 쿼리의 차이점 더 읽기"

[DDK] 파일 시스템 드라이버의 FastIoDispatch 루틴

Filemon과 SFilter를 예로 들어서 설명하자, 일단 Filemon은 동적 필터 드라이버이다. SFilter와는 다르게 재부팅을 요하는 만큼의 작업은 필요가 없다. 단지 파일의 입출력을 감시할뿐, 이정도의 기능이라면 SDT 후킹을 해서 구현할 수도 있을 것 같다, 하지만 내부적으로 엄청나게 잘짜놨겠지, – _-; 일단 DriverEntry()를 보면 다음과 같은 루틴이 존재한다. 파일 시스템 필터 드라이버를 작성하다보면, Fast I/O에 대해서 많이 보게

[DDK] 파일 시스템 드라이버의 FastIoDispatch 루틴 더 읽기"

[DDK] Windows NT드라이버 개발자들을 위한 정보 - 피해야 할 사항들

요약 loadTOCNode(1, ‘summary’); 다음은 Windows NT 장치 드라이버들을 만들기 위한 정보 입니다. 나타난 정보는 모든 기술에 적용됩니다. 이것은 드라이버 문제를 해결하기 위한 점검 목록으로도 사용될 수 있습니다. 아래에 기술된 정보를 효과적으로 사용하기 위해서 Windows NT 구조에 대한 기본 지식과 일부 장치 드라이버 개발 경험이 필요합니다. 장치 드라이버 개발에 대한 추가 정보를 보시려면 MSDN Professional 멤버쉽을

[DDK] Windows NT드라이버 개발자들을 위한 정보 - 피해야 할 사항들 더 읽기"

[DDK] MS에서 공개하지 않은 함수 ObOpenObjectByName() 내부 코드

NTSTATUS    STDCALL   ObOpenObjectByName(     POBJECT_ATTRIBUTES ObjectAttributes,     POBJECT_TYPE ObjectType,     PVOID ParseContext,     KPROCESSOR_MODE AccessMode,     ACCESS_MASK DesiredAccess,     PACCESS_STATE PassedAccessState,     PHANDLE Handle     )   {      UNICODE_STRING RemainingPath;      PVOID Object = NULL;      NTSTATUS Status;        DPRINT(“ObOpenObjectByName()\n”);      

[DDK] MS에서 공개하지 않은 함수 ObOpenObjectByName() 내부 코드 더 읽기"

[DDK] Recognizer

필터 드라이버를 등록할때 레코그나이져(인식기)가 사용된다. 일단 지금 필터를 등록하는데 앞으로 등록되는 VDO보다는 지금 등록되어 있는 VDO에 기존의 필터를 붙이는게 중요하다, 백신을 보면 재부팅을 안하고 필터를 다 붙이는 기술을 지니고 있다. 이것은 OSR에서 만든 레코그나이저를 사용하는 듯한데,, 일단 A사의 V백신 및 N사의 P백신을 보면 필터 드라이버를 붙이는 모습을 볼 수 있다. 기본적으로 디바이스 트리에 FsRec라는 게

[DDK] Recognizer 더 읽기"

[DDK] Bug check 0x50 PAGE_FAULT_IN_NONPAGED_AREA 추적방법

What Happened? To understand this bugcheck code, it’s first necessary to understand what a “page fault” is. If you’re not completely sure you understand this concept, read the article So, Exactly What Is A Page Fault here at OSR Online. The Windows Memory Manager reserves pre-defined ranges of kernel virtual address space for specific uses.

[DDK] Bug check 0x50 PAGE_FAULT_IN_NONPAGED_AREA 추적방법 더 읽기"

[DDK] MS에서 사용하는 Common Naming Prefix

Prefix Component ———Cc ——————-Cache manager Cm Configuration manager Ex Executive support routines FsRtl File system driver run-time library Hal Hardware abstraction layer Io I/O manager Ke Kernel Ks Kernel Streaming Lpc Local procedure call Lsa Local security authentication Mm Memory manager Nt Windows system services (most of which are exported as Windows functions) Ob Object

[DDK] MS에서 사용하는 Common Naming Prefix 더 읽기"

윈도우즈 디바이스 드라이버 개발 방법

윈도우즈 디바이스 드라이버 개발 방법 디바이스 드라이버 개발을 처음 시작하시는 분들이 가장 많이 하시는 질문은 ” 디바이스 드라이버를 개발하려면 무엇을 어떻게 공부해야 하나요 ? ” 라는 것이다 . 일반 애플리케이션 프로그램 개발을 시작하는 경우에는 자료도 많고 , 주변에 개발자들도 많아서 공부 방법이나 자료들을 쉽게 접할 수 있는데 , 디바이스 드라이버 분야는 개발자들이 많은 분야도 아니고

윈도우즈 디바이스 드라이버 개발 방법 더 읽기"

윈도우 디바이스 드라이버 개발환경 구축

윈도우 디바이스 드라이버 개발환경 구축 디바이스 드라이버가 처음이신 분들이라면 , 아직 개념 및 용어 이해에 어려움이 있었을 것으로 본다 . 그것은 아마도 실제 개발을 해보지 않은 상태에서 이론적인 내용만 가지고 이해하려다 보니 어려웠을 것으로 보인다 . 그래서 , 이번 컬럼에서는 디바이스 드라이버를 실습해 볼 수 있는 개발 환경 구축에 대한 내용을 다뤄 보도록 하겠다 .

윈도우 디바이스 드라이버 개발환경 구축 더 읽기"

RFC949 (FTP) 분석

출처 url :http://www.gosu.net/GosuWeb/Article-detail.aspx?ArticleCode=960   ———————————————– 들어가며.. VC++이나 JAVA와는 달리, 닷넷Framework에는 기본적으로 제공하는 FTP클래스가 없다.   이 FTP클래스를 직접 만들기 위해서는 어떻게 해야할까?   RFC959문서에 FTP 프로토콜 규약에 대한 설명이 잘 나와있다. 우리는 이 문서를 잘 분석해서 FTP클래스를 만들면 된다.   하지만, 도통 영어로만 이뤄져 있는 이 문서를 분석하기란 여간 귀찮은 일이 아닐 것이다.   필자는

RFC949 (FTP) 분석 더 읽기"

FTP 제어 명령

### ftp 명령어 모음 ### ascii : 전송모드를 ASCII모드로 설정한다.(ascii또는 as) binary : 전송모드를 BINARY모드로 설정한다.( binary또는 bi) bell : 명령어 완료시에 벨소리를 나게한다.(bell) bye : ftp접속을 종료하고 빠져나간다.(bye) cd : remote시스템의 디렉토리를 변경한다.(cd 디렉토리명) cdup : remote시스템에서 한단계 상위디렉토리로 이동한다.(cdup) chmod : remote시스템의 파일퍼미션을 변경한다.(chmod 755 index.html) close : ftp접속을 종료한다. (close) delete :

FTP 제어 명령 더 읽기"

FTP 응답코드 요약

FTP 사용 시 발생하는 응답코드의 요약입니다. 코드 요 약 1yz 능동적인 예비 응답. 요청된 행위를 초기화한다. 새로운 명령어를 처리하기 전에 다른 응답을 기다린다. 2yz 능동적인 완결 응답. 서버는 요청된 행위를 성공적으로 완수하였다. 클라이언트는 새로운 요청을 초기화할 수있다. 3yz 능동적인 중개자 응답. 이 명령어를 받아들이지 않는다. 또한 요청된 행위도 일어나지 않는다. 4yz 단기적인 수동 완결 응답.

FTP 응답코드 요약 더 읽기"

gmail + thunderbird

1. 계정 추가    – gmail 로 추가하지 말고 일반메일 계정으로 추가하고 서버를 반드시 IMAP으로 설정한다.)    – 아래 그림이 잘못 되었는데 보내는 서버(SMTP)는 smtp.gmail.com 이 되어야 한다.     2. 계정 설정에서 IMAP 서버를 아래와 같이 설정해 준다.       3. 보내는 서버(SMTP) 설정을 아래와 같이 해준다.

gmail + thunderbird 더 읽기"

유니코드 정보모음

UTF의 개념UTF는 16bit 유니코드 문자들을 7비트 또는 8비트 문자로 변환하기 위한 방법이다. UTF-8은 유니코드를 8비트 문자로 변경하는 것입니다. 유니코드란 – 각각의 다른 나라를 시스템의 호환성 및 확장성에 문제를 일으키는 관계로 이를 하나의 문자인 유니코드로 통합시켜 표현하는 방법중에 한가지입니다. UTF-8의 동작 방법DNS를 찾을 경우 클라이언트에서 utf-8로 인코딩 되어 서버의 ip주소를 찾아 갑니다. 그러나 특정한 사이트인 경우

유니코드 정보모음 더 읽기"

tomcat+mysql 설치

1. JDK를 설치한다. 2. PATH에 C:\Program Files\Java\jdk1.6.0_12\bin 을 추가한다. 3. CLASSPATH=C:\Program Files\Java\jdk1.6.0_12\lib\tools.jar 환경변수 추가 4. tomcat 설치 5. mysql 설치 6. mysql-connector-java-x.x.x-bin.jar 다운로드 7. mysql-connector-java-5.0.7-bin.jar -> c:\Program Files\Apache Software Foundation\Tomcat 5.5\common\lib\ 에 복사 8. Tomcat 5.5/conf/server.xml에서 <Service name=”Catalina”>~</Service>밑에 아래와 같이 호스트별로 추가시켜 준다.       <!– localhost 호스트 추가 (기본적으로 있음) –>     

tomcat+mysql 설치 더 읽기"

컴퓨터 속의 한글(유니코드)

컴퓨터 속에서 맨날 한글을 봐오고 있으면서도 막상 한글 코드에 대해서 관심 있어 하는 프로그래머는 그리 많지 않은 듯 싶다. 그리고 관심을 가진다고 해도 잘 정리된 문서가 없는 듯 싶어서 내가 아는 내용을 살짝 정리해 봅니다. 우선 한글은 조합형, 완성형, 확장 완성형, iso2022-kr, unicode 등으로 표현이 가능하며… 조합형, 완성형, 확장 완성형, iso2022-kr 등은 symbol table 과

컴퓨터 속의 한글(유니코드) 더 읽기"

토탈 커맨더의 정규 표현식

토탈 커맨더의 정규 표현식 작성자 : 이상호(lyster235@naver.com)   토탈 커맨더의 도움말 중 정규 표현식 부분을 번역했습니다. 상업적인 목적이 아니라면 자유롭게 사용할 수 있습니다. [정규 표현식(Regular expressions)]   정규 표현식은 매우 강력한 탐색 툴이다. 매우 복잡한 형태의 문자열을 찾을 수 있다. 정규 표현식은 전문가들이 주로 사용하지만, 사무실에서 특정한 문서를 찾는데도 유용하다.   토탈 커맨더는 다음 기능들에

토탈 커맨더의 정규 표현식 더 읽기"

Web Service

1. 웹 서비스 소개 /*웹 서비스를 소개하고 웹 서비스 기초를 알아보며 컴퓨터 패러다임 근간을 통해 웹 서비스의 등장배경을 살펴본다. 웹 서비스 구현을 위한 기본 기술요소와 웹 서비스 시스템의 다양한 컴포넌트들에 대한 윤곽을 이해한다.*/ 웹 서비스는 표준 인터넷 기술을 이용하여 동적으로 상호작용 하는 소프트웨어 컴포넌트 들이다. 웹 서비스는 개발하는데 많은 노력을 요구하는 IT 시스템들 간의 연결

Web Service 더 읽기"

위로 스크롤