카테고리 없음2009. 8. 4. 13:47
①②⒤③④[연습문제]

1. 브로드캐스트 ping을 보내는 올바른 명령은 무엇인가? ③
①ping 192.168.0.255 broadcast     ② ping -b
③ping -ba 192.168.0.255           ④ ping -b 192.168.0.0

-a : audible ping 이거 쓰면 ping 날릴때마다 삑삑 소리내면서 날림
-b : Allow pinging a broadcast address

2. 패킷을 생성하는 데 사용되는 라이브러리는 무엇인가? ①
① Libnet            ②Libnids
③ Libpcap          ④OpenSSL

Libnet(Library Network) : 응용 프로그램이 패킷을 생성하여 보낼 수 있게 해주는 라이브러리로, 직접 패킷을 생성하는 것보다 훨씬 더 간단하게 패킷을 생성하여 보낼 수 있다.
Libpcap(Library Packet Capture) : 네트워크 카드에 유입된 정보를 응용 프로그램이 읽을 수 있는 형태로 전환해 준다.
DB : 데이터베이스 라이브러리다.
Libnids(Library Network Intrusion Detection System) : 스니퍼나 네트워크 분석 프로그램을 작성할 때 유용하다.
OpenSSL(Open Secure Socket Layer) : 암호화 라이브러리다.

3. 패킷을 캡처하는 데 사용되는 라이브러리는 무엇인가? ③
① Libnet            ②Libnids
③ Libpcap          ④OpenSSL

4. ARP 스푸핑을 막는 방법이 아닌것은?
① MAC 테이블을 static하게 설정한다.
② 스위치의 포트별로 연결 가능한 MAC 주소를 설정해 둔다.
③ 암호화를 한다.
④ VLAN을 설정해 둔다.

VLAN에 대한 영문설명 : http://www.cs.wustl.edu/~jain/cis788-97/ftp/virtual_lans/index.htm
①번은 맞는말②번도 맞는말같음.③④
http://blog.daum.net/kcc1335/494

예전것/Linux Basic2009. 8. 4. 10:40
Nvidia 사의 캐간지 그래픽 카드 Geforce 6600 GE 를 가지고있는데 CentOS를 처음 설치하면
성능발휘가 안된다...

step 1
일단 www.nvidia.com  을 방문하자 그곳에서 자신에게 맞는 그래픽 드라이버를 찾고 다운로드한다.
(언어를 한글로하면 다운이 안되더라.. 영어로 맞추고 가면 되더라) 

step 2
이게 x-window상에서는 설치가 안된다.
#sbin/init 3 명령으로 텍스트모드로 전환하고 바로 설치하면 머머가 또 안된다고 뜬다.
바로 gcc와 kernel-devel이 설치 안되서 그런것!(kernel-devel이란? provides kernel headers and makefiles sufficent to build modules against the kernerl package)
바로 설치하자

#yum -y install gcc kernel-devel

step 3
그래도 안된다는 문구를 볼 수 있을것이다. 이는 kernel source path 가 어딘지 설치프로그램이 인식하지 못해서 생기는 문제로 생각된다. (기본이 /usr/src/linux 인듯하다. 이것과 다르면 어딘지 모르겠다고 나온다.)
나의 경우엔 /usr/src/kernel/2.6...(어쩌고 커널버전 ~~)에 있었다.
- 이것이 kernel-devel을 설치해야 보이는 경로일것이다.
따라서 이 경우에는 kernel-source-path 를 지정해 줘야한다.

#sh NVDIA-(어쩌고..설치파일) --kernel-source-path=(설치된곳)

끝. 설치가 아주 잘된다. 에러도 없다.  마지막에 x윈도우에 머 설정할거냐 하는데 그냥 yes

시스템이 재부팅?(잘기억이 나지 않는다. /sbin/init 5로 다시 들어갔었나..)
되고 알아서 모니터에 맞게 되해상도를 찾아주었다.
귀엽다.




'예전것 > Linux Basic' 카테고리의 다른 글

SETSUID에 대하여  (0) 2009.09.07
rlogin, rsh 설치  (0) 2009.08.07
emacs의 설정  (0) 2009.07.16
리눅스에서 키설정 & 디버깅  (0) 2009.07.16
NFS 간단설정  (0) 2009.07.12
카테고리 없음2009. 7. 31. 22:52

