HULK (HTTP Unbearable Load King) DoS

  • GET Flooding 기반 공격
  • 자동화 스크립트로 매번 다른 URL 요청을 생성해 캐시를 우회하고 웹서버 자원을 고갈시키는 공격
  • 특징:
    • 랜덤 URL 파라미터와 User-Agent 사용 
    • 캐싱 우회 가능
    • 일반적인 패킷 필터링 회피

 

Slow HTTP 공격 계열

HTTP 요청을 아주 느리게 전송해 서버 연결을 장시간 유지 → 자원 고갈 유도

공격기법 설명 
Slow HTTP GET DoS 변조 IP 주소가 아닌 정상 IP 주소 기반 공격, 
GET 요청을 전송하되 데이터를 아주 느리게 보내 연결을 장시간 유지
Slow HTTP Header DoS (Slowloris) 헤더 정보를 조작,
헤더의 종료 구분자(\r\n\r\n)를 보내지 않고 \r\n만 보내며 연결 유지 
(개행문자만을 포함하여 불완전한 헤더를 전송한다라는 의미)
Slow HTTP POST DoS (RUDY) Content-Length를 크게 지정하고 본문을 천천히 전송해 연결 유지 
Slow HTTP Read DoS (Slow Read) TCP 윈도우 크기를 작거나 0으로 설정해 서버 답을 지연시키며 연결 유지

 

TCP 기반 공격

  • TCP 윈도우 사이즈 조작
    • TCP Sliding Window Size를 비정상적으로 작게 설정
    • 송·수신 데이터 흐름을 비정상적으로 지연시켜 서버 자원 고갈

 

캐시(Cache) 공격

  • GET Flooding with Cache-Control (CC Attack)
    • Cache-Control 헤더 조작 → 캐시 서버 과부하 유발
  • DNS Cache Poisoning
    • 공격자가 위조 응답을 캐시에 저장하게 만들어 정상적인 도메인 요청을 악성 IP로 연결

 

Hash Collision DoS (=해시 충돌)

  • 서버가 사용하는 Hash Table의 충돌을 의도적으로 유발
  • 많은 충돌 발생 시 CPU 사용량 급증 → 서비스 거부 상태 발생

 


 

WAF (Web Application Firewall)

  • SQL Injection, XSS, CSRF 등 애플리케이션 계층 공격 방어
  • 웹서버로 전송되는 모든 HTTP 요청패킷 내용을 검사하여 악의적인 패킷을 전송하지 못하도록 방어하는 역할
  • 배치 방식: 프록시형, 브리지형, 호스트 기반, 소프트웨어 기반
  • 오픈소스 예시: ModSecurity (Apache 기반)
구분 WAF IDS/IPS
방어 계층 애플리케이션 계층 (7계층) 네트워크/전송 계층 (3~4계층)
주요 목적 웹 애플리케이션 취약점 공격 방어 패킷 기반 침입 탐지 및 차단
탐지 방식 시그니처 기반, 행위 기반 패턴 기반, 이상 행위 탐지

 

배치 형태 설명
프록시형 (Reverse Proxy) 클라이언트와 웹 서버 사이에 위치, 모든 트래픽을 대신 처리
클라우드 기반 (SaaS) AWS WAF, Cloudflare 등 클라우드 환경에 특화된 형태
내부 모듈형 웹 서버(예: Apache, Nginx)에 모듈로 설치 (ModSecurity 등)

 

 

ModSecurity = 아파치 웹서버용 오픈소스 WAF 

  • 개발자: Ivan Ristic, 아파치(Apache) 웹서버용 오픈소스 WAF
  • 특징
    • PHP Injection 등 아파치 웹 서버의 주요 공격 차단 가능
    • 설치 및 차단 규칙 설정 인터페이스는 다소 불편
    • 그러나 공격 차단 기능 자체는 매우 우수
  • 동작 원리
    1. 웹 공격에 대한 탐지/차단 기능을 수행하는 모듈을 Apache 웹서버와 함께 로드
    2. 클라이언트와 웹 서버 사이에서 HTTP Request/Response를 검사 → 악의적 요청 탐지 및 차단
    3. 다른 아파치 모듈과 호환되며, 필요시 독립적으로 설치 가능
    4. 정상적으로 설치 시 성능 저하는 거의 없음

 


