한국의 악성코드 변천사

 

1986~1998

Brain Virus

DOS 바이러스 ~ Windows 바이러스

예루살렘(1987), 미켄란젤로((1992)

몽키 바이러스(1994), 매크로 바이러스(1995)

단말 보안으로 충분, 기업 보안 요구

 

 

1996~1997

 

1996: 새로운 플랫폼으로 이동

"Win95/Boza" 바이러스 공개

  • 오스트레일리아의 바이러스 제작 그룹인 "VLAD(Virus Laboratory And Distribution)"에서 제작
  • 최초의 윈도우 95 기반 바이러스

 

최초의 엑셀 매크로 바이러스인 "XM/Laroux" 발견

VLAD에서 최초의 윈도우 95 상주형 바이러스인 "Win95/Punch"발표

 

1997: 리눅스 바이러스 등장

2월 "Linux/Bliss" 바이러스 발견: 최초의 리눅스 바이러스

3월 "WM/ShareFun" 바이러스 발견: 마이크로소프트사의 Word 6/7에서 감염되며 MS-Mail로 자신을 전송

"Homer" 웝 발견: FPT(File Transfer Protocol)로 전파

"Esperanto" 발견: DOS와 Windows, Mac OS에 감염, 실제로는 버그로 감염되지 않음

매크로 바이러스 발견 2년 만에 1000개가 돌파

 

많은 사람들이 리눅스 바이러스가 없다고 믿고 있는데, 그것은 사실이 아니다.

안철수연구소 조시행 연구소장의 강연 말씀으로는 바이러스라는것은 만들려고하면 어느 플랫폼이서든지 만들어 질 수 있는것이다. 그것이 리눅스고 윈도우고는 상관 없는 것이다.

컴퓨터좀 한다는 사람들도 이런 사실과 다른 정보를 믿고 있다고 한다.

 

 

1998: 매크로, 윈도우 바이러스 극성

  • 한국에서 바이러스 제작 그룹인 'CVC(corean Virus Club)멤버들 검거
  • 다형성 윈도우 바이러스인 "Win95/HPS"와 'Win95/Marburg" 발견
  • 엑세스 매크로 바이러스 발견: 이후 여러 오피스 문서를 감염시키는 바이러스들 등장
  • "RedTeam" 바이러스 발견: 윈도우 실행파일을 감염시키고 유도라(Eudora)의 E-mail로 자신을 첨부
  • "Win95/CIH" 바이러스 발견: 6월 대만에서 발견되었고 이후 전 세계적으로 퍼짐, 1999년 4월 26일 CIH 대란 발생
  • 9월에 백오리피스 발표-> 원격 제어 트로이목마 대거 등장
  • 자바 실행 파일을 감염시키는 "java/StrangeBrew" 바이러스 등장
  • 연말엔 비주얼베이직 스크립트(Visual Basic Script)로 작성된 바이러스나 웜 등장-> 2000년에 대대적으로 확산
  • 최초의 파워포인트용 바이러스인 "PP97M/Vic" 바이러스 등장

 

1999~2002

CIH Virus (러시아 채르노빌 사건을 기념하기 위해서 제작한 Virus라고 한다.)

보안위협의 패러다임 변화: 코드레드웜, 님다웜(2001), 안티바이러스와 네트워크 보안이 통합된 새로운 보안 솔루션 요구

 

2003~2008

1.25 인터넷 대란(슬래머웜)

 

보안위협의 패러다임 변화

  • Adware/Spyware,
  • 금전적 이득 목적,
  • BotNet
  • 웹 해킹 등장
  • 트로이목마 등장,
  • 네트워크 관제 요구

즉, 이제 본격적으로 금전을 갈취하기 위해서 시작된 해라고 볼 수 있다.

 

2009~2010

7.7 DDos, TDL3

보안위협의 패러다임 변화

  • 해킹의 필수요소로 악성코드가 활용
  • 사회적 이슈를 노린 해킹 증가
  • 민, 관, 군 합동 공조 체계 및 컨트롤 타워 요구

 

2011

3.4 DDos

APT(Advanced(지능형) Persistent(지속적인) Threat(위협)): 지능형 지속 위협은 기존의 단순한 외부침입 해킹 형태가 아닌 지능적으로 접근해 악성코드를 감염시키거나 내부 정보를 유출시키는 형태의 해킹 이다.

 

 

 

 

악성 코드의 변천사

 

 

 

 

앞으로 나올 Virus의 전망

  • 모바일, x64
  • 부트킷, 사회공학 기법

 

APT 형태의 보안 위협 대응 방안

사내 모든 파일의 움직임에 대한 '가시성' 확보와 '실시간 행위 분석'

- 네트워크 관제와 내부 관제가 통합된 Convergence 관제 요구

- 클라우드 기반의 보안 기술 연구

 

 

소장님의 말에 의하면 대부분의 보안회사들이 해커들은 고용을 할 수도 있으나, 크래커나 바이러스 제작자들은 고용하지 않는다고 한다.

그 이유는 실제로 보안기술과 바이러스 제작 기술은 많이 틀리며 그다지 도움이 되지 않는다고한다.

설사 도움이 된다고 해도 일단 한번 윤리의식에 문제가 있는 사람은 채용하진 않는다.

가장 큰 이유로 백신 프로그램은 완벽하지 않다. 따라서 모든 백신 프로그램에는 헛점이 있다. 이런 헛점은 한번 공개가 되면 맊이 어렵다. 따라서 윤리의식에 문제가 있는 사람은 보안 회사로서 그다지 큰 매력을 가지지 못한다는 것이다.

따라서 영화에서 처럼 바이러스제작자가 보안회사에 거액의 스카웃 비용으로 고용되는 일들은 잘 잃어나지 않는다.

국내외 시장변화 및 NHN의 개발 Practice    

 

세계시장의 변화

A.     스마트폰
-
전체 36%, 휴대폰 사용자중 44%
- 2
년 사이에 스마트폰 사용자의 변화=> 26% 사용자 증가

빠른 속도록 변화하고 있음을 확인 할 수 있다.
-
미국 스마트폰 OS: 안드로이드
44%, iOS 29%, Rim Blackberry 17%
-
스마트 폰을 통한 가장 많은 접속 사이트: 공통
Google, facebook.
-
마켓 다운 로드 수 변화: 안드로이드 시장의 급성장. iOS은 제자리, 이외는 후퇴중

B.      Cloud의 사용화
-Cloud
클라우드 컴퓨팅 회사에 사용한 만큼 가격을 지불하는 정책
- Cloud
서비스를 통해서 다양한 형태의 서비스가 제공 되고있다.(Iaas, Paas,SaaS)
-
개인의 99%, 전산센터의 95% idle상태이다
.
- facebook: 8
억 사용자 3 5천 모바일 사용자, 하루 2 5천개 사진 업그레이드, 70개국어 이상 언어 지원

한국 시장의 변화

A.     인터넷 인구의 포화è 사용연령의 증가 진행
스마트폰을 사용하는 인구 증가 è PC인터넷 대체, 인터넷 접근 확장

B.   40대 이상 인터넷 이용자 급증: 전체 인터넷 이용자중 36% (즉, 이제는 더 이상 인터넷이 젊은 세대들의 전유물이 아니다.)

C.  스마트폰의 PC와는 다른 인터넷 이용시간을 가지고 있다. 즉, Mobile은 이동성과 휴대성이라는 고유의 가치를 기반으로 인터넷 접근 범위를 확장시킴과 동시에, PC 인터넷 이용시간을 대체하는 현상을 나타낸다.

□ Cloud Computing의 상용화

  • IaaS: infra as a service: hardware를 설치 할 필요없이 사용한 대로 계산하는 방식, 이용자는 단지 기타 software는 본인이 빅접 설치하여 사용한다.

  • PaaS: Platform as a service: hardware에서 부터 Dev tools까지 제공된다. 이용 회사는 Application만 개발하면 된다.

  • SaaS: Software as a service: Hardware에서 Application 제공

 

NHN의 소프트웨어 품질 관리

A.     기존 방식(폭포수 개발 방식의 문제점 발견)
-
문제점 해결(코드 완성도, 단계적 빌드 반복 점진 개발
)
-
리펙토링(코드 이해도 증가)및 테스트 자동화 실행

B.      생산 지원 인프라 BTS(Bug Tracking System): 빠른 피드백 가능
BDS(Build & Deployment System),
다양한 환경으로 릴리즈 빌드 및 배포 수행.
마틴 파울러: 컴퓨터가 이해할 수 있는 코드는 어느 바보나 짤 수 있다. 좋은 프로그래머는 사람이 이해할 수 있는 코드를 짠다.

 

반복 점질 개발의 구성 요소

  • SVN: Source code control system
  • BTS: bug tracking test
  • Refactoring(리팩토링): 프로그램 전체 동작은 그대로 유지하면서, 프로그램의 논리적 구조만을 개선하는 것을 지칭한다.
  • 테스트 자동화: 대부분의 결함은 코드를 작성할 때 발생한다. 이러한 결함은 개발 시간이 지날수록 수정에 많은 비용을 발생 시킨다. 따라서 개발자가 코드를 작성할 때 부터 매번 스스로 결함을 검사하는 것이 바람직하다고 볼 수 있다. 이러한 매커니즘을 제공하기 위해서 나온 것이 테스트 자동화 이다.

 

 

 

 

□ Quality Practice: 리팩토링 및 테스트 자동화

 

  • Coding Convention: 코드의 가독성 유지보수성 향상을 위해 코딩 표준을 준수하여 동일한 스타일로 코드를 작성해야함
  • Code Review: 주요 코드에 대해서는 코드 리뷰를 수행- 중요한 기능, 중요도가 높거나 복잡한 로직/알고리즘, 테스트가 어려운 예외처리부분, 신규 개발자가 작성한 코드, 기존에 장애 및 결함 발생이 빈번한 코드 등
  • Code Coverage: 작성한 코드의 완성도를 높이기 위해 개발자 테스트를 수행하고, 테스트가 충분한지 커버리즈 확인- 테스트는 측정 가능하며, 반복적으로 수행 가능해야함
  • Static Analysis: 정적분석 도구를 활용하여 테스트에 검출하기 어려운 잠재오류를 사전에 제거해야 함
  • Code complexity: 작성한 코드의 복잡도를 확인- 복잡한 코드는 리팩토링 필요한지, 테스트가 충분히 수행되었는지 커버리지 확인해야 함
  • Duplicate Analysis: [특히 래거시 코드의 가독성을 높이고 유지보수가 용이하도록] Copy & Paste로 인한 중복코드를 식벽하여 리팩토링 수행

 

C.      오픈 소스의 사용 및 개발
-
운영비 절감, 사회적 기여

 

'공학실무' 카테고리의 다른 글

한국의 악성 코드 변천사  (0) 2012.06.10
특허의 중요성 및 IT분야 주요 특허 분쟁 사례  (0) 2012.06.10
게놈 프로젝트  (0) 2012.06.10
프로젝트 매니지먼트  (0) 2012.06.10

 

□ 특허의 중요성 및 IT분야 주요 특허 분쟁 사례

 

특허법 제1조 [특허의 목적]

: 발명을 보호 장려하고, 그 이용을 도모함으로써 기술발전을 촉진하여 산업발전에 이바지함

 

 

국지 주의란: 특허를 등록받은 국가에 한해 제한적으로 효력 발생.

반드시 해당 국가에 특허 출원을 해야한다.(미국, 유럽, 일본, 중국 등)

 

국제 출원의 종류

파리조약에 의한 국제출원

  • 보호 받고자하는 국가에 개별적으로 직접출원
  • 국내출원일로 부터 1년이내에 우선권 주장 출원

 

PCT 국제 출원

  • 국제협력조약(PCT)에 가입한 국가 간에 적용
  • 국제사무국(WIPO)에 출원하고, 국제공개 후 30개월 이내에 지정국에 개별 출원.

 

 

 

 

 

 

 

 

 

 

□ 특허권의 발생

특허 요건(신규성, 진보성 등)에 대한 흠결 여부를 판단, 등록 결정에 의해 특허권(독점/베타적 권리)이 발생

 

  • 특허 받은 국가에서 업으로서 실시(제조,판매,사용,대여,수입)할 권리를 20년간 독점
  • 제 3자가 특허권자의 허락 없이 권리를 실시할 경우, 경고 후 민사상 조치 (ex: 손해 배상구권, 침해금지청구권(생산중지, 압류 등) 고의냐 과실이냐 그런거 구분 안한다.
  • 형사상 침해죄 성립(7년 이하의 징역 또는 1억 이하의 벌금, 친고죄)
  • 실시할 권리를 특허권자로부터 허락(통상실시권, 전용실시권): 라이센싱 후 로열티 지불

 

□ 특허 분쟁 발생 및 대응 전략

대응전략 수립

 

좋은 결과

  • 무효 소송
  • 회피설계
  • 크로스라이센스

힘든 결과

  • 생산포기
  • 손해배상(로열티 지급)
  • 특허권 매입

 

□ 사례 분석

CDMA: 퀄컴

GSM: 인터디지탈(특허 괴물)

LTE: 관련특허 5,300 여건 중 인터디지털 780건(1위), 삼성전자 679건(2위), 퀄컴 625건(3위)

 

 

특허 풀(Pool): 특허권자들이 자신들의 특허를 공동 라이센싱을 목적으로 결상한 단체(MPEG LA, 3G3P, LLC 등)

특허권자들을 대신하여 특허권자 간에 사용계약(cross-licensing), 제3자에 대한 특허사용계약, 특허료징수 및 배분

 

 

표준특허: MPEG, 3GPP, 3GPP2 등의 표준 규격을 기술적으로 구현하는 과정에서 필수적으로 실시되는 특허

"표준을 지배하는 자가 세상을 지배한다." = Winner Takes All

 

디자인 보호법: 물품의 외간 디자인을 보호하여 디자인 창작을 장려하고 산업 발전을 도모, 창작된 디자인 보호가 아니라 디자인이 적용된 물품을 보호, 존속기간은 20년

 

FRAND 원칙 (Fair, Reasonable & Non-Discriminatory)

  • 특허권자의 독점 및 권리남용 방지 규정: 표준특허 기술에 적용
  • 특허가 없는 업체가 표준특허로 우선 제품을 만든 다음 나중에 특허사용료를 낼 수 있는 권리
  • 표준특허권자가 무리한 요구로 경쟁사의 제품 생산이나 시장 진입을 방해하는 것을 막기 위한, 일종의 약자 보호제도

 

관련 도서

No Patent No Future

특허색약

 

'공학실무' 카테고리의 다른 글

한국의 악성 코드 변천사  (0) 2012.06.10
국내외 시장변화 및 NHN의 개발 Practice  (0) 2012.06.10
게놈 프로젝트  (0) 2012.06.10
프로젝트 매니지먼트  (0) 2012.06.10

 

게놈 정보, 미래의학, IT융합

 

Facts on The Human Genome Project

 

  • period : 1990~2003
  • cost : 3 billion dollars (30억 달러 = 약 3조 이상)

 

 

What is Omics ?

omics : 어떤 대상을 모두 모아서 연구하는 학문

유래 : 'ome' = mass 'ics' = study

모든 component들을 동시에 measure하는 방법이 필요하다.

  • High throughput technologies
  • Nanotechnologies(NT) are important contributors
  • Made posiible by the technology breakthrough during the last decade (microarrays, next-generation sequencing, etc)

 

이러한 Omics에서 우리가 필요한것은 방대한 data를 어떻게 분석하냐하는 것이다.

이를 위해서 2개의 학문이 결합했다.
  • Informatics technologies(IT): 즉 Information Technology
  • BT: Biotechnology
  • Bioinformatics = BT(Biotechnology) + IT(Information Technology) 

Bioinformatics 정의: 복잡한 생물학적 실험과정, 단순하지 않은 대용량의 바이오 데이터를 다루는 학문이다. 

즉, Bioinformatics 이것은 The key to the future biotechnology 될 것이다(Bill Gates).

 

 

 

Systems Biology: 생명 현상을 시스템 차원에서 이해하고 조절하고자 하는 것.

즉, 고장난 Radio를 단순히 시스템 차원에서 이해하는 수준으로도 고칠 수 있는 것인지에 대한 연구

 

 

2개의 Technologies를 이용해서 21세기형 환자 맞춤형 의학이 도래했다. 이러한 기술이 없으면 Bioinformatics 학문은 발전할 수 없다. 왜냐하면 Massive data를 분석 할 수 없기 때문이다. 결정적으로 아래의 2 Technologies가 발절 했기 때문에 현실에서 Bioinformatics 학문이 꽃을 피울 수 있는 것이다.

  • sequencing: DNA 염기서열 정보의 해독, 즉 genome sequencing의 핵심은 개인차 및 민족적 특성을 파악하거나 유전자 이상과 이상과 관련된 질환에서 염색체 이상을 포함한 선천성 원인의 규명과 당뇨병, 고혈압과 같은 복합질병의 유전자 결함을 찾기 위한 것이다.
  • microarrays: Genome-wide expression profiling at mRNA level 즉, 모든 유전자의 활동을 mRNA 수준에서 한꺼번에 측정 한다.

 

 

Applications of Microarray Techniques

  • Clustering
  • 유전자의 미지기능 예측
  • 분자적 진단: 질병의 상세분류, 조기 진단, 예후 예측

 

 

□ Personal Genome 시대의 도래

차세대 Sequencing(NGS)의 도래로 sequencing기술이 비약적으로 성장 하였다.

따라서 Personal Genome의 시대가 도래 하게 되었다.

2014년에는 100달러로 5분 내에 자신의 Genome을 분석할 수 있을 것이다.

 

Entertainment Genomics: Genom을 사업으로 확장한 사례다.

 

 

 

□ Data Analysis Challenges

 

Disk Capacity와 Genome Data를 비교해보면 Genome Data가 급격하게 늘어 남으로써 더 이상 Disk가 수용하지 못하는 상황이 발생 되었다.

따라서 cacer(암)과 같이 매우 다양한 Data를 분석하기 위해선

Computer Cloud 시스템이 필요하다.

 

 

 

프로젝트 매니지먼트

 

내용

PM Overview

PM Framework

Scheduling

Communication Management

Risk Management

Lessons Learned

 

 

□ PM Overview

 

프로젝트란? : 고유 제품, 서비스 또는 결과물을 창출하기 위해 한시적으로 투입하는 노력이다.

 

프로젝트의 3대 특징

 

Temporary(한시적)

Unique(독창적)

Progressive Elaboration(점진적 구체화)

 

 

프로젝트 매니지먼트란?: 프로젝트 관리란 프로젝트 요구사항을 충족시키기 위해 지식, 기술, 도구, 기법 등을 프로젝트 활동에 적용 하는 것이다.

 

 

프로젝트와 & 상품의 Lifecycle?

  1. 아이디어 도출( 각팀으로 부터 아이디어가 도출 된다.)

  2. 개발 단계 (이 단계에서 Project가 생성 된다.)

  3. Launch ( 이 단게에서 product가 생성 된다.)

 

정리하면 :  Ideas -> projects -> products

 

 

Project Management Standards?

  1. Project management Institute: 1969년 실립, 매년 25%씩 성장, 330,000맴버(2009년기준)
  2. Project managment Professionals(PMP): 매년 25% 성장
  3. ANSI/PMI 99-001-2004: 프로젝트 메니지먼트에대한 가이드 지식을 담고 있다. 이것은 IEEE에 프로젝트 메니지먼트 표준으로 받아들여 졌다.

 

자격증 : PMP(Project management Professionals) Certified가 있다.

 

 

□ PM Framework

 

Proejct Managment Insitute에서 발행한 책이 있다 그것이 바로 PMBOK Guide (3 Edtion)이다.

이책에는 일반적으로 어떻게해야 좋은 프로젝트 관리가 되는지에 대한 설명이 있다.

Generally recognized: 즉 정해신 시간내에 목표가치와 유용성을 달성하는 적용 가능한 방법을 기술하고 있는 것이다.

Good practice: 일반적으로 프로젝트 메니지먼트 도구를 다루는 방법에 대해서 설명하고 있다. 하지만 이런 도구들이 모든 프로젝트에 대해서 같은 방식으로 모두 다 사용할 수 있는 것은 아니다. 

 

결국, 이 가이드 북을 통해서 공통된 프로젝트 메니지먼트 기법을 전파 하려는게 핵심 의도인 것이다.

 

PM Knowlege Areas

 

Integration, Scope, Time, Cost, Quality, Human Resource, Communications, Risk, Procurement

 

시험에 나올 확률적기 때문에 PMBOK Guide (3 Edtion)책에 있는 상세한 내용은 생략 한다.

각자 ppt를 참조한다.

 

□ Scheduling

 

Porject Charter: 프로젝트 착수와 인적, 물적자원에 대한 자금지원을 공식화한 문서이다.

WBS: work breakedown structure: 각 작업을 최소단위로 쪼개서 작업의 리스트를 관리하는 기법이다.

Network Diagram: 프로젝트가 가지는 각 엑티비티에 대한 논리적인 관계를 나타낸다.

 

 

프로젝트 스케쥴링에 사용되는 유용한 용어

Critical Path

프로젝트 일정에서 가장 긴 경로를 말한다. 이것에 의해서 전체 프로젝트 기간이 결정 되어 진다.

 

Crashing

최소 원가 투입으로 최대 기간을 단축하는 기법을 말한다.

즉, 일정을 분석 할때 어떻게 해서든지 프로젝트의 전체 일정을 단축 시켜야 한다는 것이다.

그러기 위해서는 각 일정상의 활동들에 대해서 압축을 단행 해야한다.

또한 이러한 작업을 효율적으로 하기 위해서는 Critical Path를 명확히 파악해서 Critical한 활동들 부터 압축하는 것이 올바르다고 할 수 있다.

 

Fast Tracking

이것 또한 일정을 압축하기 위한 특별한 기술 이다.

즉, Network logic을 이용해서 어떤 작업이 중첩되어 있을 경우 그것을 해소 시키거나,

각 활동들의 종속성을 분석해서 병렬로 처리할 수 있는것은 병렬로 처리 한다.

 

 

□ Communication Management

 

  1. Commnucications Planning: requirements, Type of information, Responsiblility, Method, Frequency, Escalation
  2. Information Distribution: Reporting, Updates, Minutes, Project Documents, Lessons learned, etc
  3. Performance Reporting: Bar chart, Project server, Milesone preorts, Earned value, S-curves
  4. Manage Stakeholders: Objective clarification, Resolved issues, Change management, etc

 

International Project communication을 위해서는 아래의 수칙을 지켜주는 것이 좋다.

 

  1. Ground rule: set up conf. call. invitation
  2. Cultures: Who brings up issues?
  3. Relationships: Building vs Task Execution
  4. Laws
  5. Political Environment

 

 

Benefits of Project Server on Web. : 즉 Web을 통해서 Porejct 사항을 관리하면 관리자, 팀 맴버 모두에게 이익이 된다는 의미이다. (ppt에 자세한 porfit가 정리되어 있다.)

 

□ Risk Management

 

Risk : 예상치 못한 이벤트나 사황을 가리킨다. 만약 이러한 것들이 발생한다면,

그것은 프로젝트의 목표에 극정적 혹은 부정적인 영향을 미친다.

 

즉 위기 = 위험 + 기회

 

Risk Management의 절차

1) Risk management Planning

2) Risk Idnetification

3) Qualitative Risk Analysys (리스크의 성질을 분석 하는 것이다.)

가능성, 임팩트 등을 분석 한다.

 

4) Quantitative Risk Analsys (리크스의 양을 분석 하는 작업이다.)

Risk간의 관계성을 파악하기 위해서 분포와 모델링을 이용한다.

 

5) Risk Reposne Planning

6) Risk Monitoring and Contorol

 

 

□ Lessons Learned

 

프로젝트를 수행하면서 배움을 얻는다는 뜻이다.

 

Lessons learned라는 것은 결국 프로젝트들을 수행한것을 기록함으로서 배움을 얻는다는 것이다. 이것들은 Lessons Learned Knowledge base에 결국 들어가 쌓이게 된다.

 

Lessons Learned Knowledge Base : 이전 프로젝트 선정 과정의 의사결정과 이전 프로젝트의 성과, 두가지 모두에 관한 선례 정보와 교휸이 들어 있는 저장소.

 

그러닌까 이전 프로젝트를 통해 어떤 문제를 들을 극복 했을 것이다. 이러한 극복 사례들을 모아 놓은 것을 말한다.

 

+ Recent posts