교묘하게 구글 단축 URL을 이용한 악성코드 유포

  • AhnLab
  • 2017-08-16

단축 URL을 이용해 유포된 악성코드가 또다시 기승을 부리고 있다. 특히 교묘하게 위장한 메일 본문에 많은 사용자에게 익숙한 구글의 단축 URL을 포함하고 있어 사용자들의 각별한 주의가 요구된다. 

 

소셜 미디어(Social Media 또는 SNS)와 모바일 이용이 증가하면서 단축 URL 사용이 일상화되었다. 최근에는 업무 메일 등에도 긴 URL 대신 짧은 URL을 첨부하는 경우가 늘고 있다. 문제는 전체 주소가 아닌 주소의 일부를 간추린 형태이다 보니 가짜 단축 URL 일 경우 이를 알아차리기 어렵다는 것이다. 때문에 단축 URL을 이용한 악성코드 유포 시도가 계속되고 있다.

이번에 발견된 단축 URL 악성코드는 [그림 1]과 같이 미국 거래개선협회(BBB, Better Business Bureau)를 사칭한 가짜 메일로 유포되었다. 항의성 메일로 위장한 메일의 본문에는 24시간 이내에 답변을 해야 하며, 자세한 사항을 확인하려면 본문에 포함된 단축 URL을 클릭하라고 쓰여있다. 특히 메일 본문에 수신자의 이름과 회사명까지 언급하는 등 교묘하게 수신자의 의심을 피하고 있다. 

 
[그림 1] 스팸 메일 본문 

수신자가 메일 본문의 구글 단축 URL을 클릭하면 [그림 2]와 같이 익숙한 구글(google)의 URL로 재연결(리다이렉트)되고 .js파일이 다운로드된다.

 
[그림 2] 단축 URL 클릭 시 연결되는 URL 및 다운로드 되는 js파일

다운로드된 .js파일을 실행하면 [그림 3]과 같이 미국 거래개선협회에서 보낸 것처럼 보이는 문서가 나타나 메일 수신자를 안심시키는 역할을 한다. 

 
[그림 3] 생성된 doc 파일(미끼 파일)

수신자가 문서 파일에 관심을 갖는 동안 이 js 파일이 실행되어 텍스트(txt) 파일로 위장한 DLL 파일을 생성한다. 이렇게 생성된 DLL 파일은 스크립트(script) 파일을 생성한 후 자가 삭제된다. 생성된 스크립트 파일이 특정 IP 주소로 접근을 시도한다. 

공격자들이 이메일의 첨부 파일을 이용해 악성코드를 배포하는 방식이 잘 알려져 있어 사용자들이 주의하고 있는 반면, 단축 URL에 대해서는 여전히 사용자들이 방심하는 경우가 많다. 특히 이번 사례처럼 메일 본문에 자신의 이름과 회사명이 언급되어 있다면 더욱 의심 없이 URL을 클릭하기 쉽다.

또한 이번 사례는 스팸 메일을 이용하는 동시에 유명 기업 사칭(Scam)하여 특정 기업과 관련 있는 것처럼 치밀하게 내용을 위장하는 등 지능형 위협(APT, Advanced Persistent Threat)의 형태를 띠고 있다. 특히 구글 단축 URL과 사용자의 의심을 피하기 위한 정상 파일 생성 등 다양한 공격 기법이 사용되었다. 

최근 나날이 교묘하게 진화하고 있는 악성코드 공격에 피해를 입지 않기 위해서는 메일에 포함된 URL을 함부로 클릭하지 않는 등 사용자들의 각별한 주의가 필요하다. 

한편, V3 제품에서는 해당 악성코드를 다음과 같은 진단명으로 탐지하고 있다.
<V3 제품군 진단명> 
- JS/Obfus
- JS/Agent
- Trojan/Win32.Agent
- EML/Malspam
  • AhnLab 로고
  • ASEC대응팀

이 정보에 대한 저작권은 AhnLab에 있으며 무단 사용 및 도용을 금합니다.

단, 개인이 비상업적인 목적으로 일부 내용을 사용하는 것은 허용하고 있으나, 이 경우 반드시 출처가 AhnLab임을 밝혀야 합니다.
기업이 이 정보를 사용할 때에는 반드시 AhnLab 의 허가를 받아야 하며, 허가 없이 정보를 이용할 경우 저작권 침해로 간주되어 법적인 제재를 받을 수 있습니다. 자세한 내용은 컨텐츠 이용약관을 참고하시기 바랍니다.

정보 이용 문의 : contents@ahnlab.com



바이러스, 악성코드, 그리고 좀비PC

  • AhnLab
  • 2011-09-15

최근 발생한 대규모 고객 정보 유출 사건의 주범으로 지목되면서 좀비PC에 대한 관심이 증폭되고 있다. 각종 포털 사이트에서 ‘좀비PC’가 검색어 상위에 오르기도 했다. 좀비PC의 개념은 사실 기존 악성코드와 특별히 다르지 않은데, 왜 이런 비슷한 용어가 계속 생겨나는 걸까?

 

컴퓨터 바이러스(이하 바이러스)가 일반에게 처음 알려진 건 1988년 이후다. 당시, ‘바이러스’라는 용어 자체가 낯설어 많은 사람들이 생물학적 바이러스와 혼동하거나 감염된 디스크를 사용하지 못하는 것으로 오해하기도 했다. 초등학생이었던 필자도 바이러스에 감염된 디스크는 사용할 수 없는 줄 알고 친구에게 준 기억이 있다. 당시 5.25인치 디스켓 가격이 장당 1,500~2,000원이었는데, 초등학생 버스비가 60원이었던 걸 감안한다면 저렴하지 않은 가격이었다. ‘바이러스’가 컴퓨터에 발생하는 자기 복제 능력이 있는 프로그램에 불과하다는 사실을 알기까지는 몇 년의 시간이 걸렸다.

 

바이러스 관련 용어의 혼란은 2000년 웜(worm)이 등장하면서 시작됐다. 바이러스와 달리, 다른 파일은 감염시키지 않고 메일이나 공유 폴더 등으로 전파되는 웜을 ‘웜 바이러스’라고 불렀다. 웜은 일반적으로 알려져 있지 않았고, 바이러스와는 다소 성격이 달라 붙여진 이름이다. 일반 사용자의 이해를 위해 몇몇 업체에서는 바이러스와 웜을 구분하지 않고, 스스로 전파되는 기능을 가지는 것을 바이러스로 통칭하거나 악성코드 전체를 바이러스라고 분류하기도 했다.

 

더 큰 혼란이 발생한 건 2004년 악성코드가 널리 알려지기 시작하면서부터다. 원래 악성코드는 1990년에 처음 만들어졌고, 2000년 초부터 바이러스, 웜, 트로이목마를 통칭하는 이름으로 조금씩 사용되기 시작했다. 하지만, 국내에서는 2003년부터 유행하기 시작한 애드웨어를 일부 업체가 악성코드라고 부르면서 널리 알려졌고, 백신 업체들도 ‘바이러스’보다 ‘악성코드’라는 표현을 더 많이 사용했다. 이 때문에 ‘바이러스’와 ‘악성코드’가 다른 개념이라고 생각하는 사용자들도 있었다. 현재는 언론과 일반 사용자들 모두 ‘바이러스’보다는 ‘악성코드’라는 용어를 더 많이 사용하고 있는데 ‘코드’라는 컴퓨터 친화적 표현이 생물학적 바이러스와의 혼동을 줄여준 것 같다.

 

최근 널리 사용되기 시작한 ‘좀비PC’ 역시 기술적으로 보면 악성코드 그 이상도 그 이하도 아니다. 원래 좀비(zombie)는 서아프리카 민간신앙인 부두교 성직자가 특정한 의식으로 부활시키는 시체들로, 이를 조정해 노예로 삼을 수 있다. 그러나 영화 속 좀비들은 본래 좀비와는 다르게 조종도 받지 않고 살아있는 사람의 생살을 뜯어 먹고 먹힌 사람이 좀비가 되기도 한다. 이는 1968년 조지 A. 로메로 감독의 <살아있는 시체들의 밤(Night of the living dead)>에 등장하는 좀비인데, 전통적인 좀비들을 밀어내고 좀비 영화의 주류가 되었다. 좀비PC의 ‘좀비’는 영화 속 좀비보다는 부두교의 좀비 개념과 더 가깝다고 할 수 있다.

 

좀비PC의 개념은 새로운 것이 아니다. 개인 컴퓨터가 인터넷으로 연결된 외부로부터 원격 제어를 당하는 방식은 이미 1998년에 등장했고, 감염된 다수의 시스템을 조정해 공격하는 방식도 2003년부터 유행하기 시작했다. 세부적인 의미는 조금씩 다르지만, 넓은 의미에서 보면 결국 ‘바이러스 = 악성코드 = 좀비PC’라고 할 수 있다.

 

 

▶하일권 작가의 좀비PC방지 캠페인 웹툰 '내 PC를 구해줘!' 중에서

 

이렇듯 새롭지 않은 ‘좀비 PC’가 왜 갑자기 각광받는 것일까? ‘악성코드’는 너무 광범위한 표현이고, 악성코드에 어느 정도 면역되어 있는 사용자들의 관심을 끌기 위해서 ‘좀비 PC’라는 새롭고 자극적인 표현이 필요했던 건 아닐까?

 

이 외에도 보안 위협과 관련한 신조어는 끊임없이 생겨나고 있다. 지티봇(Gtbot), 피망, 크라임웨어(crimeware), 스피어피싱 등. 하지만 지능적 지속 위협(APT) 외에는 아직까지 일반적으로 뿌리내리지는 못한 듯하다.

 

시대에 따라 조금씩 다른 용어가 사용되는 건, 악성코드의 유형이 바뀌기도 하지만 기존 용어로는 위협을 느끼지 않는 사용자들의 보안 불감증에서 기인하는 건 아닐까. 용어 표현이 점차 자극적이고 강력해지는 것은 그 때문이 아닐까 싶다. 앞으로는 또 어떤 악성코드가 나오고 유행해서 또 어떤 신조어가 등장할지 궁금하다.@

 

 

차민석 프로필 사진

차민석 AhnLab 로고 악성코드 분석가

이 정보에 대한 저작권은 AhnLab에 있으며 무단 사용 및 도용을 금합니다.

단, 개인이 비상업적인 목적으로 일부 내용을 사용하는 것은 허용하고 있으나, 이 경우 반드시 출처가 AhnLab임을 밝혀야 합니다.
기업이 이 정보를 사용할 때에는 반드시 AhnLab 의 허가를 받아야 하며, 허가 없이 정보를 이용할 경우 저작권 침해로 간주되어 법적인 제재를 받을 수 있습니다. 자세한 내용은 컨텐츠 이용약관을 참고하시기 바랍니다.

정보 이용 문의 : contents@ahnlab.com




PUP, 불편하고 때론 위험한 존재에 대하여

  • AhnLab
  • 2017-08-02

