본문으로 바로가기
728x90
반응형

안녕하세요. letitkang입니다.


오늘은 FINGER 프로토콜에 대해서 알아보겠습니다.


FINGER 프로토콜은 네트워크 상의 특정인이나 시스템의 상태를 제공하기 위한 프로토콜입니다.


'Network Protocols Handbook의 pdf파일'에 있는 내용을 한번 살펴보겠습니다.


자세한 내용은 RFC1288(https://tools.ietf.org/html/rfc1288)문서를 보시면됩니다.


 

 

 



Finger 프로토콜은 7계층인 응용 계층의 프로토콜입니다. 원격 사용자 정보 프로그램(RUIP)에 대한 인터페이스를 제공해줍니다.


Finger 프로토콜은 TCP 프로토콜을 기반으로 79번 포트를 사용하여 사용자의 정보를 교환하는데 사용됩니다.


Localhost는 Finger 프로토콜의 포트에서 원격 호스트에 대한 TCP연결을 열고, 요청을 처리하기 위해 연결의 끝에서 RUIP를 사용 할 수 있습니다.


Localhost는 Finger 쿼리를 RUIP에게 보내고, RUIP가 응답하기를 기다립니다.


RUIP는 쿼리를 받아서 처리하고, 응답을 한 다음 연결을 종료합니다.


Localhost는 응답과 닫기 신호를 수신한 다음, 연결을 종료 합니다. Finger 프로토콜은 사용자의 정보를 공개합니다.


또한 이러한 정보는 민감할 수도 있습니다. 보안 관리자는 Finger 프로토콜을 사용할지에 대한 여부를 결정해야됩니다.


 

 

 



기존의 구현은 사용자가 마지막으로 로그인 한 시간, 마지막으로 읽은 시간, 읽지 않은 메일이 있는지 등의 여부를 제공합니다.


이런 정보들로 진행중인 대화를 추적하고, 다른 사람의 주의가 집중된 부분을 알아낼 수 있습니다.


정보 보안을 염두에 두고 있다면, Finger 프로토콜을 사용하면 안됩니다.


구현은 다양한 형태의 공격에 대해 테스트를 해야됩니다. 특히, RUIP는 잘못된 입력으로 부터 자신을 방어해야합니다.


Finger 프로토콜에게 OS, 네트워크 소프트웨어를 제공하는 업체는 보안에 대해 테스트를 적용해야합니다.


Telnet, FTP 및 SMTP와 마찬가지로 Finger는 보안이 되지 않은 프로토콜 중 하나입니다.


구현에서 Telnet, FTP 및 SMTP처럼 테스트 과정에서 보안 검사를 수행해야합니다.


Finger 프로토콜의 호스트 간에 전송되는 데이터는 패리티 비트가 없고 ASCII 형식이며 CRLF로 끝내는 행이 있어야합니다.


여기에 EBCDIC 등과 같은 다른 문자 형식도 포함됩니다.


이는 ASCII 128과 ASCII 255 사이의 모든 문자가 진정한 국제적인 데이터가 되어야 하고, 패리티 비트가 설정된 7비트 ASCII가 아니다는 것을 의미합니다.


Finger는 다음과 같이 정의됩니다.


{Q1} ::= [{W}|{W}{S}{U}]{C}

{Q2} ::= [{W}{S}][{U}]{H}{C}

{U} ::= username

{H} ::= @hostname | @hostname{H}

{W} ::= /W

{W} ::= /W

{S} ::= <SP> | <SP>{S}

{C} ::= <CRLF>


 

 



여기 까지 Finger 프로토콜에 대한 설명입니다.


Finger 프로토콜은 아마 다들 생소한 프로토콜일겁니다.


이 정도로만 알아 두면 됩니다.


자세히 알고 싶으면 위에 링크해둔 RFC 문서를 보면됩니다.


이상으로 포스팅을 마치겠습니다.


감사합니다.

728x90
반응형