연습문제
1. 다음중 ICMP 프로토콜을 사용하는 공격은 어떤것인가? ②
① SYN Flooding : TCP의 3-way hand-shaking을 이용하는것
② Ping of Death : ping이 이용하는 ICMP 프로토콜을 이용한 공격
③ Teardrop
신뢰성있는 연결은 다음 세가지 조건을 만족해야한다.
1. 패킷의 순서가 올바른가?
2. 중간에 손실된 패킷은 없는가?
3. 손실된 패킷의 재전송 요구
Boink, Bonk및 Teardrop은 공격 대상이 모두 이러한 반족적인 재요구와 수정을 계속하게 함으로써 시스템의 자원을 고갈시키는 공격이다.
Teardrop은 UDP를 이용하는 것으로 단순히 시퀀스 넘버를 일정하게 바꾸는 것이 아닌, 중첩과 빈 공간을 만들며, 좀더 복잡하게 시퀀스 넘버를 섞는다.
④ Land
(나쁜 상태에)빠지게 하다. 라는 뜻을 가짐
패킷을 전송할 때 출발지 IP주소와 목적지 IP주소 값을 똑같이 만들어서 공격 대상에게 보내는것이다.
이 공격법은 SYN Flooding 공격처럼 동시 사용자 수를 점유해버리며, CPU 부하까지 올리게 된다.

2. TCP 세션 설정 과정인 '3-웨이 핸드쉐이킹'의 취약점을 이용한 공격은 어떤 것인가? ④
① Smurf : 공격자가 라우터 건너 다른 네트워크의 pc에 Direct 브로드 캐스트를 해서 ICMP request를 받은 이 네트워크는 위조된 시작 IP주소로 ICMP Reply를 하게되고 공격대상 pc가 수많은 ICMP Reply를 받게 되어서 Ping of Death처럼 시스템을 과부하 상태로 만든다. (모든 라우터가 Direct 브로드캐스트를 지원하는 것은 아니다.)
② Ping of Death
③ Teardrop
④ SYN Flooding

3. Land 공격의 출발지 주소와 목적지 주소가 바르게 묶인것은?
Land공격은 패킷을 전송할때 출발지주소와 목적지 주소를 같게해서 공격대상에게 보내는것이다.

4. Smurf는 ICMP Echo Request를 이용한 공격이다. 이 Echo Request 패킷을 에이전트들에게 뿌리기 위해서 라우터에서 지원되어야 하는 것은 무엇인가?
위에서도 언급했지만 라우터가 Direct 브로드캐스트를 지원해야가능하다

5. 이더넷에서 전송할 수 있는 패킷 데이터의 최대 크기는?
1480  - 기억

6. DDoS 툴이 아닌것은? ③
① TFN 2K                       ② Trinoo
③ Smurf                         ④ Stacheldraht

7. DDoS 툴의 구성 요소에 대해 각각 설명하라.
마스터 : 공격자에게서 직접 명령을 받는 시스템으로 여러 대의 에이전트(agent)를 관리하는 시스템
핸들러 : 프로그램 마스터 시스템에서 위와같은 역할을 수행하는 프로그램
에이전트 : 공격 대상에 직접적인 공격을 가하는 시스템
데몬 : 에이전트 시스템에서 위와 같은 역할을 수행하는 프로그램

8. 윈도우용 로컬상의 통신 및 공유를 위해 개발된 프로토콜은 무엇인가? ④
① http                                                                           ② TCP
③ SNMP -Simple Network Management Protocol                ④ NetBIOS

9. 다음 중 시스템 자원 고갈 공격이 아닌 것은? ④
① 디스크 고갈 공격           ② 메모리 고갈 공격
③ 프로세스 고갈 공격        ④ 동시 사용자 고갈 공격

10. 방화벽에서 패킷의 차단 및 허용을 설정하는 기준이 아닌 것은? ④
① 패킷의 출발지 주소               ② 패킷의 목적지 주소
③ 프로토콜                             ④ 접속을 요청한 클라이언트의 위치

방화벽은 다음과 같은 사항에 의해 차단될수 있다.
1. 출발지 주소
2. 목적지 주소
3. 시도하고자 하는 서비스(포트번호)
4. 프로토콜

