본문 바로가기

시스템 해킹/FTZ30

level1 / (찾기 시작할 위치를 말한다. /는 전체를 뜻한다. /home하면 /home디렉토리만 찾게 될 것이다.) 레벨2의 권한으로 SetUID가 걸려있는 다시한번 확인할 수 있다. cf> 2>/dev/null은 Standard Error를 모두 휴지통에 버리라는 의미이다. cd /bin/ExecuteMe을 입력하면오류가 발생하고 ExecuteMe는 디렉토리가 아니라고 출력된다.cd /bin 까지 입력bin 폴더로 이동다시 한번에 /home/trainer2로 이동을 하려면cd /home/trainer2를 입력한다. 부분이 앞에 나옴.그 다음ls -al ExecuteMe명령을 통해 파일 확인ExecuteMe입력! 그다음/bin/bash를 해서 쉘을 따낸다.my-pass 입력하면level2의 비밀번호가 나온다. .. 2016. 9. 8.
trainer10 Local 해킹시 핵심이 되는 SetUID에 대하여 알아봅시다. Local 해킹?해킹에는 두가지가 있다.하나는 Remote해킹: 이것은 자신이 해킹하고자 하는 서버에 아이디를 가지고 있지 않을때, 아이디를 얻고자 시도하는 것을 말한다.다른 하나는 Local 해킹: 해킹하고자 하는 서버에 일반계정을 가지고 있을때, 관리자 권한(root)을 얻고자 시도하는 것 Remote 해킹방법엔 여러가지 방법이 있다.무작위로 아이디와 비밀번호를 입력하여 접속하는 방법에서 부터, 데몬의 취약점을 공략하는 방법심지어 게시판이나 방명록을 이용하여 접속하는 방법까지 수십가지가 넘는다. 하지만 우리에게 중요한건 Local 해킹이다.관리자 권한을 얻지 않는 한 해당 서버는 단지 그림의 떡이다.그런데 관리자 권한은 왜 얻는가?만약 .. 2016. 9. 6.
trainer9 이번 시간에는 리눅스의 권한에 대해서 알아보자.이 권한에 관한 개념은 해킹에 있어서 가장 핵심적인 부분이며, 리눅스는 윈도우와는 달리 한 서버에 여러 사용자가 접속하여 사용하게 된다.이 F.T.Z의 서버에 개인 아이디를 가지고 있다고 하자.그 개인 계정에 할당된 공간에, 이것저것 필요한 문서들을 올리고, 홈페이지도 만드는 등등 여러 중요한 파일들을 생성하게 된다. 리눅스는 어떠한 방법으로 다른 사람이 나의 파일에 접근하지 못하도록 막는것일까?권한(PERMISSION) Permission Denied(접근거부)라는 에러메시지는 당신의 권한 밖에 있는 파일을 건드렸다는 것이다. 리눅스는 각 사용자마다 특별한 권한을 부여하여, 그 권한의 범위를 넘어서지 않는 파일들만 제어할 수 있도록 설정되어 있다. 내가 만.. 2016. 9. 5.
trainer8 새로운 파일을 만들고, 컴파일하고, 그것을 실행시키는 방법을 배우자실제로 해킹을 할때 사용되는 방법 파일에는 두가지 종류가 있다. 1.일반 텍스트 파일->글자로만 이루어진 파일README.TXT 그런것이다.이런 일반텍스트 파일은 cat 명령을 사용하여 내용을 출력한다! 2. 프로그램 소스 파일프로그램 소스란 컴퓨터 언어로 입력한 파일.텍스트 파일이긴 하지만 cat을 사용하여 내용을 보는 것이 아니고컴파일을 거쳐 실행이 가능하도록 만든 후 사용. 텍스트 파일 생성 방법1. 쉘 프롬츠트 상태에서 cat > 파일이름.txt라고 입력2.원하는 내용을 써내려간다.3.컨트럴키와 D키를 동시에 누른다. 위와 같은 과정을 거치면 새로운 파일이 생성이 된다.> 이것은 리다이렉션이라고 읽으며 방향을 전환한다 라는 뜻을 가.. 2016. 9. 5.
trainer7 윈도우를 사용하면서 *.ZIP이나 *.RAR등으로 된 압축 파일을 많이 접해보았다. 리눅스 환경에서 파일들을 압축하고, 해제하는 방법을 배워보자. 리눅스느 서버의 용도로 사용되기 때문에, 수시로 새로운 데이터들이 업데이트 괸다.따라서, 데이터들이 손실되는 것을 방지하기 위해 백업을 하는 것은 필수 이며, 이 백업을 할 때 오늘 배운 압축 명령어들이 사용된다. *하드에 들어있는 데이터(디렉토리, 파일, 개인정보, 게시물..) 를 똑같이 다른 곳으로 복사하여 안전하게 보관하는 것을 백업한다 라고 한다. 리눅스에서 압축을 할 때 사용되는 명령어는 2개이다. targzip : 윈도우에서 매일보는 winzip의 할아버지벌 되는 프로그램이다. 합치기 : tar cvf 합칠파일 합칠파일들해제하기 : tar xvf 해.. 2016. 9. 2.
trainer6 패스워드 파일 분석 방법 *cat : 리눅스 기본 명령 cat "파일이름" 이라고 입력하면 파일의 속내용을 확면으로 뿌려주는 역할을 한다. cat /etc/passwd 입력! trainer5에서 했던 것 처럼 이 입력은 서버에 어떤 어떤 사람들이 계정을 얻어서 사용하고 있는지 알아보자.을 의미한다. root:x:0:0:Admin:/root:/bin/bash을 분석해보자.일단 패스워드 파일이란 한 서버를 사용하는 사용자들의 모든 정보를 기록에 놓은 파일을 말한다. : 은 필드를 구분해주는 문자이다.즉, 여기에선 7개의 필드로 나뉘어져있다.첫번째 필드 root 이것은 서버에 로그인 할 때 사용되는 아이디(계정)을 말해준다.지금은 trainer6라는 아이디로 로그인을 했으니, 패스워드 파일에서 정보를 찾아보면.. 2016. 9. 2.
trainer 5 서버의 정보를 수집하는 방법 정보에는 여러가지가 있다. 서버에 어떤 프로그램들이 설치되어있는지,서버의 주인은 지금 무엇을 하고 있는지,어떤 OS를 사용하여 서버를 만든것인지 등등 누구인지-> whoami 더 자세한 정보를 알고 싶을 때->id 이번엔 이 서버에 어떤 어떤 사람들이 계정을 얻어서 사용하고 있는지 알아보자.모든 사용자들의 정보는 /etc/passwd 파일에 들어가 있다. cat /etc/passwd 서버의 커널 버전에 대해서 알아보자.커널은 리눅스의 심장부 역할을 하는 파일로서, 이 커널 버전에 따라 리눅스의 성능도 차이가 난다.같은 버전의 리눅스라도(ex 레드헷 6.0)이 커널 버전이 높다면, 속도도 더욱 빨라지고, 안전성도 높아진다. 또한 해킹중에는 이 커널을 이용한 해킹도 많기 때문에,.. 2016. 9. 1.
trainer4 여러분이 만약 공개된 계저으로 리눅스 서버를 이리저리 구경하고 다닌 적이 있었다면, 분명 황당하게 많은 디렉토리와, 황당하게 많은 파일들에 현기증을 느꼈을 것이다. 먼저 최상위 디렉토리에 존재하는 수많은 하위 디렉토리에 대해 공부를 해보고, 그 다음엔 리눅스에서 중요한 역할을 하는 파일들에 대해 공부하자 일단 cd /를 입력하여 최상위 디렉토리로 이동 ls -al을 입력하여 디렉토리와 파일 목록을 본다. 이제 어떤 역할을 하는 디렉토리인지 알아보자.-bin : 이 곳에는 가장 필수적인 리눅스 실행 파일들이 들어가있다. ls,rm 모두 이곳에 들어가 있다.-boot : 리눅스 부팅 관련 파일들과, 리눅스의 심장인 커널이란 것이 들어있다.-dev : 이곳은 컴퓨터에 설치된 하드웨어에 관한 정보들이 파일 형태.. 2016. 9. 1.
trainer 3 +터미널(콘솔)과 네트워크에 관한 명령+현재 해커스쿨 서버에 어떤 사람들이 접속을 해 있는지 보고, 그 사람들과 대화를 하는 방법 -텔넷을 통해 해커스쿨 서버에 접속 "터미널을 통해 접속했다" -직접 컴퓨터에 리눅스를 설치하고, 부팅하여 로그인한 것을 "콘솔을 통해 접속했다." 라고 한다.터미널과 콘솔, 이 두 용어는 같은 의미이긴 하지만 위와 같은 차이에 따라 구별되어 사용된다. w : 어떤 사람들이 접속해 있는지 확인할 수 있다. USER는 어떤 ID로 login했는지를 보여준다.우리가 trainer3이란 ID로 로그인 된것과 마찬가지이다.tty: 콘솔로 접속, pts: 터미널로 접속 그 뒤의 숫자는 몇번째 터미널로 접속했는지를 보여 준다. 만약 3명이 동시에 텔넷 접속을 하게 되면,순서대로 pts/.. 2016. 9. 1.