2013/10

    gdb 어셈블리어 변경

    gdb를 사용해 분석을 하는 경우가 요새 많은데 gdb는 최초 AT&T로 어셈이 설정되어 있어서 불편하다. 그래서 자료도 많고, 내가 자주보면 intel 방식으로 바꾸고 싶다. 그때 설정하는 명령어 set disassembly-flavor intel : intel 방식으로 변경 set disassembly-flavor at : AT&T 방식으로 변경

    level4

    level4

    문제 4번 !!! 먼저 당연히 힌트를 확인해 봅시다.! 백도어?? 백도어는 말 그대로 뒷 문이다. 위키피디아에서 백도어의 내용을 정확히 설명해 보면, 컴퓨터 시스템 (또는 암호화 시스템, 알고리즘)의 백도어(backdoor)는 일반적인 인증을 통과, 원격 접속을 보장하고 plaintext에의 접근을 취득하는 등의 행동을 들키지 않고 행하는 방법을 일컫는다. 백도어는 설치된 프로그램의 형태를 취하기도 하고, 기존 프로그램 또는 하드웨어의 변형일 수도 있다. 라고 설명이 되어 있다. 결국 프로그램에 접속하기 위한 뒷문이라고 생각하면 편할려나?? 이러한 백도어 기법을 이용해서 크래커들이 자신이 만들어 놓은 프로그램을 배포, 이용하여 권한을 취득하여 악의적으로 사용하는 방식으로 사용된다. 그럼 /etc/xine..

    find 명령어

    파일을 찾는 명령어 find 1. 기능 다양한 옵션을 통해 찾고자 하는 파일의 조건을 설정할 뒤 그 조건에 맞는 파일을 검색할 수 있다. 2. 사용법 find [찾을 디렉토리 경로] [찾기옵션] 3. 찾을 디렉토리 경로 / : 루트에서부터 검색을 한다. 즉 전체를 검색한다. . : 현재 디렉토리를 포함하여 하위 디렉토리까지 검색한다. /디렉토리 : 지정된 디렉토리에 검색 4. 옵션 -name [파일이름] : 파일이름과 일치 파일명 또는 확장자를 기준으로 검색할 수 있다. -perm [권한] : 권한과 : 일치하는 파일 ex) find / -user level2 -perm -4000 4000의 의미는 -(최소한), 4(SetUID)가 걸려있는 000(모든파일)을 의미한다. -user [유저] : 유저와 일..

    level3

    level3

    바로 시작해 보자. level3의 힌트는 아래와 같다. 소스코드를 유심히 보자. 조건문에 인자가 2개가 아니라면 프로그램이 종료 됨을 확인할 수 있다. 만약 2개의 인자가 들어오게 된다면, 첫 번째 인자는 프로그램의 실행 프로그램명을 의미할테고, 두번째 들어오는 놈을 cmd char형 배열에 붙여 넣는다. 마지막에 system 함수로 실행하게 된다. cmd를 확인해 보면 "dig@ 입력되는놈 version.bind chaos txt" 이란 명령이 system 함수에 들어간다. 다음 힌트를 보면 동시에 여러 명령어를 사용하려면? 문자열 형태로 명령어를 전달하려면? 이란 힌트가 있다. system 함수에 명령이 하나가 아닌 두개가 들어가서 실행이 된다면? 그럼 password를 바로 알 수 있지 않을까? 한..

    Level 2

    Level 2

    Level 2로 넘어가서 힌트부터 확인하자. 텍스트 파일 편집 중 쉘의 명령어를 실행 시킬 수 있다는데... 정말 쌩뚱 맞다. 처음에 이 힌트를 보고 굉장히 당황 했지만, 하나하나 뒤져 나가기로 했다. SUID가 설정되어 있고, 소유 권한이 level3인 파일을 찾아 봤다. 아래와 같은 editor라는 파일을 찾을 수 있었다. editor 라니? vi 에디터를 말하는 건가? ls 명령어를 이용해서 editor 파일과 기존에 제공되는 vim 파일을 비교해 보면 editor 파일은 소유권한이 level3이고 그룹권한은 level2 인 파일이고 vim 파일은 둘다 root 권한인 파일 임을 확인할 수 있다. editor파일을 실행하면 vim 에디터 파일 실행과 동일하게 실행된다. 이 상태에서 권한이 level..