페이지

이 블로그 검색

Copyright 2017. SHK. All rights reserved. Powered by Blogger.

2012년 8월 26일 일요일

PCIDSS



1. PCIDSS의 개요
- 신용카드를 취급하는 가맹점과 서비스 제공업체들이 준수해야 하는 엄격한 정보보호 표준.
- 2011.12까지는 PCIDSS1.21과 2.0 병행 가능하나, 2012년 이후에는 2.0을 기준으로 인증받아야 함.

2. PCIDSS 버전 2.0에 대한 요약
 - 기존의 모호한 표현의 요구사항을 명확히 표현하고,
 - 최신의 정보보호 위협과 보안통제 경향을 반영

 1) 서버당 하나의 기능 요구, 가상 서버도 하나의 기능만.
 2) 민감한 신용카드 인증 데이터 보관 조직은 신용카드 발급회사와 신용카드 발급서비스 지원회사
 3) 신용카드번호(PAN) 잘라낸 값과 해쉬값이 같이 저장할때의 위험 고려 -> 추가적인 보안통제 적용
 4) 평문을 통한 관리를 수동으로 운영할때( 생성, 전송, 적재, 저장, 파기), 키에 대한 "split knowledge, dual control" 원칙을 명시하고, 전체 재구성을 위한 ,세사람의 조합
 5) OWASP, SANS SWE Top 25, CERT Secure Coding 적용한 개발 프로세스 구현
 6) 원격 접속시 two-factor 인증의 예로 토큰을 사용한 라디우스와 토큰을 사용한 TACACS 추가
 7) NTP 데이터에 대한 접근 제한 중요 시스템에 대한 NTP 설정변경을 로깅, 모니터링, 검토하도록 명시
 8) 분기별 취약성 스캔, 스캔결과중 "high" 대해서는 조치, 재스캔 확인

3. PCIDSS에서의 요구 정보 활동 및 주기
 1) 매일 : 서버 네트워크 장비의 로그 검토
 2) 매주 : 파일 무결성 모니터링 검토, 안티바이러스 스캔 보고서
 3) 매월 : 패치 관리
 4) 분기 : 데스크탑, 파일 서버, 데이터베이스를 대상으로 카드 데이터 검색 데이터 보존과 폐기 적용
                 서버 네트워크 장비를 대상으로 내부에서 취약성 분석
                 모든 공인 IP 대상으로 외부에서 ASV 스캐닝
                 사용자계정권한 검토, 90 비로그인 계정 삭제, 무선 분석기 통한 무선 장비 탐지
                 FW, 라우터 보안 룰셋 검토
 5) 매년
  암호키 교체, 외부 매체 보안장소에 대한 물리적 보안 점검, .외부 보관 저장매체에 대한 자산 조사
  내부, 외부 침투 테스트(네트워크), 어플리케이션 침투 테스트,
  위험 평가, 보안정책 절차 검토, 정보보호 인식 제고 교육, 침해 사고 대응 교육, 침해사고 대응 훈련
  임직원의 정보보호 정책 절차 읽고 이해했다는 확인 서명 받기

AIX HACMP 확인




한국 IBM 고우석 님이 작성한 내용입니다.

1.HACMP 는 관리관점에서 대표적으로 아래를 모니터링 하면 됩니다.

#  lssrc  -ls  clstrmgrES  | grep  state
    => ST_STABLE 이 아니면 cluster 가 비정상적인 상태임
         ST_INIT 은 cluster 살아있지 않은 상태임, ST_Barrier 등은 문제가 있음을 나타내는 것임

#  clRGinfo  -p  -t
    => 정의된 RG(Resource Group) 이 정상이면 online, 비정상이면 pending or error 로 보임

2. HACMP Heartbeat Form 이 정상인지를 확인하는 방법

#  lssrc  -ls  topsvcs
    => topology 정의시 같은 network 끼리 hearbeat ring 을 구성하고 있는 것이 정상인지 확인
        예를 들어
           Network Name  Indx  Defd  Mbrs  St  Adapter ID  Group ID
           rs232_0            [ 2]    2       1       S  255.255.0.2  255.255.0.2
           rs232_0            [ 2]    tty0                0x863cbf29  0x86406e67

           Defd / Mbrs / St  ===> 2 /2 /S 이면 정상 (two-node 경우임)        ,
                                    ===> 3 /3 /S               (three-node 인 경우)..
           위의 예제의 경우는 한노드가 ring 에서 expel 된 상태로 비정상임을 보여주고 있음.