SSL/TLS vs S-HTTP

구분 SSL/TLS S-HTTP
보안 단위 세션(Session) 단위 메시지(Message) 단위
적용 범위 모든 애플리케이션 데이터 암호화 개별 HTTP 메시지 암호화
사용 예시 HTTPS 일부 특정 애플리케이션

 

  • SSL/TLS는 HTTP뿐만 아니라 FTP, SMTP 등 다양한 프로토콜에 적용 가능하며 애플리케이션 계층과 전송 계층 사이에서 동작하는 보안 프로토콜
  • S-HTTP는 메시지 단위 암호화를 제공하는 보안 프로토콜

 

 

DNS 구조

  • hosts 파일: 정방향(A), 역방향(PTR) 기록
  • DNS 서버 운영: Master/Slave 구조
  • 취약점: DNS Spoofing, DNS Cache Poisoning
  • 대응: DNSSEC (공개키 기반 서명 검증)

마스터와 슬레이브로 구성

 

 

캐시는 해당 위치에 저장 / DNS를 질의하지 않고 해당 파일로 가서 검색

 

DNSSEC 

공개키 암호화 기반 Zone 데이터에 전자서명 추가
레코드 유형 DNSKEY, RRSIG
효과 데이터 위변조 방지, 무결성 보장

 

 

데이터베이스 보안

기본키 (PK) 튜플을 유일하게 식별
후보키 (Candidate) 기본키가 될 수 있는 후보
대체키 (Alternate) 후보키 중 선택되지 않은 키
슈퍼키 (Super Key) 유일성을 만족하는 키
외래키 (FK) 다른 릴레이션 참조 키

 

 

 

MySQL 보안

  • 포트: 기본 3306
  • 보안 관리: 사용자 계정 관리, 권한 부여/삭제
  • 서버 보안 설정: my.cnf 설정 파일 수정

 

 

 

데이터베이스 백업/복구 기법

Redo Log 트랜잭션 재실행
Undo Log 트랜잭션 취소/롤백
Full Backup 전체 백업
Incremental Backup 변경분만 백업
Differential Backup 마지막 전체 백업 이후 변경분 백업

 

 

SET vs SSL 비교

구분 SET SSL
개발 VISA, MasterCard Netscape
보안 방식 Dual Signature, Digital Envelope 세션 암호화
적용 범위 카드사·가맹점 간 안전 거래 브라우저-서버 간 통신 보안
복잡성 상대적으로 복잡 상대적으로 간단

 

 

 

기타 전자상거래 보안 기술

  • OTP(One-Time Password): 일회성 비밀번호
  • WPKI (무선 공개키 기반 구조): 모바일 환경 인증·암호화

 

 

 

e-Business 보안

  • ebXML
    • Registry/Repository (메타데이터 저장소)
    • Trading Partner (거래 당사자 정보)
    • Message Service (메시지 전송 및 보안)
  • SSO (Single Sign-On): 한 번 로그인으로 여러 시스템 이용
  • SAML vs OAuth
    구분 SAML OAuth
    목적 SSO 인증/인가 분리
    사용 환경 기업 내부, 엔터프라이즈 환경 모바일 앱, SNS 로그인
    데이터 형식 XML 기반 JSON 기반

 

 

DRM (Digital Rights Management)

  • 디지털 콘텐츠(음악, 영화, 문서 등)의 무단 복제 및 유통을 방지하고 합법 사용자만 사용하도록 통제하는 기술
  • 구성 요소: 클라이언트, 서버, 콘텐츠, 컨트롤러
  • 기능: 저작권 보호, 불법 복제 방지
