목록보안 (17)
Shine's dev log
1. Sniffing(스니핑) 이란? [snif : 코를 킁킁거리다] 라는 뜻에서 알 수 있듯이 스니핑은 네트워크 상에서 다른 컴퓨터들의 패킷 교환을 도청하는 행위이다. 스니핑과 비교되는 공격으로는 스푸핑(Spoofing) 이 있는데, 스푸핑은 실제 거짓 패킷을 전송하거나 패킷을 변조하는 등의 행위이다. 스니핑은 패킷을 변조하거나, 거짓 패킷을 송신하는 스푸핑 공격에 비해 조용히 도청만 한다는 점에서 소극적인 공격이라고 볼 수 있다. 2. ARP Redirect 오늘은 스니핑 공격의 대표적인 예시인 ARP Redirect를 알아보자. 그러려면, 먼저 ARP 에 대하여 알아봐야 할 것이다. 2.1. ARP ARP는 Address Resolution Protocol의 약자로, 네트워크 상의 IP주소(3계층)..
1. tcpdump란? 리눅스에서 제공하는 패킷 분석툴로, 네트워크 인터페이스를 통해 지나가는 패킷을 분석해준다. 특정 조건을 통해 더 쉽고 효율적으로 패킷 분석을 할 수 있다. 패킷 캡처를 해주는 대표적인 프로그램으로는 와이어샤크가 있는데, tcpdump도 잘 사용할 줄 안다면 리눅스 환경에서 패킷 분석을 잘 할 수 있다. 앞서 말했듯이 tcpdump에는 여러가지 옵션을 설정해줄 수 있다. 특정 포트에 해당하는 패킷만 필터링 해줄수도 있고, 더 보기 편하게 표시해주는 옵션도 있다. (자세한 옵션은 위키백과를 참조하자 : https://ko.wikipedia.org/wiki/Tcpdump) 2. tcpdump로 Telnet 로그인 정보 확인하기 자 이제 tcpdump가 패킷 분석툴인것은 알겠다. 이제 예..
1. 배너그래빙(Banner Grabbing) 이란? 우선 배너(Banner)란 Telnet과 같은 원격지 프로그램에 로그인할 때, 처음 뜨는 안내문을 말한다. 배너에는 컴퓨터의 운영체제 종류와 버전 등이 담겨있기 때문에, 공격자가 공격 대상의 기초 정보를 알아낼 수 있다. 기본적으로 /etc/issue.net 위치에 배너가 저장되어 있다. 위의 그림은 /etc/issue.net의 파일을 vi 편집기로 연 것이다. 운영체제의 정보가 담겨있는 것을 볼 수 있다. 2. 배너그래빙(Banner Grabbing)의 방어법 배너그래빙의 방어법은 단순하다. 그냥 배너를 바꾸면 된다. 원래는 운영체제의 기본 정보를 담고있었던 배너 (issue.net 파일)를 vi 편집기를 통해 위의 그림과 같이 바꾸었다. 이제 te..
1. 디지털 서명 메시지 인증이란 올바른 사용자에게 메시지가 변조되지 않고 도착하는 것을 인증하는 것이다. 앞서 메시지 인증을 하는 방법으로 MAC(Message Authentication Code)를 알아보았는데, MAC은 메시지 인증은 가능하지만 부인방지가 불가능하다는 단점이 있었다. 메시지 인증을 보장하면서 부인방지(non-repudiation) 까지 보장하려면 디지털 서명을 이용해야 한다. '디지털 서명' 이라는 이름에서 알 수 있듯이, 디지털 서명은 현실세계의 싸인이나 지장을 찍는 등의 서명 행위를 컴퓨터 세계에 실현시킨 기술이다. 2. 디지털 서명 절차 그렇다면 어떤 식으로 디지털 서명을 진행할 수 있는지 알아보자. 간단하게 말하면, 디지털 서명은 공개키 암호화를 역으로 수행함으로써 실현된다...
1. ECC(Elliptic Curve Cryptography)란? 타원 곡선 암호(ECC)는 공개키 암호 알고리즘이며, RSA와 같은 다른 공개키 암호에 비해 짧은 키를 사용한다는 것이 특징이다. 대표적으로 비트코인 시스템이나 ad-hoc 무선 인터넷 환경, 모바일 네트워크 환경에서 자주 이용된다. 짧은 키를 사용하기 때문에 1) 긴 키를 계산할 수 없는 조건일 때 2) 빠른 속도가 필요할 때 3) 서명, 검증, 인증이 필요할 때 사용한다. 2. ECC의 원리 타원곡선은 E : y^2 = x^3 ~ 의 형태로 나타낼 수 있다. (y에대한 3차식, x에 대한 2차식) 위의 곡선을 지나는 직선이 있다고 할 때, 지나는 점 P Q -R이 있다고 가정해보자. 이 경우, R = P + Q 이라고 정의한다. (여..
1. RSA의 탄생 RSA 암호는 Ron Rivst, Adi Shamir, Leonard 라는 세 사람이 1977년 고안해낸 암호 알고리즘이다. 비교적 최근에 만들어진 알고리즘이고 그 안전성 또한 뛰어나서 지금까지도 공개키 암/복호화 환경에서 널리 쓰이고 있다. 앞서 알아보았던 Diffie-Hellman 공개키 암호를 기반으로 만들어졌기 때문에, 방식이 꽤나 유사하다. 지금부터 RSA 암호 알고리즘에 대하여 알아보자. 2. RSA 알고리즘 1) 키생성 (개인키와 공개키 만들기) 과정 우선 다른 암호 알고리즘과 마찬가지로 키를 생성해야 한다. 공개키 방식을 사용하기 때문에 개인키와 공개키 두 개를 생성해야 한다. 공개키와 개인키는 다음과 같다. 공개키 : n과 e 두가지 정수로 이루어져 있는 키 개인키 :..