11. NetBIOS는 몇 번 포트를 사용하는가? ④
① 23                              ② 53
③ 445                             ④ 139

12. 서비스 거부 공격이라 할 수 없는 것은 무엇인가? ④
① 데이터 베이스의 모든 데이터를 지웠다.
② 여러 사람들이 동시에 웹 서버에 접속하여 잘못된 문자열을 계속 실행시켰다.
③ 텔넷 데몬을 종료시켰다.
④ 패스워드 프로그램의 오류를 이용하여 관리자의 권한을 획득했다.

DoS(Denial of Service) 공격은 다음과 같이 크게 세 가지로 나뉜다.
파괴공격 : 디스크나 데이터, 시스템의 파괴
시스템의 자원고갈 : CPU, 메모리, 디스크의 사용에 과다한 부하를 가중시킴
네트워크 자원의 고갈 : 쓰레기 데이터로 네트워크의 대역폭을 고갈시킴

[심화 연습 문제]
1. DoS 공격을 막기 위한 방지책을 아는 대로 나열하라.
Reading2009. 7. 21. 11:45

이기적 유전자. 읽기 쉬운책이 아니다. 복잡하고 미묘하다. ㅋㅋ
읽는 중에 좀 와닿는 부분이 있었다.

윈-에드워즈는 높은 사회 순위가 번식의 자격을 나타내는 또 하나의 티켓이라고 생각한다. 직접 암놈을 에워싸고 싸우는 대신에 개체는 사회적 지위를 걸고 싸우기 때문에, 만일 상위의 사회적 지위에 도달하지 못할 경우에는 그들은 번식의 자격이 없는 것으로 자인한다는 것이다. 물론 하위의 개체는 끊임없이 높은 사회적 지위를 향해 나아가려고하고, '간접적'으로는 암놈을 가지고 경쟁하고 있지만 직접 암놈이 개입된 문제에 관해서는 자제한다는 것이다.


책은 모든 현상을 동물에 비유하고 있다. 동물을 관찰했더니 이러더라, 이럴것이다. 이런식이다.
그런데 저위의 글은 읽으면서 사람을 겨냥하고 쓴듯한 느낌을 받았다. 사람은 동물처럼 한 수놈이 여러 암놈을 거느릴수 없게 법으로 제재를 해놓았기 때문에 상위의 사회적 지위에 있는데도 번식의 자격을 나타내지 못한다.
하지만 다른 방법을 이용한다. 우월한 암놈 - 우월한 암놈은 예쁜. 젊은. 암놈이다. - 을 차지하면서 번식의 자격을 드러내는 것 같다. 우리의 티켓은 돈이다. 잘생긴 거지에게 매력을 느끼기는 쉽지 않은일이다.

좀 과장된 생각이기도 하지만 사회적 지위를 얻기 위함은 어쩌면 암놈을 가지고 경쟁하는 것이다라고 생각 해볼 수도 있겠다. 즉, 여자를 차지하기위해 돈을 번다..... 

자본주의 사회에서의 남자의 능력은 호랑이의 민첩하고 날카로운 발톱과 뾰족한 이빨에 해당한다고 할수 있을것같다. ㅋㅋ 다아는 뻔한 얘기다.

'Reading' 카테고리의 다른 글

철학읽기  (0) 2010.09.12
개밥바라기 별, 바리데기  (0) 2009.07.08
예전것/Linux Basic2009. 7. 16. 22:29
참조: 거의 모든것이 설명되어있다!!
http://wiki.kldp.org/wiki.php/EmacsTinyTips#s-3.7

First
emacs를 사용하기 위해 기본적으로 명령어를 알자 ctrl+h t 를 누르면 튜토리얼 모드로 들어간다.
이곳에서 emacs의 명령과 사용방법을 볼 수 있다.

Second
본격적인 설정이다.
http://www.emacswiki.org/cgi-bin/wiki/ColorTheme#toc2
이곳을 보고 우선 Color-theme를 설치하자. 영어로 되어있지만 해석하고 설치(installing부분만)
M-x color-theme-select로 ColorTheme를 설정할 수 있다.

또, C언어를 하는데 syntax마다 색깔을 다르게 주고싶을 것이다. (여느 다른 프로그램처럼)