콘텐츠 암호화 콘텐츠를 암호화하여 권한 없는 접근 방지
접근 제어 사용자 인증, 사용 환경 및 시간 조건 제어
라이선스 관리 시스템 (LMS) 사용 조건 정의 및 권한 제어, 갱신 포함
저작권 정보 관리 (CMI) 저작권 정보 메타데이터 포함, 추적 가능
클리어링 하우스 라이선스 발급 및 권한 인증 담당
보안 컨테이너 / 패키저 콘텐츠 + 메타데이터를 안전하게 포장 및 배포 형태로 구성

 

 

 

디지털 워터마킹

  • 특징: 이미지/영상/음성에 식별자 삽입
  • 삽입 기법: LSB, DCT, DWT 등

 

 

디지털 포렌식

  • 원칙: 무결성, 적법성, 신속성, 재현성
  • 절차: 수집 → 보존 → 분석 → 보고
  • 안티 포렌식 기법: 스테가노그래피(은폐), 데이터 삭제, 암호화

'정보보안기사 > 애플리케이션 보안' 카테고리의 다른 글

[#1] 애플리케이션 보안  (3) 2025.08.23

FTP 

 

  • Anonymous FTP는 익명 계정으로 접속하지만 인증 절차는 있음
  • TFTP는 69번 포트 사용 인증 없음
  • FTP는 제어 21 데이터 20 사용
  • 기본 동작 모드는 Active
  • 모드 구분은 데이터 연결을 누가 먼저 여는지로 판단

 

2) Active vs Passive 모드 비교

구분 제어 연결 데이터 연결 주체 데이터 포트 범위 방화벽 영향
Active 클라이언트 → 서버 21 서버가 클라이언트로 연결 서버 20 → 클라이언트 임의 포트 클라이언트 방화벽에 의해 거부되기 쉬움
Passive 클라이언트 → 서버 21 클라이언트가 서버로 연결 서버 임의의 포트 (1024 이상) 클라이언트 방화벽 문제를 줄이려 쓰지만 데이터 포트가 막히면 전송 실패

Active 모드 (기본 모드)
Passive 모드

 

 

 

Q. 아래와 같은 문제가 발생하는 이유 ?
- passive 모드 포트 범위가 방화벽에서 열려 있지 않아 데이터 연결 실패

 

 

3) FTP 보안 기능과 설정 

  • PAM 연동으로 접근 통제 가능
  • 익명 계정 제한과 쓰기 권한 차단 기능 제공
  • 사용자 접근 제어 파일 사용 예
    • /etc/ftpusers 비허용 사용자 목록
    • user_list 허용 또는 차단 정책에 활용
    • vsftpd.conf에서 세부 정책 설정
  • 업로드 파일 실행 금지와 디렉터리 제한 등 기본 하드닝 절차 포함
  • chroot 등으로 홈 디렉터리만 사용하도록 제한 가능

 

4) FTP 공격과 대응 핵심

  • 스니핑 스푸핑 계정 수집 디렉터리 리스팅 악용 등
  • 주 대책은 인증 강화 권한 최소화 전송 구간 보호 로그 점검

 


메일 보안

  • SMTP는 메일 전송에 사용 (25번 포트)
  • POP3는 수신 후 클라이언트에 내려받고 서버에서 삭제하는 방식이 기본 
  • IMAP은 서버에 보관하며 동기화 중심

 

1) 프로토콜

항복 SMTP POP3 IMAP
용도 송신 및 중계 단말 수신 위주 서버 보관 동기화
연결 방식 서버 간 또는 클라이언트 → 서버 단말이 내려받고 보통 서버에서 삭제 단말 여러 대 동기화
포트 기본 25  110 / POPs(995) 143 / IMAPs(993)
특징 전송 경로 제어가 핵심 단순 수신 관리 폴더 관리 동기화에 적합
비고 STARTTLS 등 사용 사용자가 고정적인 위치에서 메일 받을 때 유리 보관 중심으로 기업 활용 많음

 

2) 메일 클라이언트 취약점을 이용한 공격 

