전체 글 172

Question 1

문제는 다음과 같다. 1. What is the image hash? Does the acquisition and verification hash match? 해석해 보자면 1. 이미지 해시가 무엇입니까? 획득 및 검증 해시가 일치합니까? 시작부터 만만치 않다.. 디지털포렌식을 전혀 직접 해본적이 없어서 툴 설치부터 난관이였다. 먼저 ftk imager 를 공식 홈페이지에서 최신버전을 겨우겨우 받아 설치를 완료! ftk imager의 사용법을 익혔다. 출처 : https://k-dfc.tistory.com/34 처음에 다운받았을때 이미지가 2개 , 문제 총 3개의 파일이 있었다. 딱 보아하니 이미지 파일이라고 했는데 e01, e02로 나뉘어진것을 보니 용량이 커서 분할되어진듯..? ftk imager 툴..

Forensic/CFReDS 2019.07.21

[해커스쿨]trainer10

이번 시간에는 Local 해킹시 핵심이 되는 SetUID에 대하여 알아본다. Local 해킹? 해킹에는 두가지가 있다. 하나는 Remote 해킹, 이것은 자신이 해킹하고자 하는 서버에 아이디를 가지고 있지 않을 때, 아이디를 얻고자 시도하는 것을 말한다. 다른 하나가 Local해킹, 이것은 해킹하고자 하는 서버에 일반 계정을 가지고 있을 때, 관리자 권한(root)를 얻고자 시도하는 것을 말한다. Remote 해킹 방법엔 여러가지 있는데 무작위로 아이디와 비밀번호를 입력하여 접속하는 방법에서 부터, 데몬의 취약점을 공략하여 접속하는 방법. 심지어 게시판이나 방명록을 이용하여 접속하는 방법까지. 방법은 수십가지가 넘는다고 한다. 하지만 우리에게 정작 중요한건, Remote 해킹이 아닌 Local 해킹이라고..

System/FTZ 2019.07.20

[해커스쿨]trainer9

이건 시간에는 리눅스의 권한에 대해서 알아본다! 이 권한에 관한 개념은 해킹에 있어서 가장 핵심적인 부분이다고 한다. F.T.Z의 level별 해킹에서도 이것을 알아야만 문제를 풀수있다. 리눅스는 윈도우와 달리 한 서버에 여러 사용자가 접속하여 사용하게 된다. 근데 나만 보고 싶은 자료들이 있을텐데 어떠한 방법으로 다른 사람이 나의 파일에 접근하지 못하도록 막는가? 그때 나오는 개념이 바로 권한(Permission)이라는 것. ls -al 명령을 사용하여 파일들의 권한에 대한 정보를 출력 리눅스에는 4가지 종류의 사용자가 있다. user, group, other, root user : 이것은 자신을 의미 group : 모든 유저는 하나 이상의 그룹에 속하는데 임의로 이 그룹을 변경하지 않는 한 모든 유저..

System/FTZ 2019.07.20

[해커스쿨]trainer8

요번시간엔! 새로운 파일을 만들고, 컴파일하고, 그것을 실행시키는 방법을 배워본다! 위의 과정들은 실제로 해킹을 할 때 빠짐없이 사용되는 방법이니 잘 익혀달라고한다 ㅎ 우리가 만드는 파일에는 크게 두가지 종류가 있다. 첫째, 일반 텍스트 파일. 이것은 말 그대로 글자로만 이루어진 파일로서, 예를들어 "README.TXT"가 그런것 이런 일반 텍스트 파일은 cat 명령을 사용하여 내용을 출력한다고 지난번에 배웠다. 둘째, 프로그램 소스 파일. 프로그램 소스란 여러분이 컴퓨터 언어로 입력한 파일을 말하며, 이것 역시 텍스트 파일이긴 하지만 cat을 사용하여 내용을 보는것이 아니고 "컴파일"이란 과정을 거쳐 실행이 가능하도록 만든 후 사용한다. 텍스트 파일 생성법 1. 쉘 프롬프트 상태에서, cat > 파일이..

System/FTZ 2019.07.20

[해커스쿨]trainer7

이번 시간에는 리눅스 환경에서 파일들을 압축하고, 해제하는 방법을 배워봐용 리눅스는 서버의 용도로 사용되기 때문에, 수시로 새로운 데이터들이 업데이트 되기 마련! 따라서 데이터들이 손실되는것을 방지하기 위해 "백업"을 하는 것은 필수이며, 이 백업을 할 때 오늘 배운 압축 명령어 들이 사용된다. 리눅스에서 압축을 할때 사용되는 명령어 tar gzip : 윈도우에서 보는 winzip의 할아버지뻘 tar는 사실 압축 프로그램이 아니라고한다! ?? 뭐지 일단 tar의 사용방법은 합치기 : tar cvf 합칠파일 합칠파일들 해제하기 : tar xvf 해제할파일 c - Create : 새로운 파일을 만드는 옵션 x - eXtract : 압축을 해제시키는 옵션 v - View : 압축이 되거나 풀리는 과정을 출력하..

카테고리 없음 2019.07.20

[해커스쿨]trainer6

