본문 바로가기

반응형

Information Security

(160)
버퍼 오버 플로우 (BOF - Buffer OverFlow) 공격 * BOF 공격 : 연속된 메모리 공간을 사용하는 프로그램에서 할당된 메모리 범위를 넘어선 위치에 자료를 읽거나 쓸 때 발생하며, 오작동 또는 악의적 코드를 실행할 수 있게 됨 BOF 종류 설명 Stack BOF 스택(함수 처리를 위해 지역 및 매개변수가 위치하는 메모리 영역) 구조 상, 할당된 버퍼들이 정의된 버퍼 한계치를 넘는 경우, 복귀 주소를 변경하여 공격자가 임의 코드를 수행 Heap BOF 힙(malloc()등의 메모리 할당 함수로 사용자가 동적으로 할당하는 메모리 영역) 구조 상, 최초 정의된 힙의 메모리 사이즈를 초과하는 문자열들이 힙의 버퍼에 할당될 시, 공격자가 데이터 변경 및 함수 주소 변경으로 임의 코드를 수행 * Stack BOF 발생 시 스택 구조 용어 설명 Stack Frame..
Unix/Linux 기본 이해 * Unix/Linux 시스템 로그인 과정 : Unix 계열 시스템은 모든 과정이 별개의 프로그램으로 실행됨 - 사용자 계정 ID/PW 입력 후, 로그인을 담당하는 /etc/passwd 파일내 해당 필드를 비교하여 확인 및 쉘이 사용할 변수(HOME, SHELL, USER 또는 LOGNAME)들을 근거로 초기 환경을 설정 후 로그인 쉘을 실행 shell : 사용자가 입력한 명령어를 해석하고 처리하여 프로그램을 실행하는 기능 (명령어를 입력할 수 있는 터미널 환경 * /etc/passwd 파일 : 시스템에서 사용자 관련 정보를 구분자(:)로 7개 필드의 정보를 구분하여 저장 필드 정보 user_account 사용자 계정명 user_password 사용자 패스워드 (x는 Shadow 패스워드 - 암호화된 패..
Windows SID (Security Identifier) * Windows 보안 식별자(SID) - SRM(Security Reference Monitor)에서 부여하는, 사용자 또는 그룹에 부여되는 고유 식별 번호 (SAM 파일에 저장) - 로그인 시, 사용자와 그가 속한 모든 작업 그룹들의 SID 정보가 담긴 접근 토큰(엑세스 토큰)을 생성하며, 접근 토큰의 사본은 해당 사용자로 인해 시작된 모든 프로세스에게 할당 * SID 구조 : 잘 알려진 SID 참조 계정 계정별 SID Administrator S-1-5-21-4243233100-3174512425-4165118588-500 Guest S-1-5-21-4243233100-3174512425-4165118588-501 일반 사용자 S-1-5-21-4243233100-3174512425-416511858..
웹 서버 보안 대책 (Apache 설정 기준) * 웹 서버 보안 대책 (Apache httpd.conf 기준) : 웹 서버 운영 시, 최소한의 권한, 최소한의 정보 노출 등 각종 보안 위협에 대한 대비가 가능한 사전 설정이 요구됨. (취약한 부분에 대한 Insight를 위한 글로, 대부분 웹서버 설정은 방법의 차이지, 취약한 부분은 유사) * httpd.conf 내 각종 보안 위협 대비 설정 유형 지시자 설정 방식 설명 리스닝 포트 지정 Listen 포트번호 ex) Listen 80 - 클라이언트가 접속할 웹서버의 Listening 포트 지정 심볼릭 링크 사용 설정 제거 Options FollowSymLinks 제거 ex) Options None 으로 변경 - 심볼릭 링크로 인해, 허용 외에 다른 디렉터리에 액세스 할 수 있는 위험성 존재 - Non..
검색엔진 정보 노출 취약점 (robots.txt) * 검색엔진 정보 노출 취약점 : 검색 엔진에 의해 각종 정보(시스템, 개인정보 등)이 검색되어 중요 정보가 제공, 노출되는 취약점 - 웹사이트URL/robots.txt 로 검색 시, 해당 파일이 없는 경우, 검색엔진 접근제어가 미적용된 상태 로봇배제표준 : 검색로봇에 대한 웹사이트의 디렉터리 및 파일에 대한 검색 조건을 명시해놓은 국제 규약 - 접근 제한에 대한 설정을 robots.txt에 기술함(ASCII 또는 UTF-8 텍스트) 검색로봇 : 검색엔진이 웹사이트를 검색, 정보를 가져오는 프로그램으로, 로봇배제표준 설정파일(robots.txt)을 확인, 이를 준수한 컨텐츠 수집을 진행 - 악성 검색엔진의 경우 로봇배제표준을 무시하고 컨텐츠를 수집하는 등의 행위를 할 수 있음 * 로봇배제표준 설정파일(r..
웹 서비스 메소드 설정 취약점 * 웹 서비스 메소드 설정 취약점 : 일반적으로 사용하는 GET, POST 메소드 이외, 불필요한 메소드 허용 시, 공격자가 이를 이용, 각종 공격에 활용할 수 있는 취약점 * 지원하는 메소드 확인 (Telnet 사용) : telnet을 통해 서비스 IP 및 Port에 접근 후, OPTIONS 메소드(지원할 시)로 Allow 헤더 필드로 지원하는 메소드 리스트 확인이 가능 * 대응책 : 불필요한 메소드 사용 제한 필요 - 아파치 웹서버 설정파일(httpd.conf)에서 설정 (적용 후 403 forbidden 응답 반환)
디렉터리 리스팅 취약점 (Directory Listing Vulnerability) * 디렉터리 리스팅 취약점 : 취약한 웹 서버 설정으로 인해 인덱싱(리스팅) 기능이 활성화 되어, 서버 내 모든 디렉터리 및 파일 목록을 볼 수 있는 취약점 * 대응책 : 디렉터리 인덱싱 기능을 제거 (시스템 별 설정 상이) 1) 아파치 웹서버(httpd.conf) 인덱싱 기능 및 접근제어 설정 - 모든 디렉터리 ()에 대해, Options 지시자의 Indexes 기능을 None으로 변경 (동일 경로 재조회 시, 403 Forbidden 코드 반환) - httpd.conf에서 지정 경로(/index, /admin 등 중요 페이지)에 대한 접근 제어 설정 Order 지시자 : 허용IP와 거부IP의 순서를 명시하는 것으로 뒤에 명시된 설정이 우선(위 이미지는 Allow 우선 적용 - Allow from 선적..
XPath/Xquery Injection Vulnerability * XPath/Xquery Injection Vulnerability : DB와 연동된 웹 애플리케이션에서 Xpath 및 Xquery 질의문 필터링이 제대로 이루어지지 않을 경우, 입력 가능한 폼에, 조작된 질의문 삽입으로 인증 우회를 수행할 수 있는 공격 XML (eXtensible Markup Language) : (요약) 마크업 언어(HTML)을 정의하기 위한 언어로, HTML이 정해진 태그만 사용하는 등 사용에 한계가 있는 반면, XML의 경우 임의로 기능 구성 및 수정, 운용 등이 가능한 언어(extensible한 언어) Xpath (XML Path Language) : (요약) XML 문서의 특정 위치, 요소, 속성 검색(포인터 역할)Xquery (XML query) : (요약) : XML을 ..

반응형