조금이라도 보안에 관심이 있는 사람이라면 ‘PUP를 주의해야 한다’는 내용을 한 번쯤은 본 적이 있을 것이다. 또 좀 더 보안에 관심 있거나 IT 관련 지식이 있는 사람이라면 PUP가 곧 악성코드는 아니라는 것을 알고 있을 것이다. 그러나 PUP와 관련된 보안 침해 사례는 지속적으로 나타나고 있다. 이쯤 되면 ‘악성코드는 아닌데 왜 PUP를 조심하라고 하지?’라는 의문이 생길 것이다. PUP가 무엇인지, 왜 PUP를 주의해야 하는지, PUP와 관련된 보안 침해 사례라는 것이 무엇인지 알아보자. 


PUP가 대체 뭐길래?

PUP는 Potentially Unwanted Program의 약자로, 글자 그대로 해석하자면 ‘(사용자가) 잠재적으로 원하지 않는 프로그램’이다. 대개 ‘불필요한 프로그램’으로 불린다. 대부분 미디어 플레이어, PC 최적화 프로그램, PC 클리너, 개인정보보호 프로그램 등 무료 유틸리티 프로그램의 ‘제휴 프로그램, ‘스폰서 프로그램’ 등의 명목으로 함께 설치된다. 

 

  

[그림 1] 유틸리티 설치 시 함께 설치되는 프로그램들

 

안랩을 비롯한 대부분의 보안 업체들은 이렇게 설치되는 프로그램들 중 설치 여부를 사용자가 알 수 있도록 적절한 설명을 제시하지 않거나 설치 항목 목록 화면을 최소화하는 경우, 또 설치되는 프로그램의 정확한 이름이나 목록 전체 내용을 볼 수 없도록 사용자를 기만하는 프로그램 등을 PUP로 구분하고 있다. 

 

  

[그림 2] 사용자에게 적절한 설명 제공 없이 동의한 것처럼 유도하여 설치되는 PUP

 

사용자를 기만하여 설치된 PUP는 웹 서핑 시 지속적으로 배너 광고를 노출하거나 각종 툴바를 설치한다. 또 쇼핑 사이트 등 다양한 사이트를 ‘즐겨찾기’ 목록에 등록하거나 웹 브라우저의 홈화면을 사용자가 설정한 것이 아닌 다른 페이지로 변경해놓는 식이다. 최근에는 제휴 프로그램, 스폰서 프로그램의 설치 동의가 기본으로(default) 설정되어 있는 경우도 있어 사용자가 주의 깊게 살펴야 한다.

 

PUP, 왜 문제일까? – 단순 불편 넘어 악성코드 감염까지 

그렇다면, PUP가 문제가 되는 이유는 무엇일까? 사용자의 인지 여부와 상관없이 또는 사용자를 기만하여 설치된다는 점 외에도 ▲지속적인 광고 노출 ▲과도한 리소스 사용을 통한 PC 속도 저하 ▲허위 내용으로 사용자를 속이거나 결제 유도 등 불편을 초래하는 것을 넘어 실질적인 피해를 유발하기도 한다. 평소보다 PC가 느려졌다거나 웹 브라우저의 홈화면이 변경되어 있거나 설치한 기억이 없는 툴바들이 나타날 경우, 또는 웹 사이트를 이동할 때 마다 광고가 나타난다면 PUP를 의심해볼 필요가 있다. 

 

특히 최근에는 PUP가 악성코드 유포 경로로 악용되면서 더 큰 문제가 되고 있다. 대부분의 무료 유틸리티 프로그램은 프로그램의 제작 및 유지 보수를 위해 별도의 수입원을 필요로 하기 때문에 제휴 프로그램, 스폰서 프로그램을 함께 설치한다. 문제는 제휴 또는 스폰서 프로그램의 제작사가 영세한 경우가 많아 서버가 제대로 관리되지 않는 경우가 많다는 것이다. 즉, 공격자들이 보안에 취약한 PUP 서버를 해킹하여 악성코드를 유포하는 경우가 늘고 있다는 점이다. 심지어 해킹되어 악성코드 유포에 이용됐던 PUP가 또다시 이용되는 사례도 있었다. PUP 서버 관리의 부실함을 확인할 수 있는 대목이다. 

 

또 PUP 자체가 취약하지 않더라도 이 프로그램에 의해 노출되는 광고 배너가 연결되는 페이지가 보안에 취약한 경우도 많다. 사용자가 실수로라도 배너를 클릭하여, 또는 기타 다른 경로를 통해 취약한 광고 페이지에 접속하게 되면 공격자가 해당 웹 페이지의 보안 취약점을 이용해(exploit) 심어둔 악성코드에 감염된다. 사용자가 파일을 다운로드하거나 실행한 적이 없음에도 불구하고, 단지 웹 페이지를 방문한 것만으로도 악성코드에 감염되는 것이다. 이를 ‘드라이브 바이 다운로드(Drive-by-download)’ 방식이라고 한다. 또 이처럼 광고 페이지나 광고 서버를 이용해 악성코드를 유포하는 공격 기법을 멀버타이징(Malvertising)이라고 부른다. 멀버타이징은 악성코드(Malware)와 광고(Advertising)의 합성어이다.  

 

PUP, 어떻게 해야 피할 수 있을까? 

PUP로 인한 불편함이나 악성코드 감염 등의 피해를 입지 않기 위해서는 PUP가 설치하지 않는 것이 첫 번째다. 유틸리티 프로그램 설치 시 무조건 “계속(Next)”을 누르는 대신, 설치 정보에 나타나는 내용을 꼼꼼히 살피는 습관이 필요하다. 최근에는 제휴 프로그램, 스폰서 프로그램의 설치가 기본(default)로 표시되어 있는 경우가 많기 때문에 관련 폴더의 '+' 마크를 클릭해 상세 내용까지 확인하는 것이 바람직하다. 또 설치 단계 초반에서 제휴 프로그램 설치를 해제했다 하더라도 후반부에서 다시 설치 동의에 표시되어 있는 경우도 있으니 끝까지 세심한 주의가 필요하다. 

 

그렇다면 이미 설치되어 있는 PUP는 어떻게 해결할 수 있을까? 대부분의 PUP는 [제어판 > 프로그램 제거]에서 해당 프로그램의 ‘제거 프로그램(Uninstaller)’을 이용해 삭제할 수 있다. 주기적으로 [프로그램 추가/제거]에서 사용하지 않는 프로그램을 확인하고 제거하는 것도 좋은 방법이다. 문제는 최근 제거 프로그램을 실행해도 제거되지 않는 PUP가 등장하고 있다는 점이다. 

 

내 PC에 설치되어 있는 PUP, 어떻게 확인할 수 있을까? 

제거 프로그램(Uninstaller)를 실행해도 제거되지 않는 PUP는 어떻게 해결할 수 있을까? 또 막상 제어판에서 설치된 프로그램 목록을 확인했지만 어떤 것이 PUP인지 알 수 없는 경우는 어떻게 해야 할까? 이럴 때 V3의 쉽고 간편한 기능을 이용해보자. 

 

안랩은 프로그램 제작사 또는 배포지가 불분명한 경우, 허위 사실이나 과장된 결과를 노출해 수익을 얻는 경우, 그리고 상당수의 사용자가 불편을 호소하는 등 평판 정보를 토대로 특정 프로그램들을 PUP로 분류하고 있다. 그리고 대부분의 V3 제품을 통해 PUP로 분류된 프로그램을 사용자 선택에 따라 삭제 또는 허용하는 기능을 제공하고 있다. 

 

V3 365 클리닉 등 V3 제품을 이용해 PC에 설치된 PUP를 확인하고 삭제하려면, ‘환경 설정’을 통해 PUP를 검사 항목으로 설정하면 된다. 

 

► [환경설정(톱니바퀴아이콘)] > [PC 보안] > [PC 검사 설정] > [검사 대상 및 성능 레벨] > [검사 대상 설정] > ‘불필요한 프로그램(PUP)’ 선택(v)

 

  

[그림 3] V3 365 클리닉의 검사 대상 설정 화면

 

‘불필요한 프로그램(PUP)’을 검사 대상으로 설정한 후 ‘정밀 검사’ 등을 실행하면 PC에 설치되어 있는 PUP를 확인할 수 있으며, 이후 PUP가 설치될 때 PC 오른쪽 하단에 “불필요한 프로그램(PUP) 차단” 이라는 알림창이 나타난다. 이 알림창에는 해당 프로그램의 이름, 경로, 상태 등이 함께 표시된다. 

 

V3 Lite 사용자라면 아래와 같이 ‘평판이 낮은 프로그램’을 검사 대상으로 설정할 수 있다. 앞서 언급한 것처럼 안랩의 PUP 분류 기준에는 사용자 평가도 반영되어 있기 때문에 PUP 확인 및 설치 방지에 도움이 될 수 있다. 

 

► [환경설정(톱니바퀴아이콘)] > [PC 보안] > [PC 검사 설정] > [검사 대상 및 성능 레벨] > [검사 대상 설정] > ‘평판이 낮은 프로그램’ 선택(v)

 

  

[그림 4] V3 Lite의 검사 대상 설정 화면

 

PUP는 그 자체가 악성코드는 아니지만 사용자 입장에서는 악성코드보다 더 불편한 존재일 수 있다. 게다가 최근 PUP를 이용한 악성코드 유포 및 감염 사례가 지속적으로 나타나고 있어 악성코드만큼 위험하다고 할 수 있다. PC에 원치 않는, 혹은 위험할 수 있는 PUP를 잔뜩 설치하고 싶지 않다면 아래와 같은 몇 가지 수칙은 꼭 기억해두자. 

 

[PUP 설치 예방을 위한 보안 수칙]

1. 출처가 확인되지 않은 프로그램은 다운로드 및 설치하지 않는다.

2. 프로그램 설치 시 출력되는 메시지를 꼼꼼히 살핀다. 설치 동의에 기본으로 체크되어 있는 프로그램을 확인하고 체크 해제 후 설치를 진행한다.

3. 주기적으로 [프로그램 추가/제거]에서 사용하지 않는 프로그램을 확인하고 제거한다.

4. V3 제품을 이용해 불필요한 프로그램(PUP) 또는 ‘평판이 낮은 프로그램’을 검사 대상으로 설정(v)하고, 최신 PUP 정보를 적용하기 위해 V3의 엔진을 항상 최신 버전으로 유지한다. 

  • AhnLab 로고
  • 콘텐츠기획팀

이 정보에 대한 저작권은 AhnLab에 있으며 무단 사용 및 도용을 금합니다.

단, 개인이 비상업적인 목적으로 일부 내용을 사용하는 것은 허용하고 있으나, 이 경우 반드시 출처가 AhnLab임을 밝혀야 합니다.
기업이 이 정보를 사용할 때에는 반드시 AhnLab 의 허가를 받아야 하며, 허가 없이 정보를 이용할 경우 저작권 침해로 간주되어 법적인 제재를 받을 수 있습니다. 자세한 내용은 컨텐츠 이용약관을 참고하시기 바랍니다.

