본문 바로가기

반응형

Information Security/Hacking

(52)
SNMP (Simple Network Management Protocol) * SNMP : TCP/IP 기반의 네트워크상 각 호스트(보통 서버나 네트워크 장비)로 부터, 정기적으로 각종 관리 정보를 자동 수집, 실시간 모니터링 등을 목적으로 사용하는 프로토콜 * SNMP 주요 용어 주요 용어 내용 MIB (Management Information Base) * 관리 되어야 할 정보, 자원을 객체(Object)라 하며, 이 객체들을 모아놓은 집합체 - 관리자가 조회하거나 설정할 수 있는 객체들의 데이터베이스 * MIB는 객체별로 트리 형식의 구조를 이룸 SMI (Structure Management Information) * MIB를 정의하기 위한 구조를 의미함 * ASN.1(Abstract Syntax Notation) 언어를 사용 - 데이터와 데이터 속성들을 설명하기 위한 공..
FTP (File Transfer Protocol) * FTP : TCP/IP 기반으로 ID/PW의 암호화 없이, 서버와 클라이언트 사이 파일 전송에 사용되는 프로토콜로 암호화된 FTP 통신 서비스를 사용 권장 - SFTP : SSH 기반의 FTP로 22/TCP Port 사용 - FTPS : SSL/TLS 기반의 FTP로 990/TCP 포트 사용 * FTP 동작 모드 1) Active Mode - Client에서 Server 측 제어포트(21/TCP)로 접속하여 제어 채널 생성 후, Server에서 Client로 접속하여 데이터를 보내는 방식 (만약, 클라이언트PC 방화벽에서 외부 접속을 차단 하는 경우, 제어 채널은 생성 되지만, 데이터채널 연결이 불가능) - 클라이언트가 사용하는 임시 포트들의 경우 TCP/1024 이상의 포트를 사용 2) Passiv..
HTTP (Hyper Text Transfer Protocol) * HTTP : Web(WWW : World Wide Web) 상에서 Client와 Server간 HyperText 문서의 Request/Response 통신을 위해 개발된 프로토콜 - 1991년 HTTP 0.9 이후, 1996년 1.0, 1999년 1.1 버전이 발표되어 사용 중 HyperText 문서 : 대표적으로 HTML(Hyper Text Markup Language)가 있으며, 참조 혹은, 링크를 통해 한 문서에서, 다른 문서로 접근할 수 있는 문서를 의미 * HTTP 특성 1) 비 연결형 (Connectionless) 프로토콜 - 기존 HTTP 1.0 버전의 경우 Request에 대한 Response 이후에 TCP 연결을 바로 종료하는 구조였으나, HTTP 1.1 버전부터는 Connection..
DRDoS (Distributed Reflection DoS) * DRDoS : 공격자가 출발지 IP를 Target의 IP로 위조(Spoofing), 다수의 반사 서버(Reflector)로 요청정보를 전송, Target은 반사 서버로부터, 다수의 응답을 받아 서비스 거부 상태가 되는 공격 * DRDoS 공격 유형 유형 설명 UDP Protocol 이용 - UDP 프로토콜을 사용하는 각종 서비스를 이용한 서버를, 반사서버로 이용 - 해당 응답을 공격 대상으로 향하도록 함 TCP 3way-Handshake 이용 - TCP 연결과정의 취약점을 이용, 위조된 주소로 SYN 요청을 반사서버로 전달 - 반사 서버에샤 SYN+ACK 응답을 공격 대상으로 응답 ICMP Protocol 이용 - Echo Request와 Echo Response를 이용 - 위조된 주소로 Echo R..
포트 스캐닝 (Port Scanning) * 포트 스캐닝 : 공격자가 침입 전, 대상 호스트에 어떤 포트(서비스)가 활성화 되어 있는지 확인하는 기법 - 취약점 분석을 위한 사전 작업 TCP 표준 (RFC 793) - 닫힌 포트로 RST 이외의 패킷 수신할 시, RST 패킷으로 응답(RST+ACK) - 열린 포트로 SYN, ACK, RST 외의 패킷을 수신한 경우, 이를 폐기하고 응답하지 않음 (열린 포트에서 ACK만 수신 시에도 RST로 응답) * TCP Connect(Open) 스캔 : 일반 사용자 권한으로 connect 시스템 호출(system call)을 이용해, 정상적 TCP 연결 과정을 수행하여 스캔하는 방식 system call : 운영체제(커널)가 제공하는 서비스를, 일반 응용 프로그램이 이용할 수 있도록 제공하는 인터페이스 - ..
포맷 스트링 공격 (Format String Attack) * 포맷 스트링 공격 : 외부로부터 입력된 값을 검증하지 않고, 입출력 함수의 포맷 스트링을 그대로 사용하는 경우, 공격자가 권한을 획득하거나, 메모리 내용을 확인(%x) 및 원하는 위치(RET 영역) 이동, Return Address 를 악성 코드 주소로 변조(%n)하여, 임의 코드를 실행 하는 등의 공격이 가능 * 포맷 스트링 주요 함수 주요 함수 기능 printf(서식문자열, 인자1,..인자N) 인자값을 포맷 스트링 표준으로 출력 fprintf(서식문자열, 인자1,...인자N) 인자값을 포맷 스트링으로 지정한 파일(fp)에 출력 sprintf(서식문자열, 인자1,...인자N) 인자값을 포맷 스트링으로 지정한 버퍼(buf)에 출력 * 포맷 스트링 대응 방안 : 서식문자열을 함수의 입력 파라미터로 직접..
레이스 컨디션 공격 (Race Condition Attack) * 레이스 컨디션 공격 - 레이스 컨디션에 의해 고려되지 않은 상황이 발생하는 경우 악용이 가능한 공격으로, 실행 프로세스가 임시파일을 생성할 시, 실행 중에 끼어들어 임시 파일을 목적 파일로 연결(심볼릭 링크)하여 권한 상승(setuid를 이용) 등 악용하는 공격 * 레이스 컨디션 동작 구조 예시 - setuid(소유자 권한으로 실행)가 설정된 파일이 실행 중일 때 생성되는 임시파일에 심볼릭링크(/etc/passwd 등 Critical 파일) 생성, Setuid를 통한 권한 상승 적용된 후 심볼릭 링크한 대상 파일로 중요 정보 쓰기 수행, root 패스워드 탈취 등 수행 가능 * 레이스 컨디션 대응 방안 1) 가능하면 임시파일 생성 금지 2) 파일 생성 시, 동일 파일이 존재하면, 파일 생성 또는 쓰기..
버퍼 오버 플로우 (BOF - Buffer OverFlow) 공격 * BOF 공격 : 연속된 메모리 공간을 사용하는 프로그램에서 할당된 메모리 범위를 넘어선 위치에 자료를 읽거나 쓸 때 발생하며, 오작동 또는 악의적 코드를 실행할 수 있게 됨 BOF 종류 설명 Stack BOF 스택(함수 처리를 위해 지역 및 매개변수가 위치하는 메모리 영역) 구조 상, 할당된 버퍼들이 정의된 버퍼 한계치를 넘는 경우, 복귀 주소를 변경하여 공격자가 임의 코드를 수행 Heap BOF 힙(malloc()등의 메모리 할당 함수로 사용자가 동적으로 할당하는 메모리 영역) 구조 상, 최초 정의된 힙의 메모리 사이즈를 초과하는 문자열들이 힙의 버퍼에 할당될 시, 공격자가 데이터 변경 및 함수 주소 변경으로 임의 코드를 수행 * Stack BOF 발생 시 스택 구조 용어 설명 Stack Frame..

반응형