정보보안기사3

agnusdei·2024년 7월 14일
0

정보보안기사

목록 보기
3/15
# Linux/Unix Command and Configuration Summary

## User and Login Commands

1. **View last login for a user:**
   ```bash
   lastlog -u username
  1. View login records from the last 5 days:
    link

    lastlog -t 5
  2. View reboot records:

    last reboot
  3. View failed login attempts for a user:

    lastb username
  4. Search for users who executed useradd:

    lastcomm useradd
    # Equivalent to:
    lastcomm | grep useradd
  5. Strict match search for useradd command used by root:

    lastcomm --user root --command useradd strict-match

FTP Logs

Process Accounting

  1. Enable process accounting logs:

    accton /var/account/pacct
  2. Disable process accounting logs:

    accton

Log Rotation

  • Logrotate Configuration:
    • missingok: 로그 파일이 없더라도 에러를 발생시키지 않는다.
    • rotate 6: 순환할 로그 파일 6개로 설정.
    • dateext: 확장자는 날짜로 사용.
    • create 0640 root utmp: 소유자는 root, 소유 그룹은 utmp로 설정.

Setuid and Permissions

  1. Setuid does not affect realUid, only Effective UID and Saved UID: Details

  2. Buffer Overflow (BOF) Information: BOF Details

  3. Change permissions to remove write access for group and others on .profile:

    chmod go-w .profile
  4. Setuid examples:

    chmod 4755 file
    chmod u+s file
  5. File permission notations:

    • -rwsrwxr-x: s indicates Setuid.
    • sticky bit: t replaces x in the other section.

Windows System

  1. Stop sharing a file or directory:

    net share 공유네임 /delete
  2. Share a file or directory:

    net share 공유네임=file/path

Networking

  1. MAC Address Information:

    • 6 bytes (48bit): first 3 bytes -> vendor, last 3 bytes -> device ID.
  2. Layer 2 Details:

    • 2계층에서는 물리적인 기기 Mac 주소가 필요하며 NIC 가 해당 Mac 주소의 역할을 합니다.
  3. Datalink Layer Controls:

네트워크 및 시스템 관리 요약

데이터링크 계층

  1. 데이터링크 계층 접근제어 표준:

    • IEEE 802.3 -> CSMA/CD (유선랜 표준)
    • IEEE 802.11 -> CSMA/CA (무선랜 표준): CSMA/CD vs. CSMA/CA
  2. 충돌영역: Collision Domain

  3. 브로드캐스트 수신 영역: Broadcast Domain

  4. L2 전송 방식:

  5. Port Mirroring: 패킷을 다른 모니터링 포트로 복제하는 것

  6. Ip 주소 161.134.7.0/24 의 Directed Broadcast 주소: 161.134.7.255

  7. 데이터링크 계층 구조:

    • MAC: 채널 공유 및 접근 방식 제어
    • LLC: 흐름, 논리, 오류 제어
    • MAC (Media Access Control), LLC (Logical Link Control)

https://velog.io/@agnusdei1207/llc

  1. PDU (Protocol Data Unit):

    • L1 PDU: Bit
    • L2 PDU: Frame
    • L3 PDU: Packet
    • L4 PDU: Segment
    • L5~L7 PDU: Data
  2. VLAN (Virtual Local Area Network):

    • 서비스 향상, 보안성 향상
    • Broadcast domain을 나누는 기술
    • VLAN 종류: Static VLAN (port 기반), Dynamic VLAN (mac 주소 기반), 네트워크 주소 기반 VLAN, Protocol based VLAN
    • VLAN 종류 더 알아보기
  3. IP 패킷이 목적지 노드에 도달하기 위해 필요한 것: IP 주소에 대응하는 48bit(6bytes) 의 MAC 주소 -> 앞 3bytes: 제조사, 뒤 3bytes: 제조사에서 부여한 ID

네트워크 장비

  1. 허브 (더미허브):

    • 한 포트로부터 수신한 신호를 다른 포트로 전달만 할 뿐 트래픽을 제어하거나 검사하지 않음
    • 충돌 도메인을 구분하지 못하며 연결된 모든 장비는 속도를 공유함
  2. 스위치 (스위칭허브):

    • 한 포트로부터 수신한 신호를 목적지 포트로 전달
    • 이중화 시 Spanning Tree 프로토콜을 사용하여 무한루핑을 방지
    • 위 두 장비는 단일 네트워크 구간에서 사용됨
    • 스패닝 트리 알고리즘 더 알아보기

기타 네트워크 개념

  1. TTL (Time to Live):
    • IPv4에서 무한 루핑을 방지하기 위해 라우터(홉)를 거칠 때마다 감소시키는 IP 헤더 필드

BYOD 환경 보안 설정

  1. MDM (Mobile Device Management):

    • 모바일 기기를 도난, 분실, 악용 등으로부터 보호하기 위하여 강화된 보안 정책(인증, 앱 화이트 리스트, 원격 삭제, 탈옥 탐지, 스크린 캡처 방지, 카메라 제어 등)을 적용하여 관리하기 위한 기술
  2. 컨테이너화:

    • 하나의 모바일 기기 내에 업무용과 개인용 영역을 컨테이너라는 별도의 공간으로 분리하여 프라이버시를 보호하는 기술
  3. 모바일 가상화:

    • 가상화 기술을 이용하여 하나의 모바일 기기에서 개인용 OS 영역과 업무용 OS 영역을 완전히 분리하는 기술. 평상시에는 개인용 OS 영역에서 모바일 기기를 이용하다가, 필요 시 업무용 OS로 전환하여 사용

DNS

  • DNS: 53/udp, zone 전송 또는 512bytes 초과 시 tcp 사용

DBMS

  1. DBMS 사용 시: ‘최소 권한’이 설정된 계정 사용
  2. SQL 쿼리문: ‘동적’으로 생성해서는 안 됩니다.
  3. 쿼리문을 생성해야 하는 경우: 반드시 ‘입력값’ 을 검증해야 한다.
  4. Sendmail: /etc/mail/access.db : makemap hash /etc/mail/access.db < access.db
  5. snmp-server: no

BCP (Business Continuity Planning)

  1. BCP 5단계:
    • 범위 설정 및 기획
    • BIA
    • 복구전략개발
    • 복구계획수립
    • 테스트 및 유지보수

DB 보안

  1. DB에 저장된 중요 정보가: ‘SQL query’ 로 열람 되는지 확인한다.
  2. **‘

세션 ID’ 또는 ‘암호화된 쿠키값’이: 명백하게 ‘랜덤’으로 생성되는지 확인한다.
3.
적절한 ‘암호화 알고리즘’이:** 적용되었는지 확인한다.

기타

  1. NOP: No operation x86 Hexa code : 0x90

  2. redhat: /etc/httpd/conf/httpd.conf -> LimitRequestBody https://velog.io/@agnusdei1207/limitRequestBody

  3. Mac flooding = switch jamming:

    • arp request 를 지속적으로 보내 Mac cache table 를 overflow 시켜서 broadcast 하도록 (허브처럼 동작하도록) 만드는 공격.
    • Fail open 정책으로 인해 (가용성 > 보안성) 일반적으로 이렇게 작동합니다.
  4. Tcp dump:

    • (frag 22444:40:30+) -> fragmentID, size (bytes), offset
    • + 가 있다면 다음 fragment (단편) 이 아직 남아 있다는 것을 의미
  5. MTU 1500 bytes: 일반적으로 설정됩니다. Ip header 20bytes 를 제외한 일반적인 크기는 1480 bytes

  6. 케빈 미트닉: ip 를 속이는 공격 -> ip spoofing -> trust 관계가 맺어져 있는 시스템에 굉장히 강력함

  7. Ipv6 128bit 주소 체계, ipv4 32bit 주소 체계

  8. Ipv6 <-> ipv4 전환 기술:

    • Dual stack: 통신 상대에 따라 선택적으로 사용
    • Tunneling: ipv6 간 통신 사이에 ipv4 의 터널을 둔 기술
    • 주소 헤더 변환 address/header translation: 변환 헤더를 추가하여 서로 변환
  9. RFC 792: ICMP internet control message protocol

  10. ICMP Redirect:

    • 최적의 경로를 라우터가 호스트에게 알려주는 경로 재설정 메시지로써 위조된 ICMP Redirect 를 호스트에게 보낼 경우 라우팅 경로 조작이 가능하다.
  11. IGMP internet group management protocol:

    • ip 멀티캐스트 그룹에서 호스트 멤버를 관리하는 프로토콜로, 특정 그룹에 추가 삭제 및 데이터 전달을 위해 사용되며 멀티캐스트 트래픽은 하나의 Mac 주소로 보내지만 실제로는 여러개의 ip 호스트에서 응답한다. 멀티캐스트 그룹의 ip 주소로 보내기 때문에 가능하다.
  12. TCP flags: TCP flags 참조

  13. Socket:

    • 특정 ip 주소와 포트번호로 구성 -> 동일한 ip 상황에서 다수의 응용 프로그램과 정확하게 통신할 수 있게 해주는 소프트웨어 모듈.
    • OS 에서 제공하는 소켓 라이브러리를 이용하여 프로그래밍
  14. Well-known port domain: 0~1023

  15. BOOTP: UDP/67 -> 해당 기기가 부팅될 때 ip 주소를 동적으로 받게 해주는 프로토콜

  16. 3306/tcp: mariaDB, MySQL

  17. MS-SQL: 1433/tcp

  18. ORACLE: 1521:tcp

  19. 가로챈 세션으로 별도의 인증 없이 공격하는 기법: session hijacking -> 세션 하이재킹 (납치)

    • Http Session hijacking
    • TCP Session hijacking (sequence number, ip port 위변조)
    • 케빈미트닉이 시모무라 쓰토무의 컴퓨터 시스템을 공격할 때 사용한 방법 -> TCP Session Hijacking
  20. netBios: TCP/UDP 135, 139 -> windows system 파일 및 폴더 공유 시 사용 -> 초기 컴퓨터간 통신을 위한 프로그래밍 인터페이스

  21. CIFS (SMB) server message block:

    • TCP 445 : Common internet FS -> windows 시스템에서 주로 파일 공유 시 사용
    • CIFS 보다는 SMB2, SMB3 로 주로 불림
    • 윈도우 운영체제 파일공유, 프린터 공유, 원격 서비스 등에 사용되는 전송 프로토콜로 2017년 30만대 호스트를 감염시킨 위너크라이 (위너크립터) 랜섬웨어가 해당 취약점을 파고들어 전파되었다. -> SMB 취약점 (TCP/445)
  22. Ping: ICMP Echo Request 메세지를 이용하여 이에 대한 응답 ICMP Echo Reply 를 이용하여 RTT (round trip time) 왕복 시간 (경과 시간) 을 알아볼 때 사용

  23. 공격자의 침입 경로를 확인하기 위해 현재 통신하고 있는지 알기 위한 명령어:

    • 현재 연결된 모든 세션 상태 확인 -> netstat : 소켓 상태 정보, 라우팅 테이블 정보, 네트워크 인터페이스 정보, 프로토콜 통계 등
    • netstat -artn:
      • a: listening 상태까지 조회
      • r: 라우팅 테이블 정보 조회
      • t: tcp 연결 조회
      • n: ip 및 포트를 서비스명 대신 숫자로 조회
      • p: Process ID/프로세스 명

    네트워크 도구 및 프로토콜 설명

1. traceroute

  • 용도: Linux/Unix 시스템에서 종단(end) 노드 사이의 여러 중계 노드들을 지나며 IP 주소, 노드 개수, 응답 시간 등을 파악하는 용도로 활용된다.
  • 송신: UDP
  • 수신: ICMP

2. UDP

  • 정의: User Datagram Protocol

https://velog.io/@agnusdei1207/udp

3. tracert (Windows)

  • 송수신: ICMP 활용
    • ICMP Echo Request 패킷의 TTL을 1씩 증가시키며 최종 목적지 도달 시 ICMP Echo Reply 반환

4. traceroute 동작 원리

  • 최초 IP 패킷 헤더 필드 TTL을 1로 설정한 UDP 패킷을 보내면 라우터를 지나며 1이 감소되어 그 응답으로 ICMP (time exceeded) 메시지를 출발지로 보낸다.
  • 이후 다시 TTL을 2로 설정하여 반복한다.
  • 포트 사용: UDP/33434 이상의 잘 사용하지 않는 포트를 사용.
  • 최종 목적지 도달 시 ICMP Destination Unreachable (type 3, code 3) 반환.

더 알아보기

5. OS별 TTL

  • OS별 TTL 값에 대한 정보는 여기에서 확인할 수 있다.

6. traceroute와 tracert 비교

  • 자세한 내용은 여기를 참고.

7. Assembly

  • Assembly에 대한 정보는 여기에서 확인할 수 있다.

8. iptables 예제

  • iptables -A INPUT -p tcp --syn --dport 80 -m recent --name SYN_DROP --update --seconds 2 --hitcount 30 -j DROP

0개의 댓글