hackerschool 7

shadow file, passwd file for hackerschool level8

shadow file 전통적으로는 /etc/passwd 에 사용자 계정 정보를 보관. 하지만 이 파일은 수많은 도구들이 사용하게되므로 누구든지 읽을 수 있도록 되어있다. (예를 들어 파일의 소유자를 보여주기 위하여 사용자 번화와 사용자 이름을 매치한다.). 결국 이는 어느 정도 보안상의 위험을 야기한다. 또 하나의 방법은 shadow file을 이용. 이는 전통적인 방식(/etc/passwd)과 호환성 있는 형식으로 저장 된다. 패스워드는 실제로 /etc/passwd에 저장되지 않고 이 곳에는'x' 한 글자만을 넣어둔다. /etc/shadow에는 암호화된 패스워드와 그 외의 정보, 즉 패스워드 유효기간을 저장. /etc/shadow는 root 만이 읽을 수 있음. /etc/shadow 사용자의 패스워드가..

OS/Linux 2011.07.22

hackerschool level5 Hard Link, Symbolic Link

http://geundi.tistory.com/47 in Linux's Link 하드링크 심볼릭 링크 두가지가 있다. 먼저 cp 명령의 이해 필요. cp : 파일을 복사하는 명령어. inode { 파일의 중요 내용을 담고 있다. 구조 -파일의 소유권 및 이용 할 수 있는 여부에 대한 정보 -파일 내용이 들어 있는 디스크 내의 물리적 주소 -파일의 링크 수 -파일의 형태 -파일의 크기 -파일의 생성 시간, 최근 사용시간, 최근 수정시간 -inode의 최근 수정 시간 커널 내에서 파일 시스템과 관련하여 중요한 자료 구조 중 하나. ls -i 명령어를 통하여 확인가능. 하드링크 포인터의 개념 동일한 파일시스템에서만 생성 가능 원본과 동일한 inode를 사용하는 파일. ln : 하드링크를 만드는 명령어 ln [..

Security 2011.07.14

hackerschool level5 Race Condition

touch 파일 생성 명령어 레이스 컨디션(Race Condition) http://geundi.tistory.com/48 심볼릭링크 : 바로가기의 개념. 원본파일을 심볼릭링크 파일이 가라킴 심볼릭링크 파일에 수정을 가하면 원본 파일도 수정. root 권한의 SetUID가 걸린 A라는 프로그램이 있다. A는 실행한 후에 /tmp 안에 byebye라는 임시파일을 만든다. 일반 user가 이 임시파일(/tmp/byebye)을 삭제하고, /etc/passwd의 심볼릭 링크를 만드는데 이름을 /tmp/byebye라고 하여 만들었다. 그럼 A를 실행시키면? A는 실행되는 동안 root의 권한을 가지게 된다. A는 byebye라는 임시파일을 만드는데 byebye는 /etc/passwd의 심볼릭링크이다. /etc/p..

Security 2011.07.14

hackerschool level4 service finger, chmod

service finger. 어떤 서비스를 하기위한 initd 데몬. initd 데몬은 컴퓨터가 켜질 때 자동으로 실행되는 프로그램. cat services | grep finger /etc의 services 파일 중 grep 명령을 이용해 finger만 찾음. 쉘 스크립트를 만들때, 가장 첫 라인에 #!/bin/bash 를 씀. 쉘 스크립트의 가장 첫 라인에 !/bain/bash 를 쓰게 됨으로 해서, 내가 사용 하려는 명령어 해석기가 bash 쉘 임을 미리 알려준다. 일반적으로 스크립트에서 #는 주석기호이지만, 첫라인의 #!/bin/bash 에서의 #은 주석기호가 아니다. 스크립트의 가장 첫라인에 있는 #! 은 스크립트의 제일 앞에서 이 파일이 어떤 명령어 해석기의 명령어 집합인지를 시스템에게 알려주..

Security 2011.07.14
반응형