본문 바로가기

컴퓨터/리눅스

buffer overflow 코딩 #include void main(){char *name;char *command;name=(char *)malloc(10);command=(char *)malloc(128);printf("address of Name is : %d \n", name);printf("address of Command is : %d \n", command);printf("Difference between address is : %d \n", command-name);printf("hey Enter your name: ");gets(name);printf("Hellow %s\n", name);system(command); } 컴파일MacBook-2:~ MGP$ gcc buffer.c -o buffer 실행MacBook-.. 더보기
backtrack에서 ssh 설치 및 설정 접속 secure shell의 약어. 공개 키 방식의 암호 방식을 사용하여 원격지 시스템에 접근하여 암호화된 메시지를 전송할 수 있는 시스템. 따라서 LAN 상에서 다른 시스템에 로그인할 때 스니퍼에 의해서 도청당하는 것을 막을 수 있다. SSH 설치 root@bt:~/Desktop# apt-get install ssh KEY 생성 root@bt:~/Desktop# sshd-generate SSH 데몬 재시작 root@bt:~/Desktop# /etc/init.d/ssh restart SSH 데몬 시작/etc/init.d/ssh startSSH 데몬 종료/etc/init.d/ssh stop 서비스 자동 등록 root@bt:~/Desktop# update-rc.d ssh defaults 서비스 자동 등록 해제하.. 더보기
route route라우팅 테이블을 보여줌 라우팅 테이블 필드Destination: 대상 네트워크 또는 대상 호스트 주소를 말한다.Gateway: 외부 네트워크와 연결해 주는 문 역할을 하는 호스트 주소Genmask: 대상 네트워크 또는 대상 호스트의 Netmask를 말함255.255.255.255: 단일 대상 호스트의 Netmask0.0.0.0: 기본 라우트(default route)FlagsU: 라우트 동작 상태(Route up)H: 타켓 호스트(target host)G: 게이트웨이로 사용R: 동적 라우팅에 대한 라우트 재생성D: 데몬 또는 리다이렉트에 의해 동적으로 설치된 상태M: 라우팅 데몬 또는 리다이렉트로 변경된 상태I: 라우트 거부Metric: 타겟까지의 거리 홉(hop) 단위로 계산, 최근 커널에선 .. 더보기
ping, traceroute, netstat 명령어 ping [-c 횟수] [-s 패킷크기] 호스트 주소 traceroute 호스트 주소 인터페이스가 하나가 아닌 경우traceroute -i 인터페이스명 호스트주소 netstat 일반적인 사용법netstat -nrMSS는 패킷 조각의 최대 크기irtt는 패킷 윈도우 크기 netstat네트워크의 인터넷 접속 상태와 소켓 상태를 보여줌 netstat -t인터넷 상태만 보여줌 netstat -i새로운 커널 라우팅 테이블 화면을 출력MTU: Maximum Transmission Unit 최대 전송 단위Met: Metric 값RX: 전송 받은 패킷TX: 전송 보내는 패킷DRP: 버려진 패킷OVR: 과다 넘침으로 인한 유실된 패킷 더보기
리눅스 파일 압축하기 압축풀기 리눅스 압축 명령어 정리. console 창에서 직접 압축을 하는 방법으로 tar, gzip, bzip2 , zip , compress 명령을 정리해 보려고 합니다. * Tar tar 는 압축방식은 아니고, 여러 개의 파일을 하나로 묶어주는 역할을 합니다. 주로 리눅스에서는 tar를 사용해서 파일을 하나로 묶은 다음 그 묶은 파일을 압축명령어를 사용하여 압축합니다. 옵션으로는 -c : create 의 약자로 묶음파일을 생성합니다. -x : extract 의 약자로 묶음파일에서 데이터를 추출합니다. -v : visual 의 약자로 묶음 생성 or 추출 시 그 과정을 눈으로 볼수 있게 보여줍니다. -f : 사용할 tar 파일을 지정하는 명령으로 묶음이나 묶음해제시 필수적으로 넣어야 하는 명령입니다. - r .. 더보기
리눅스 실행 파일 리눅스에서는 확장자 구분 없이 실행 가능한 파일(바이너리 파일)과 비실행 파일로 구분 리눅스 파일들은 대소문자 구별을 확실히 함 1 파일 및 디렉토리 보기(ls)1 기능도스의 dir과 같은 기능을 가진 파일 목록 출력 명령어 2 사용법ls [옵션] 3 옵션-a, -all: 디렉토리내의 모든 파일 출력-l, -format=long: 파일 정보(파일 종류, 퍼미션, 사이즈)를 표시-s, -size: 1k 블록 단위로 파일 크기 표시-t, --sort=time: 최근의 파일부터 출력-c, --time: 파일 최근 변경 시간에 따라 정렬해서 출력--color: 파일 종류에 따라 색상 표시-R (recursive): 현재 작업 디렉토리와 하위 디렉토리 모두 출력--help 도움말 ls -a 도트(.)로 된 숨겨진.. 더보기
리눅스 시스템 끄기 shutdown 명령은 오직 시스템 관리자 계정인 루트만이 실행할 수 있음1 사용방법shutdown [경고 메시지] 2 옵션-t 시간(초): 다른 런레벨로 바뀌기 전 경고를 내보내는 프로세스와 kill 시그널 사이의 기다리는 시간-k: 실제적으로 셧다운하는 것이 아니라, 사용자 모두에게 경고 메세지만 전달하는 옵션-r: 셧다운 후 리부팅하기-h: 셧다운 후 시스템 정지-c: 실행중인 셧다운 취소-f: 빠른 부팅, 부팅 시 fsck를 점검하지 않도록 함 시간now: 지금 바로+m: 지정한 m분 이후에hh:mm: 몇 시 : 몇 분에 명령shutdown -r now: 시스템 리부팅shutdown -h now: 시스템 바로 종료shutdown -h +5 5분 후에 시스템이 종료됩니다.: 종료 메시지와 함께 5분.. 더보기
gcc gcc 옵션 -E 전처리를 실행하고 컴파일을 중단하게 한다 -c 소스 파일을 컴파일만 하고 링크를 수행하지 않으며, 오브젝트 파일을 생성한다. -o 바이너리 형식의 출력 파일 이름을 지정하는데, 지정하지 않으면 a.out라는 기본 이름이 적용된다 -I 헤더 파일을 검색하는 디렉토리 목록을 추가한다. -L 라이브러리 파일을 검색하는 디렉토리 목록을 추가한다. -l 라이브러리 파일을 컴파일 시 링크한다. -g 바이너리 파일에 표준 디버깅 정보를 포함시킨다. -ggdb 바이너리 파일에 GNU 디버거인 gdb만이 이해할 수 있는 많은 디버깅 정보를 포함시킨다. -O 컴파일 코드를 최적화시킨다. -ON 최적화 N단계를 지정한다. -DFOO=RAR 명령라인에서 BAR의 값을 가지는 FOO라는 선행 처리기 매크로를 .. 더보기
리눅스 명령어 ※ 파란색: 폴더. 검정색:파일※ X-Window: 리눅스를 그래픽환경에서 사용할수 있는 것을 말함 ※ 자동완성기능: Tab 키. 두번 클릭 시작한 글자로 출력 ※절대/상대 경로 절대경로: "/"가 붙은 경우 리눅스의 모든 폴더의 시작은 root(/). cd /My/a/d: My폴더 내의 a내의 d폴더로 이동 상대경로: 현재 디렉토리가 기준 •리눅스 명령어 1. man: 명령어 설명 예. man ls: ls의 설명 (.Q =exit) 2. cd: 디렉토리 이동 예. cd /: root(/) 디렉토리로 이동cd .. : 상위 폴더로 이동 cd ~: 로그인한 계정의 홈 디렉토리로 이동 3. ls: Dos에서 Dir 기능 ls . : 현재 폴더 파일 출력ls .. :상위폴더의 파일 출력ls ../.. :상위 .. 더보기
GNU와 유닉스 명령어 학습과제1. 유닉스 명령어를 이용한 효과적인 작업2. 필터를 이용한 텍스트 스트림 처리3. 기본적인 파일 관리4. 유닉스 스트림, 파이프, 리다이렉션 사용5. 프로세스 생성, 모니터링, 제거6. 프로세스 실행 우선 순위 변경7. 정규식을 이용한 텍스트 파일 검색 학습과제 1: 유닉스 명령어를 이용한 효과적인 작업셸(shell)은 프롬프트를 출력하고 사용자의 명령을 처리하는 프로그램이다.배시(bash): 리눅스에서 기본적으로 사용, 'Bourne-Again SHell'이라는 의미이며 sh의 GNU 변형판이다. 대화적 셸셸은 리눅스 시스템에서 수행하는 대부분의 작업을 자동화하는 강력한 프로그래밍 환경을 제공하고 시스템에 명령을전달하는 기능이 있다.명령 프로프트는 셸이 표준 입력 장치로 명령을 받을 준비가 되.. 더보기