Information Security/Info.Security 21

Openssl 사용하기

Openssl - Openssl은 오픈 소스 프로젝트로 SSL (Secure Socket Layer) v2, v3 그리고 TLS (Transport Layer Security) v1 프로토콜 라이브러리 및 각종 암호화 라이브러리를 지원하는 툴이다. openssl 라이브러리를 사용하면 암호화된 소켓 통신, 데이터의 암호화 및 복호화, 데이터 무결성 검사 등의 기능을 구현할 수 있다. 라이브러리 (소스 파일)는 다음 사이트에서 다운받아 설치하면 되고, 최신 버전은 현재 1.0.0 이다. 소스 다운받기 소스를 다운받아서 압축을 풀면 >tar xvzfp openssl-1.0.0d.tar.gz 다음과 같이 폴더가 생성되는데, 이 폴더 안에 소스 코드들이 들어있다. > pwd /root/openssl-1.0.0d..

Firewall

FIREWALL 내가 4년, 이제 곧 5년차 만지고 있는게 바로 이 firewall이다. 처음에 방화벽을 만드는 회사- 라고 했을때는 도대체 머지?그리고 어떻게 개발자가 c언어로 방화벽을 만들까??? 라는 궁금증이 제일 컸었다. 1년이 지나고 2년, 3년.. 시간이 지나면서, firewall은 정말 고마운 아이구나, 난 참 좋은 일을 하고있구나 ㅋㅋㅋ 라는 자부심을 나름 갖게 되었다. 그렇다면 날 4년간 먹여살리고 자부심을 키워준 firewall이란 무엇일까~~? 한국말로 번역하면 "방화벽" 인데, 이 "방화벽"은 악성 공격들로부터 나의 소중한 정보를 (웹서버, DB등등등) 지켜주는 방패라고 할 수 있겠다. 사전적 의미를 보자면, Firewall (construction) : a barrier insid..

Blacklist & Whitelist

Positive Security Model (whitelist) VS Negative Security Model(blacklist) 웹 방화벽 을 다루어 보았거나 보안 정책을 수립해 본 사람들이라면 누구나 positive rule과 negative rule에 대해서 들어 보았을 것이다. 보안 탐지 정책의 속성으로 이렇게 두 가지의 룰을 들 수 있는데, 오늘은 이 positive와 negative에 대해 간단히 설명해 보려 한다. "positive" 보안 모델(화이트리스트라고도 명명)은 허용될 룰들을 정의하고 다른 이외의 것들은 모두 차단하며 이는 "negative"(또는 블랙리스트) 보안 모델과 대조되는 성격을 가진 룰이라 할 수 있다. 블랙리스트는 차단할 룰을 정의하고, 나머지는 허용하는 성격의 룰이다..

ARIA 블록 암호화 알고리즘

우리 회사 제품 개발에 참여하고, CC인증을 받으면서 ARIA암호화 알고리즘에 대해 알게 되었다. 공공기관, 기업 등에 들어가고 있는 보안 장비에 적용되는 암호화 알고리즘은 여러 가지가 있는데, 요새는 우리나라에서 개발한 ARIA알고리즘이 거의 필수로 자리잡고 있다. ARIA라고 구글에 치면,, 제대로 나오는게 없어서-_- 첨에 고생했는데,, "ARIA 암호화 알고리즘" 으로 찾아보니 그나마 좀 검색이 된다. 우선 ARIA는 "Academy, Research Institute, Agency"의 약자로 국가 보안 기술 연구소 주도 하에 학계, 연구소 그리고 정부 (학-연-관)가 공동으로 개발한 암호화 알고리즘이라 할 수 있다. ARIA 알고리즘의 주요 특성은 다음과 같다. 블록 크기 : 128비트 키 크기..

서비스 거부 공격, DoS

Dos공격은 가장 흔한 공격 형태로써 정상적인 사용자가 시스템을 사용하지 못하도록 막는 것이다. 이 공격은 어떤 시스템도 처리 용량에 한계가 있다는 사실을 이용한다. 컴퓨터, 웹 서버, 네트워크 등은 제한된 처리 능력을 갖는데 그 한계를 넘어버리면 시스템은 응답하지 못한다. 즉 시스템을 과부하 상태로 만들어 웹 서버에 접근한 정상적인 사용자들에게 응답하지 못하게 하는 것이 DoS공격이다. 1. TCP SYN Flood 공격 - 해커가 서버 접속이 어떻게 이루어지는지 알고 있을 때 할 수 있는 공격 -클라이언트와 서버가 TCP프로토콜을 사용하여 통신하기 위해서 핸드셰이킹을 통해 세션을 설정하는데, 이 세션을 설정하기 위해 메모리에 있는 작은 버퍼공간이 핸드셰이킹 메세지교환용으로 마련됨 -세션 설정 패킷은 ..

CRLF Injection