공격 유형 설명 결과 대응 방안 
악성 스크립트 / 액티브 콘텐츠 HTML 메일 내 자바스크립트, 매크로, 액티브X 실행 악성 코드 다운로드, 피싱 사이트 연결 HTML 스크립트 차단, 보안 설정 강화
버퍼 오버플로우
첨부파일 이름·본문 데이터 크기 조작 클라이언트 크래시, 원격 코드 실행 최신 보안 패치, 입력 검증
악성 첨부파일 실행 유도 실행 파일, 매크로 포함 문서 첨부 악성코드 감염, 권한 탈취 첨부 자동 실행 차단, 백신 검사
링크 기반 공격 (피싱/스푸핑) 정상처럼 보이는 하이퍼링크로 위장 계정 정보 탈취, 악성 페이지 접속 링크 검증, 평판 기반 필터
스팸/사칭 기반 공격 발신자 위조·기업 사칭 사회공학적 기법 통한 사용자 속임 스팸 필터, 사용자 보안 교육

 

3) 수신 정책 키워드

  • REJECT는 차단 사실을 회신
  • DISCARD는 그냥 무시 
  • SPF 도입으로 발신자 위조 탐지 강화
  • 스팸 필터는 DNSBL 콘텐츠 분석 평판 기반 사용

 

4) 메일 보안 프로토콜 

항목 PGP PEM S/MIME
개념 공개키 기반 전자우편 보안 프레임워크 IETF 표준 보안 프레임워크 MIME 확장으로 암호화 전자서명 제공
암호 알고리즘 RSA 등 비대칭 + IDEA 등 대칭 혼합 RSA DES 등 RSA ECC 등 사용 가능
배포 개인키 관리와 플러그인 형태 표준 기반 인증서 기반
특징 전자서명과 암호화 지원 표준성 강조 인증서와 연동 쉬움
참고 IDEA를 대칭키로 사용   인증서 표준 프로토콜

 


웹 보안

 

1) 프록시와 캐시

  • 프록시 서버: 클라이언트와 서버 사이에서 중계 역할
  • 캐시 서버: 프록시가 요청 결과를 저장했다가 같은 요청이 오면 바로 응답

 

2) 쿠키와 세션

구분 쿠키 세션
저장 위치 클라이언트 브라우저 서버
수명 브라우저 종료 전/후 선택 가능 브라우저 종료 시 기본 삭제
용도 로그인 정보 유지, 방문자 추적 사용자 인증 상태, 장바구니 관리
보안 변조 위험 존재 서버 관리라 비교적 안전

 

 

3) HTTP 요청 방식

GET URL에 파라미터 노출 민감 정보 전달 금지
POST 본문(body)에 데이터 전달 XSS, CSRF 등에 이용될 수 있음

 

 

4) HTTP 상태 코드

200 성공
301 영구적으로 이동 (Redirect)
302 일시적 이동
304 수정되지 않음 (캐시 사용)
400 잘못된 요청
401 인증 필요
403 접근 금지
404 리소스 없음
500 서버 내부 오류
502 게이트웨이 오류
503 서비스 불가 (과부하, 점검)

 

5) OWASP Top 10 (2021 기준)

  • A01 Broken Access Control (취약한 접근 제어)
  • A02 Cryptographic Failures (암호화 실패)
  • A03 Injection (인젝션 공격)
  • A04 Insecure Design (불안전한 설계)
  • A05 Security Misconfiguration (보안 설정 오류)
  • A06 Vulnerable and Outdated Components (취약·구버전 컴포넌트)
  • A07 Identification and Authentication Failures (인증·식별 실패)
  • A08 Software and Data Integrity Failures (무결성 실패)
  • A09 Security Logging and Monitoring Failures (로그·모니터링 부재)
  • A10 SSRF (서버사이드 요청 위조)

 

6) 웹 서버 보안 하드닝

디렉터리 리스팅
index.html 파일 배치

  • 디렉터리 리스팅 방지: 인덱스 파일 배치, 옵션 해제
  • 배너 정보 최소화: ServerTokens, ServerSignature 조정