3. HACMP event 로그를 모니터링 한다면??

#  tail  -f  /usr/es/adm/cluster.log  |  grep  EVENT
    => 문제가 생기게 되면 event  올라오게 ... event 종류에 따라 next action  달라짐.
         위와 같이 event  올라오게 되면 AIX errlog 에도 event 가 올라옴.
         // 실제 event 항목들에 대해 관리측면에서 모니터링  사항은 없습니다.
             단지  로그가 올라올 경우에 errpt  보고 무슨 event 가 발생하였는지를 확인하는 게 맞습니다. //

제가 보는 관점에서는 HACMP event 를 모니터링 하는 것은 무리가 있습니다.
위 1, 2번을 모니터링 하면 cluster가 정상인지 아닌지를 확인할 수 있기 때문에 1.2 번을 관리 포인트로 고려하시는 것이 맞을 듯 싶습니다. 

CRS(Cluster Ready Services) 다루기




참고 문헌 : 
Oracle® Database 2 Day + Real Application Clusters Guide 10g Release 2 (10.2)(http://download.oracle.com/docs/cd/B19306_01/rac.102/b28759/toc.htm)
  • Cluster Synchronization Services (CSS)—어떤 노드가 cluster의 멤버인지 제어하는 것과 노드가 cluster에서 붙고 떨어질 때 멤버에게 알리는 것을 통해 cluster의 구성을 관리한다.
  • Cluster Ready Services (CRS)—10g RAC에서 가장 중요한 프로그램이다. cluster resource인 database, instance, service, listener, virtual IP, application process등을 관리한다. crs process는 OCR에 있는 resource의 구성 정보에 기초하여 cluster resource를 관리하며 resource의 상태가 변경되면 event를 발생시킨다. crs는 oracle instance, listener 등을 모니터링 하며 이러한 component들에게 장애가 발생하였을 때 자동으로 restart 시켜준다. 초기값으로 5번의 restart를 시도하게 되어 있으며 component들이 restart하지 않을 경우 더 이상 시도하지 않는다.
  • Event Management (EVM)—crs에서 생성하는 이벤트를 표시하는 background process
  • Oracle Notification Service (ONS)—Fast Application Notification (FAN) event를 위한 서비스
  • RACG—Oracle의 특정 요구사항과 다양한 resource를 지원하기 위해 clusterware를 확장한다. FAN event가 발생하면 callout script를 실행한다.
  • Process Monitor Daemon (OPROCD)—이 프로세스는 cluster와 과다한 I/O를 모니터링 한다. OPROCD의 오류는 Oracle clusterware가 노드를 rebooting하는 것이다. Linux에서는 hangcheck timer를 사용한다.
  • CRS 시작 명령어
root 유저로 실행
# $ORA_CRS_HOME/bin/crsctl start crs


Example>

[root@rac1 ~]# crsctl start crs
Attempting to start CRS stack
The CRS stack will be started shortly
  • CRS 상태확인 명령어
root 또는 oracle 유저로 실행
$ crs_stat -t


Example>

[root@rac1 ~]# crs_stat -t
Name           Type           Target    State     Host       
------------------------------------------------------------
ora.devdb.db   application    ONLINE    ONLINE    rac2       
ora....b1.inst application    ONLINE    ONLINE    rac1       
ora....b2.inst application    ONLINE    ONLINE    rac2       
ora....SM1.asm application    ONLINE    ONLINE    rac1       
ora....C1.lsnr application    ONLINE    ONLINE    rac1       
ora.rac1.gsd   application    ONLINE    ONLINE    rac1       
ora.rac1.ons   application    ONLINE    ONLINE    rac1       
ora.rac1.vip   application    ONLINE    ONLINE    rac1       
ora....SM2.asm application    ONLINE    ONLINE    rac2       
ora....C2.lsnr application    ONLINE    ONLINE    rac2       
ora.rac2.gsd   application    ONLINE    ONLINE    rac2       
ora.rac2.ons   application    ONLINE    ONLINE    rac2       
ora.rac2.vip   application    ONLINE    ONLINE    rac2     
  •   CRS 중지 명령어
root 유저로 실행
# $ORA_CRS_HOME/bin/crsctl stop crs


Example>

[root@rac2 ~]# crsctl stop crs
Stopping resources.
Successfully stopped CRS resources
Stopping CSSD.
Shutting down CSS daemon.
Shutdown request successfully issued.


초기값으로 CRS는 OS rebooting 때에 자동으로 시작되게 되어 있다. 이것을 막으려면 다음과 같은 명령을 실행한다.
  • CRS 자동 시작 해제 명령어
root 유저로 실행
# $ORA_CRS_HOME/bin/crsctl disable crs

VIO Commands




These are just some hints. For more details please consult the manual.
How to get the VIO level:
padmin@vio~$ ioscli ioslevel
2.1.3.10-FP-23
How to configure new devices (the equivalent of cfgmgr unde root):
padmin@vio~$ cfgdev
How to list the unmapped disks:
padmin@vio~$ lspv -free
How to list adapter id:
padmin@vio~$ lsmap -all|grep 102
How to list vio adapter devices:
padmin@vio~$ lsmap -vadapter vhost2
How to remove a virtual device:
padmin@vio~$ rmvdev -vtd vroota10_02
How to remove vio device:
padmin@vio~$ rmdev -dev vhost2
How to become root:
padmin@vio~$ oem_setup_env
How to list hdisks attached to vio (run the command as root):
root@vio~# mpio_get_config -Av
How to create virtual optical adapter:
padmin@vio~$ mkvdev -fbo -vadapter vhost17 -dev vcdrom_a06
How to create a disk backing device by specifying a name:
padmin@vio~$ mkvdev -vdev hdisk30 -vadapter vhost17 -dev server_size_number
How to list repository (installation media, for example):
padmin@vio~$ lsrep
How to load virtual optical media disk:
padmin@vio~$ loadopt -disk aix61_0102_dvd -vtd vcdrom_a06
How to check the priority and status of SEA:
padmin@vio~$ entstat -all entX | grep Priority
[NPIV] How to check the vfchost adapter slot number and status:
padmin@vio~$ lsmap -all -npiv
[NPIV] How to list the ports that are capable of N_Port ID virtualization:
(if the fabric attribute is set to 1 it means the adapter and the SAN switch are NPIV ready)
padmin@vio~$ lnsports
[NPIV] How map virtual fiber channel server adapter to the physical fc adapter fcs0:
padmin@vio~$ vfcmap -vadapter vfchost0 -fcp fcs0
Wondering what AIX commands a padmin command runs?
padmin@vio~$ export CLI_DEBUG=33
padmin@vio~$ lsmap -vadapter vhost0
AIX: "lsdev -c adapter -t IBM,v-scsi-host -s vdevice -F "name" | wc -l -c"
AIX: "lsdev -c adapter -t IBM,v-scsi-host -s vdevice -F "name""
AIX: "lsdev -C -l vhost0 -F "physloc""
AIX: "lsdev -p vhost0 -F "name" | wc -l -c"
AIX: "lsdev -p vhost0 -F "name""
SVSA            Physloc                                      Client Partition ID
--------------- -------------------------------------------- ------------------
vhost0          U9117.MMA.06EXXXX-V2-C20                     0x00000003
VTD                   ty7a0208_32G_01
Status                Available
LUN                   0x8100000000000000
Backing device        hdisk4
Physloc               U789D.001.DQD04X0-P1-C1-T1-W000000000110AE0F-L2000000000000
Mirrored              false
You cannot redirect stuff into a file due to padmin restrictions but you can use vi if you want to write a script or something. By the way, $HOME is in PATH. Take a look:
$ pwd
/home/padmin
$ echo "echo hello" >bah
rksh: bah: 0403-019 The operation is not allowed in a restricted shell.
$ vi bah
$ chmod 755 bah
$ /home/padmin/bah
rksh: /home/padmin/bah: 0403-019 The operation is not allowed in a restricted shell.
$ ./bah
rksh: ./bah: 0403-019 The operation is not allowed in a restricted shell.
$ bah
hello
How to run vio command as root (NOT RECOMMENDED):
# /usr/ios/cli/ioscli lsmap -all
How to apply IOS fixes (Put the IOS fixes somewhere (e.g. /home/iosfixes), then run:
# updateios -dev /home/iosfixes -accept

VI Edit




vi편집기에는 명령어 모드(command mode)와 편집모드(edit mode)가 있다.
다음에 설명하는 모든 명령어는 vi편집기의 편집명령어이며, 이 명령을 주고(명령어모드상태) 난 다음에 파일을 편집(편집모드)할 수가 있습니다.
명령어 모드에서는 글쇠그 자체의 의미가 아니라 명령의 의미를 지니며, 편집모드에서는 키보드 글쇠 그자체의 의미를 지닙니다.
편집모드에서 명령어모드로 이동할 때는 Esc키를 눌러서 빠져 나옵니다.
커서의 이동
커서를 이동시킬 때는 아래의 글쇠를 이용하며, 가급적이면 화살표키는 사용하지 않는 것이 좋습니다.

h
왼쪽으로 이동
j
아래로 이동
k
위로 이동
l
오른쪽으로 이동
w
한단어 오른쪽으로이동
b
한단어 왼쪽으로 이동
Return
한행아래로 이동
Backspace
한문자 왼쪽으로 이동
Spacebar
한문자 오른쪽으로 이동
H
화면의 맨위로 이동
M
화면의 중간으로 이동
L
화면의 맨 아래로 이동
^F
한화면 앞으로 이동
^D
반화면 앞으로 이동
^B
한화면 뒤로 이동
^U
반화면 뒤로 이동

삽입명령어

a
커서 오른쪽에 문자삽입
A
커서 오른쪽, 행의끝에 문자삽입
i
커서 왼쪽에 문자삽입
I
커서왼쪽, 행의 처음에 문자삽입
o
커서 아래에 행 삽입
O
커서 위에 행 삽입
<Esc>
작업완료후 반드시 입력

텍스트 변경

cw
단어 변경
cc
행 변경
C
커서 오른쪽의 행 변경
s
커서가 위치한 문자열 대체
r
커서 위치 문자를 다른 문자로 대체
r-Return
행 분리
J
현재 행과 아래 행 결합
xp
커서 위치 문자와 오른쪽 문자교환
-
문자형(대,소문자) 변경
u
이진 명령 취소
U
행 변경 사항 취소
:u
이전의 최종행 취소

텍스트 삭제

x
문자삭제
dw
단어삭제
dd
행 삭제
D
커서 오른쪽 행 삭제
:5,10 d
5-10째 행 삭제

행번호 설정

:set nu
행번호 표시
:set nonu
행번호 숨기기

행 찾기

G
파일의 마지막 행으로 가기
12G
파일의 12번째 행으로 가기

텍스트의 복사 및 이동

yy
행 yank 또는 복사
Y
행 yank 또는 복사
P
yank 되거나 삭제된 행을 현재 행 아래에 삽입
p
yank되거나 삭제된 행을 현재 행 위에 삽입
:1,2 co 3
1-2행을 3행 다음으로 복사
:4,5 m 6
4-5행을 6행 다음으로 이동

탐색 및 대체

/string/
string탐색
?string?
string 역 방향 탐색
n(N)
string의 다음(이전) 계속 탐색
:g/search-string/s//replace-string/gc
각 발생 탐색후 확인하고 대체
:s/str/rep/
현재 행의 str을 rep로 대체
:1,.s/str/rep/
1부터 현재 행의 str을 rep로 전부 대체
:%s/str/rep/g
파일 전체 str을 rep로 전부 대체

화면정리
^L 불필요한 화면 내용 제거 후 다시 표시
다른 파일을 파일내로 삽입

:r filename
커서 다음에 파일 삽입
:20 r filename
파일을 20번째 행 다음에 삽입

파일의 저장 및 종료

:w
변경사항 저장
:w filename
지정한 파일로 저장
:wq
변경사항 저장후 vi종료
ZZ
변경사항 저장후 vi종료
:q!
변경사항을 저장하지 않고 vi종료

참고로 UNIX 와 DOS의 명령어를 비교해 보도록 하자

UNIX
MS-DOS
기      능
clear
CLS
화면의 내용을 깨끗이 지운다.
ls
DIR
현재 디렉토리의 파일목록을 표시한다.
cp
COPY
파일을 복사한다.
mv
REN
파일의 이름을 변경한다.
mv
MOVE
파일을 다른곳으로 옮긴다.
rm
DEL
파일을 삭제한다.
cat
TYPE
파일내용을 표시한다.
pwd
CD
현재 위치의 경로를 표시한다.
cd
CD
디렉토리의 경로를 이동한다.
mkdir
MD
새로운 디렉토리를 만든다.
rmdir
RD
디렉토리를 삭제한다.