728x90 Quality control (Univ. Study)/Information Security19 Buffer-overflow attack lab (4) Task 3: Level-2 Attack본 task 에서는 서버가 주요 정보를 출력하지 않게 하여 공격의 난이도를 높인다. 이번 공격의 타겟은 10.9.0.6 서버이다. (포트는 여전히 9090을 사용함) 이번에는 버퍼의 주소 값 만을 제공하는 것을 알 수 있다. 즉, bof값은 더 이상 제공하지 않는다. 즉, 버퍼의 크기는 더 이상 우리가 알 수 없는 값이다. 따라서 공격을 수행하기 어렵다. (물론 Makefile 을 확인하면 실제 버퍼의 크기를 알 수 있으나, 이 파일을 열어서 버퍼의 크기를 확인하지 않고 task 를 수행해야 한다. 왜냐하면 실제로 공격을 수행하는 공격자는 이러한 정보를 알 수 없기 때문이다.) 공격을 단순하게 하기 위하여 버퍼의 크기가 주어져 있는 상황을 상정한다. 또 다른 힌트로.. 2024. 12. 8. Cloud Computing Cloud Computing클라우드 컴퓨팅이 쓰이는 방식은 다음과 같다. On-demand self-service사용자가 필요에 따라 리소스를 추가하거나 제거할 수 있다. Broad network access모바일, 데스크톱, 메인프레임 등 다양한 장치를 통해 네트워크로 접근할 수 있다. Resource pooling여러 사용자가 리소스를 공유하며, 필요에 따라 리소스가 동적으로 재할당될 수 있다. 이 과정은 사용자에게 보이지 않게 이루어진다. Rapid elasticity고객의 요구에 따라 서비스가 자동으로 빠르게 확장되거나 축소될 수 있다. Measure service수도, 가스, 전화 서비스와 같이 사용량을 측정하여 요금을 청구할 수 있다.Service Models클라우드 컴퓨팅 서비스 모델은 다음.. 2024. 12. 8. Cryptography Method of CryptographyCryptanalysis는 암호 해독 또는 암호 알고리즘의 약점을 찾아내는 과정을 말한다. 주요 방법은 다음과 같다.단일 메시지의 해독 (Break a single message)암호화된 하나의 메시지를 해독하는 것을 목표로 한다.암호화된 메시지에서 패턴 인식 (Recognize patterns in encrypted messages)암호화된 메시지의 패턴을 찾아내어 의미 있는 정보를 추출한다.암호 해독 없이 의미 추론 (Infer some meaning without breaking the encryption)메시지의 길이나 빈도와 같은 정보를 기반으로 암호를 해독하지 않고도 의미를 유추한다.키 유추 (Easily deduce the key)한 메시지를 해독한 후.. 2024. 12. 7. Privacy What is PrivacyPrivacy는 내 데이터를 어디까지 누가 봐도 되는가를 결정할 수 있는 권리라고 볼 수 있다. Private하겨 여겨질 수 있는 다양한 종류의 데이터가 있다. 신원 (Identity): 이름, 주민등록번호 등 개인 식별 정보.재정 정보 (Finances): 은행 계좌, 신용 카드 정보 등.건강 정보 (Health): 의료 기록, 병력 등.생체 정보 (Biometrics): 지문, 홍채, 얼굴 인식 데이터 등.특권적 커뮤니케이션 (Privileged communications): 법적, 기밀 대화 내용.위치 정보 (Location data): GPS 데이터, 현재 위치 등최근들어 소프트웨어와 인터넷의 발전으로 인해 데이터의 주체 (Subject)와 데이터의 소유자 (Owner.. 2024. 12. 7. Buffer-overflow attack lab (3) Task 2: Level-1 attack제공된 docker-compose.yml 파일을 실행하여 컨테이너들을 실행하면, 네 개의 서로 다른 난이도를 갖는 네 개의 컨테이너가 수행된다. Task 2 에서는 level 1에 대한 공격을 수행한다.첫 번째 공격 대상은 10.9.0.5에서 port 9090으로 수행된다. 그리고 취약한 stack 프로그램은 32비트 프로그램이다. 우선, 정상적인 메시지를 서버에 전송해 보자. exploit.py 코드를 아래와 같이 수정해준다.그리고 코드를 실행하면 아래와 같이 작성 완료했다는 메세지가 뜬다.아래 처럼 Docker 컨테이너 내부에 접속하여 작업할 수 있도록 인터랙티브 쉘을 열어서 내부 프로세스를 확인하고 root의 권한으로 쉘이 열렸음을 확인할 수 있다. 위 모습이.. 2024. 12. 7. Network security Communication Media Vulnerability1. Sender와 ReceiverSender: 데이터를 송신하는 LAN(Local Area Network) 내부의 노드입니다.Receiver: 데이터를 수신하는 LAN 내부의 노드입니다.이들은 WAN(Wide Area Network)을 통해 데이터를 주고받습니다.2. WAN (Wide Area Network)Sender와 Receiver를 연결하는 네트워크로, LAN보다 더 넓은 지역을 포괄합니다.WAN을 통해 데이터가 전달되는 동안 보안 위협이 발생할 수 있습니다.3. 보안 위협 요소다이어그램은 네트워크 통신 과정에서 발생할 수 있는 다양한 보안 위협을 보여줍니다.Rogue Receiver (Sniffer, Wiretap):네트워크 내 불법적.. 2024. 12. 6. Buffer-overflow attack lab (2) Task 1: Shellcode버퍼 오버플로우 공격의 최종 목적은 악의적인 코드 (malicious code)를 타겟 프로그램에 주입하는 것이다. (Code injection). 이를 통하여 악의적인 코드는 타겟 프로그램의 privilege 로 실행되게 된다. 쉘코드(shellcode)는 많은 코드 인젝션 공격에 활용된다. 본 Task 에서는 shellcode 를 익힌다. 쉘코드는 코드 인젝션 공격에 흔히 사용된다. 쉘코드는 shell 에서 수행되는 코드의 조각이고 주로 어셈블리로 작성된다. 본 실습에서는 쉘코드의 바이너리 버젼만 제공하고 바이너리의 동작은 복잡하기 때문에 자세히 설명하지는 않는다.이 쉘코드는 ‘/bin/bash’ 쉘 프로그램을 수행하며 (1), command argument ‘-c’와 .. 2024. 12. 4. Buffer-overflow attack lab (1) Intro버퍼 오버플로우는 프로그램이 정해진 경계 밖에 데이터를 쓰려고 하는 상황으로 정의된다. 공격자는 이 취약점을 이용하여 프로그램의 컨트롤을 변경하고 이를 통해서 악의적인 코드를 수행할 수 있다. 본 실험에서는 버퍼 오버플로우 취약점을 이해하고 버퍼 오버플로우를 악용하여 공격하는 방법을 익힌다. 본 실험에는 버퍼 오버플로우 취약점을 가진 서버가 주어진다. 프로그램의 버퍼 오버플로우 취약점을 악용하여 루트 권한을 얻는 것이 최종 목적이다. 추가로 버퍼 오버플로우에 대한 대응책을 수행하고 공격에 어떤 영향을 미치는지 확인해본다.본 실험은 아래의 내용을 포함한다:- 버퍼 오버플로우 취약성과 공격- 스택의 구조- 버퍼 오버플로우 대응법: 주소 난수화- 쉘 코드실험 환경: SEED Ubuntu 20.04 V.. 2024. 12. 2. 추가 개념정리(Midterm) CIA TriadConfidentiality: 권한이 있는 사람만 정보를 볼 수 있음Integrity: 권한이 있는 사람만 수정할 수 있음Availability: 접근하고 싶을때 접근할 수 있어야함 Advanced Persistent ThreatOrganizedDirectedWell financedPatientSilent Types of AttackersHackerTerroristCriminal-for-hireIndividualOrganized crime memberLoosely connected group Types of Harm 1. Interception(도청): 정보가 송수신되는 동안 공격자가 이를 가로채는 행위이다. 예: 도청, 스니핑. 2. Interruption(방해): 서비스나 데이터의 정.. 2024. 10. 22. 이전 1 2 3 다음 728x90