이번 시간엔 '패스워드 파일 분석 방법'을 배워본다고 한다. 패스워드 파일이란 한 서버를 사용하는 사용자들의 모든 정보를 기록해 놓은 파일을 말한다고 한다. 그 사용자는 어떤 아이디, 어떤 암호를 이용하여 로그인 하는지, 어떤 그룹에 속해 있는지, 이름은 무엇인지 등등.. root : x : 0 : 0 : Admin : /root : /bin/bash 각각 7개의 필드가 무엇을 의미할까? 첫번째 필드 -> 서버에 로그인할 때 사용되는 아이디(계정) 두번째 필드 -> 패스워드가 적혀있는 부분이었다고 한다. 리눅스버전5.0 까지는 암호화된 문자열이 들어가있었지만 이마저 위험해져 x 라고 표기해 놓고 사용자들의 패스워드만 모아서 새로운 파일을 만들었는데 그것은 바로 /etc/shadow/ 라는 파일 요기서 알..

System/FTZ 2019.07.20

[해커스쿨]trainer5

해킹에서 가장 중요한 것은 실력, 운, 경험, .. 등등 여러가지 있겠지만 아무래도 가장 중요한 것은 '정보'라고 한다. '해킹의 첫 단계는 정보수집이다' 그리하여 이번 시간에는 해킹을 시도 하려는 서버의 정보를 수집하는 방법을 배워본다고 한다. 정보에는 여러가지가 있는데 서버에 어떤 프로그램들이 설치되어 있는지, 서버 주인은 지금 무엇을 하고 있는지, 어떤 OS를 사용하여 서버를 만든것인지 등등 --> 우리가 알아낼 수 있는 모든 것이 해킹을 하기위한 정보임 일단 자신이 누구인가인 명령어 whoami 자신이 누군가 id cat /etc/passwd -> 여기서 알수 있는 정보는 가장 왼쪽의 단어가 사용자들 아이디이다. 서버의 커널정보를 알아볼텐데 커널이란?????? 커널은 리눅스의 심장부 역할을 하는 ..

System/FTZ 2019.07.20

[해커스쿨]trainer4

디텍토리에 대해 공부 리눅스에서 중요한 역할을 하는 파일들에 대한 궁금증을 풀어주겠다고 한다. 쳤던 명령어 cd / ls -al bin : 이곳에는 가장 필수적인 리눅스 실행 파일이 들어가 있습니다. ls, rm 모두 이곳에 들어가 있음 boot : 리눅스 부팅 관련 파일들과, 리눅스의 심장인 커널이란것이 들어있습니다. dev : 이곳은 컴퓨터에 설치된 하드웨어에 관한 정보들이 파일 형태로 저장되어 있는 곳 입니다. etc : 많은 중요한 파일들이 이곳에 들어가 있습니다. 패스워드 파일, 쉐도우파일. 그 외 대부분의 리눅스 설정 파일 등등. home : 일반 사용자들의 디렉토리가 들어가는 곳 입니다. guest와 trainer1~10, level1~10 모두 이 디렉토리안에 속해 있습니다. lib : 많..

System/FTZ 2019.07.20

[CTF Writeup]ropasaurusrex

2018 Winter Hellcamp 과제로 ctf문제인 ropasaurusrex 문제를 내주셨습니다. 먼저 기본적으로 IDA를 이용하여 살펴봤습니다. 분석 결과를 보아 하니 취약점을 확인해 볼수 있었습니다.-> buf는 88h(136 byte), 입력은 256 byte 이므로 Buffer Overflow 가 발생합니다. 실행을 해본 결과 buf의 크기인 136 Byte를 넘는 문자열을 입력했으니, 당연히 Overflow가 나고, segmentation fault가 뜹니다. 이제 다른 정보로써 Linux 환경에서의 메모리 보호기법이 무엇이 걸려있는지 확인을 하기 위해 pwntools를 이용하였습니다. 확인한 결과 NX bit가 설정되어있습니다. (NX bit는 stack segment의 Excute 권한..

[해커스쿨]trainer3

이번 트레이닝에서 배울것은 터미널(콘솔)과 네트워크에 관한 명령들입니다. w 명령을 이용하여 해커스쿨 FTZ 서버에 어떤 사람들이 접속해 있는지 확인할 수 있습니다.명령을 실행했을때 출력되는 정보가 무엇을 의미하는지 알아보겠습니다.1. 이것은 어떤 ID로 login 했는지를 보여줍니다. 2. 이것은 여러분이 콘솔로 접속을 했는지, 또는 터미널로 접속을했는지를 보여줍니다. (tty로 나타나면 콘솔 접속, pts로 나타나면 터미널 접속을 의미합니다. 또한 그 뒤의 숫자는 여러분이 몇번째 터미널로 접속했는지를 보여줍니다. 만약 3명이 동시에 텔넷 접속을 하게 되면, 순서대로 pts/0, pts/1, pts/2 의 PTS를 받게 됩니다.)3. 이것은 접속한 사람의 컴퓨터 ip를 보여줍니다. (root의경우엔 콘..

System/FTZ 2018.07.30