System/FTZ 29

[해커스쿨]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

[해커스쿨]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

[해커스쿨]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

[해커스쿨]trainer2

이번 트레이닝에서는 디렉토리와 디렉토리간의 이동, 새로운 디렉토리의 형성, 삭제, 파일의 복사, 이동, 삭제 등등에 대해 배우려고 합니다. 일단 자신이 지금 어떤 디렉토리 속에 들어가 있는지 pwd 명령을 통해 확인할 수 있습니다. [trainer2@ftz trainer2]$ pwd/home/trainer2[trainer2@ftz trainer2]$ 현재 경로가 출력된 것을 볼 수 있습니다. 현재 프롬프트 [trainer2@ftz trainer2]$ 에서 오른쪽의 trainer2는 현재 경로명을 보여주는데, 디렉토리 경로명이 길을 때는 앞의 경로는 생략되고, 가장의 뒤 쪽의 경로만 나타나는 것을 볼 수 있습니다. 이제 현재 경로에서 한단계 위로 가는 방법을 해볼 텐데요. cd .. 명령을 이용하면 됩니다..

System/FTZ 2018.07.29

[해커스쿨]trainer1

리눅스에 접속하게 되면 위와 같은 "프롬프트"란 것이 나타납니다. 이것은 리눅스 서버에 성공적으로 로그인을 하게 되었다는 것을 의미합니다. [trainer1@ftz trainer1]$ 왼쪽 부터 보자면 다음과 같습니다. trainer1 : 접속ID @ 이후 ftz : 서버 trainer1 : 현재위치 이 "프롬프트"란 것은 항상 대기상태에서 여러분이 어떤 명령을 내리기만을 기다립니다. 다음으로 ls에 대해 배워볼텐데요. 윈도우를 처음 접했을 때 배운것이 아마 '내 컴퓨터'를 더블클릭하는 것이었을겁니다. 또, MS-DOS를 배우신 분이 있다면 dir 이라는 명령을 제일 먼저 배우셨을 거구요. 내 컴퓨터를 더블 클릭하고 다시 C: 를 클릭하면 현재 자신의 컴퓨터에 설치된 폴더와 화일들을 볼 수 있습니다. 마..

System/FTZ 2018.07.29