정보 이용 문의 : contents@ahnlab.com






제1절 대칭키 암호

제1항 대칭키 암호

대칭키 암호(Symmetric-key cryptosystem) 방식에서는 암호화에 사용되는 암호화키와 복호화키가 동일하다는 특징이 있으며이 키를 송신자와 수신자 이외에는 노출되지 않도록 관리해야 한다일반적으로 관용 암호라고도 하며 키를 비밀스럽게 관리해야 한다는 의미로 비밀키 암호(Secret-key cryptosystem)’라고도 한다대칭키 암호는 암호화 연산 속도가 빨라서 효율적인 암호 시스템을 구출할 수 있다.

 

이 암호 방식은 알고리즘의 내부 구조가 간단한 치환과 전치의 조합으로 되어 있어서 알고리즘을 쉽게 개발할 수 있고컴퓨터 시스템에서 빠르게 동작한다그러나 송,수신자 간에 동일한 키를 공유해야 하므로 많은 사람들과의 정보 교환 시 많은 키를 생성,유지,관리해야 하는 어려움이 있다.

 

대칭키 암호 방식은 데이터를 변환하는 방법에 따라 블록 암호와 스트림 암호로 구분된다.

 

관용 암호 알고리즘과 공개키 암호 알고리즘에 대한 비교중 가장 부적절한 것은?

 

① 공개키 암호는 대체로 관용 암호에 비해 긴 키를 사용한다.

② 관용 암호를 통신 보호에 사용할 경우 송신자와 수신자가 동일한 키를 사용하므로3자의 도청을 방지할 수 있는 안전한 키 분배를 위한 메커니즘이 요구된다.

③ 공개키 암호에서 전자서명에 사용하는 서명자 개인키는 서명자만이 사용할 수 있으므로 서명에 대한 부인 방지 서비스를 제공할 수 있다.

④ 공개키 암호는 관용 암호에 비해 실행 속도는 느리지만 상대적으로 높은 안전성을 갖는다.

 

공개키 암호는 관용 암호에 비해 실행 속도는 느리다각 알고리즘 마다 특성이 있으므로 안전성 비교는 적절하지 않다. ()

 

비밀키(Secret key) 암호화 알고리즘만으로 보장하기 가장 어려운 것은?

 

① 기밀성

② 송신자 인증

③ 전자서명

④ 무결성

 

대칭키 암호는 부인방지 개념이 포함된 전자서명은 단독으로 제공하기는 힘들다대칭키 암호로 부인방지 서비스를 제공하기 위해서는 제3의 인증기관이 필요하다. ()

 

대칭키 알고리즘과 공개키 알고리즘의 차이에 대한 아래 설명 중 틀린 것은?

 

① 대칭키 알고리즘은 공개키 알고리즘에 비하여 계산 속도가 빠르다.

② 대칭키 알고리즘은 통신의 참여자들이 동일한 키를 공유하고 있어야 한다.

③ 공개키 알고리즘은 통신의 참여자들이 동일한 키를 공유하지 않아도 된다.

④ 공개키 알고리즘은 메시지에 대한 기밀성을 제공하지만대칭키 알고리즘은 그렇지 못하다.

 

대칭키공개키 모두 기밀성을 제공한다

 

 

다음 중 대칭키 암호 시스템의 특징이 아닌 것은?

 

① 사용자가 늘어날수록 관리해야 할 키가 늘어난다.

② 사전에 키를 공유하여야 한다.

③ 암호화와 복호화에 사용된 키는 서로 역수 관계이어야 한다.

④ 공개키 암호시스템 보다 암호화 속도가 빠른편이다.

 

비대칭키 암호시스템은 개인키와 공개키(암호화와 복호화에 사용된 키가)가 서로 역수 관계이다. ()

 

 

(1) 스트림 암호

스트림 암호는 블록 단위로 암·복호화되는 블록 암호와는 달리 이진화된 평문 스트림과 이진 키스트림 수열의 XOR 연산으로 암호문을 생성하는 방식이다.

 

이러한 스트림 암호는 동기식 스트림 암호 ‘자기 동기식(비동기식스트림 암호가 있다동기식 스트림 암호는 key stream 수열이 평문과 관계없이 생성되어 동기식으로 사용된다자기 동기식 스트림 암호는 key stream 수열이 평문 혹은 암호문으로부터의 함수 관계에 의해 생성되기 때문에 복호화시 동기가 흐트러져도 스스로 동기화가 이루어져서 복호화가 가능하다.

 

스트림 암호에 관한 설명으로 잘못된 것은?

 

 이진 수열(비트)로 된 평문과 키 이진 수열 비트 단위로 XOR하여 암호화한다.

② 암호화 알고리즘에 치환변환과 전치변환이 주로 쓰인다.

③ 주로 유럽을 중심으로 발전하였으며 군사용으로 쓰인다.

④ 일회용 패드는 스트림 암호의 한 예이다.

 

치환변환과 전치변환은 블록암호화기법이다. ()

 

1) 개요

① 현대 스트림 암호에서 암호화와 복호화는 평문 비트 스트림암호문 비트 스트림키 비트 스트림을 한 번에 r비트를 생성한다.

 

② 스트림 암호는 블록 암호보다 빠를 뿐만 아니라 하드웨어 구현 또한 블록 암호보다 더욱 용이하다.

③ Key stream 을 어떻게 생성하는지가 현대 스트림 암호의 주된 관심사이다현대 스트림 암호는 동기식과 비동기식 두가지 종류로 분류된다.

 

2) 동기식 스트림 암호

① 개요

ü 동기식 스트림 암호에서 키 스트림은 평문 혹은 암호문 스트림과 독립적이다.

ü 키 스트림은 평문 혹은 암호문 비트와 키 비트 사이에 어떠한 관계도 없이 생성되고 사용된다.

ü 난수열을 생성하기 위해 내부 상태(internal state)를 유지하며이전 내부 상태에서 새로운 내부 상태와 유사난수를 얻는다.

ü 암호화 및 복호화할 문자열에서 특정 위치 비트를 변경할 경우 암호화된 결과에서도 같은 위치 비트가 변경되며다른 위치의 비트는 변경되지 않는다따라서 암호화 문자열을 전송할 시에 특정 비트가 다른 값으로 손상되어도복호화 시 다른 비트에는 영향을 미치지 않는다.

ü 하지만 전송 오류에서 비트가 사라지거나 잘못된 비트가 추가되는 경우 오류가 난 시점 이후의 복호화가 실패하게 되면따라서 전송 시에 동기화(synchronize)가 필요하다.

ü 암호공격이 가능하다.

ü 동기식 스트림 암호의 한 예는 RC4가 있다.

 

 

동기식 스트림 암호에 대한 설명으로 가장 부적절한 것은?

 

① 동기식 스트림 암호는 암호화와 복호화에의 상호 동기화가 필수이다.

② 동기식 스트림 암호는 전송 도중 변조되어도 후속 암호문에 오류의 영향이 파급되지 않는다.

③ 동기식 스트림 암호는 의도적 변조가 복호화 단계에서 검출 불가하다.

④ 동기식 스트림 암호는 변조된 암호문이 후속 암호문 복호화에 사용되지 않아 오류 파급이 제한적이다.

 

자기 동기식 스트림 암호의 특징이다. ()

RC4(Rivest Cipher 4)

바이트 단위의 스트림 암호화 방식으로 평문 1바이트와 암호키 1바이트가 XOR 처리되어 암호문 1바이트를 생성한다.이 알고리즘은 랜덤 치환 사용을 기반으로 한다가장 널리 쓰이는 스트림 암호 방식이다이 방식은 웹브라우저와 서버사이의 통신의 표준으로 규정된 SSL/TLS와 무선랜 표준 IEEE 802.11 WEP(Wired Equivalent Privacy) 프로토콜에서 사용된다.

② One-Time pad

ü 동기식 스트림 암호 중에서 가장 간단하고 안전한 암호는 Gibert Vernam에 의해 설계되고 특허화된 one-time pad이다. One-time pad 암호는 암호화를 수행할 때마다 랜덤하게 선택된 키 스트림을 사용한다.

ü 해독 불가능하다는 것이 샤논(C.E Shannon)에 의해 1949년에 수학적으로 증명되었다일회용 패드는 무조건 안전하며이론적으로 해독 불가능하다고 알려져 있다.

ü 암호화 알고리즘과 복호화 알고리즘은 각각 배타적 논리합 연산을 사용한다배타적 논리합 연산의 성질에 의해 암호화 알고리즘과 복호화 알고리즘은 서로 역관계이다이 암호에서 배타적 논리합 연산이 한 번에 한 비트씩 적용된다.

 

 

③ 귀환 쉬프트 레지스터(Feedback Shift Register)

ü One-time pad의 절충안은 귀환 쉬프트 레지스터(FSR)이다. FSR은 소프트웨어와 하드웨어 환경에서 모두 구현될 수 있지만 하드웨어 구현이 더욱 용이하다.

ü 귀환 쉬프트 레지스터는 쉬프트(shift) 레지스터와 귀환(feedback) 함수로 구성된다.

 

Feedback shift register(FSR)

 

④ 선형귀환 쉬프트 레지스터(LFSR, linear feedback shift register)

ü 시프트 레지스터의 일종으로레지스터에 입력되는 값이 이전 상태값들의 선형함수로 계산되는 구조를 가지고 있다.

ü 이때 사용되는 선형함수는 주로 배타적 논리합(XOR)이다.

ü LFSR의 초기 비트값은 시드(seed)라고 부른다.

ü LFSR로 생성되는 값의 수열은 그 이전값에 의해 결정된다.

ü 레지스터가 가질수 있는 값의 개수는 유한하기 때문에이 수열은 특정한 주기에 의해 반복된다.

선형 되먹임 시프트 레지스터

 


다음은 LFSR의 동작도이다. 4비트 크기의 1100이라는 값을 3번 shift하면 어떤값이 출력되는가?

 

① 1001

② 0110

③ 1011

④ 0101

 

 ()

 

⑤ 비선형 귀환 쉬프트 레지스터(NLFSR, Nonlinear Feedback Shift Register)

ü 주로 LFSR은 선형성 때문에 공격에 취약하다. NLFSR을 이용하여 LFSR보다 안전한 스트림 암호를 설계할 수 있다.

ü 현대의 스트림 암호에서 RFID 및 스마트 카드 응용 프로그램의 구성요소이다.

 