emac를 띄운 상태에서 M-x font-lock-mode 라고 치거나(M-x 는 보통 Alt+x

설정파일(.emacs 등) 에 다음을 넣어라.

(add-hook 'c-mode-hook 'turn-on-font-lock)

◆개별 사용자에게 적용하려면 .emacs에 하는게 맞지만 모든 사용자가 그렇게하도록

/usr/share/emacs/site-lisp/site-start.el 파일에 위 내용을 추가하였다.


---나머지 설정---

처음 emacs를 설치하면 font가 형편없다. 내가 좋아하는 font로 설정해주자.

http://wiki.kldp.org/wiki.php/EmacsChangeFonts

이곳을 보고 따라하자.

내경우엔

ln -s .Xdefaults .Xdefaults-$HOSTNAME (심볼릭링크를 걸어라!)

을 해주어야지 .Xdefaults 파일을 emacs에서 제대로 읽었다. (CentOS 5.3사용중, 예전에는 .Xdefaults였으나 바뀌었다고 한다.)


자 이것으로 emacs 설정 끝

'예전것 > Linux Basic' 카테고리의 다른 글

rlogin, rsh 설치  (0) 2009.08.07
CentOS 5.3 그래픽 드라이버 설치  (0) 2009.08.04
리눅스에서 키설정 & 디버깅  (0) 2009.07.16
NFS 간단설정  (0) 2009.07.12
BASH SHELL LAB EXERCISE  (0) 2009.06.08
예전것/Linux Basic2009. 7. 16. 01:09

디버깅을 위해 참조하자
http://wiki.kldp.org/wiki.php/EmacsGdbEtagsCscope

 - console상에서의 키 설정 : loadkeys 이용한다.
키보드상의 Caps Lock과 Ctrl 키를 바꾸려면 아래와 같이 하면 된다. (keymaps 0-15를 사용한다고 가정했다. dumpkeys | head -1로 확인해볼 수 있다.)

        % loadkeys        keymaps 0-15        keycode 58 = Control        keycode 29 = Caps_Lock        %
 
위에 내용을 차례대로 한줄씩 입력 다 하고 EOF해야하던데...ctrl+d던가

디버깅으로 돌아와서 cscope 사용하는데 설정 문제가 좀있다. 기본적으로 리눅스 설치했을때 cscope는 설치가 안되어있다. emac에서 cscope가 구동되게 하기위해서 아래와 같은 작업을 한다.
#yum -y install cscope
로 설치 
1. <alt+x>load-library /usr/share/emacs/site-lisp/xcscope.el
위와같이하면 cscope를 사용할 수 있다. 하지만 매번 해줘야하므로 다음과같이한다.
#vi /usr/share/emacs/site-lisp/site-start.el
(load-library "xcscope.el") 을 추가한다.   //주의 : 반드시 괄호를 넣어라. " " 안에 들어가는것은 라이브러리

http://wiki.kldp.org/wiki.php/EmacsInstallScript
이곳에 더 자세한 설명이 나와있다.

'예전것 > Linux Basic' 카테고리의 다른 글

CentOS 5.3 그래픽 드라이버 설치  (0) 2009.08.04
emacs의 설정  (0) 2009.07.16
NFS 간단설정  (0) 2009.07.12
BASH SHELL LAB EXERCISE  (0) 2009.06.08
.bash_profile , hash  (0) 2009.06.04
카테고리 없음2009. 7. 14. 21:32

Project -> Settings
Debug탭에서

3번째 Program arguments 부분에 인자값을 넣어준다... 참쉽죠

[연습문제]

1. 다음중 사용자 계정을 목록화하는 유틸리티가 아닌 것은? ①
①tftp                          ②rusers
③rwho                       ④finger

2. finger 서비스에서 알아낼 수 없는 내용은 무엇인가? ④
①사용자연결               ②공유 디렉토리
③사용자 계정과 셸       ④메일 확인 시간

3. 클라이언트가 요구하는 서비스에 대해 RPC가 할당하는 포트의 범위는? ③
①1024번 포트 미만               ②1000번 포트 미만
③10000번 포트 이상              ④65535번 포트 이상

※ RPC(Remote Procedure Call)는 111번 포트를 이용하여 클라이언트가 요구하는  연결에 대한 포트를 클라이언트에게 알려주는 서비스.
 클라이언트가 SQL에 연결하고 싶을 때 자체의 포트 번호를 알지 못하면, RPC 서비스를 제공하고 있는 시스템은 10000번 이상의 번호중 SQL 서비스를 제공하는 포트를 할당하여 클라이언트에게 이를 알려준다.

4. 목록화 작업을 하지 않아도 되는 것은 무엇인가?
① 응용 프로그램 목록화
② 공유 자원 목록화
③ 해킹 공격 목록화
④ 사용자 계정 목록화
------------------------------------------------------------------------------------------------------
※공유 자원 목록화 : 공유 자원에 대한 목록화는 시스템을 침투하는 데 간접적인 도움을 준다. 다시 말하면, 상대 시스템의 설정이나 상태를 바꿀 수는 없지만 대상 시스템의 정보를 가져오기 위한 전 단계므로 매우 중요하며 치명적일 수 있다.
※사용자와 그룹 목록화 : 사용자 계정을 알아내는 것은 패스워드를 알아내기 위한 바로 전 단계다.
※응용프로그램 목록화 : 침입 대상에 대한 조사를 하다 보면 정상적인 응용프로그램이 아닌 엉뚱한 백도어 프로그램 등이 구동되고 있는 등 황당한 경우가 많다. 응용 프로그램의 목록화와 사용자에 대한 목록화는 침입에 직접적인 영향을 줄만큼 중요하다.
------------------------------------------------------------------------------------------------------

[심화 연습 문제]
1. 목록화란 무엇인가?
 - 목록화(enumeration)는 지금까지 얻어낸 정보들을 잘 정리하는 것이다. 마치 목차를 써서 한눈에 알아볼 수 있게 하는 것과 같으며, 이것은 실제 공격 바로 전 단계라고 할 수 있다.

2. NFS에 대해 간단히 설명하라
 - Network File System (NFS)은 썬 마이크로 시스템(SUN)에서 네트워크를 통해 파일을 공유할 수 있도록 만든 프로토콜 이다. NFS는 하드웨어, 운영체제 또는 네트워크 구조가 달라도 파일을 공유 할 수 있도록 고안되었다. 파일 공유등을 비롯해 다른 부가 기능을 제공한다. 하지만 공유된 파일들에 대한 보안 문제가 생길 수도 있다. 사용하는 프로토콜은 Network Lock Manager (NLM)과 Network Status Monitor (NSM)이다.

기능상 삼바와 비슷하지만 가장 큰 차이는 커널에서 NFS를 지원한다는 점이다.

NFS는 리눅스머신에서 윈도우 파티션을 마운트하여 사용하듯 NFS서버의 특정 디렉토리를 클라이언트에서 마운트하여 자신의 영역인것처럼 사용한다.

그러나 위와 같은 편리한 점에도 불구하고 보안상 많은 취약점을 드러내고 있다. 가장 단적인 예로 클라이언트인양 속여서 서버에 접속하게 되면 특정 디렉토리를 마음대로 조작할 수 있는 단점이 있다.

NFS는 스토리지가 고가였던 시절 디스크가 없는 시스템을 지원하기 위하여 개발되었으나 스토리지 및 컴퓨터의 성능이 좋아지면서 파일 공유 및 파일 서버를 위한 방법으로 사용되고 있다.


3. TFTP 서비스가 위험한 이유를 설명하라.
TFTP(Trivial File Transfer Protocol)는 기본적으로 FTP와 비슷하나 인증이 존재하지 않아 누구나 TFTP 서버에 파일을 쓰고 지울 수 있다. 대부분의 시스템에서는 보안상의 문제로 TFTP 서버를 운영하지 않는다. 하지만 라우터와 스위치 등은 TFTP를 기본적으로 구동하고 있다. 라우터와 스위치등의 운영체제가 손상되었을 경우 네트워크에서 해당 운영체제를 복사해오기 위해서다.

4. RPC가 무엇인지 간단히 설명하라.
위에 설명했음

5. NFS 공유 목록을 보는 방법에 대해 설명하라.
형식-> showmount -e ip주소
예)      showmount -e 192.243.243.1   