검색엔진별로 해당 파일에 배치하면 됨

  • 검색 로봇 제어: robots.txt 활용해 민감 디렉터리 수집 차단

 

7) 주요 웹 취약점

명령어 삽입 (Command Injection)

  • 설명: 사용자 입력값이 시스템 명령에 포함되어 실행
  • 대응: 입력값 화이트리스트, 시스템 호출 함수 최소화

 

파일 포함 취약점 (File Inclusion)

구분 설명 대응
LFI (Local File Inclusion) 로컬 파일 불러오기 경로 검증, 고정 매핑
RFI (Remote File Inclusion) 원격 파일 불러오기 원격 포함 기능 비활성화

 

SQL Injection

  • 설명: 입력값에 SQL문에 직접 삽입돼 실행되는 취약점
  • 대응: Prepared Statement, 바인딩 처리, 에러 메시지 최소화

 

파일 다운로드 취약점

  • 설명: 임의의 파일을 다운로드하게 만드는 취약점
  • 대응: 다운로드 허용 확장자 제한, 저장소 분리

 

경로 조작 (Path Traversal)

  • 설명: ../ 등을 이용해 상위 디렉터리에 접근
  • 대응: 입력 정규화, 베이스 경로 고정

 


 

XSS (Cross Site Scripting)

 

유형 설명 대응
반사형 요청 → 응답에 즉시 반영 출력 인코딩, 파라미터 검증
저장형 서버에 저장 후 여러 사용자 노출 저장 전 필터링, 권한 분리
DOM형 클라이언트 스크립트에서 발생 안전한 DOM API 사용, CSP 적용

 

공통 대응책

  • 출력 시 컨텍스트 맞는 인코딩
  • 쿠키 HttpOnly, Secure 설정
  • CSP(Content Security Policy) 적용

 

 

CSRF (Cross Site Request Forgery)

  • 정의: 사용자가 로그인된 상태에서 공격자가 위조된 요청을 보냄
  • 대응
    • CSRF Token 사용
    • SameSite 쿠키 설정
    • Referer / Origin 검증

 

항목 XSS CSRF
목적 스크립트 실행 사용자의 권한으로 위조 요청
전제조건 출력 시 인코딩 부재 세션 유지된 상태
주요대상 클라이언트 서버
방어 인코딩, CSP, HttpOnly 토큰, SameSite 쿠키, Referer 검증

'정보보안기사 > 애플리케이션 보안' 카테고리의 다른 글