3) 비동기식(자기 동기스트림 암호

① 개요

ü 비동기식 스트림 암호에서 키 스트림의 각 비트는 이전의 평문이나 암호문에 종속적으로 결정된다.

ü 난수열을 생성할 때 암호화 키와 함께 이전에 암호화된 문자열 일부를 사용한다따라서 암호화 문자열을 전송할 시에 일부 비트가 값이 바뀌거나혹은 비트가 사라지고 추가되는 오류가 발생하여도일부분만이 복호화에 실패하며그 이후에는 다시 정상적인 복호화 값을 얻을 수 있는 자기 동기성을 가진다.


평문과 같은 길이의 키스트림을 생성하여 평문과 키를 비트 단위로 XOR하여 암호화하는 스트림 암호는 동기적 스트림 암호와 자기동기식 스트림 암호로 분류할 수 있다지문 내용중 자기동기식 스트림 암호의 특징으로만 짝지어진 것은?

 

(암호문의 전송 도중 변경되어도 동기화가 가능

(암호화와 복호화에서 상호 동기화가 필수

(변조된 암호문으로 인한 파급이 복호화에서 제한적임

(의도적인 변조가 복호화 단계에서 검출되지 않음

 

① (), ()

② (), ()

③ (), ()

④ (), ()

 

(), (), ()는 동기식 스트림 암호의 특징이며, (), ()는 자기 동기식 스트림 암호의 특징이다. ()

 


'정보보안기사 > 정보보안일반' 카테고리의 다른 글

02. 암호학  (0) 2017.08.02
01. 정보보호의 개요  (0) 2017.08.02








제1장  암호학

제1절 암호학 기본

제1항 암호학의 개념

(1) 암호학(Cryptology)의 정의

1) 암호학(Cryptology)이란 평문을 다른 사람이 알아볼 수 없는 형태의 암호문으로 만들고 특정한 비밀키를 알고 있는 사람만이 다시 평문으로 복원시킬 수 있도록하는 암호기술(Cryptography)과 이를 제3(도청자)가 해독하는 방법을 분석하는 암호해독(Cryptanalysis)에 관하여 연구하는 학문이다.

2) 암∙복호화는 쉽고 빠르면서 암호 해독은 어려울수록 좋은 암호 알고리즘이라고 할 수 있다.

3) 암호 알고리즘의 원리는 확산과 혼돈을 통해 이루어진다.


 

확산(Diffusion)

평문의 각 사용 문자에 대한 정보가 암호문 전체에 고루 분산되는 특성을 이용하여 암호 해독의 단서를 남기지 않기 위해 암호문과 평문의 관계를 숨기는 것

혼돈(Confusion)

평문과 암호문 사이의 대응 관계를 알 수 없도록 하여 암호문을 사용해서 비밀키를 알아내는 것을 막는 것

 

 

(2) 암호화의 기능

1) 기밀성

① 가로채기를 당해도 알 수 없도록 문서를 해독 불가능한 형태로 변형하는 기능

2) 무결성

① 전송 도중에 문서의 내용이 부당하게 변경되지 않고 정확하고 완전하게 수신되었음을 보증하는 기능

3) 메시지 인증

① 전송된 문서의 출력 및 문서 내용의 무결성을 보증하는 기능

4) 사용자 인증(신분확인)

① 원격지에서 접속한 사용자가 본인임을 신원 확인하는 기능

5) 부인방지

① 문서의 송,수신 후 송,수신자가 자신이 송신하거나 수신한 문서의 송,수신 사실의 부인을 방지하는 기능

 

 

(3) 송신자수신자도청자

1) 송신자와 수신자

① 송신자(Sender)

ü 어떤 사람이 다른 사람에게 정보를 보낼 때 정보를 보내는 사람

② 수신자(Receiver)

ü 어떤 사람이 다른 사람에게 정보를 보낼 때 정보를 받는 사람

③ 메시지(Message)

ü 송신된 정보

 

 

2) 도청자

① 송신자와 수신자에게 정보를 보낼 때중간에서 전송중인 메시지를 갈취하는 사람

② 도청자는 반드시 사람만 의미하는 것은 아니다도청자는 통신기기에 장치된 도청용 기계일 수도 있고메일 소프트웨어나 메일 서버에 설치된 프로그램일 수도 있다.

③ 단순히 전송중인 메시지를 갈취하는 공격을 소극적 공격이라고 한다.

  

④ 전송중인 메시지를 갈취하여 메시지 내용을 수정하여 수신자에게 보내는 공격을 적극적 공격이라고 한다.

 

 

(4) 암호화와 복호화

1) 평문(Plaintext)

① 암호화하기 전의 메시지

2) 암호문(Ciphertext)

① 암호화한 후의 메시지

3) 암호(Cryptography) 기술

① 송신자는 메세지 불법 유출을 막기 위해서 메세지를 암호화(Encrypt)해서 보내게 된다이를 통해서 메세지의 기밀성(Confidentiality)을 유지한다.

 



4) 복호화와 암호해독의 차이점

① 복호화

ü 정상적으로 복호화키를 알고 있는 수신자가 암호문을 평문으로 복원하는 과정

② 암호 해독(cryptanalysis)

ü 복호화키를 모르는 적 또는 암호 분석가가 복호화키를 찾아내거나 평문 내용을 알아내는 비 정상적인 과정

③ 암호 해독자(cryptanalyst)

ü 암호 해독을 하는 사람으로써 나쁜 의도를 가진자 또는 암호 분석가가 이에 속한다.

④ 실전문제

 SHAPE  \* MERGEFORMAT



암호 알고리즘의 구성요소


 

1) 평문(Plaintext, P)

① 전달하고자 하는 메시지

2) 암호문(Ciphertext, C)

① 평문을 제3자가 알아볼 수 없는 형태로 변형한 문자나 부호

3) 암호화(Encryption, E)

① 암호 알고리즘을 이용하여 평문을 암호문으로 변형시키는 과정

② C = Ek(P)

ü 평문(P)를 키(K)로 암호화(E)하여 암호문(C)을 만든다.

4) 복호화(Decryption, D)

① 암호문을 다시 평문으로 복원하는 과정

② P = Dk (C)

ü 암호문(C)를 키(K)로 복호화(D)하여 평문(P)을 만든다.

5) 암호 알고리즘(Cryptographic Algorithm)

① 암호화 알고리즘

ü 평문을 암호문으로 만드는 절차

② 복호화 알고리즘

ü 암호문을 평문으로 만드는 절차

③ 암호 알고리즘

ü 암호화와 복호화 알고리즘을 합한 알고리즘

ü 평문을 암호화하거나 암호문을 복호화하기 위한 일련의 과정과 절차

ü 일반적으로 암호 알고리즘은 공개된다.


 

 

6) (Key, K)

① 암호화와 복호화를 위해 사용되는 일련의 정보이며 문자열 형태이다.

② 암호 알고리즘의 키는 다음과 같은 매우 긴 숫자

ü 2032333438485774873847788474883023948487467494

③ 암호 알고리즘의 키는 다음과 같은 매우 긴 숫자

ü 키의 위치를 위와 같이 암호화와 복호화 알고리즘의 첨자로 나타내기도 하고 C=E(K, P) 또는 P=D(K,C)라고 표현하기도 한다.

 

(6) 암호학으로 할 수 없는 것

1) 암호학은 암호화되지 않은 문서를 보호하지 못한다.

2) 암호학은 암호화키를 도둑맞으면 아무것도 보호할 수 없다.

3) 암호학은 대부분의 도스 공격으로부터 여러분을 보호할 수 없다.

4) 암호학은 배신이나 실수로부터 여러분을 보호할 수 없다.

5) 암호학은 지나다니는 사람들로부터 여러분의 정보를 보호할 수 없다.

 

(7) 암호와 보안 상식

1) 비밀 암호 알고리즘을 사용하지 말 것

① '자신의 회사에서 독자적으로 암호 알고리즘을 개발하고그것을 비밀로 하면 안전하다라는 생각은 큰 오산이다.

② 암호 알고리즘 자체를 비밀로 해서 기밀성을 유지하려고 하는 암호 시스템은 암호 알고리즘의 구조가 폭로되어 버리면 그것으로 끝이다.

③ 암호 알고리즘을 비밀로 해서 보안을 유지하려고 하는 행위는 일반적으로 숨기는 것에 의한 보안(Security by obscurity)이라 부르고전문가가 볼 때는 위험하고 어리석은 것으로 간주되고 있다.

 

2) 약한 암호는 암호화하지 않는 것보다 위험하다.

① '약한 암호를 사용하려면처음부터 암호 따위를 사용하지 않는 것이 낫다'고 생각하는 것이 좋다.

② 가장 큰 이유는 사용자가 암호라고 하는 말로 인해 잘못된 안심'을 하기 때문이다그 결과 기밀성이 높은 정보를 소홀하게 취급할 위험이 있다.

 

3) 어떤 암호라도 언젠가는 해독된다.

① 어떤 암호 알고리즘으로 만든 암호문이라 하더라도 모든 키를 하나도 빠짐없이 시도해 봄으로써 언젠가는 반드시 해독할 수 있다.

② 암호문이 해독되기까지 들어가는 시간과 암호를 사용하여 지키고 싶은 평문의 가치와의 밸런스(Trade-off)가 중요하다.


 

사전공격(Dictionary attack) : 사전에 있는 단어를 입력하여 암호를 알아내거나 해독하는 방법

무차별 대입공격(Brute force attack) : 특정한 암호를 풀기 위해 가능한 모든 값을 대입하는 것

 

 

4) 암호는 보안의 아주 작은 부분이다.

① 최근에는 사회공학 공격(Social Engineering Attack)도 자주 행해지고 있다.

② 피싱(Phishing)과 트로이목마(Trojan Horse)나 사용자의 키보드 입력을 몰래 빼가는 키로거(Keylogger)도 사회공학 공격방법 중 하나이다.

③ 한 시스템의 강도는 가장 약한 링크의 강도와 같기 때문에 모든 링크 부위가 골고루 강해야 해당 시스템의 보안성이 강해지는 것이다가장 약한 링크는 암호가 아니라 사람이다.


 

피싱(Phishing) 

'개인정보(Private data)를 낚는다.(Fishing)'라는 의미의 합성어로 불특정 다수에게 메일을 발송해 위장된 홈페이지로 접속하도록 한 뒤어 인터넷 이용자들의 금융정보 등을 빼내는 신종사기 수법

트로이목마(Trojan Horse)

트로이목마는 컴퓨터 시스템에서 정상적인 기능을 하는 프로그램으로 가장해 다른 프로그램 안에 숨어 있다가 그 프로그램이 실행될 때자신을 활성화하는 악성 프로그램을 말한다.

키로거공격(Keylogger Attack)

컴퓨터 사용자의 키보드 움직임을 탐지해 ID나 패스워드계좌번호카드번호 등과 같은 개인의 중요한 정보를 몰래 빼 가는 해킹 공격

 


제2항 암호기술의 분류

(1) 대칭키 암호

1) 개념

① 대칭키 암호(symmetric cryptography)는 암호화할 때 사용하는 키와 복호화할때 사용하는 키가 동일한 암호 알고리즘 방식이다.

 

 

2) 대칭키 암호의 다른 이름

① 공통키 암호(common-key cryptography)

② 관용키 암호(conventional-key cryptography)

③ 비밀키 암호(secret-key cryptography)

④ 공유키 암호(shared-key cryptography)

 

3) 블록 암호(Block cipher)

① 개념