CRLF Injection CRLF 는 Carrage Return(CR, ASCII 13, \r) Line Feed(LF, ASCII 10, \n) 을 나타낸다. 이 아스키 코드들은 화면에는 보이지 않지만 윈도우에서 라인의 끝을 알려주기 위해 흔히 사용된다. (리눅스/유닉스 시스템에서는 LF만 개행 문자로 사용한다.) CR과 LF의 조합은 키보드에서 "Enter"키를 눌렀을 때 나타나는데, "Enter" 키는 일반적으로 새로운 라인을 시작하라는 명령어로 알좋� 있다. (개행 문자 입력 키) CRLF Injection 공격은 해커가 시스템에 CRLF 명령을 날릴 때 발생한다. 이런 종류의 공격은 일반적인 운영 체제나 서버 소프트웨어에서 보안 홀이라기 보다는, 어떻게 웹 사이트를 개발하느냐에 따른 기술적인 ..

가상 사설망, VPN.

VPN (Virtual Private Network, 가상 사설망) 일반 사설 네트워크에서는 외부로부터의 보안적인 위협이 존재하지 않지만, 이 사설망을 외부에 노출시킬 경우 외부로부터 오는 위협에 쉽게 노출될 수 있다. 한 노드에서 외부망을 통해 다른 특정 네트워크에 정보를 전달할 때, 보안성을 높이기 위해 사용하는 것이 바로 VPN이다. 사용자가 VPN을 사용하게 되면, 비록 외부 망을 거친다고 하더라도 그 사용자의 입장에서는 사설 네트워크를 사용하는 것과 같은 서비스를 제공 받을 수 있다. 그럼 VPN과 일반 사설 망의 차이는 무엇일까?? 일반 사설 망을 사용하게 되면 물론 보안성을 보장받을 수 있지만, 이 사설망 설치로 인한 비용이 발생하게 된다. 하지만 VPN을 사용하면 이러한 문제 없이 보안성을..

대칭키 암호화

자신의 데이터를 암호화 해서 상대방에게 전달하는 방법 중 하나가 대칭키 암호화 이다. 이는 "공유 비밀키 암호화" 라고도 하며, 말 그대로 암호화 및 복호화 하는 키가 대칭인(같은) 키를 사용함을 의미한다. 대칭키 암호화 방식을 사용하는 암호화 알고리즘에는 DES, AES, RC4/5, IDEA .. 등등이 있으며 우리나라 에서 개발한 SEED/ARIA 알고리즘도 대표적인 예라 할 수 있다. 대칭키 암호화에는 다음 2가지 방식이 사용된다. 1. 블록 암호화 블록 암호화는 평문을 일정 길이로 분할하여 이 블록을 암호화 해서 전달하는 방법이다. 물론 복호화 시에도 이 블록들을 각각 복호화 하여 합치면 평문이 완성될 것이다. 예를 들어 128Bit 암호화를 한다고 가정하면, 평문을 다음과 같이 128Bit로 ..

네트워크 공격

네트워크 시스템 상에서는 여러 가지 유형의 공격들이 행해지고 있다. 오늘은 일반적으로 사용되는 네트워크 공격들에 대해서 알아보려 한다. 네트워크 서비스에 대한 불법 접근(보안 시스템 우회) - 접근이 금지 또는 제한된 네트워크에 사용자들이 합법적으로 접근할 수 있도록 한다. - Masquerading : 어떤 사용자가 다른 사용자를 가장하는 것을 의미 불법적인 네트워크 사용 - 업무적인 용도가 아닌 부적절한 용도 또는 개인적인 목적으로 네트워크를 사용 도청 - 네트워크 상에서 오가는 데이터를 불법적으로 가로챈다. 위성이나 무선 인터넷, 휴대폰 등은 도청 공격에 취약성을 가지고 있기에 이 방법으로 쉽게 데이터를 가로챌 수 있다. 서비스 거부 및 다른 서비스 방해 - 네트워크 자원을 고갈시킴으로써 다른 사용..

인증하기-HASH

인증하기- HASH 정보보안에서 처음 기본적으로 배우는 개념중 하나가 "인증" 이다. A가 B에게 어떠한 정보를 보낼 때, 그 정보가 변경되지 않았는지(무결성),A가 B에게 보낸 것이 확실한지 등을 검사하기 위한 방법이 바로 "인증"이라 할 수 있다. 인증을 하기 위해서 HASH, MAC, HMAC 등 여러 가지 방법들이 사용되는데, 오늘은 그중 인증의 가장 기본적인 방식인 HASH에 대해 알아보려 한다. Hash는 특정 키 값 없이 MD5나 SHA-1등의 알고리즘을 이용해 해시값을 생성하여 A가 보내고자 하는 메시지에 이 해시값을 붙여 B에게 전송하는 방법이다. 이 때 B는 메시지가 올바르게 왔는지 확인하기 위해 A가 보낸 데이터를 동일한 알고리즘으로 다시 해시하여 A가 붙인 해시값과 자신이 검사한 해..

반응형