###############################[ Rpm -Va ]#########################################
명령어 : Rpm -va
패키지들을 검증해서 패키지 변조여부를 확인 할 수 있다.
만일 검증 결과 아무런 변화가 없다면 출력되는 것이 없습니다.
비교 결과 문제점이 발견되면 결과를 출력합니다.
출력 결과는 8글자의 문자열을 출력하고 다음에 c 가 나오면 설정 파일임을 뜻하며 다음에는 파일 이름을 차례로 한 줄로 출력합니다.
처음의 8글자들은 RPM 데이터베이스와 각 특성을 비교한 결과를 출력하게 됩니다.
점 한 개 (.) 는 아무 이상이 없다는 것을 의미합니다.
만일 비교 결과 문제점이 발견되면 다음과 같은 문자가 나타납니다.
5- MD5 체크섬
S- 파일크기
L- 심볼릭 링크
T- 파일 수정 시간
D- 장치
U- 사용자
G- 그룹
M – 모드 (허가와 파일 유형 포함)
? – 읽기 불가 파일
________________________________[ END ]_____________________________________________
############################[ linux version information ]#########################
로그인 정보수정 및 리눅스 버젼 정보 숨기기
/etc/\motd
/etc/issue / 릴리즈 정보
/etc/issue.net 릴리즈 정보
/etc/redhat-release 릴리즈 정보
/etc/services 포트 정보 주석처리하면 포트 막힘.
________________________________[ END ]_____________________________________________
############################[ TCP 3 handshake ]###################################
Client Server
김의일
┏━━━━━┓ 전민성
┃ Syn_sent ┃ >>>>>>>>>>>>>>>>> (SYN) >>>>>>>>>>>>>>>
┗━━━━━┛ ┏━━━━━━━┓
┃ Syn_receive ┃
┗━━━━━━━┛
<<<<<<<<<<<<<<<< (SYN_ACK) <<<<<<<<<<<<
┏━━━━━━┓
┃Established ┃
┗━━━━━━┛ ┏━━━━━━┓
>>>>>>>>>>>>>>>>>> (SYN) >>>>>>>>>>>>>> ┃Established ┃
┗━━━━━━┛
┏━━━━━━┓
┃ connection ┃
┗━━━━━━┛
________________________________[ END ]_____________________________________________
############################[ NMAP 옵션 값 ]######################################
NMAP 옵션값
-sT 일반적인 TCP 포트 스캐닝
-sS 이른바 ‘half open 스캔으로 추적이 어렵다.
-sP ping 을 이용한 일반적인 스캔
-sU UDP 포트 스캐닝
-PO log 기록과 filtering 을 피할 수 있다.
-PT 일반적이 ICMP ping 이 아닌 ACK 패킷으로 ping 을 보내고
Rst 패킷으로 응답을 받는다
-PI 일반적인 ICMP ping 으로 방화벽이나 필터링에 의해 걸러진다.
-PB ping을 할 때 ICMP ping 과 TCP ping 을 동시에 이용한다.
-PS ping 을 할 때 ACK 패킷대신 SYN 패킷을 보내 스캔
-O 대산 호스트의 OS 판별
-P 대상 호스트의 특정 포트를 스캔하거나, 스캔할 포트의 범위를 지정 Ex) –p 1-1024
-D Decoy 기능으로 대상 호스트에게 스캔을 실행한 호스트의 주소를 속인다.
-F /etc/services 파일 내에 기술된 포트만 스캔
-I TCP 프로세서의 identd 정보를 가져온다.
-n IP 주소를 DNS 호스트명으로 바꾸지 않는다. 속도가 빠르다.
-R IP 주소를 DNS 호스트명으로 바꿔서 스캔. 속도가 느리다.
-o 스캔 결과를 텍스트 파일로 저장.
-i 대상 호스트의 정보를 지정한 파일에서 읽어서 스캔
-h 도움말 보기
________________________________[ END ]_____________________________________________
############################[ Apache Webserver 보안 ]#############################
------------------------------------------------------------------------------------
#우선 컴파일 전에 source 를 수정 함으로 몇 가지 내용을 보안 적으로 설정 하겠다.
1 Httpd.h 혹은 ap_release.h 파일을 수정 함으로써 banner grabbing 을 통한 web server version 을 노출하는 것을 막는다.
2 아파치의 기본적인 최대 httpd 프로세스 개수 >> mpm 을 사용하는 pork 의 방식이 prefork와 worker 방식이 있는데 요새는 worker 를 많이 쓰는 추세이다.
Mod_rewrite 한글 문서
http://httpd.apache.org/docs/2.2/ko/misc/rewriteguide.html
http Banner grabbing 방법
1 telnet hostname 80 연결 후에 HEAD /HTTP /1.0 입력하고 엔터 치면 무언가 나온다.
2 wget –S -–spider 호스트 주소
------------------------------------------------------------------------------------
------------------------------------------------------------------------------------
banner grabbing 방지 차원에서 banner 정보 변조
httpd 서버 컴파일 전에 바꿈
[root@kakasi include]# pwd
/usr/local/src/apm/httpd-2.2.14/include
[root@kakasi include]# vi ap_release.h
```````````````````````````````````````````````````````````````````
27 #define AP_SERVER_COPYRIGHT \
28 "ⓒ 2008 Microsoft Corporation. All rights reserved."
41 #define AP_SERVER_BASEVENDOR "Microsoft Corporation"
42 #define AP_SERVER_BASEPROJECT "Microsoft IIS Web Server"
43 #define AP_SERVER_BASEPRODUCT "Microsoft IIS/6.0"
44
45 #define AP_SERVER_MAJORVERSION_NUMBER 6
46 #define AP_SERVER_MINORVERSION_NUMBER 0
47 #define AP_SERVER_PATCHLEVEL_NUMBER 15
48 #define AP_SERVER_DEVBUILD_BOOLEAN 0
````````````````````````````````````````````````````````````````````
:wq
------------------------------------------------------------------------------------
------------------------------------------------------------------------------------
<컴파일 및 설치>
[root@kakasi httpd-2.2.14]# ./configure \
> --prefix=/usr/local/http \
> --enable-mods-shared=all \
> --enable-so \
> --enable-rewrite \
> --enable-ssl \
> --with-mpm=worker \
> && make && make install
컴파일 설치 및>
------------------------------------------------------------------------------------
------------------------------------------------------------------------------------
[root@kakasi conf]# vi httpd.conf
````````````````````````````````````````````````````````````
116 User webuser
117 Group webuser
````````````````````````````````````````````````````````````
:wq
------------------------------------------------------------------------------------
------------------------------------------------------------------------------------
[root@kakasi httpd-2.2.14]# useradd -M -s /bin/false webuser
------------------------------------------------------------------------------------
------------------------------------------------------------------------------------
httpd 서버 데몬 확인
[root@kakasi conf]# ps -ef |grep httpd
root 5266 1 1 04:15 ? 00:00:00 /usr/local/http/bin/httpd -k start
webuser 5273 5266 0 04:15 ? 00:00:00 /usr/local/http/bin/httpd -k start
webuser 5274 5266 0 04:15 ? 00:00:00 /usr/local/http/bin/httpd -k start
webuser 5275 5266 0 04:15 ? 00:00:00 /usr/local/http/bin/httpd -k start
webuser 5282 5266 0 04:15 ? 00:00:00 /usr/local/http/bin/httpd -k start
------------------------------------------------------------------------------------
------------------------------------------------------------------------------------
httpd의 부모프로세스
[root@kakasi conf]# ps -ef |grep init
root 1 0 0 01:08 ? 00:00:03 init [5]
------------------------------------------------------------------------------------
------------------------------------------------------------------------------------
서버의 배너 그랩 확인
[root@kakasi conf]# wget -S --spider http://localhost
--04:16:00-- http://localhost/
Resolving localhost... 127.0.0.1
Connecting to localhost|127.0.0.1|:80... connected.
HTTP request sent, awaiting response...
HTTP/1.1 200 OK
Date: Tue, 13 Oct 2009 19:16:00 GMT
Server: Microsoft IIS/6.0/6.0.15 (Unix) mod_ssl/6.0.15 OpenSSL/0.9.8e-fips-rhel5 DAV/2
Last-Modified: Sat, 20 Nov 2004 20:16:24 GMT
ETag: "1e8a5a-2c-3e9564c23b600"
Accept-Ranges: bytes
Content-Length: 44
Keep-Alive: timeout=5, max=100
Connection: Keep-Alive
Content-Type: text/html
Length: 44 [text/html]
200 OK
------------------------------------------------------------------------------------
------------------------------------------------------------------------------------
[root@kakasi conf]# telnet localhost 80
Trying 127.0.0.1...
Connected to localhost.localdomain (127.0.0.1).
Escape character is '^]'.
HEAD / HTTP /1.0
HTTP/1.1 200 OK
Date: Tue, 13 Oct 2009 19:16:11 GMT
Server: Microsoft IIS/6.0/6.0.15 (Unix) mod_ssl/6.0.15 OpenSSL/0.9.8e-fips-rhel5 DAV/2
Last-Modified: Sat, 20 Nov 2004 20:16:24 GMT
ETag: "1e8a5a-2c-3e9564c23b600"
Accept-Ranges: bytes
Content-Length: 44
Connection: close
Content-Type: text/html
Connection closed by foreign host.
------------------------------------------------------------------------------------
[root@kakasi conf]# cp ../bin/apachectl /etc/init.d/httpd
[root@kakasi conf]# vi /etc/init.d/httpd
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
1 #!/bin/sh
2 #chkconfig:2345 90 90
3 #description:init file for Apache Server daemon
4 #processname:/usr/local/http/bin/apachectl
5 #config:/usr/local/http/conf/httpd.conf
6 #pidfile:/usr/local/http/logs/httpd.pid
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
:wq
[root@kakasi conf]# chkconfig --add httpd
[root@kakasi conf]# chkconfig --level 3 httpd on
[root@kakasi conf]# service httpd stop
[root@kakasi http]# ls
bin build cgi-bin conf error htdocs icons include lib logs man manual modules
[root@kakasi http]# mkdir web
[root@kakasi http]# chown -R webuser:webuser web
[root@kakasi http]#
[root@kakasi http]#
[root@kakasi http]# vi conf/httpd.conf
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
155 DocumentRoot "/usr/local/http/web"
182
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
:wq
[root@kakasi http]# cd web
[root@kakasi web]# touch index.html
[root@kakasi web]# echo hello world > index.html
이제 /etc/sysconfig/iptables 에 80포트 추가해준다.
그다음 익스플로러로 테스트
<끝>
________________________________[ END ]_____________________________________________