ü 블록 암호(Block cipher)는 어느 특정 비트 수의 집합을 한번에 처리하는 암호 알고리즘을 총칭한다이 집합을 블록(block)이라고 하며블록의 비트수를 블록 길이(Block length)라고 한다.

ü 평문을 일정한 크기의 블록으로 잘라낸 후 암호화 알고리즘을 적용하여 암호화한다일반적으로 블록의 크기는 8비트(ascii) 또는 16비트(unicode)에 비례한다.

ü 블록 암호는 라운드(Round)를 사용하고반복적으로 암호화 과정을 수행해 암호화 강도를 높일 수 있다.

ü 비트 조작 측면에서 소프트웨어적으로 구현하기 쉽고실제 더 많이 사용되는 암호방식이다.

ü 블록암호는 블록 단위로 처리가 완료하므로 어디까지 암호화가 진행되었는지 하는 내부 상태를 가질 필요가 없다.

블록암호

 

 

혼돈(Confusion)

암호문과 키의 관계를 숨기는 것이다암호문을 이용하여 키를 찾고자 하는 공격자를 좌절시킨다키의 단일 비트가 변하면 암호문의 거의 모든 비트들이 변한다.

확산(Diffusion)

암호문과 평문 사이의 관계를 숨기는 것이다암호문에 대한 통계 테스트를 통하여 평문을 찾고자 하는 공격자를 좌절시킨다.

 

 

② 치환 암호(대치 암호, Substitution Cipher)

ü 비트문자 또는 문자의 블록을 다른 비트문자 또는 블록으로 대체한다.

ü 치환 암호는 평문에서 사용하는 문자의 집합과 암호문에서 사용하는 집합이 다를 수 있다는 것이다.

ü 평문의 문자를 다른 문자로 교환하는 규칙이다이때 교환 규칙은 일대일 대응이 아니어도 상관없다.

 

 

③ 전치 암호(Transposition Cipher)

ü 원문을 다른 문서로 대체하지 않지만 원문을 여기저기 움직이게 한다그것은 비트문자 또는 블록이 원래 의미를 감추도록 재 배열한다.

ü 전치는 평문에서 사용하는 문자의 집합과 암호문에서 사용하는 문자의 집합이 동일하다.

ü 문자 집합 내부에서 자리를 바꾸는 규칙이고평문에 사용된 문자와 암호문에 사용된 문자가 일대일 대응 규칙을 갖는다는 점이 특징이다.

 

 

4) 스트림 암호

① 개념

ü 데이터 흐름(스트림)을 순차적으로 처리해가는 암호 알고리즘의 총칭이며암호화 방식은 평문과 키 스트림을 XOR하여 생성한다.

 

 

ü 블록 암호화 방식보다 매우 빠르지만 암호화 강도는 약하다주로 실시간성이 중요하게 여겨지는 음성 또는 영상 스트리밍 전송 및 무선 암호화방식에 사용된다. (일회용 패드, LFSR)

ü 블록 암호는 블록 단위로 처리가 완료되므로 어디까지 암호화가 진행되었는지 내부 상태를 가질 필요가 없다스트림 암호는 데이터의 흐름을 순차적으로 처리해가기 때문에 내부 상태를 가지고 있다.

ü 통상 한 번에 1비트씩 암호화 및 복호화를 하기 때문에 하드웨어적인 shift register 방식을 많이 사용하며 수학적으로는 암호 분석이 용이하다.

ü 블록 암호 하나의 에러는 데이터 블록 전체에 영향을 미치지만스트림 암호는 암호문에서 1비트가 왜곡되면 평문에서도 1비트만 왜곡된다.

 

 

 

② 종류

ü 동기식 스트림 암호(Synchronous Stream Cipher)

• 개념

동기식 스트림 암호에서는 암호화 및 복호화할 문자열에서 특정 위치 비트를 변경할 경우 암호화된 결과에서도 같은 위치 비트가 변경되며다른 위치의 비트는 변경되지 않는다따라서 암호화 문자열을 전송할 시에 특정 비트가 다른 값으로 손상되었어도 복호화 시 다른 비트에는 영향을 미치지 않는다.

전송도중 변조되어도 후속 암호문에 오류의 영향이 파급되지 않는다.

전송중에 비트가 사라지거나 잘못된 비트가 추가되는 경우 오류가 난 시점 이후의 복호화가 실패하게 되며따라서 전송 시에 동기화(synchronize)가 필요하다.

 

 

키 스트림이 평문과 관계없이 생성되므로 암호문과 암호문에 들어있는 키 스트림이 독립적이어서 정보 유출의 가능성이 적다

의도적인 변조가 복호화 단계에서 검출 불가

 

  

ü 자기 동기식 스트림 암호(Self-synchronizing Stream Cipher)

• 개념

자기 동기식 스트림 암호는 난수열을 생성할 때 암호화 키와 함께 이전에 암호화된 문자열 일부를 사용한다이 암호의 내부 상태는 이전 내부 상태에 의존하지 않는다.

 

따라서 암호화 문자열을 전송할 시에 일부 비트가 값이 바뀌거나혹은 비트가 사라지고 추가되는 오류가 발생하여도일부분만이 복호화에 실패하며 그 이후에는 다시 정상적인 복호화 값을 얻을 수 있는 자기 동기성을 가진다.

키 스트림이 평문과 암호문과 관계를 갖는다

암호문이 전송 도중 변경되어도 자기 동기화가 가능

변조된 암호문이 후속 암호문 복호화에 사용되지 않아 오류 파급이 제한적

비동기식 스트림 암호(Asynchronous Stream Cipher) 라고 함.

 

 

③ 키 스트림 주기

ü 주기적(periodic) 스트림 암호

• 개념

키 스트림이 어떤 주기를 갖고 반복

• LFSR (Linear Feedback Shift Register, 선형 귀환 시프트 레지스터)

개념

• LFSR은 비교적 작은 비트로 아주 긴 무작위 암호키를 만든다는 장점이 있으나평문 공격에 아주 취약한 것으로 알려져 있다.

• 시프트 레지스터의 일종으로 레지스터에 입력되는 값이 이전 상태 값들의 선형 함수(XOR)로 계산되는 구조를 갖고 있다.

• 레지스터가 가질 수 있는 값의 개수는 유한하기 때문에 이 수열은 특정한 주기에 의해 반복된다이를 통해 달성할 수 있는 최대 주기의 수열을 얻을 수 있으며수학적인 분석이 용이하다.

• LFSR의 길이가 작으면 쉽게 해독될 수 있다따라서 주어진 수열을 표시할 수 있는 LFSR의 길이 중 최소의 길이를 선형복잡도라고 정의한다.

• 선형복잡도를 사용하면 다음에 출력될 값을 예측하기 위해 필요한 수열의 양을 계산할 수 있는 장점이 있다.

 

 


키가 반복 없이 표현되는 일회용 패드(one-time pad) 방식 

ü 비 주기적 스트림 암호

• 개념

• One-time pad

개념

• 암호화하려는 메시지가 있다면그 메시지와 동일한 크기의 키가 필요하다.

• 복호화 암고리즘은 서로 역관계이다이 암호에서 배타적 논리합 연산이 한번에 한 비트씩 적용된다.

• 공격자가 키나 평문을 추적할 수 있는 어떠한 방법도 존재하지 않으며 통계적 특성 또한 존재하지 않는다.

• 한가지 문제점은 송신자와 수신자가 통신을 할 때 마다 랜덤한 키를 공유해야 한다는 것이다.

 

 

 

(2) 비대칭키 암호

1) 개념

① 비대칭키 암호(asymmetric cryptography)는 암호화할 때 사용하는 키와 복호화할 때 사용하는 키가 서로 다른 암호 알고리즘 방식이다.

② 비대칭키 암호 알고리즘을 사용하기 위해서는 송신자도 한 쌍의 키를 가지고 있어야 하며수신자도 자신만의 한 쌍의 키를 가지고 있어야 한다.

 

 

2) 비대칭키 암호의 다른 이름

① 공개키 암호(public-key cryptography)

 

(3) 하이브리드 암호 시스템

1) 대칭키 암호와 공개키 암호를 조합한 암호 방식을 하이브리드 암호 시스템(hybrid cryptosystem) 이라고 한다.

2) 하이브리드 암호 시스템은 대칭키 암호와 공개키 암호의 장점을 조합한 것이다.

 

(4) 일방향 해시함수

1) 정보나 소프트웨어를 공개적으로 제공할 때에 변경되지 않았음을 확신할 수 있도록 프로그램 제공자가 프로그램을 공개함과 동시에 그 프로그램의 해시값을 공개하는 경우가 있다.

2) 해시값은 일방향 해시함수(one-way hash function)을 사용하여 계산한 값이다.

 

 

 

(5) 메시지 인증코드

1) 개념

① 메시지 인증코드(MAC)은 무결성을 확인하고 메시지에 대한 인증을 하는 기술이다메시지 인증코드는 임의 길이의 메시지와 송신자 및 수신자가 공유하는 키라는 2개의 입력을 기초로 해서 고정 비트 길이의 출력을 계산하는 함수이다.

② 메시지 인증은 메세지를 송신할 때 메시지 뒤에 메시지 완전성 검사 부호를 부가하여 전송함으로써전송 도중에 메시지의 내용이 부당하게 변경되지 않은 상태로 수신되었음을 보증하기 위한 기법이다.

③ 송신자가 메시즈를 송신할 때 송,수신 양자간에 사전에 약속된 암호화 키(encryption key)을 이용하여 메시지 완전성 검수 부호인 메시지 인증코드를 산출하고 이를 암호화한 후 메시지와 함께 전송하면 키를 알고 있는 수신자가 키를 이용하여 메시지 인증 코드를 복호화하고메시지 인증 코드를 재산출하여 두 메시지 인증 코드를 비교함으로써 변조 사실을 검사하는 방법

④ 메시지가 생각했던 통신 상대로부터 온 것임을 확인하기 위해서 메시지 인증코드(message authentication code)라는 기술을 사용한다.

⑤ 메시지 인증코드를 사용하면 그 메시지가 전송 도중에 변경되지 않았다는 것과 생각했던 통신 상대로부터 왔다는 것을 확인할 수 있다.

⑥ 메시지 인증코드는 무결성과 인증을 제공하는 암호 기술이다.

 

2) 메시지 인증코드(MAC, Message Authentication Code) 동작 방법

① 메시지와 대칭키를 입력으로 만들어진 코드

② 사전에 송신자와 수신자 간에 대칭키의 공유가 필요함

③ 수신자는 수신한 메시지와 대칭키를 가지고 직접 MAC을 만들어 수신한 MAC과 비교해 인증을 수행

 

 

3) 일방향 해시 함수와 메시지 인증 코드의 비교

 

(6) 전자서명

1) 개념

① 전자서명이란 오프라인(off-line)세계에서 사용하는 도장이나 종이 위에 하는 서명날인의 개념을 온라인(on-line)세계에 적용한 것이다.

② 거짓행세(spoofing), 변경부인이라는 위협을 방지하는 기술이 전자서명이다.