[#2] 애플리케이션 보안  (5) 2025.08.24

(1) 클라우드 컴퓨팅

  • 정의: 인터넷을 통해 언제 어디서나 필요한 자원을 서비스처럼 제공받는 기술
  • 특징
    • 자원 확장이 자유로움 (On-Demand)
    • 초기 투자 비용이 적음, 단 장기적으로는 온프레미스가 더 저렴할 수 있음

 

클라우드 배포 유형

퍼블릭 클라우드 누구나 사용 가능 (AWS, Azure, GCP 등)
프라이빗 클라우드 특정 조직 전용, 내부 자원 활용
하이브리드 클라우드 온프레미스 + 클라우드 결합
멀티클라우드 여러 개 클라우드를 동시에 활용

 

서비스 모델

구분 제공 범위 예시
IaaS 서버/스토리지/네트워크 제공 AWS EC2
PaaS (가장 많이 이용) 개발환경/미들웨어 제공 AWS Elastic Beanstalk
SaaS 애플리케이션까지 제공 Gmail, MS 365

 

장/단점

  • 장점: 초기비용 절감, 유연성, 확장성, 필요 자원만큼 사용 가능
  • 단점: 보안 위협 존재(데이터 유출, 서비스 장애), 장기 사용 시 비용 증가 가능

 

보안 서비스

  • CASB (Cloud Access Security Broker): 클라우드 사용자와 서비스 제공자 사이에서 접근 제어 및 보안 기능 제공
  • SECaaS (Security as a Service): 방화벽, IDS/IPS, 안티바이러스 등을 클라우드 기반으로 서비스 제공

 

 

 


(2) 가상화

  • 하이퍼바이저 (Hypervisor): 가상머신을 생성/관리하는 핵심 소프트웨어
  • 가상머신(VM):  호스트베이스 기반 

 

유형

  • Type 1 (Bare-Metal): 하드웨어에 직접 설치 (Xen, KVM)
  • Type 2 (Hosted): 기존 OS 위에 설치 (VirtualBox, VMware Workstation)

 

가상화 종류

  • 서버 가상화: CPU, 메모리 등 자원을 여러 VM이 공유
  • 데스크톱 가상화(VDI): 사용자 데스크톱 환경을 서버에서 실행

 

 

RAID (Redundant Array of Inexpensive Disks)

  • RAID 0: Striping – 속도 ↑, 복구 불가
  • RAID 1: Mirroring – 안정성 ↑, 저장 용량 50% 사용
  • RAID 2: 해밍 코드 사용 → 오류 검출/정정 가능
  • RAID 3: 사용 거의 없음 (복구 취약)
  • RAID 5: 가장 많이 사용, 패리티를 분산 저장, 디스크 1개 손실 복구 가능
  • RAID 6: 디스크 2개 손실에도 복구 가능

 

 

저장장치 구조

  • DAS (Direct Attached Storage): 서버에 직접 연결, 개별 관리
  • NAS (Network Attached Storage): 네트워크 기반 파일 서버, 공유 가능
  • SAN (Storage Area Network): 대규모 고속 네트워크 스토리지 (FC, iSCSI 등)

 

 

 


 

 

 

(3) 버퍼 오버플로우 (Buffer Overflow)

  • 정의: 프로그램이 할당된 버퍼 크기 이상으로 데이터를 입력받아 메모리를 덮어쓰는 취약점
  • 유형
    • 스택 버퍼 오버플로우 (Stack Overflow)
    • 힙 버퍼 오버플로우 (Heap Overflow)
  • 공격 기법
    • 리턴 주소 덮어쓰기
    • 쉘코드 삽입 및 실행
    • 시스템 권한 탈취
  • 대응 방안
    • Stack Guard: 리턴 주소와 버퍼 사이에 canary 값 삽입
    • ASLR: 메모리 주소 공간 배치를 무작위화
    • DEP/NX (Non-Executable): 데이터 영역 실행 차단

 

 

 

(4) 포맷 스트링 공격 (Format String Attack)

  • 정의: printf("%s") 같은 함수에서 포맷 제어자를 잘못 사용 시 발생
  • 위험: 공격자가 %x, %n 등을 활용해 메모리 값 추출·변조 가능
  • 대응: 사용자 입력을 포맷 문자열에 직접 전달하지 않도록 방어

 

 

(5) 레이스 컨디션 (Race Condition)

  • 정의: 두 개 이상의 프로세스가 동시에 자원 접근 시 순서 제어가 안 돼 발생하는 문제
  • 예시: TOCTOU (Time Of Check To Time Of Use) 취약점 – 검사 시점과 사용 시점 사이에 자원이 변경됨

 

 

 

(6) ROP (Return Oriented Programming)

  • 정의: 기존의 코드 조각(Gadget)을 연결해 악성 동작을 수행하는 기법
  • 특징
    • 스택 실행 금지(DEP) 우회를 위해 사용
    • 기존 라이브러리 함수 조각을 조합해 쉘 실행
  • NOP Sled: NOP(No Operation) 명령어를 다량 삽입해 쉘코드 실행 가능성을 높이는 기법

'정보보안기사 > 시스템보안' 카테고리의 다른 글

[#6] 유닉스/리눅스 보안  (0) 2025.08.23
[#5] 유닉스/리눅스 보안  (3) 2025.08.21
[#4] 윈도 보안  (3) 2025.08.08
[#3] 윈도 보안  (6) 2025.08.08
[#2] 윈도 보안  (9) 2025.08.08

(1) PAM (Pluggable Authentication Module)

  • 정의: 리눅스 시스템에서 인증 절차를 모듈화해 관리하는 방식으로 계정별 보안 적용 가능
  • 특징
    • 다양한 서비스(LogIn, FTP, Telnet 등)에서 공통적으로 사용
    • 패스워드 복잡성, 계정 잠금(Brute Force 방지) 등 보안정책 반영 가능
    • 설정파일 위치: /etc/pam.conf
auth 사용자 인증 방식 지정
account 계정 사용 조건 검사
password 비밀번호 변경 정책
session 로그인/로그아웃 시 실행할 동작

 

 

(2) su 명령어 사용 제한

  • 루트 권한 전환 명령어 su의 사용을 제어할 수 있음
  • 보안상 관리자 외 일반 사용자는 su 명령어 사용을 제한하는 것이 바람직함
  • 방화벽 관리 도구: firewalld, iptables
  • 방화벽 : netfilter

 

(3) 권한 관리

  • 사용자 분류: u(소유자), g(그룹), o(기타), a(전체)
  • 권한 기호: r(읽기), w(쓰기), x(실행)
  • 특수 권한: SetUID(s), SetGID(s), Sticky(t)
SetUID 실행 시 파일 소유자의 권한으로 동작
SetGID 실행 시 그룹 권한으로 동작
Sticky Bit 디렉터리 내 파일 삭제를 소유자만 가능

 

(4) 로그 관리

  • /var/log/messages
    - 시스템 전반의 기본 로그
    - 부팅, 네트워크, 커널 관련 메시지 기록
  • /var/log/wtmp
    - 로그인/로그아웃 기록 저장
  • /var/log/xferlog
    - FTP 전송 내역 저장
  • /var/log/secure
    - 인증·보안 관련 로그 (로그인 시도, su, sudo, ssh 접속 등)
  • /var/log/btmp
    - 로그인 실패 기록
  • /var/log/lastlog
    - 사용자별 최종 로그인 시간 기록

 

(5) 웹서버 로그 

  • access_log: 클라이언트의 요청 기록(IP, URL, 응답 코드 등)
  • error_log: 요청 처리 중 발생한 오류 기록

※ 웹서버로그는 별도로 기록 

 

 

 

📌  상태 코드 
  • 200 : 성공
  • 300 : 리다이렉션 (다른 곳으로 연결)
  • 400 : 클라이언트 오류 (403: 권한 없음, 404: 문서 없음)
  • 500 : 서버 내부 오류

'정보보안기사 > 시스템보안' 카테고리의 다른 글

[#7] 서버 보안  (7) 2025.08.23
[#5] 유닉스/리눅스 보안  (3) 2025.08.21
[#4] 윈도 보안  (3) 2025.08.08
[#3] 윈도 보안  (6) 2025.08.08
[#2] 윈도 보안  (9) 2025.08.08

유닉스 / 리눅스 기본

  • Unix
    • 1969, AT&T 벨 연구소 (켄 톰프슨, 데니스 리치)
    • 다중작업, 다중사용자, 이식성, 보안, 계층적 FS
  • Linux
    • 1991, 리누스 토발즈 (커널 공개)
    • GPL 기반 오픈소스, 다양한 배포판
    • 안드로이드/임베디드까지 확산, C언어 기반

 

 

부팅 과정

  • POST → Boot Loader(GRUB, LILO) → Swapper(PID 0)
  • init(PID 1) 실행 → runlevel 진입
  • rc.sysinit → rcX.d 실행
  • 필요시 X 윈도 실행

 

 

운영체제 구조

  • 커널 : 자원관리(프로세스, 메모리, 파일, 네트워크)                      # 주기억장치에 상주 
  • 셸 : 명령어 해석기 (sh, ksh, csh, bash), 스크립트 가능              # 보조기억장치에 상주
  • 전체 구조 : 하드웨어 → 커널 → 셸 → 응용/데몬

 


파일 시스템과 디렉터리

  • 파일시스템 역할 : 데이터 저장, 검색, 권한 관리
  • 주요 디렉터리
    • / : 루트                                                       # 최상위 디렉터리
    • /etc : 설정 파일
    • /lib : 라이브러리
    • /bin, /sbin : 핵심 명령
    • /usr : 응용 프로그램
    • /var : 로그, 가변 데이터
    • /opt : 추가 앱
    • /home : 사용자 홈
    • /root : 관리자 홈
    • /proc : 가상 파일(프로세스/커널 정보)
    • /dev : 장치 파일

 

EXT 파일 시스템

  • 구조 : 블록 그룹 단위 관리
    • 슈퍼블록 / 그룹 디스크립터 / 블록 비트맵 / 아이노드 / 데이터 블록
  • 아이노드 : 파일 메타데이터(소유자, 권한, 시간, 블록주소 등)
  • MBR(마스터부트레코드) : 파티션 정보 + 부트 코드                                     #1개만 존재, BR은 여러개 존재 가능 
  • Boot Sector : FS 파라미터
  • Super Block : FS 전체 크기, 남은 블록·아이노드 수

 

 

ext4 특징

  • 최대 1EB 볼륨, 16TB 파일
  • Extents 구조 (연속 블록)
  • 저널링 지원(강화됨)
  • 서브디렉터리 최대 64,000
  • 성능 : 지연 할당, 멀티블록 할당, 빠른 fsck
  • 타임스탬프 : 나노초 단위
  • ext2/3와 호환

 

 

ext2 / ext3 / ext4 비교

구분 ext2 ext3 ext4
최대 볼륨 32TB 32TB 1EB
최대 파일 2TB 2TB 16TB
타임스탬프 1초 1초 나노초
저널링 없음 있음 있음(개선)

※ ext3 부터 저널링 기능을 지원함, 즉 파일시스템의 손상을 줄일 수 있음 

 

 

 

 


계정과 패스워드 관리

  • UID : root=0, 일반사용자=1000부터
  • 관련 파일
    • /etc/passwd : 계정 기본정보 (7필드)
    • /etc/shadow : 암호화 PW, 만료 정책
    • /etc/group : 그룹 정보
    • /etc/login.defs : 암호 정책 기본값
    • /etc/security/pwquality.conf : 복잡도 정책

 

 

/etc/passwd (7필드)

계정:패스워드자리:UID:GID:코멘트:홈:셸

 

 

/etc/shadow (필드)

계정:암호화PW:마지막변경일:최소:최대:경고:비활성:만료

  • 암호 해시 형식 : $ID$SALT$HASH
    • ID = 1(MD5), 2a(Blowfish), 5(SHA-256), 6(SHA-512)
  • Salt : 같은 비밀번호라도 해시값 다르게 → 공격 방어

 

 

pwquality.conf 주요 옵션

  • minlen : 최소 길이
  • dcredit/ucredit/lcredit/ocredit : 숫자/대문자/소문자/기타문자 조건
    • 0 = 요구 없음, -1 = 반드시 포함
  • minclass : 서로 다른 문자군 최소 개수
  • maxrepeat : 같은 문자 반복 제한
  • maxclassrepeat : 같은 문자군 반복 제한
  • gecoscheck : 사용자 정보 포함 금지

 

login.defs 주요 항목

  • PASS_MAX_DAYS : 최대 사용기간 (99999 = 사실상 무제한)
  • PASS_MIN_DAYS : 최소 변경 간격 (0 = 제한 없음)
  • PASS_WARN_AGE : 만료 경고일 (보통 7일 전)

 

'정보보안기사 > 시스템보안' 카테고리의 다른 글

[#7] 서버 보안  (7) 2025.08.23
[#6] 유닉스/리눅스 보안  (0) 2025.08.23
[#4] 윈도 보안  (3) 2025.08.08
[#3] 윈도 보안  (6) 2025.08.08
[#2] 윈도 보안  (9) 2025.08.08

+ Recent posts