분류 전체보기 108

[윈도우즈보안과 악성코드기초] PE 파일

PE ( Portable Excutable ) 파일 : 실행 가능한 파일 ( exe, dll, sys, src, ocx 등 ) Win32 기본 파일 형식 ( 윈도우 환경에서 동작 ) 메모리 상에서 실행되는 형태 ( = Process ) : exe + dll 예전에는 exe 단독 사용, 윈도우 환경이 커지면서 여러가지 자원을 사용하기 위해 dll도 같이 사용 실행 과정 PE 파일 실행 -> 헤더 정보를 메모리에 매핑 -> 실제 프로그램 코드로 들어가서 실행 정적 분석에 해당 ( Hex Editor, PEview 등을 사용 ) 더보기 ※ PE 헤더 정보를 메모리에 매핑 1. 실제 프로세스를 위한 메모리 할당 2. 섹션 정보를 메모리에 복사 3. import 정보 처리 4. 기준 재배치 처리 PEview.ex..

[윈도우즈보안과 악성코드분석기초] crackme 리버싱

어셈블리로 작성된 코드 열자마자 시작 주소 ( EP가 시작주소이며 코드가 간단하고 명확(stub code가 없이)하게 작성되어 있음) 총 3개의 API 함수 사용 -> MessageBoxA, GetDriveTypeA, ExitProcess 00401002 PUSH 402000 ;Title="abex'1st crackme" -> dump 402000 위치로 이동하면 Title 내용 담겨져 있는 것을 확인할 수 있음 0040100E CALL 00401061 ;MessageBoxA, 함수내부에서 ESI=FFFFFFFF로 셋팅됩니다. -> 해당 번지인 00401061을 호출 ( 점프 ) 더보기 ※ [ 00401061 JMP DWORD PTR DS:[} ;USER32.MessageBox ] USER32 : use..

[FTZ] level3

level 3 (비밀번호 : can you fly?) 이번에도 level3 문제에 대해 알기 위해 ' ls ' -> ' cat hint ' 로 hint 파일의 내용을 보았다. hint 파일을 보면 두 가지 정보가 나온다. 첫 번째, autodig 의 소스 코드가 나온다. autodig은 사용자의 입력을 받아 인자가 2개가 아니면 오류를 출력한다. ( argc != 2 ) ' strcpy ' 를 사용해 " dig @ " 를 cmd로 복사하고, 나머지 인자들을 ' strcat ' 를 사용해 이어붙인다. ( strcat ( cmd, argv[1] ) ) ' strcat ' 를 사용해 마지막에 " version.bind chaos txt " 를 이어붙인다. ' system() ' 명령어를 사용하여 cmd 를 실..

Systemhacking/FTZ 2021.03.25

[FTZ] level2

level2 (비밀번호 : hacker or cracker) 이번에도 어떤 파일이 있는지 ' ls ' 를 먼저 해보았다. hint 파일이 있어서 내용을 보기 위해 ' cat hint ' 를 해주었더니 문구가 나왔다. ' 텍스트 파일 편집 중 쉘의 명령을 실행시킬 수 있다는데... ' 라고 나온다. 아는 텍스트 파일 편집기는 ' vi 텍스트 편집기 ' 가 있고 종료하거나 저장할 때 ' :w ', ' :q ', ' :wq! ' 와 같이 명령어를 사용해 왔다. 일단 level3의 setuid를 가진 파일을 찾아보았다. [FTZ] level1 에서 설명했던 방법으로 찾았다. 원하는 ' /usr/bin/editor ' 를 얻을 수 있었다. ' /usr/bin/editor '를 실행하니까 바로 위와 같은 vi 편집..

Systemhacking/FTZ 2021.03.25

[FTZ] level 1

level 1 (비밀번호 : level1) 문제를 파악하기 위해 어떤 파일이 있는지 ls 을 해보았다. 사진과 같이 hint, public_html, tmp 가 나온다. 먼저 hint 파일의 내용을 보았다. ' cat hint ' 를 통해 hint 파일의 내용을 보니 ' level2 권한에 setuid가 걸린 파일을 찾는다. ' 라는 내용이 나왔다. setuid 파일을 찾아야한다. 앞 글 [FTZ] trainer6 ~ trainer10에서 setuid 파일을 찾는 방법을 배웠었다. 더보기 서버에서 setuid가 걸린 파일 찾는 법 find / -perm -4000 : /에서 부터 적어도 SetUId가 걸린 파일을 찾겠다. find 명령 옵션 -user : user와 일치하는 파일을 찾는다 서버에서 lev..

Systemhacking/FTZ 2021.03.25