반응형

system 6

시스템 보안 10.패스워드 설정 문제

/* * http://sosal.tistory.com/ * made by so_Sal */ 관리중인 솔라리스 시스템에 계정을 가지고 있는 내부사용자들에게 패스워드를 자주 바꿀것을 공지하고 있으나 일부 사용자들이 잘 따라주지 않아서 부득이 강제로 패스워드를 바꿔야하는 제한기간을 설정해야 한다. yspace라는 계정의 패스워드 정책을 다음과 같이 강제 설정하시오. - 패스워드를 바꾼지 14일이 되면 무조건 새 패스워드로 바꿔야함. - 패스워드를 새로 바꾼지 만 하루가 지나기 전에는 패스워드를 변경할 수 없음. (단, yspace라는 계정에 대해서만 적용되어야 하고 타 계정에 영향을 주어서는 안됨) [passwd] 시스템 모든 계정은 /etc/passwd파일에 관련 항목을 가지고 있다. 이 파일에는 각 행마다..

Linux : dup과 dup2

/* * http://sosal.tistory.com/ * made by so_Sal */ 이 포스팅은 open, read, write 등의 시스템콜을 기본적으로 안다는 가정 하에 작성된 글입니다. 위 시스템콜에 대해서 모르신다면 :: LINK_ 1. dup 2. dup2 1.dup - 파일 식별자를 복제한다. #include // man page 참조 int dup( int fd ); (dup은 duplication의 약자겠죠?.. 아마.. ㅋㅋ) 새로운 파일 서술자를 반환하지만, 숫자만 다를 뿐 원래의 서술자, 복제된 서술자 모두 완벽히 같은 파일을 가리킨다. 실패 : -1 반환 (파라미터로 전달된 값이 fd가 아닐경우, 더이상 fd를 할당하지 못할경우) /* * fd1 파일 디스크립터에 open을 ..

Linux :: Strace - 시스템콜과 신호 추적

strace는 system-call Tracer를 의미하는 말로, strace에 의해 추적되는 프로세스의 시스템콜, 신호를 모두 화면에 출력한다. (시스템콜 ex : read,write,exit,lstat,ipc,fork.... 대부분 표준 C 라이브러리 내에 함수로 존재) strace 프로그램은 ptrace라는 시스템콜을 사용하여 자식 프로세스가 어떤 시스템 콜을 호출하는지 감시하고, 호출하는 시스템 콜에 대해 화면에 출력한다. :: 시스템콜 실패시 strace를 이용하면 어떤 시스템콜이 실패하였는지 쉽게 알아낼 수 있다. :: 예외처리를 해준다면 더욱 쉽게 알아낼 수 있을 것이다. 일단 strace 유틸리티로 추적해볼 프로그램을 만들어보자. /* * gcc scall.c -o scall * 굵게 표시..

Linux/Linux_technic 2010.03.04

Linux - BOF metasploit을 이용한 간단한 buffer over flow

/* * http://sosal.tistory.com/ * made by so_Sal */ BOF에 대해 기본적인 지식이 없으신 분은 아래 링크에 가셔서 글을 읽고오세요~ LINK_ /* * 사실 요즘 나오는 OS들은 BOF 버그가 통하지 않습니다.. * 그럼에도 이 해킹기법을 공부하는 이유는.. * 컴퓨터 메모리 구조에 대한 이해(?)를 * 극대화 시킬 수 있는 재미있는 놀이이기도 하고.. * ftz.hackerschool.org 워게임 문제들중.. * 대략 50% 만큼의 비중을 차지하고 있는 * 공격기법이기도.. ㅎㅎ * 여튼 한번 Buffer over flow를 한번 일으켜 봅시다.. ㅠ * 아래 bof 실습 환경은 제가 리눅스 구버전을 가지고 있지 못해서 * ftz.hackerschool.org ..

System - 02. system() 자식 프로세스

/* * http://sosal.tistory.com/ * made by so_Sal */ system() 함수에 대해 알아보겠습니다. #include int system(const char * string) system() 함수는 굉장한 편리함을 가져다 주는 함수입니다. 어떻게 보면 게으른 사람들의 전유물이기도 하지요.. shell? :: 사용자가 입력하는 명령어들을 기계어로 번역해주는 명령 해석기 쉘은 사용자가 운영체제와 대화할 수 있는 중간 역할자. 인터페이스가 됩니다. 쉘에서 사용자가 한 말을 받아 운영체제에 전해주고, 운영체제는 그 답을 쉘을 통해서 사용자에게 보여주게 되는것입니다. 쉘 역시 하나의 프로그램입니다. (bash, sh, csh 등 다양한 종류의 쉘이 있는데.. 리눅스 콘솔창에서 우..

System - 01. Process 개념

/* * http://sosal.tistory.com/ * made by so_Sal */ 프로세스 :: 컴퓨터 내에서 실행중인 프로그램을 일컫는 용어. 프로세스란건 아주 간단합니다. Ctrl + Alt + delete로 작업관리자를 켜봅시다. 프로세스 텝을 가보시면 프로세스들의 목록을 쭉~ 보실 수 있습니다. putty를 4개나 켜놨더니 프로세스에 4개가 올라와있네요. 항상 켜져있는 메신저 na**까지 보입니다. 프로세스, 쉽게 와닿나요? 리눅스는 위 그림의 윈도우와 같은 다중 태스킹 운영체제입니다. 한 시점에서 여러 개의 프로그램들이 실행되는데, 각 실행중인 프로그램은 하나의 프로세스가 되고, 물론 하나의 프로그램이 여러개의 프로세스가 될 수 있습니다. 따라서 여러 사용자들이 하나의 프로그램을 실행시..

반응형