예전것/Linux Basic2009. 7. 12. 22:29

http://flashcafe.org/server_study/12376

이곳에 잘 써있다~~

'예전것 > Linux Basic' 카테고리의 다른 글

emacs의 설정  (0) 2009.07.16
리눅스에서 키설정 & 디버깅  (0) 2009.07.16
BASH SHELL LAB EXERCISE  (0) 2009.06.08
.bash_profile , hash  (0) 2009.06.04
CentOS netinstall  (0) 2009.05.22
카테고리 없음2009. 7. 10. 14:11
1. whois 정보를 관리하는 기관은 어디인가? 
 - InterNIC (Internet's Network Information Center)
2. whois에서 알 수 있는 내용이 아닌것은?
① 등록및 관리기관                        ② 목표사이트 네트워크 주소와 IP주소
③ 레코드 생성시기와 업데이트 시기 ④ 주 DNS서버와 부 DNS서버의 위치

주DNS서버와 부DNS서버가 무엇인지는 알 수 있지만 위치까지는 알 수 없다.

3. DNS의 역할이 아닌것은?
① IP주소에 대한 도메인 네임을 얻어낸다.
② 방화벽과 같은 보안 장비중 하나다.
③ 부 DNS서버는 단순히 백업용이다.
④ 도메인 주소에 대한 IP주소를 얻어낸다.

4. 다음중 메일 서버에 해당하는 레코드명은?
① A (Address - 단일 호스트 이름에 해당하는 IP주소는 여러개 있을 수 있으며, 각각의 동일한 IP주소에 해당되는 여러 개의 호스트 이름이 있을 수 잇다. 이때 사용되는 레코드)                     
② SOA (Start Of Authority - 도메인에 대한 권한을 갖는 서버를 표시한다.)
③ NS (Name Server - 도메인에는 적어도 한 대 이상의 DNS 서버가 존재해야 한다.)
④ MX (Mail eXchanger - 도메인 이름으로 보낸 메일을 받도록 구성되는 호스트 목록을 지정)

5. 다음중 DNS서버가 아닌것은?
DNS서버는 주 DNS, 부DNS , 캐시 DNS가 있다.

6. 윈도우와 리눅스에서 호스트(hosts)파일의 위치는 ?
윈도우 - C:\WINDOWS\system32\drivers\etc
리눅스 - /etc/hosts

심화 연습문제

1. DNS 이름의 해석과정을 설명하라

1. 클라이언트가 예를 들어 www.google.com 에 접속하려고 한다. 이미 접속했던 사이트여서 캐시에 정보가 남아있으면 클라이언트는 바로 접속 할 수 있다.
2. 캐시에 정보가 없을 경우에 호스트 파일을 참조한다.
3. 호스트 파일에도 없을경우 시스템에 설정되어있는 로컬 DNS서버에 질의 한다.
4. 로컬 DNS서버에 해당 정보가 없을경우 루트 DNS에 질의
5. 루트DNS에 없을경우 com을 관리하는 DNS서버에 대한 정보를 로컬 DNS서버에 보내준다.
6. 로컬 DNS서버는 다시 com DNS서버에 질의 하고 com은 다시 google.com에게 질의하도록 로컬 DNS서버에게 보낸다.
7. 로컬 DNS서버는 마지막으로 google.com DNS서버로부터 www.google.com의 IP주소를 얻어와 클라이언트와 연결

- 최악의 경우에 이렇다.

2. DNS의 레코드에는 어떤 것들이 있는가?
연습문제 4에서 언급하지 않은것만
PTR (Pointer) - PTR레코드를 사용하면 특수 이름이 도메인의 일부 다른 위치를 가리킬 수 있다. 각 인터넷 주소의 PTR레코드는 정확히 한개만 있어야한다.
CNAME(Canonical Name) - 호스트의 다른이름을 정의하는 데 사용한다.
canonical - 6. 언어】 <언어형식·턴이> (어떤 언어에) 특징적인, 일반적인, 기본적
HINFO(Hardware Info) - 해당 호스트의 하드웨어 사양을 표시한다.
ANY(ALL) - 위의 모든 레코드를 표시한다.

3. DNS 서버의 존(zone)전송 범위의 제한은 어떻게 해결할까?
/etc/named.conf 파일에서
options {
          allow-transfer{ IP주소};
};
이렇게 허용하는 IP주소를 써준다.

4. 윈도우에서 자신의 스스템의 캐시에 저장된 DNS 정보를 보기 위한 명령과 삭제하기 위한 명령은 각각 무엇인가?
ipconfig /displaydns
ipconfig /flushdns