분류 전체보기54 07. SYN Flooding SYN Flooding공격자가 대량의 SYN 요청 패킷을 서버에 보낸 후, 정상적인 SYN-ACK 응답을 받았지만 ACK 패킷을 보내지 않아 연결을 완료하지 않는 공격 DOS 검사를 해제한 후 공격자의 컴퓨터에서 hping3으로 패킷 생성-S: SYN 플래그가 설정된 TCP 패킷--flood: 제한 없이 빠른 속도--rand-source: 패킷의 소스 IP를 랜덤하게 변경 --rand-source 옵션으로 소스 IP 주소가 다 다름 SYN flood은 DDoS 공격의 일종으로 DOS 검사만 체크할 경우 공격이 탐지되지 않고 DoS 아래의 DDoS 검사를 체크해줘야 한다. 이후 패킷 모니터에서 Drop되는 패킷만 살펴보면 SYN Flood 공격으로 발생 패킷들을 모두 차단하고 있다. 2025. 1. 31. 06. ICMP Flooding ICMP Flooding이란 1. 실습 전 환경설정 XTM1에 장애를 일으키기 위해 None type으로 바꿨던 eth1을 다시 설정 세션 동기화 사용, 정책 동기화 체크 해제 기존에 설정한 Checker 모두 삭제 HA 설정 때 사용한 SNAT 정책 삭제 후 나머지 1, 2, 3 순위 정책 활성화 /etc/network에서 interfaces파일의 gateway 172.0.0.100 -> 172.0.0.1로 다시 변경저장 후 $sudo systemctl restart networking 2. 패킷 모니터링우측 상단 모니터 탭에서 실시간으로 발생하는 패킷을 모니터링할 수 있음.이번 실습 공격에 사용할 ICMP 프로토콜을 필터링조건에 걸고, [로그 요청]을 클릭하면 이전 실습에서 사용한 XTM 2번의 C.. 2024. 11. 23. ICMP Flooding (Ping Flooding) ICMPv4(Internet Control Message Protocol version 4)TCP/IP 기반의 인터넷 프로토콜(IP)과 조합하여 통신 중에 발생하는 오류 처리와 전송 경로의 변경 등을 위한,제어 메세지를 취급하는 무연결 전송용의 프로토콜이다. (네트워크 계층에 속함.)IP 프로토콜은 신뢰성을 보장하지 않는 프로토콜로 error-reporting, error-correcting 기능이 없고,이러한 단점을 보완하기 위해 설계된 것이 ICMP이다. ICMP 메세지는 크게 Error-reporting messasge와 Query messages로 나눌 수 있다. Error-reporting messagesICMP의 주된 임무 중 하나는 IP 데이터그램의 프로세싱 동안 발생하는 오류를 출발지(송신.. 2024. 11. 23. 05. HA 구성 실습 HA(High Availability, 고가용성)가용성이 높다는 뜻으로, 고장 나지 않음을 의미HA 구성의 목적은 장애가 발생하였을 때 서비스의 다운타임을 최소화함으로써 가용성을 극대화하는 것. HA 유형Server redundancy(서버 이중화)여러 서버를 사용하는 것으로, 서버 중 하나에 장애가 발생할 경우 백업 서버가 기존 서버의 데이터를 받아와 서비스Load balancing한쪽으로 몰리는 트래픽을 여러 서버로 분산하여 단일 서버의 과부하를 방지하는 것Failover장애가 생겼을 때 예비 시스템으로 자동 전환되는 기능으로 대기 중인 장비에게 모든 처리를 전송할 수 있게 전환하는 것Replication여러 개의 데이터 복사본을 만들고 여러 서버에 배포하여 데이터를 항상 사용할 수 있도록 하는 것*.. 2024. 11. 23. 04. 로깅과 백업 1. 로그 설정 원하는 이벤트를 대상으로 다양한 로그 레벨을 설정할 수 있음 일시적으로 XTM 서비스가 중지되어 XTM을 통한 모든 패킷이 drop 되고 통신 불능 상태로 변하면, 관리자는 로그 백업 후 시스템을 재개해야 한다. (1) 시스템 재시작 (2) 로그 덮어쓰기 HDD에 저장된 로그의 오래된 순서부터 새로운 로그를 덮어쓰기 시작하며 로그 백업용 FTP 서버가 존재한다면, 로그 데이터를 압축하여 FTP 서버로 전송이 가능하다.또한 원하는 요일, 일자를 선택하면 자동으로 로그가 압축되어 저장된다. 저장되는 로그데이터는 우측 상단의 로그를 클릭하면 확인할 수 있다. 2. Backup 모든 config 파일을 gat 파일로 백업하는 기능으로 자동 백업 설정이 가능하다.비밀번호를 생성하여 백업을 수행.. 2024. 11. 22. 02. 운영체제의 프로세스 가상주소공간 1. Not enough memory아키텍쳐가 지원하는 메모리 크기 보다 물리 메모리가 클 때32비트 아키텍쳐의 경우 최대로 표현할 수 있는 주소의 용량이 4GB인데 RAM의 크기가 4GB를 넘어갈 경우 넘어서는 용량에 대해선 addressing이 불가능하다.아키텍쳐가 지원하는 메모리 크기 보다 물리 메모리가 작을 때반대로 물리 메모리의 크기가 2GB로 작다고 하면, 아키텍쳐가 표현하고자 하는 값을 메모리가 충족시키지 못한다. 만약 물리 메모리 크기를 넘어서는 주소 값에 접근을 시도할 경우 충돌이 발생할 수 있다. 2. Keeping program secure실행 중인 프로그램이 동일한 물리 메모리 주소에 접근하여 데이터를 읽고 쓰는 경우, 다른 프로세스들이 사용하는 메모리에 접근을 하여 정보가 노출되거.. 2024. 11. 21. 03. 방화벽 기능 실습 네트워크 구성도Internet을 중심으로 공격자, 일반사용자, DNS와 NTP서버, 기업망까지 총 4개로 구성. 기업망은 라우터를 기점으로 UTM 두 대가 이중화로 구성되어 있으며, 각 UTM은 라우터와 통신할 수 있는 IP, 이중화 HA를 위한 IP, 기업 내부에 있는 업무망, DMZ망, 관리망에 연결되어 있음. 1. 네트워크 인터페이스 할당기존에 설정되어 있던 eth2를 제외한 나머지 네트워크 인터페이스를 아래 표와 같이 할당하기[ eth0: 업무망 / eth1: DMZ / eth3: UTM HA Link / eh4: 라우터와 통신 ] => 각 용도에 맞게 IP와 Netmask 구성 현재는 eth2(Management - AdminConsol)만 설정된 상태 네트워크 인터페이스를 추가하기 전에.. 2024. 11. 20. 01. 실행파일의 생성 및 실행과정 Von Neumann architecture 폰 노이만 아키텍처 개념에 따라 프로그램의 실행과정을 설명하면 다음과 같다.실행 파일은 평소에 Storage에 존재하며실행 시 Memory에 로드된다. (매핑)CPU는 이를 바탕으로 코드의 실행 흐름을 가진다.결국 프로그램을 실행한다는 것은 CPU에게 특정 일을 시키는 것이라 할 수 있는데, CPU는 0과 1로 이루어진 기계어만 이해할 수 있다. Compile그렇기 때문에 우리가 C, C++, Java, Python.. 과 같은 High Level Langauge로 작성한 소스코드를 -> 기계어로 변환해야 하며 이를 Compile이라고 한다. Compiler는 소스코드를 기계어로 번역하고 Syntax Check와 같은 과정을 거쳐 Source File을.. 2024. 11. 15. IDA 단축키 Ctrl + F: 함수 찾기 G: 임의 주소 또는 레이블로 이동 N: 함수 및 변수 이름 재설정 X: Xref(Cross reference), 함수 및 변수가 사용되는 영역을 재참조 Y: 함수 및 변수 타입 변경 Shift + F12: 바이너리에서 사용하는 모든 문자열 조회 BreakPoint(F2): 중단점 설정Run(F9): 프로그램 계속 실행 OR 디버깅 시작 Step Over(F8): 어셈블리 코드 한 줄 실행 (함수 호출 코드여도 내부로 진입 X)Step Into(F7): 어셈블리 코드 한 줄 실행 (함수 호출일 경우 내부로 진입) Restart(Ctrl + F2): 디버깅 중단 2024. 8. 15. 이전 1 2 3 4 ··· 6 다음