③ 전자서명은 무결성을 확인하고 인증과 부인방지를 하기 위한 암호 기술이다.

 

2) 전자서명 방식

 

3) 개념

① 메시지에 직접 서명하는 방법

 

② 메시지의 해시값에 서명하는 방법

 

(7) 의사난수 생성기

1) 의사난수 생성기(PRNG, pseudo random number generator)는 난수열을 생성하는 알고리즘이다.

2) 난수는 키 생성(key generator)이라는 매우 중요한 역할을 담당하고 있다.

 

(8) 기타 암호 기술들

1) 스테가노그래피(Steganography)

③ 최초의 암호 유형은 고대 그리스에서 사용한 방식으로 암호화라기보다는 스테가노그래피(Steganography)에 가까운 방법이다.

④ 암호화가 '비밀을 기록하는 것을 의미하는 반면스테가노그래피는 '감추어진 기록(covered writing)'을 의미한다암호화는 메시지의 내용을 은폐하는 것을 의미하며스테가노그래피는 다른 무언가로 감추어 메시지 자체를 은폐하는 것을 의미한다.

⑤ 일반적으로 사진 파일에 인간이 인지하지 못할 정도의 미세한 부분에 변화를 주어 정보를 입력하는 방식이 많이 사용된다.

2) 워터마크(Watermark)

① 워터마킹이란 용어는 지폐의 제조과정에서 위조지폐를 가려내기 위해 물에 젖은 상태에서 특정 그림을 인쇄하고 말린 후 불빛에 비추었을 때 그림이 보이도록 하는 기술에서 유래했다.

② 현재는 원본의 내용을 왜곡하지 않는 범위 내에서 혹은 사용자가 인식하지 못하도록 저작권 정보를 디지털 콘텐츠에 삽입하는 기술을 말한다.

③ 활용 범위

ü 변조유무확인소유권 주장사용제한/불법복제 방지 등

④ 디지털 워터마킹의 분류

ü 투명 워터마킹

• 미디어 내에 내재되어 있어 밖으로 드러나지 않는 워터마킹의 형태

ü 가시 워터마킹

• 알아볼 수 있는 상태를 의미문서에 일급비밀이라고 도장을 찍는것이 이러한 워커마킹의 예

ü 강한 워터마킹

• 공격을 받아도 쉽게 파괴되거나 손상을 입지 않음

ü 약한 워터마킹

• 공격을 받으면 쉽게 파괴되거나 손상을 입음

• 양자 암호학

최근의 기술인 양자 암호학은 앙자역학의 원리를 응용한 암호방식으로하이젠베르크의 불확정성 원리를 응용한 암호화 방식이다물리학자들이 생각해낸 방법으로 정보를 보낼 때 아무도 그 내용을 알아낼 수 없도록 하는 것이 아니라누군가 정보 전달 당사자 사이에서 도청을 수행할 때 정보의 내용이 변해버려 결국 쓸모 없게 만들어 버리는 것이다튼튼해서 누구도 열수 없는 암호 전송용 상자를 만드는 것이 아니라통신 당사자가 아닌 다른 누군가가 엿보려고 시도하는 순간 부서져 버리는 매우 약한 상자를 만들어서 만일 상자가 손상되었다면 그 당시 보냈던 문서를 폐기하도록 하는 방법이다.

 

3) 핑거프린팅(Fingerprinting)

① 디지털 콘텐츠를 구매할 때 구매자의 정보를 삽입하여 불법 배포 발견 시 최초의 배포자를 추적할 수 있게 하는 기술이다.

② 판매되는 콘텐츠마다 구배자의 정보가 들어가므로 불법적으로 재배포된 콘텐츠의 내에서 핑거 프린팅된 정보를 추출하여 구매자를 식별하고법적인 조치를 가할 수 있게 된다.


'정보보안기사 > 정보보안일반' 카테고리의 다른 글

03. 대칭키암호 (스트림암호)  (0) 2017.08.02
01. 정보보호의 개요  (0) 2017.08.02








제1장  정보보호의 개요

제1절 정보보호관리(Information Security)

제1항 정보보호

(1) 개념

1) 정보의 수집 및 가공저장검색송신수신 중에 발생하는 정보의 훼손 및 변조,유출 등을 방지하기 위한 관리적기술적 수단 또는 그러한 수단으로 이루어지는 행위를 말한다.

2) 정보보호는 기밀성무결성가용성인증성 및 부인방지를 보장하기 위하여 기술적,물리적,관리적 보호 대책을 강구하는 것이라고 할 수 있다.

3)


가장 약한 링크 원칙

보안에서는‘Chain Rule’이란 것이 있다쇠사슬 양쪽 끝에서 잡아당기면 가장 약한 부분이 끊어진다쇠사슬의 전체 강도는 가장 강한 부분이 아닌 가장 약한 부분에 따라 결정된다보안도 마찬가지다.

정보 보안(Information Security)은 정보의 고전적 의미로서 정보 자체의 안전성과 무결성을 강조한 영역이고,정보 보호(Information Protection)는 정보의 보장적 의미로서 정보 내용의 기밀성,비밀성을 강조한 영역이라고 할수 있다.</w:wrap>

 

4) 고객의 자산을 보호하고 허용 가능한 위험 수준까지 낮추는 것이 목적이다.

5) 정보보호는 조직의 관리 활동에 있어 적절한 주의의무(Due care)가 포함되어야 한다.

6) 직무상의 신의성실노력

① Due

ü 특정 목적을 위하여 필요하거나 요구되는 적절하고 충분한 의무이다.

② Due care

ü 특정 목적을 위하여 필요하거나 요구되는 충분한 주의이다.

③ Due diligence

ü 특정 목적을 위하여 필요하거나 요구되는 충분한 노력이다.

 

(2) 정보 보호의 특성

1) 완벽한 보안은 100% 달성할 수 없다.

2) 보안을 강화할수록 시스템 성능은 낮아지거나 비용이 증가한다.

3) 보안 위험은 제거하는 것이 아니라 허용 가능한 수준으로 낮추는 것이 목적이다.

4) 조직에서 허용 가능한 수준(DoA, Degree of Assurance)에 따른다.

 

제2항 정보보호관리

(1) 정보보호 관리(Information Security Management)의 개념

1)


정보보호관리

정보보호 관리는 기업과 조직의 비즈니스 목적을 충족시키면서 수용 가능한 수준으로 위험을 낮추는 것이다.

정보는 기업이나 공공기관의 중요한 자산 중 하나로서기업이나 조직의 전략과 목적을 달성하는데 필수불가결한 요소이다.

 

2) 정보가 의도하지 않은 비 인가자에게 노출되거나 갈취 당하게 되면 위험을 초래할 수 있다.

3) 정보보호 관리는 기업과 조직의 비즈니스 목적을 충족시키면서 수용 가능한 수준으로 위험을 낮추는 것이다위험은 식별되거나 감소될 수는 있지만 완전히 제거될 수는 없으며위험은 제거대상이 아닌 관리대상이다.

4) 정보보호 관리를 위해서는 최고 경영진의 지원과 관심이 반드시 필요하다.

 

(2) 정보 보호의 통제

1) 기능에 의한 통제의 분류

정보는 기업이나 공공기관의 중요한 자산 중 하나로서기업이나 조직의 전략과 목적을 달성하는데 필수불가결한 요소이다.

 

② 기술적 통제

ü 정보 시스템통신망정보(데이터)를 보호하기 위한 가장 기본적인 대책이다.

ü 접근통제암호기술백업 체제정보시스템 자체에 보안성이 강화된 시스템 소프트웨어를 사용하는 등의 대책이 기술적 보호대책에 속한다.

ü 기술적 통제 항목

• 네트워크 접속 및 변경 관리

• 접근 통제,인증

• 시스템,서버, PC보안

• 모바일 장비 보안

• 바이러스 방지

• 운영 관리

• 문서 보안

• 데이터베이스 보안

 

③ 물리적 통제

ü 화재수해지진태풍 등과 같은 자연재해로부터 정보시스템이 위치한 정보처리 시설을 보호하기 위한 자연재해 대책이 있다.

ü 또한 불순 세력이나 적의 파괴로부터 정보시스템을 보호하기 위한 출입통제시건(잠금장치 등이 물리적 보안대책으로 구분된다.

ü 물리적 통제 항목

• 시설 관리

• 출입통제

• 전산센터의 입지 조건 및 주위환경

• 방재 및 내부 설비 관리

• 전산 장비 관리

• 시스템 시설 보호

• 백업 및 자료 보관

• 물리적 재해

 

④ 관리적 통제

ü 제도규정교육 등을 확립하고보안계획을 수립하고 이를 운영(보안등급액세스 권한 등)하며위험분석 및 보안감사를 시행하여 정보시스템의 안전성과 신뢰성을 확보하기 위한 대책이다.

ü 조직체의 정보보호를 효과적으로 보장하기 위해서는 다양한 기술적 보호대책 뿐만 아니라 이들을 계획하고설계하며관리하기 위한 제도정책절차 등의 관리적 보호대책도 매우 중요하다.

ü 특히 내부자의 부당행위를 방지하기 위한 교육은 무엇보다도 중요하게 취급되어야 한다.

ü 관리적 통제 항목

• 정책 및 조직관리

• 정보보호 정책과 지침의 수립 및 관리

• 보안 조직의 구성 및 운영

• 보안 교육 실시

• 인원 관리

• 업무순환 계획

• 퇴직자,해고자 관리

• 입사시 신원조회

• 절차관리

• 사고대책관리

 

2) 행위에 의한 통제의 분류

① 예방적 통제(Preventive Control)

ü 컴퓨터 사기,절도,불법 침입,시스템 오류,부주의에 의한 파일 삭제등 컴퓨터와 관련된 모든 위해 요소를 사전에 예방하기 위한 행위

ü 논리적 접근 통제,파일 백업,보안 라벨링,물리적 보안 통제,임무 분리,최소 권한 정책,직원 훈련 및 보안 의식,위험 관리,위험 분석,침입 테스트,환경 통제 등

 

② 탐지적 통제(Detective Control)

ü 시스템 안전에 영향을 미치는 위해 요소를 탐지하기 위한 통제이며,예방 통제가 제대로 이루어졌는지를 판단하여 예방 통제 영역을 조정해 주는 역할 수행

ü 감사추적,침입탐지시스템,로그기록,바이러스 탐지,시스템 성능 모니터링 등

 

③ 교정(수정)적 통제(Corrective Control)

ü 탐지된 에러와 부주의에 의한 파일 삭제등 시스템에 발생한 피해를 원상회복하기 위한 통제

ü 복구 절차,연속성 계획,사고 처리,화재 진압등

 


 

제2절 정보보안 (Information Security)

제1항 정보보안의 개념

(1) '정보의 기밀성무결성가용성의 보존추가적으로 진정성(authenticity), 책임성(accountability), 부인방지(non-repudiation), 그리고 신뢰성(reliability)와 관계가 있을 수 있다.' (ISO/IEC 27000:2009)

(2) '인가되지 않은 접근사용폭로붕괴수정파괴로부터 정보와 정보 시스템을 보호해 기밀성무결성가용성을 제공하는 것' (CNSS, 2010)

(3) '인가된 사용자(기밀성)만이 정확하고 완전한 정보(무결성)로 필요할 때 접근할 수 있도록(가용성하는 일련의 작업' (ISACA, 2008)

 

제2항 정보보안의 3요소


(1) 기밀성(Confidentiality)

1) 인가된(authorized) 사람과 단체인가된 프로세스인가된 시스템만이 알 필요성(Need-to-know)에 근거하여 시스템에 접근해야 한다는 원칙이다.

2) 정보 소유자의 인가를 받은 사람만이 정보 접근이 가능하다.

3) 기밀성을 보장하기 위한 보안 기술에는 접근제어암호화 등이 있다.

 

(2) 무결성(Integrity)

1) 네트워크를 통하여 송수신되는 정보의 내용이 불법적으로 생성 또는 변경되거나 삭제되지 않도록 보호되어야 하는 성질을 말한다.

2) 무결성 왜곡이 항상 악의적인 행동의 결과로 나타나는 것은 아니다전력 차단과 같은 시스템 중단이 정보에 예상치 못한 변형을 일으킬 수 있다.

3) 무결성을 보장하기 위한 보안 기술에는 접근제어메시지 인증 등이 있으며정보가 이미 변경되었거나 변경 위험이 있을 때에는 이러한 변경을 탐지하여 복구할 수 있는 침입탐지백업 등의 기술이 필요하다.

 

(3) 가용성(Availability)

1) 시스템이 지체 없이 동작하도록 하고,합법적 사용자가 서비스 사용을 거절당하지 않도록 하는 것이다.

2) 정보는 지속적으로 변화하며,이는 인가된 자가 접근할 수 있어야 함을 의미한다.정보의 비 가용성은 조직에 있어 기밀성이나 무결성의 부족만큼이나 해롭다.

3) 가용성을 확보하기 위해서는 데이터의 백업,중복성의 유지,물리적 위협요소로부터의 보호 등의 보안 기술을 적용해야 한다.

 

제3항 정보보안 관련 용어정리

(1) 자산(Asset)

1) 데이터 혹은 자산의 소유자가 가치를 부여한 개체(개인정보영업비밀기자재 등)를 말한다.

2) 컴퓨터 시스템의 자산은 다음과 같이 분류된다.

① 하드웨어

ü 컴퓨터 시스템과 데이터 처리저장통신 장비

② 소프트웨어

ü 운영체제시스템 도구어플리케이션

③ 데이터

ü 파일데이터베이스암호 파일과 같은 보안 관련 데이터

④ 통신 설비와 네트워크

ü 지역과 광역 네트워크 통신 연결브리지라우터 등

 

(2) 취약점(Vulnerability)

1) 위협의 이용대상으로 관리적물리적기술적 약점이다. (정보보호 대책 미비)

2) 위협이 발생하기 위한 사전 조건이나 상황(평문전송입력값 미검증비밀번호 공유등을 말한다.

 

(3) 위협(Threat)

1) 자산에 대한 위협원의 공격 행동(해킹변조삭제파손유출)으로 나타난다.

2) 임의의 위협은 네 가지 종류로 구분된다.

<!--[endif]-->

interception : 기밀성에 영향

interruption : 가용성에 영향

modification : 무결성에 영향

Interception(가로채기)

 

ü 비 인가된 당사자가 자산으로의 접근을 획득(불법 복사도청 등)한 것을 의미한다기밀성에 영향을 미침

② Interruption(가로막음)

ü 하드웨어 장치의 악의적 파괴나 파일 삭제서비스 거부 공격 등으로 시스템 자산이 손실되거나손에 넣을 수 없거나사용 불가능하게 된다가용성에 영향을 미침

③ Modification(변조)

ü 비 인가된 당사자가 컴퓨팅 시스템상에서 불법 객체의 위조정보를 생성한다무결성에 영향을 미침

 

(4) 위협원(Threat agents)

1) 정보 자산에 해를 끼치는 행동을 할 수 있는 주체(해커일반 사용자컴퓨터 프로세스재난)를 말한다.

2) 위협원은 전문지식자원기회동기 측면에 따라 다변화되어 표현될 수 있다.

 

(5)


위험(Risk)

위험(Risk) = 자산(Asset) * 위협(Threat) * 취약점(Vulnerability)

위험은 제거대상이 아닌 관리대상이며위험은 식별되거나 감소될 수 있지만제거될 수는 없다.

 

1) 예상되는 위협에 의해 자산에 발생할 가능성이 있는 손실의 기대치자산의 가치 및 취약점과 위협 요소의 능력보호 대책의 효과 등에 의해 영향을 받는다.

2) 위협원이 취약점을 이용하여 위협이라는 행동을 통해 자산에 악영향을 미치는 결과를 가져올 가능성이다.

 

(6) 노출(Exposure)

1) 위협 주체에게 손실(losses)을 드러내 보이는 경우를 말한다취약점은 발생 가능한 피해를 노출시킨다.

2) 패스워드 관리가 느슨하고 패스워드 규정이 집행되지 않으면사용자들의 패스워드가 유출되고 허가되지 않은 방법으로 사용될 가능성에 노출될 수 있다.

 

(7) 잔여 위험(Residual Risk)

1) 정보보호대책을 구현한 후에 남아 있는 위험이다.

2) 기업에서 받아들일 수 있을 만큼의 수준으로 위험을 감소시키기 위한 보안 대책이나 대응수단을 구현하고 난 후에 남는 위험을 말한다.

 

             자산 내에 크고 작은 보안 취약점들이 존재하며해커 또는 악의적인 내부자 등             위협원에 의한 해킹정보 유출시스템 파괴 등의 위협이 발생합니다위험이 발생할         확률은 자산의 가치가 높을수록취약점이 많을 수록위협의 대상에 노출될 수록   증가하며 위험으로 인해 자산에 악영향을 미칩니다.

 

(8) 사회공학

1) 컴퓨터 보안에서 인간 상호 작용의 깊은 신뢰를 바탕으로 사람들을 속여 정상적인 보안 절차를 깨뜨리기 위한 비 기술적 침입 수단이다.

2) 우선 통신망 보안 정보에 접근 권한이 있는 담당자와 신뢰를 쌓아 전화나 이메일을 통해 도움을 받고약점을 이용한다.

3) 가장 약한 링크 원칙(principle of weakness link)

① 보안은 가장 약한 링크보다 더 강할 수 없다이것이 방화벽에 전력을 공급하는 전원장치이건보안 응용 기반으로 동작하는 운영체제이건또는 제어 수단을 기획실현하고 관리하는 사람들이건 간에어떤 하나의 제어 수단의 실패가 전체 보안 실패를 야기한다.

 

 

제3절 OSI 보안 구조

제1항 개요

(1) 기본 개념

1)

X.800

오픈 시스템의 통신 프로토콜 계층의 보안 서비스로 정의되며시스템 혹은 데이터 전송의 적절한 보안을 보장

ITU-T 권고안 X.800, OSI 보안 구조는 관리자가 효과적으로 보안 문제를 조직화 할 수 있는 유용한 방법을 제공한다.

 

2) 보안 구조가 국제적으로 표준화되어 있기 때문에 컴퓨터나 통신장비 생산업체는 권고된 서비스와 메커니즘의 구조화된 정의에 따라 제품과 서비스에 보안 규정을 적용시킨다.

 

(2) OSI 보안 구조

1) 보안공격(Security Attack)

① 기관이 소유한 정보의 안전성을 침해하는 제반 행위를 말한다.


보안공격

지적인 위협을 수반하는 시스템 보안에 대한 침범을 말한다지적인 위험이란 보안 서비스를 교묘히 피하거나 시스템 보안 정책을 위반하는 정교한 시도를 말한다.

 

2) 보안 메커니즘(Security Mechanism)

① 보안 공격을 탐지예방하거나 공격으로 인한 침해를 복구하는 절차를 말한다.

3) 보안서비스(Security Service)

① 조직의 정보 전송과 데이터 처리 시스템의 보안을 강화하기 위한 처리 또는 통신 서비스이 서비스는 보안 공격에 대응하기 위한 것이며하나 또는 그 이상의 보안 메커니즘을 사용하여 서비스를 제공한다.

 

제2항 보안공격(Security Attack)

(1) 개요

1) 보안의 세가지 목표(기밀성무결성가용성)는 보안 공격에 의해 위협받을 수 있다보안 목표와 관련하여 세 개의 그룹으로 먼저 나누고다시 그 공격을 시스템에 미치는 영향에 따라

 

2) 보안의 세가지 목표(기밀성무결성가용성)는 보안 공격에 의해 위협받을 수 있다보안 목표와 관련하여 세 개의 그룹으로 먼저 나누고다시 그 공격을 시스템에 미치는 영향에 따라

 

(2) 기밀성(Confidentiality Attack) 침해 기술

기밀성 침해 기술은 인가되지 않은 사람 또는 시스템이 타인의 통신 과정에서 메시지를 몰래 엿볼 수 있는 기술을 말한다.

1) Snooping(스누핑)

① Sniffing vs. Snooping

ü Sniffing

• 스니핑의 사전적 의미는 '코를 킁킁거리다', '냄새를 맡다등의 뜻이 있다네크워크 상에서 자신이 아닌 다른 상대방의 패킷 교환을 엿듣는 것을 의미한다간단히 말하면 네트워크 트래픽을 도청(eavesdropping)하는 과정을 말한다.

ü Snooping(스누핑)

• Sniffing은 주로 몰래 엿듣는 의미가 강하고, Snooping은 합법적 도청을 의미한다.

 

 

② Sniffing의 원리

스니핑은 네트워크사에서 전송자와 수신자 사이에 주고 받는 데이터를 패킷 수준으로 분석하여 계정비밀번호프로토콜시스템정보 등 유의미한 내용을 알아내기 위한 해킹 기법입니다.

 

ü 이더넷 네트워크 내의 모든 호스트는 동일한 선을 공유하도록 설계되었으며호스트를 식별하기 위해서 MAC 주소를 사용한다.

ü 송신자는 자신의 MAC주소와 수신자 MAC주소 및 데이터를 함께 전송하게 되는데로컬 네트워크 내의 모든 호스트는 MAC 주소를 확인하여 본인이 아닐 경우 해당 패킷을 폐기한다.

ü 랜카드의 모드를 Promiscuous로 변경하게 되면 모든 패킷을 버리지 않고 해당 호스트에 전송이 된다.

 

 

2) Traffic Analysis(트래픽 분석)

① 데이터가 암호화되어서 도청자가 그 데이터를 이해할 수 없어도 도청자는 온라인 트래픽을 분석함으로써 다른 형태의 정보를 얻을 수 있다.

② 도청자는 수신자 또는 송신자의 전자 주소를 알아낼 수 있으며전송의 성향을 추측하는데 도움이 되는 질의와 응답의 쌍들을 수집할 수 있다.

 

(3) 무결성(Integrity) 침해 기술

1) Modification(변경메시지 수정)

① 메시지 수정이란 적법한 메시지의 일부를 불법적으로 수정하거나 메시지 전송을 지연시키거나 순서를 뒤바꾸어 인가되지 않은 효과를 노리는 행위를 말한다.

2) Masquerading(가장)

① 신분위장은 한 개체가 다른 개체의 행세를 하는 것이다이 공격은 다른 형태의 적극적 공격과 병행해서 수행된다.

3) Replaying(재연제전송)

① 재전송은 적극적 공격의 하나로획득한 데이터 단위를 보관하고 있다가 시간이 경과한 후에 재전송함으로써 인가되지 않은 사항에 접근하는 효과를 노리는 행위를 말한다.

4) Repudiation(부인)

① 메시지의 송신자는 차후에 자신이 메시지를 보냈다는 것을 부인할 수 있고메시지의 수신자는 차후에 메시지를 받았다는 것을 부인할 수 있다.

 

(4) 가용성(Availability) 침해 기술

1) Denial of Service(서비스 거부)

① DoS(서비스 거부)는 매우 일반적인 공격이다이 공격은 시스템의 서비스를 느리게 하거나 완전히 차단할 수 있다공격자는 이를 수행하기 위하여 다양한 전략을 사용할 수 있다.


(5) 소극적 공격과 적극적 공격

1)


RFC 2828

시스템 자원에 대한 보호의 구체적인 종류를 제공하기 위해 시스템에 의해 제공되는 프로세싱이나 통신 서비스보안 서비스는 보안 정책을 구현하고 보안 메커니즘에 의해 구현됨

Security Attack(보안 공격) X.800과 RFC 2828에 따라 분류하면 Passive Attack(소극적 공격)Active Attack(적극적 공격)으로 나눌 수 있다.

 

 

 

 

① Passive Attack(소극적 공격)이란 시스템으로부터 정보를 획득하거나 사용하려는 시도이나 시스템 자원에는 영향을 미치지 않는 공격 형태를 의미한다.

② Active Attack(적극적 공격)이란 시스템 자원을 변경하거나 시스템 작동에 영향을 끼치는 공격 형태를 말한다.

 

 

2) Passive Attack(소극적 공격)

① Passive Attack에서 공격자의 목표는 단지 정보를 획득하는 것이다이는 공격자가 데이터를 변경하거나 시스템에 해를 끼치지 않는다는 것을 의미한다.

② 기밀성을 위협하는 Snooping, Traffic analysis과 같은 공격들은 Passive attack이다정보의 노출은 메시지의 송신자나 수신자에게 해를 끼칠 수 있지만 시스템은 영향을 받지 않는다.

 

3) Active Attack(적극적 공격)

① Active Attack으로 데이터를 바꾸거나 시스템에 해를 입힐 수 있다무결성과 가용성을 위협하는 공격이 Active Attack이다.

② Active Attack은 공격자가 다양한 방법들을 사용하기 때문에 일반적으로 방어하기 보다 탐지하는 것이 더 쉽다.

 

(6) 공격의 발원지에 따른 구분

1) 내부공격

① 보안 경계 내부의 존재에서 시작된 공격으로 내부자에게 시스템 자원 접근은 허가되나 허용된 권한 이상으로 사용하는 것을 말한다.

 

2) 외부공격

① 보안 경계 외부에서 허가되지 않은 불법적인 사용자에 의해 시작된 공격으로 인터넷상의 아마추어부터 조직화된 범죄자국제 테러리스트적국의 정부 등을 들 수 있다.

 

 

제3항 보안서비스(Security Service)

(1) 개요

1) X.800에서 보안 서비스란 시스템의 적절한 보안이나 데이터 전송의 보안을 보장하는 통신 개방 시스템의 프로토콜 계층에 의해서 제공되는 서비스이다.

2) 보안 서비스는 보안 정책(Security policy)을 구현하고 보안 메커니즘(Security mechanism)에 의해서 구현된다.

 

(2) Confidentiality(기밀성)

1) Confidentiality이란 소극적 공격으로부터 데이터를 보호하는 것을 말한다합법적인 실체만 읽을 수 있도록 보호하는 서비스를 말한다.

2) 메시지 내용 공개트래픽 흐름 분석도청으로부터 전송되는 메시지를 보호한다.

3) 암호 알고리즘을 이용한다.

 

(3) Integrity(무결성)

1) 합법적인 실체만 수정할 수 있도록 보호하는 서비스를 말한다.

2) 해시함수디지털 서명암호 알고리즘을 이용한다.

 

(4) Availability(가용성)

1) X.800 RFC 2828에서 가용성이란 인가된 시스템이 자원에 접근할 필요가 있을 경우 사용하고자 할 때 시스템의 성능에 따라 시스템 자원에 접근할 수 있도록 하는 것을 말한다.

 

(5) Authentication(인증)

1) 이 서비스는 통신의 상대편에 대한 인증을 제공한다.

2) 연결지향(Connection-oriented) 통신에서 연결 성립 시 송신자 또는 수신자에 대한 인증(Peer entity authentication)을 제공하고비 연결지향(connectionless) 통신에서는 데이터의 출처를 인증한다.

① 대등 개체 인증(Peer entity authentication)

ü 통신하는 상대방의 신원을 확인시켜준다연결을 설정할 때와 데이터를 전송하는 과정 중에 이 인증 서비스를 사용한다.

② 데이터 출처 인증(Data origin authentication)

ü 데이터 단위의 출처에 대한 확인을 할 수 있다.

 

(6) Non-repudiation(부인방지부인봉쇄)

1) Non-repudiation이란 송신자나 수신자 양측이 메시지를 전송했거나 수신한 사실 자체를 부인하지 못하도록 막는 것을 말한다.

2) 어떤 메시지가 송신되었을 때 수신자는 그 메시지가 실제로 송신자라고 주장하는 주체로부터 송신되었음을 확인할 수 있다.

3) 어떤 메시지가 수신되었을 때 송신자는 그 메시지가 실제로 수신자라고 주장하는 주체에 의해서 수신되었음을 확신할 수 있다.

 

(7) Access Control(접근제어)

1) 네트워크 보안에서 Access control이란 통신 링크를 통한 호스트 시스템과 응용 간의 접근을 제한하고 통제할 수 있는 능력을 말한다.

2) 접근 시도를 하는 각 개체에 대해 우선 신원을 확인하거나 인증해야 하고이에 따라서 해당 개체에 적합한 접근 권한을 부여한다.

 

제4항 보안 메커니즘(Security Mechanism)

(1) 특정 프로토콜에 구현되는 보안 메커니즘

1) 암호화(Encipherment)

2) 디지털 서명(Digital Signature)

3) 접근제어(Access Control)

4) 데이터 무결성(Data Integrity)

5) 인증 교환(Authentication Exchange)

6) 트래픽 패딩(Traffic Padding)

7) 라우팅 제어(Routing Control)

8) 공증(Notarization)

 

(2) 특정한 프로토콜 계층이나 보안 서비스에 관련이 없는 메커니즘

1) 신뢰할 수 있는 기능(Trusted Functionality)

2) 보안 레이블(Security Label)

3) 이벤트 탐지(Event Detection)

4) 보안 감사 추적(Security Audit Trail)

5) 보안 복구(Security Recovery)

 

(3) 보안 서비스와 보안 메커니즘의 관계


 

 

제4절 해커(Hacker)

제1항 해킹(Hacking)

(1) 기본 개념

1) 넓은 의미에서는 해커들의 모든 불법적인 행위들을 해킹이라고 하며,좁은 의미에서는 정보시스템 전산망에서의 보안 침해사고를 발생시키는 행위들을 의미한다.

① 불법 침입

ü 인가 받지 않은 다른 정보시스템에 불법으로 접근

② 불법 자료 열람

ü 허가되지 않은 불법 접근을 통해 주요 정보를 열람

③ 불법 자료 유출

ü 개인이나 조직의 주요 정보를 불법으로 유출

④ 불법 자료 변조

ü 시스템 내의 자료나 개인의 자료를 변조

⑤ 불법 자료 파괴

ü 시스템의 자료를 불법으로 파괴하는 행위

⑥ 정상 동작 방해

ü 시스템의 정상적인 동작을 방해하거나 정지

 

제2항 해커(Hacker)

(1) 고전적 의미

1) 해커(Hacker)

① 컴퓨터 시스템의 내부 구조와 동작 따위에 심취하여 이를 알고자 노력하는 사람으로 대부분 뛰어난 컴퓨터 및 통신 실력을 가진 사람

 

2) 크래커(Cracker)

① 침입자(intruder) 또는 공격자(invader)라고도 하며,다른 사람의 컴퓨터 시스템에 무단으로 침입하여 정보를 훔치거나 프로그램을 훼손하는 등의 불법 행위를 하는 사람

 

(2) 일반적 의미

1) 다른 컴퓨터에 불법으로 침입하여 자료의 불법 열람,변조,파괴 행위를 하는 침입자파괴자를 통칭하는 부정적인 의미로 더 많이 사용되며이러한 침입자파괴자라는 점에서 해커는 크래커와 혼동되기도 한다.

 

제3항 해커의 분류

(1) Elite

1) 엘리트 해커는 해킹하고자 하는 시스템에 존재하는 취약점을 찾아내고 그것을 이용해 해킹에 성공하는 최고 수준의 해커

2) 해킹을 시도하는 목적은 단지 자신이 해당 시스템을 아무런 흔적 없이 해킹할 수 있다는 것을 확인하기 위함

 

(2) Semi Elite

1) 세미 엘리트 해커들은 컴퓨터에 대한 포괄적인 지식과 운영체제 시스템을 이해하고 있으며,운영체제에 존재하는 특정한 취약점을 알고그 취약점을 공격할 수 있는 코드를 만들 수 있을 정도의 최소한의 지식으로 무장되어 있다.

2) 이들은 해킹 흔적을 남겨서 추적을 당하기도 한다.

 

(3) Developed Kiddle

1) 보통 십대 후반의 학생들로 대부분의 해킹 기법들에 대해 알고 있으며,해킹 수행 코드가 적용될 수 있을 만한 취약점을 발견할 때까지 여러 번 시도함으로써 시스템 침투에 성공하는 경우도 있다.

2) 보안상 취약점을 새로 발견하거나 최근 발견된 취약점을 주어진 상황에 맞게 바꿀만한 실력은 없다.

 

(4) Script Kiddle

1) 네트워킹이나 운영체제에 관한 기술적인 지식이 부족한 이들은 GUI 운영체제 바깥 세상으로 나와 본 적이 없으며,이들의 해킹은 보통 잘 알려진 트로이 목마를 사용해 평범한 인터넷 사용자를 공격하고 괴롭히는 것이다.

'정보보안기사 > 정보보안일반' 카테고리의 다른 글

03. 대칭키암호 (스트림암호)  (0) 2017.08.02
02. 암호학  (0) 2017.08.02

+ Recent posts