2014 - nshc.net · 게임 보안 동향 g-star 2014 국제 게임 박람회 24 모바일 백신의...

64
1

Upload: others

Post on 01-Jan-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 2014 - nshc.net · 게임 보안 동향 g-star 2014 국제 게임 박람회 24 모바일 백신의 새로운 강자 droid-x 3.0, av-test 글로벌 인증 획득! 26 덱스가드 개발자

1

Page 2: 2014 - nshc.net · 게임 보안 동향 g-star 2014 국제 게임 박람회 24 모바일 백신의 새로운 강자 droid-x 3.0, av-test 글로벌 인증 획득! 26 덱스가드 개발자

2

2014DECEMBER

모델 솔루션사업본부 정소연 / 포토그래퍼 커뮤니케이션사업부 성준영 / 장소협찬 카페 501Cover Story

Page 3: 2014 - nshc.net · 게임 보안 동향 g-star 2014 국제 게임 박람회 24 모바일 백신의 새로운 강자 droid-x 3.0, av-test 글로벌 인증 획득! 26 덱스가드 개발자

3

Special Interview

Red Alert

Security Trend

Security Solution

Game Security

Cryptography

About NSHC Culture

People

Conference

Award

무더운 여름을 대처하는 NSHC만의 방법썸머라이프

04

새 술은 새 부대에, 새 보안은 NSHC에SAFE SQUARE 2014 새보안운동

14

취업하고 싶은 기업에 이어경기도 유망 중소기업에 선정

20

모바일게임안티디버깅의 중요성

21

게임 보안 동향G-Star 2014 국제 게임 박람회

24

모바일 백신의 새로운 강자Droid-X 3.0, AV-TEST 글로벌 인증 획득!

26

덱스가드 개발자 인터뷰난독화의 본고장 벨기에에 가다!

32

RED ALERT 팀이 정리하는2014 사이버 사고 동향

34

아시아 최대 규모 보안 컨퍼런스 HITBRED ALERT팀 본선진출

38

알기쉬운개인정보보호법 개정안 정리

40

일본 2014JpCert 보고 (5월~11월)

44

블록 암호 LEA 구현 경진 대회 우수상 입상NSHC 암호 기술 다시 한 번 인정 받다

48

차례

49 "특집" RSA 암호 해독RSA 암호에 대한 NFS 공격법

06 가족은 우리의 원동력2014 패밀리데이

08 꽃보다 개발개발팀을 소개합니다

Page 4: 2014 - nshc.net · 게임 보안 동향 g-star 2014 국제 게임 박람회 24 모바일 백신의 새로운 강자 droid-x 3.0, av-test 글로벌 인증 획득! 26 덱스가드 개발자

4

물총으로 즐기는 서바이벌 게임!

두 팀으로 나누어 각 팀에 한명씩 타겟을 지정한다. 작전을 세워 아군 타겟을 보호하고 적군 타겟의 표적지를 많이 적시는 팀이 승리하는 간단한 룰이 주어졌다. 개인별로 물이 가득 담긴 쌍권총과 물풍선 폭탄이 주어졌고 게임의 시작을 알리는 싸이렌 소리와 함께 N스퀘어는 아비규환이 되었다. 게임은 머지않아 종료되었지만 물총 싸움의 매력에 빠진 NSHC인들은 해가 질 때까지 계속 서로를 향해 물총을 겨누었다는 후문이다.

열은 열로 다스린다!

더위를 잊게 해주는 매운 떡볶이를 함께 먹는 이벤트를 진행했다.덜 매운 떡볶이와 아주 매운 떡볶이를 무작위로 섞어놓고 조별로 먹었다.미니 게임을 통해 음료수를 획득할 수 있고, 게임에서 탈락한 조는 생수로 얼얼한 입안을 달래야만 했다. 직원들의 손 부채질과 발을 동동 구르는 모습을 볼 수 있었다. 떡볶이의 매운 맛 때문에 되려 땀 범벅이 되었지만 이를 보약삼아 우리는 올 여름을 잘 이겨낸 것이 아닐까.

무더위를 식혀줄 시원하면서 맛있는 첫번째 이벤트!

더운 여름! 점심식사를 마치고 힘들어하는 직원들을 위해 수박 빨리 먹기 대회를 개최하였다. 첫번째로 진행된 이벤트라 많은 인원이 기대감을 가지고 모였다. 농수산직판장에서 싱싱하고 묵직한 수박을 직접 공수해와 먹기 좋은 사이즈로 잘라 쟁반에 담았다. 참가자들의 승부욕이 발동했는지 얼굴에 수박물 범벅이 되기도 하고, 사래가 걸려 수박을 모조리 뿜는 재미있는 광경이 연출되었다. 1등에게는 맛좋은 왕수박 한통이 상품으로 주어졌다.

Summer Life

" "뜨거운 태양아래 컴퓨터 앞에서 일하는 NSHC직원들을 위한 이윤승 부사장의 반짝이는 아이디어로 진행된 썸머라이프.사내에서 '시원한 여름'을 보낼 수 있는 아이디어 공모에서 선정된 6가지 의견으로 게릴라 이벤트를 진행하였다.

무더운 여름을 대처하는 NSHC만의 방법

썸머라이프

수박 빨리 먹기 대회

이열치열

물총 싸움

Page 5: 2014 - nshc.net · 게임 보안 동향 g-star 2014 국제 게임 박람회 24 모바일 백신의 새로운 강자 droid-x 3.0, av-test 글로벌 인증 획득! 26 덱스가드 개발자

5

About NSHC - People

Editor 커뮤니케이션사업부 / 김은선

하루쯤은 시원한 야외근무~

더위를 이기는 가장 확실한 방법!

사내 이벤트를 즐기지 못한 직원들을 위한 깜짝 이벤트!

냉방비 절약차원의 일환으로 각 부서별로 하루 동안의 자율 야외근무 시간이 허락되었다. A부서는 호수공원, B부서는 카페거리, C부서는 미술관, D부서는 찜질방 기타 등등 부서별로 자유로운 분위기 가운데 업무에 임했고, 장소에 따라 특별한 순서를 통해 팀웍을 다질 수 있는 의미있는 시간이었다.

공포영화를 보는 건 가장 저렴하면서도 효과적인 '가성비'가 좋은 피서법. 등골이 오싹해지는 영화를 선정하고, 영화관에서 빠질 수 없는 팝콘과 음료를 준비하였다. 커튼으로 창문을 가리고 제법 영화관 같이 어두운 분위기를 조성했다. 모든 직원이 한자리에 모이고 영화가 시작되었다. 영화 중간중간 소리 지르는 사람, 눈을 가리고 보는 사람 등 재미있는 광경을 볼 수 있었던 시간이었다.

무더운 날씨에 수개월간 프로젝트를 위해 지방에서 고군분투하는 컨설팅팀을 위해 우리는 타지에서 가장 필요할 것 같은 생활필수품을 정리하여 기프트박스에 넣어 전달하였다. 먼 길을 예고없이 찾아가 선물을 전달한 탓에 모두 놀란 기색이 영역했다. 커피포트부터 컵라면, 커피믹스, 햇반, 비상약품 등 흡사 구호물품 꾸러미가 되었지만 기프트박스를 받은 직원들의 얼굴에는 미소가 번졌다. 전달하는 사람의 마음도 함께 풍성해지는 순간이었다.

야외근무

공포영화

기프트박스

Page 6: 2014 - nshc.net · 게임 보안 동향 g-star 2014 국제 게임 박람회 24 모바일 백신의 새로운 강자 droid-x 3.0, av-test 글로벌 인증 획득! 26 덱스가드 개발자

6

" "가족과 친구들을 초대해 함께 하는 시간을 갖는 NSHC만의 특별한 행사가 있다.

가족은 우리의 원동력

2014 패밀리데이

2014 Family Day

3회째 맞이한 패밀리 데이, 지난 10월 25일 N스퀘어 옥상에서 70여명의 직원 가족, 친구들이 한자리에 모여 맛있는 식사와 이벤트 그리고 회사의 비전에 대하여 나누었다. 나와 함께 일하는 동료의 가족과 친구는 어떤 사람들일까? 동료의 가족, 친구를 만나 함께 맛있는 식사를 하고 이야기를 나누다 보니 한층 더 가까운 사이가 되어있음을 느꼈다. “일보다 가족이 우선이 되는 기업, 개개인의 꿈이 되어주는 기업이 되겠습니다.”라고 이윤승 부사장은 여타 기업과는 차별화된 핵심가치와 비전을 전했다. 화려하진 않지만, 편안하고 아늑한 분위기에서 가족들과의 식사 그리고 소소한 이벤트들은 따뜻한 겨울을 날 수 있을 만큼 온 가족의 마음을 포근하게 감싸주었다. 포토존을 준비해 가족과의 추억이 담긴 사진을 남길 수 있도록 하였고, 소망나무를 준비해 하고 싶은 이야기를 마음껏 적을 수 있도록 하였다.

패밀리데이의 시작

2012년, NSHC가 성장해 오면서 "그 원동력은 무엇일까?" 고민을 하기 시작했다. 그 고민의 답은 바로 “가족”이었다. 그해 11월 첫 번째 패밀리 데이를 시작하게 되었다.

Page 7: 2014 - nshc.net · 게임 보안 동향 g-star 2014 국제 게임 박람회 24 모바일 백신의 새로운 강자 droid-x 3.0, av-test 글로벌 인증 획득! 26 덱스가드 개발자

7

About NSHC - Culture

Editor 커뮤니케이션사업부 / 김민우

‘다이어트 -10킬로그램’, ‘아프지 않고 건강하게’, ‘가족여행 보내주세요’, ‘고급세단 타고 싶다’,‘친구의 칼퇴근을 소망합니다’, ‘대박 나세요’, ‘결혼하게 월급 올려주세요’ 등 NSHC 가족들의 마음속 이야기는 모두를 웃음짓게 하였다. 또한 장기 근속자를 위한 격려의 시간을 가졌다.매년 3년, 5년, 10년 등 장기 근속자를 위해 선물을 준비하는데 이번에는 3년 장기근속 직원에게 해외여행상품권을 증정하였다. 이어 <2014 경기도 유망 중소기업> 선정을 기념하는 현판식을 마지막으로 모든 패밀리데이 행사가 마무리 되었다. 가족이 즐거워하는 회사라는 수식어가 전혀 어색하지 않은 NSHC는 이번 패밀리데이를 통해 소망나무의 소원들이 이루어 질 수 있도록 도전을 멈추지 않고 계속 앞으로 나아갈 것이다.

인사말을 전하는 이윤승 부사장

가족들의 소원쪽지를 걸어놓은 소망나무

올해로 3회를 맞이한 NSHC 패밀리데이

장기 근속자 포상

<2014 경기도 유망 중소기업> 현판식

Page 8: 2014 - nshc.net · 게임 보안 동향 g-star 2014 국제 게임 박람회 24 모바일 백신의 새로운 강자 droid-x 3.0, av-test 글로벌 인증 획득! 26 덱스가드 개발자

8

꽃보다 개발

개발팀을 소개합니다!

Survey

개발자의 평균 나이는 과연? (믿지 않지만 혹시 모르니) 혈액형은?

공대를 뛰어넘는 남녀비율이라고 들었는데, 진실은?

남자 여자 요즘들어 나의 성 정체성이

혼란스럽다.(?)

이찬진, 안철수, 빌 게이츠, 마크 주커버그 등 컴퓨터 공학계에 유명한 인사들의 이름이 언론에서 자주 언급되면서 개발자라는 단어가 우리에게 친숙한 단어가 되었다. 하지만 아직까지도 개발자라고 하면 실리콘 밸리가 먼저 떠오른다. 주위를 둘러보면 국내에도 개발자가 상당히 많은데 말이다.

필자는 가까운 곳에서 그들을 찾아보기로 했다. 이번 호에서는 NSHC 개발자에게 다양한 질문을 했다. NSHC 솔루션 사업부에는 2014년 12월 현재 총 00명의 개발자(혹은 엔지니어)들이 있으며, 모바일 백신, 가상 키보드, 앱 위변조 방지, 더블 난독화, 게임 안티 해킹 및 OTP 등의 보안 제품을 만들고 있다.

83% 11% 6%

20대

44%

30대

56%

O6%

A39%

B33%

AB22%

- 눈물 나는 현실이다.

- O형은 개발자랑 본래 잘 안맞는가봉가...

본 설문은 20명의 매우 작은 범주의 사람을 대상으로 진행되었으므로, 일반화의 오류 (Generalization Error, 부분을 전체로 착각하여 범하는 생각의 오류)에 빠지지 않으시길 바랍니다.

Page 9: 2014 - nshc.net · 게임 보안 동향 g-star 2014 국제 게임 박람회 24 모바일 백신의 새로운 강자 droid-x 3.0, av-test 글로벌 인증 획득! 26 덱스가드 개발자

9

About NSHC - People

SECTION 1 개발자에게 연애를 묻다.

애인 / 남편 / 아내가 있나요? 결혼에 성공한 비결은? (or 결혼을 못한 개발자들에게 줄 수 있는 팁이 있다면?)

개발자 남친(남편) 이래서 좋다! 개발자 여친(아내) 이래서 좋다!

늦은 밤까지 개발하느라 수고하는 전국의 개발자님들을 위해 준비했다. 개발자의 연애 편!NSHC 에는 결혼에 골인한 개발자들이 은근 많은 편이다.

그들에게 물어보자!

YES!61%

NO!39%

다 거기서 거기!그냥 대충 고르세요~

1. 스마트 시대에 스마트하게 살수 있는 도움을 줍니다. 2. 최신 정보를 잘 찾아 줍니다. 3. 이렇게 적을 말이 없다니...OTL.....

책상 앞에 앉아서 개발하고 있는 사람이 여자라면 뭔가 범접할 수 없을 것 같은 아우라를 볼 수 있다.

분석을 잘해줌, 다양한 정보를 알려줌, 말이 많지 않음, 다른 여자안 봄(아니 못 봄)

야근이 많아서 식사비를 많이 아낄 수 있습니다.

"남자가 컴퓨터도 못 고쳐?" 란 말로 상처 주지 않습니다. 기계를 못 만져도 이해해줍니다.(컴퓨터공학과 교수님들도 컴퓨터 고장나면 기사 부릅니다..)

문제 해결 방법이 나름 정해진 로직에 따라 논리적이다. 본인이 야근을 많이 하므로, 상대방의 야근에 관대하다. 가끔 출장등으로 집을 비운다.. (남편에게는 자유??)

생각을 바꿔라! 연애의 끝은 결혼이라는 생각에서 벗어나야 한다. 그것은 결국 자신의 한계를 세상이 주는 대로 설정하는 것. 연애는 인간에 대해 탐구하기 가장 좋은 기회이다.

Page 10: 2014 - nshc.net · 게임 보안 동향 g-star 2014 국제 게임 박람회 24 모바일 백신의 새로운 강자 droid-x 3.0, av-test 글로벌 인증 획득! 26 덱스가드 개발자

10

Survey

SECTION 2 진실 혹은 거짓?

개발자에게는 여러가지 “썰(말을 뜻하는 설(說)에서 유래한 신조어)”이 있다. 개발자 떡실신 시리즈, 개발자 주상욱 등등 한국인 개발자에 대한 삶은 다앙한 형태의 이야기로 가공되어 대중들 사이에 퍼지고 있다.

그 중 몇 가지에 대해서 살펴보도록 하자.

나는 개발하다 막힐 때 치킨집 사장님께 물어본 적이

개발자에게 치킨이란?

나와 어울릴 것 같은 모습은?1 . 닭튀김 수렴공식

개발자는 퇴직 후 치킨집을 차린다는 썰이 있다. 개발하다 막힐 때 닭집에 간다면 사장님이 코딩을 알려준다고도 한다.

89%11%

있다는게 놀라움!! 이 썰은 기정 사실이였군요.

빙수의 팥과도 같다! 운명♥야식의 동반자, 최후의 보루?

코더

프로그래머전자공학

기계공학

물리학 생물학

화학

수학아키텍트

연구소장

닭집사장!

한국 학생들의 진로는 치킨집, 아사 혹은 과로사라는 웃픈 이야기가 존재한다. (예체능 계가 없는 것은 함정)

"치킨을 시키고 있다."

78%"치킨을 튀기고 있다."

16%

"치킨을 배달하고 있다."

6%

많은 이공계생, 특히 프로그래머는 결국 닭집 사장이 된다고 한다...

Page 11: 2014 - nshc.net · 게임 보안 동향 g-star 2014 국제 게임 박람회 24 모바일 백신의 새로운 강자 droid-x 3.0, av-test 글로벌 인증 획득! 26 덱스가드 개발자

11

About NSHC - People

한국인에게 야근은 일상적인 일이다. 오죽하면 외국인이 서울의 야경을 보며 감탄하는데, ‘누군가가 이것은 야근의 불빛이야’ 라고 소개했다는 이야기가 나돌겠는가. 개발자에게도 예외는 없다. 아니 오히려 심하다는 평이 자자하다.

그래서 NSHC 개발자들의 삶은 어떠한지 보기로 했다.

평균 야근 빈도수는?

집보다 회사가 더 편하다?

다음 중 인터넷 속도가 빠른 곳은?

새벽까지 야근 후 택시 아저씨한테서 “개발자냐”라는 질문을 받은 적이

2. 야근

회사가 편한거같아; 그래도 집이 짱이지!

39% 61%

회사 집

58% 42%

84%16%

1위. 일주일에 두, 세번 정도 82%

공동2위. 야근이 뭐에요 (안함) 6%

공동2위. 주말 근무가 없는게 어디에요.

(거의 매일) 6%

공동2위. 주말 근무 안 해봤으면,

말을 하지 마세요(달인) 6%

Page 12: 2014 - nshc.net · 게임 보안 동향 g-star 2014 국제 게임 박람회 24 모바일 백신의 새로운 강자 droid-x 3.0, av-test 글로벌 인증 획득! 26 덱스가드 개발자

12

STEVE JOBS BILL GATES

Survey

SECTION 3 막무가내 설문

vs애플이 좋아서

철학있는 리더

제품의 완성도에 대한

집착을 많이 해서

오래 살아서

스티브 잡스는 과거형

매력적이다. 매력적인덴

이유가 없다.

기타 의견 : 위 2가지를 안하는 여자, 와이프, 몸매, 얼굴을 반만 가린 여자 등

39% 61%

STEVE JOBS vs BILL GATES 다음 중 섹시한 여성상을 고른다면?

나는 검색할 때 _______를(을) 더 자주 사용한다.

만일 래리 페이지(구글 CEO)나 마크 주커버그(페이스북 CEO)가 함께 일하자고 말한다면 나는 ?

39%61%

당연히영어를 못해서 그냥

기타74%

개발하는

여자

6%

롤하는 여자

22%

1위. 구글 78%

2위. 네이버 21%

3위. 기타 1%

-순위-

Page 13: 2014 - nshc.net · 게임 보안 동향 g-star 2014 국제 게임 박람회 24 모바일 백신의 새로운 강자 droid-x 3.0, av-test 글로벌 인증 획득! 26 덱스가드 개발자

13

About NSHC - People

영어는 _______가 더 잘하는 것 같다.

야근할 때 가장 효과적인 음료는?

1위. 구글 번역기 83%

2위. Bing 번역기 11%

3위. 나 (내가 번역하는게 최고지!) 6%

이밖에도 개발자에 대한 이야기는 무수히 많다. 시간이 된다면 인터넷에 ‘개발자 주상욱’이나 ‘개발자 떡실신’을 검색해봐도 좋겠다. 다른 세계라고 느껴졌을 수도 있는 개발자의 세계를 엿볼 수 있도록 도와준 NSHC 솔루션사업본부에게 감사의 인사를 전한다.

Editor 커뮤니케이션사업부 / 이보라

술 (맥주) 11%

에너지 드링크 11%

피로회복제 11%

탄산음료 22%

커피 44%

Page 14: 2014 - nshc.net · 게임 보안 동향 g-star 2014 국제 게임 박람회 24 모바일 백신의 새로운 강자 droid-x 3.0, av-test 글로벌 인증 획득! 26 덱스가드 개발자

14

새 술은 새 부대에, 새 보안은 NSHC에

SAFE SQUARE 2014, 새보안운동

Safe Square 2014

" "바야흐로 2014년 7월 2일, 서울 양재동에서 때 아닌 움직임이 일어났다. 그 이름하여 ‘새보안운동’! 심지어 관계자들이 입은 초록색 셔츠와 모자는 1970년대 새마을운동을 연상케했다. 사실 이 행사는 Safe Square 2014 컨퍼런스로서, NSHC가 1년에 한 번씩 VIP고객과 정보보안 관계자들을 초대해 신제품 및 신기술을 소개하는 자리이다. 올 해도 무려 6가지 세미나와 중간중간의 크고 작은 이벤트들로 프로그램이 구성되었다는데… 이번에는 어떠한 제품과 신기술들이 소개가 되었을까?

01. 게임해킹 참 쉬워요 | 강동우 연구원

게임 해킹과 치팅 앱 등이 게임 제조자에게는 치명적이라는 것을 아시나요? 게임하는 사람들이 별 생각 없이 부당한 방법으로 레벨업을 하고 캐쉬를 얻으려고 하지만, 이로 인해 게임업체가 받는 경제적 손해가 극심하다고 합니다. 게다가 해킹을 해 비슷한 게임을 만들어버려 저작권 침해까지 받는지라 울상이라고요.

NSHC의 강동우 연구원은 가장 빈번하게 일어난다는 모바일 해킹법 두 가지를 소개했습니다. 첫째는 메모리 변조로서, 캐쉬 데이터를 가진 메모리 주소를 찾아 데이터를 변조하여 공짜로 캐쉬를 얻는 법입니다. 두 번째는 인 앱 결제를 성공시켜 유료 콘텐츠를 무료로

사용하는 것으로서, 가상의 카드로 결제를 한 뒤 환급받는 법이라고 하네요. 강 연구원은 참석자들 앞에서 두 가지 해킹 방법을 직접 시연하였는데요.키보드를 몇 번 두드리면 바로 해킹이 되는 걸 보니, 게임 제조사들이 골치아파할 만 하네요.

02 . 타원곡선 암호를 넘어 | 윤기순(이학박사, Université de Caen Basse-Normandie)

금융 어플리케이션을 사용할 때 우리가 입력하는 비밀번호를 안전하게 보호하기 위해서 암호화를 하는 등 보안회사들은 많은 노력을 기울입니다. 이를 위해 관련 기술에 대한 연구도 활발히 진행하고 있고요. 그 중심에 암호화 알고리즘이 있습니다.아직까지 모바일 시장에 소개된 많은 보안 제품들은 PC 기반 컴퓨팅 환경에 적합한 RSA 알고리즘을 사용하고 있는데요.

“새 술은 새 부대에 담으라”는 이야기가 있다. 날마다 새로워지고 있는 정보보안 시장에도 그에 맞는 패러다임이 필요하다.

이에 NSHC가 작은 운동을 시작했는데 다음과 같다.

알고계셨나요?

NSHC가 이런 게임사들의 고민을 해결하기 위해 나섰다. 2013년 게임사에 처음으로 DX-Shield라는 안티 해킹 솔루션을 선보였는데, 이 제품은 이미 게임빌과 컴투스 등의 게임 개발사 및 공급사에서 사용되고 있다.

Page 15: 2014 - nshc.net · 게임 보안 동향 g-star 2014 국제 게임 박람회 24 모바일 백신의 새로운 강자 droid-x 3.0, av-test 글로벌 인증 획득! 26 덱스가드 개발자

15

About NSHC - Conference

NSHC 암호 기술팀이 독자적으로 개발하여 KCMVP인증을 필한 암호모듈 nSafer는 RSA뿐 아니라 고속 타원곡선 암호화 (Elliptic Curve Cryptography, 이하 ECC) 모듈을 탑재하고 있죠. 그래서 PC뿐 아니라 특히 모바일 및 저사양 단말 환경에도 최적화된 솔루션을 제공하고 있습니다.

그렇다면 ECC가 왜 안전하고 효율적인 걸까요? 윤기순 팀장의 설명은 간단합니다. ECC의 암호학적 안전성이 RSA보다 더 크고 그래서 훨씬 더 짧은 키를 사용할 수 있기 때문에 효율적인 연산이 가능하다는 것이죠.

이렇게 효율적인 ECC를 이용하면 RSA보다 훨씬 짧은 시간 안에 키 생성 및 암복호화 연산이 가능해지기 때문에, 스마트폰, 스마트 카드, PC, 결제 단말 등

다양한 설비들을 이용하는 금융, 공공 민간 시스템 보안에 활용되고 있습니다. ECC는 국제 금융 보안 표준(ANSI X9) 및 미 국방 표준(FIPS 186-2)에서도 그 사용이 권고되고 있고 국내에서도 KCMVP 인증에서 그 사용법을 명시하고 있습니다.

주목해야 할 것은 ECC의 안전성인데요, 전 세계적으로 큰 이슈가 되었던 비트코인에서도 최대한 긴 기간동안 안전성을 보장 받을 수 있도록 256 비트 ECC를 사용하고 있죠. 페어링 암호는 타원곡선의 발전된 형태인 차세대 암호체계로서 인증서가 필요 없는 암호화나 짧은 전자서명 등에 이용되고 있고, 선진국들에 의해 다양한 응용 프로젝트가 수행되고 있다고 합니다. 이 분야에서 자사 암호기술팀 윤기순 팀장의 연구결과가 인정받아 국제 저널에 게재 되었는데요. 앞으로 더더욱 많은 연구와 발전이 기대되네요.

세이프 스퀘어에 참석한 VIP고객들

Page 16: 2014 - nshc.net · 게임 보안 동향 g-star 2014 국제 게임 박람회 24 모바일 백신의 새로운 강자 droid-x 3.0, av-test 글로벌 인증 획득! 26 덱스가드 개발자

16

Safe Square 2014

03. 별난 안드로이드 백신 | 이윤승 부사장

‘컴퓨터 백신’하면 제일 먼저 떠오르는 것은 어떤 제품들이 있을까요? V3, 알약, Norton 정도일까요? ‘모바일 백신’은요? 그럼 이제부터는 Droid-X 3.0을 주저없이 외쳐주세요. Droid-X 3.0은 악성코드 검색 엔진과 변종 악성코드 대응 엔진이 결합된 듀얼 엔진을 사용하기 때문에 탐지율 뿐만 아니라 속도도 굉장히 빠르거든요.

NSHC 이윤승 부사장은 새로이 업그레이드 된 안드로이드 백신 Droid-X 3.0을 소개하며 “대부분의 모바일 백신 업체가 개인 사용자를 위한 B2C 시장에 주력할 때, NSHC는 B2B 시장영역에 꾸준히 관심을 가지고 개발해 왔다”고 했습니다. 개인 사용자들이 주로 이용하는 기존 클라우드 백신에는 현저히 느린 검색 속도라는 한계가 있어 기업에서 사용하기에 부적합하다는 거죠.

백신이 다 거기서 거기일 것 같다고요? 그래서 현장에서 실제 시연도 했답니다. 클라우드 기반의 외산 제품, 국산 제품, 그리고 Droid-X 3,0 을 대상으로 악성코드 및 변종 악성코드에 대한 탐지율과 검색속도를 현장에서 비교해보았습니다. 결과는? 모 외산 백신은 2분이 넘었는데도 검사는 40%에 그쳤습니다. 너무 오래 걸려서 시연을 중단해버렸습니다. 통상 외산 백신도 스캔하는데만 1분이 넘게 걸렸죠. 그나마 기존 국내 백신들은 속도는 1분 안에 끝났지만, 탐지율이 다소 떨어졌습니다. 반면 Droid-X 3.0 백신은 24초안에 모든 악성코드를 탐지했다는 사실!

이와 같은 시연은 일본에서 먼저 이루어졌다고 합니다. “국내보다 해외에서 더 인정받고 있는 백신”이라며 일본에서도 시연 결과에 놀라워했다는 후문이 있습니다. 현재 일본 13개 금융권에서 NSHC 모바일 백신을 사용하는 등 일본 시장에서 1위를 달리고 있으며, 향후 더욱 늘어날 전망이라고 하네요. Droid-X 3.0과 함께라면 핸드폰 보안, 정말 문제 없겠죠?

Droid-X 3.0 시연 중인 이윤승 부사장

게임 해킹 시연 중인 강동우 연구원

NSHC의 꽃미남 스태프들

Page 17: 2014 - nshc.net · 게임 보안 동향 g-star 2014 국제 게임 박람회 24 모바일 백신의 새로운 강자 droid-x 3.0, av-test 글로벌 인증 획득! 26 덱스가드 개발자

17

About NSHC - Conference

04. 별에서 온 USB 보안 | 이원희 팀장

드라마를 보다 보면 악역이 회사 기밀 자료를 외부에 유출하는 광경을 빈번하게 볼 수 있습니다. 드라마에서 나오는 일이라면 현실에서도 안그럴리 없겠지요. 국가정보원 산업기밀보호센터에서 조사한 ‘내부자료 유출 실태조사’에 따르면, 무단 보관 형태 기술 자료 유출 경로의 80%가 전, 현직 직원이라고 합니다.

그래서 이원희 팀장은 이러한 피해를 막을 수 있는 USB 보안 솔루션을 소개했습니다. 바로, 지정된 PC에서만 사용할 수 있도록 하여 USB가 유출되어도 외부에서 사용할 수 없게 만드는 방법입니다. PC에 가벼운 프로그램 하나만 설치하면 USB 사용 통제가 가능하다고 합니다. 이 기술은 현재 QA과정에 있어 곧 제품으로 만날 수 있을 것 같네요.

05. 소스코드 + 바이너리 더블 난독화 | 윤선희 부장

구글 앱 스토어에는 25불만 내면 누구나 제한 없이 어플리케이션을 만들어 올릴 수 있습니다. 하지만 그 이면에는 등록된 전체 앱의 1/4이 기존 것을 그대로 베낀다는 문제가 있습니다. 정성들여 만들어놓은 내 작품을 누군가가 그대로 베끼고서는 자기 작품인 마냥 행세하는 격이지요. 게다가 그걸로 돈벌이를 한다면 속이 더더욱 부글부글 끓겠죠. 이러한 피해를 줄이기 위해서 난독화(프로그램 소스코드를 읽기 어렵게 만드는 기술)라는 것을 자주 사용합니다.

난독화에는 두 가지 종류가 있다고 합니다. 소스코드 자체를 읽기 어렵게 만드는 소스코드 난독화, 그리고 선물 포장하듯 어플리케이션을 감싸는 바이너리 난독화. 보통은 둘 중 하나만을 적용하는 경우가 많은데요, NSHC는 세계 최초로 (!!!) 이 둘을 하나로 모았습니다. 그리하여 탄생한 제품의 이름은 바로 “앱을 보호해듀오~” 듀오 쉴드!

사실 Duo Shield 출시 전 NSHC는 벨기에 SaiKoa사의 난독화 솔루션 DexGuard의 공식 리셀러였습니다. 2013년 처음 만난 두 회사가 함께 협력하면서 보안성을 높이기 위해 다방면으로 고민해 오던 중에, 소스코드 난독화 기술과 바이너리 난독화 기술에는 각각의 장단점이 있음을 발견했는데요. 이 두 기술을 합치면 합치면 상호 보안적으로 작용해 시너지 효과를 낼 수 있다는 점에 동의했다고 합니다.

그래서 SaiKoa사의 DexGuard에 NSHC가 자체 개발한 바이너리 난독화를 합친 것이죠. 전 세계 각지에 있는 개발자님들에게는 더더욱 반가운 소식이 아닐까 합니다. 서로를 적으로 만들어 경쟁하기보다는 함께 힘을 합쳐 더 나은 미래를 만들어가는 두 회사에게 박수를 보내고 싶습니다.

고객들을 맞이하는 안내데스크

휴식 시간에는 야외에서 다양한 이벤트가 펼쳐졌다.

축배 제의를 하는 의리맨 한정훈 부장

고객들의 이목을 사로잡은 USB 보안

Page 18: 2014 - nshc.net · 게임 보안 동향 g-star 2014 국제 게임 박람회 24 모바일 백신의 새로운 강자 droid-x 3.0, av-test 글로벌 인증 획득! 26 덱스가드 개발자

18

Editor 커뮤니케이션사업부 / 이보라

Safe Square 2014

NSHC는 우리나라 금융사들과 게임사들이 글로벌하게 성장하는데 이바지하고자 매년 Safe Square 컨퍼런스를 진행한다고 한다. VIP고객들에게 새로운 보안기술을 소개, 공유하며 ‘새보안운동’이란 이름답게 보안업계에 새로운 패러다임을 열어가고 있다. 앞으로도 NSHC가 어떤 미래를 바라보며 어떤 것들을 연구하고 준비해 나가는지 함께 지켜보면 어떨까?

Page 19: 2014 - nshc.net · 게임 보안 동향 g-star 2014 국제 게임 박람회 24 모바일 백신의 새로운 강자 droid-x 3.0, av-test 글로벌 인증 획득! 26 덱스가드 개발자

19

About NSHC - Conference

Page 20: 2014 - nshc.net · 게임 보안 동향 g-star 2014 국제 게임 박람회 24 모바일 백신의 새로운 강자 droid-x 3.0, av-test 글로벌 인증 획득! 26 덱스가드 개발자

20

Certification

" "NSHC가 10월 8일 경기도 유망 중소기업으로 선정되었다.

경기도 유망 중소기업 인증제도는 기업 경쟁력 제고와 지역경제 발전을 위해 노력하는 우수 기업을 발굴‧인증하는 제도로, 기관에서 추천받은 844개 기업을 대상으로 3개월간의 심사를 거쳐 최종 251개사가 선정되었다.

인증을 받으면 5년간 경기도 브랜드마크 사용권을 부여받으며 경기도 중소기업 지원시책 신청 시 가산점 부여 등 다양한 혜택을 받을 수 있다.

NSHC는 작년에도 <취업하고 싶은기업 2013>에 선정된 바 있다.

이날 수여식에서 박동은 이사는 “우수한 기업으로 평가 받을 때 마다 NSHC의 사회적 책임감이 더욱더 커지는 것 같다. 앞으로 더 열심히 하라는 말로 알고 지역경제를 책임지는 기업이 되기 위해 더욱더 힘쓰겠다.”고 말했다.

Editor 커뮤니케이션사업부 / 성준영

취업하고 싶은 기업에 이어

경기도 유망 중소기업에 선정

2014 경기도 유망중소기업 인증서 수여식

Page 21: 2014 - nshc.net · 게임 보안 동향 g-star 2014 국제 게임 박람회 24 모바일 백신의 새로운 강자 droid-x 3.0, av-test 글로벌 인증 획득! 26 덱스가드 개발자

21

모바일게임

안티디버깅의 중요성

현재까지 국내 게임 시장을 지배하고 있는 것은 PC 온라인 게임이다.하지만, 2012년 7월 '카카오 게임하기'가 등장하면서부터 모바일게임이 급부상하고 있다.지난해 온라인 게임은 전체에서 시장 점유율이 56.1%나 차지하고 있고, 모바일게임은 23.9%에 불과하다. 단순히 현재의 수치만을 보면 현재 게임 시장의 흐름을 파악하기 쉽지 않다.온라인 게임 규모는 19.6% 감소한 반면 모바일은 전년 대비 190.6% 증가했기 때문이다.

2014 대한민국 게임 대상은 모바일게임 '블레이드'가 차지했다. 이 시상식이 열아홉 차례 진행되는 동안모바일게임이 대상을 받은 것은 이번이 처음이다. 점차 모바일게임의 시대가 다가오고 있는 것이다.

이렇듯 모바일게임 시대가 열리면서 해킹 위협 또한 PC에서 모바일로 점차 확산되고 있는 것에 비해 게임 업체들은 모바일게임에 대한 보안 의식이 높지 못해 거듭되는 해킹시도에 피해를 당하고 있다.

자료 출처 - 한국콘텐츠진흥원

Game Security

Page 22: 2014 - nshc.net · 게임 보안 동향 g-star 2014 국제 게임 박람회 24 모바일 백신의 새로운 강자 droid-x 3.0, av-test 글로벌 인증 획득! 26 덱스가드 개발자

22

Anti Debugging

이뿐만 아니라, 게임 소스코드와 적용된 보안 솔루션의 코드 또한 뽑아낼 수 있으며, 이를 통해서 언제든 우회 당할 위험성이 존재하고 피해를 받을 수 있다.

즉, 그 어떠한 보안 기능을 적용한다 하더라도 안티디버깅이 적용되어 있지 않다면 보안적으로 큰 취약점을 가지고 있는 것이고 잠재적인 보안피해의 가능성을 가지고 있다는 것이다.

여러 가지의 해킹 위협이 존재하지만, 이번 글에서는 그 위험성에 비해 중요성을 잘 알고 있지 않는 안티디버깅의 중요성에 대해서 다루고자 한다.

현재 게임 보안을 위해서 난독화 및 암호화, 무결성 검증, 해킹 툴 탐지 및 차단, VM Detection, 안티 디컴파일/컴파일 등 여러 보안 기능이 존재하지만, 이 모든 것들이 적용되어 있더라도 안티디버깅이 적용되어 있지 않다면 모든 것이 무용지물이 될 수 있다.

여러 해킹 공격들의 대다수 공격들은 동적 디버깅을 통한 공격으로 재현이 가능하다.

동적디버깅(IDA 화면)

우회공격

Page 23: 2014 - nshc.net · 게임 보안 동향 g-star 2014 국제 게임 박람회 24 모바일 백신의 새로운 강자 droid-x 3.0, av-test 글로벌 인증 획득! 26 덱스가드 개발자

23

Game Security

Editor 게임보안운영팀 / 이상열

그렇다면, 어떻게 이것이 가능할까?

동적 디버깅이란 공격 기술은 단말기에서 실행되는 어플리케이션을 실시간으로 어셈블리 level에서 볼 수 있으며, 변조가 가능하다. 암호화, 난독화가 적용되어 있더라도 실제 게임이 실행될 때는 메모리상에 복호화되어 올라가고 실행이 되기 때문에 복호화된 원본 코드들을 볼 수 있는 것이고, 그 어떤 보안 기능이라도 우회 당할 가능성이 있는 것이다.

그리고 프로그래밍 언어 level로 소스코드를 뽑아내는 것 또한 제한적이지만 가능하므로 원본 코드의 유출 문제와도 관련이 있다.

이렇듯 동적 디버깅이란 기술은 파괴력을 가지고 있고 굉장히 위험하다.

향후 더욱 급부상할 모바일게임 시장의 안전한 성장을 위해서 안티디버깅의 중요성을 많은 분들이 알게 되길 바라며 이 글을 마친다.

ILSpy

결제크랙

Page 24: 2014 - nshc.net · 게임 보안 동향 g-star 2014 국제 게임 박람회 24 모바일 백신의 새로운 강자 droid-x 3.0, av-test 글로벌 인증 획득! 26 덱스가드 개발자

24

G-Star 2014

게임 보안 동향

G-Star 2014 국제 게임 박람회

"G-Star가 우리에게 보여준 것은?"NSHC는 창업 이래로 '금융보안' 분야에 지속적인 전문성을 쌓아온 기업이다.하지만 금융보안 분야는 '한국적'이라는 표현이 앞에 붙어다닐 정도로 글로벌한 시각에서는 '독특한' 속성을 가진 영역이라 글로벌 시장에 대한 확장은 구조적으로 한계가 있다고 판단이 되었다.우리가 쌓아온 기술기반을 활용할 수 있으며 글로벌 시장을 함께 타겟팅할 수 있는 비즈니스 모델을 모색할 때 그 잠재성을 가장 높게 바라볼 수 있는 차기 시장으로 NSHC는 게임보안 영역을 바라보게 되었다. (DX-Shield 1.0개발) NSHC가 게임보안 영역에 관심을 갖고 나름 준비를 시작하게 된 2013년 중순 이후, 처음 참여하게된 게임관련 국내 최대 전시회인 "G-Star 2014"는 우리에게 게임시장으로의 진입가능성과 우리가 나아가야 할 방향을 명확하게 보여준 좋은 기회였다고 생각한다. 비록 이번 전시회를 준비하며 현장에서 우리가 상상했던 모습과는 현장의 분위기가 많이 달라서 당황스러운 면도 있었지만, 아이러니하게도 그래서 더욱 우리에게는 배울게 많았던 전시회였다는 생각이 든다.

보안쟁이에게 비춰진 우리나라 게임보안 시장의 현주소에 대하여 잠시 공유하자면...

전체적으로 볼때 우리 NSHC는 금융보안 환경에 친숙한 보안회사의 정체성에서 출발해 이 새로운 (게임)시장을 '보안의 영역'에서만 보아왔다는 것을 자각하게 된 계기였다. 현재의 게임시장은 우리가 준비한 게임보안 제품에 대한 관심이 아직 미미했고, 게임 사업의 주체들은 상대적으로 당장 비즈니스의 승패를 결정짓는 수단이 되는 마케팅이나 관련 인프라에 업계의 관심이 집중되고 있다는 것을 알게되었다. 중, 소규모의 게임개발 업체, 퍼블리싱 업체들이 춘추전국시대와 같이 서로 얽혀 자웅을 겨루는, 게임 런칭 순간에 생과 사의 갈림이 결정되는 이런 판에서 게임 서비스의 안정성과 해킹 방어에 관심을 기울이기란 쉽지않은 결정이라는 것을 알게 되었다.

보안쟁이인 우리에게 '게임보안' 이슈는 그 사업의 생명을 좌우하는 중요한 것이였지만, 당장 죽느냐 사느냐에 대한 판정을 앞둔 게임 스타트업에게 보안은 아직 주요 관심사가 아니며, 그 다음 단계의 숙제라는 인식이 강하다는 것을 알게되었다. 보안대책 없이는 서비스 그 자체가 불허되는 금융 쪽의 패러다임과는 많이 다른 곳이였다.

1

무엇이든 물어보세요! NSHC가 해결해드립니다.

Page 25: 2014 - nshc.net · 게임 보안 동향 g-star 2014 국제 게임 박람회 24 모바일 백신의 새로운 강자 droid-x 3.0, av-test 글로벌 인증 획득! 26 덱스가드 개발자

25

NSHC에게 게임시장은 그동안 익숙해왔던 금융시장에서의 성장의 한계를 넘어서서 우리의 미래를 개척해 가야할 '신대륙' 같은 곳 이다. 하지만 대서양을 건너 미 대륙을 발견한 May Flower호도 오랜동안의 항해와 굶주림 속에 신대륙에 다다랐듯이, 우리의 신대륙 역시 가까운 곳에 쉽게 다다를 위치에 있다고 생각하지 않는다.어느정도의 시간과 노력이 수반되어야 할 것이고 그에 상응한 댓가를 지불해야 얻을 수 있는 보상일 것이다.

이제 이곳을 공략할 신무기, "DX-Shield 2.0"이 준비되있고, '적절한 타이밍'에 '완벽한 팀웍'으로 '준비된 전략'과 함께 시장을 공략을 한다면 충분한 승산이 있는 기회의 땅이라는 사실을 알게 된 것이 이번 G-Star 2014 참가의 큰 의미가 아닐까 싶다.

이제 남은 것은 우리가 두 눈으로 본 사실에 대한 우리의 '확신'과 미래의 '비전'이다. 물론 빈틈없는 '실천'은 기본.

2015년은 NSHC에게 새로운 시장개척에 대한 이정표를 세우는 한 해가 될 것이다.

Game Security

Editor 이윤승 부사장

그리고 게임시장은 게임 개발사와 퍼블리셔와의 관계만으로 이루어진 시장이 아니라 게임 마케터등 다양한 관련 비즈니스의 복합체로 발전하고 있는 일종의 "비즈니스 클러스터"라는 것을 알게되었다. 이제까지 우리가 보아왔던 게임 개발사와 퍼블리셔등 주요 핵심 비즈니스 주체이 이외에도 게임이란 아이템으로 비즈니스를 만들어가는 주체는 그 접근방식에 따라 무궁무진하며 그것은 계속 진화 중이라는 사실을 확인할 수 있었다.

즉, '게임보안'이라는 영역은 이러한 게임 비즈니스 클러스터의 일부분일 뿐, 아직은 게임 비즈니스의 Main Player 가 아니라는 사실과 게임보안에 대한 인식은 아직 시장이 성숙되기까지 많은 시간이 더 필요하다는 판단을 하게 되었다.

특히 압도적인 기술력이나 마케팅 능력으로 시장을 선도하는 기업의 형태가 아닌 새로운 마케팅 전략이 필요해보였고, 이번 전시회에서 발견한 다양한 게임시장의 틈새는 우리가 중장기적으로 성과를 올릴 수 있겠다는 자신감을 가질 수 있었으며, 아울러 글로벌 시장으로의 진출 가능성도 확인할 수 있었다.

특히 이번 전시회는 몇몇이 대표로 참관한 것이 아니라 개발, 영업등 관련 스탭들이 모두 한자리에서 현장을 같이 보고, 함께 느끼고 필요한 전략을 공감할 수 있었던 자리였기에 더욱 값진 기회가 아니였나 싶다.

2

3 G-STAR 2014가 개최되는 부산 BEXCO

Page 26: 2014 - nshc.net · 게임 보안 동향 g-star 2014 국제 게임 박람회 24 모바일 백신의 새로운 강자 droid-x 3.0, av-test 글로벌 인증 획득! 26 덱스가드 개발자

26

Droid-X 3.0

모바일 백신의 새로운 강자

Droid-X 3.0, AV-TEST 글로벌 인증 획득!

"약방의 감초"라는 말이 있다.어느 한약에서도 빠질 수 없다는 '감초'라는 한약재를 은유적으로 사용하는 표현이다.

네트워크 환경에서 각종 위험 요소를 막는 보안 프로그램에서 이런 종류를 손꼽는다면, 단연 처음으로 내세울 수 있는 녀석이 바로 이 '백신'이라는 보안 프로그램이다.이 프로그램은 의료용 '예방주사약'에서 이름을 따왔지만, 주사용 백신과는 사뭇 다른 기능을 갖고 있다.

백신이 한두 가지 병에 대한 방역기능을 담당한다면 PC나 모바일용 백신은 보통 수천에서 수백만, 수십억가지의 병균(악성코드 URL등)에 반응하도록 만들어지기 때문이다.그러나 컴퓨터가 우리 주위에서 한 식구가 된 이래로 백신은 늘 함께 있어왔던 존재라 그 고마움이나 하고 있는 일에 대하여 자세히 들여다보거나 관심을 갖는 사람들은 별로 없는 듯하다.심지어 요즘은 '백신 무용론' 같은 이야기까지 나오며 백신 프로그램을 종종 슬프게 한다.

하지만 전염병이 별로 돌지않는다고 예방주사를 다 없애버리면 나중에 인류에게 어떤 일이 생길 수 있을까?아마 질병으로 인해 감당하지 못할 혼란이 한꺼번에 찾아올 것이다.

NSHC는 2010년 스마트폰이 국내에 소개된 이래로 '모바일 백신'분야에 특별한 관심을 기울여 왔다.자체 기술력이 국내에 전무한 상태에서 당시 가장 앞선 기술력을 가진 이스라엘의 D사로부터 SDK(Software Development Kit)를 들여와 국내에 첫 모바일(안드로이드) 백신 Droid-X 1.0을 금융업계에 소개했었고 현재까지 금융권을 포함해 공공기업 등 많은 고객사에서 활용되고 있다.이후 Droid-X는 악성코드 대응 방식의 변화로 고도화 과정을 통해 버전은 1.0에서 2.0으로, 그리고 얼마전 3.0으로 판올림을 하게 된다.

그런데 얼마전 판올림을 한 Droid-X 3.0, 이 녀석이 참 물건이다.

올 초(2월)에 개발이 끝나기가 무섭게 일본에 건너가 한국산 백신이 다 그렇지뭐... 하는 일본 사람들 앞에서 다른 글로벌 유명 백신들과 BMT를 하여 가장 탁월한(!) 성적을 보여줌으로 인해 일본 고객사를 경악케하고 신버전 도입 계약이 전격적으로 성사된 일이 있다.세상에 자기회사 제품을 못났다 이야기하는 사람은 없겠지만, NSHC의 Droid-X 3.0의 면면은 개발 관련자들이 자부심을 갖고 자랑할 만하다 생각하여 오늘 N매거진의 한 꼭지로 소개하려 한다.

백신에 대한 오래된 편견1 - 백신은 다 그게 그거다...?

A사의 백신이나 B사의 백신 모두 컴퓨터의 악성코드를 잡는 동일한 일을 하지만, 그 백신이 사용되는 영역과 개발 히스토리에 따라 일하는 방식은 모두 다르기 마련이다.새로운 것을 좋아하는 우리나라 사람들은 어떤 백신이 최신 악성코드를 잘 잡아낼 수 있는지에 대한 관점이 백신 소프트웨어의 탁월성을 판단하는 유일한 잣대가 되는 것 같다. 하지만 기존에 발견된(인정된) 악성코드의 리스트가 채택되었는지 여부에 따라 백신은 스캔작업을 통해 그 악성코드를 잡아내던지 아니면 패스를 시킨다.단순히 해당 악성코드(혹은 악성이라 의심받는 코드)가 리스트에 있는지 여부만이 백신 능력의 기준은 아니다. 이를테면 이런 악성으로 의심되는 코드들을 얼마나 빠르게 찾아내는지, 그 정확성은 어느정도 인지, 그리고 그런 악성코드와 유사한 모습을 보이는 잠재적인 악성코드에 대한 판단은 어떤 식으로 하는지 등 백신이라 불리우는 프로그램의 정밀도와 효율성은 제품 개발 철학에 따라 다양할 수 밖에 없다.모바일 환경이 보편화되어 카테고리를 추가한 '스미싱(Smishing)'등을 포함해 소위 '악성코드'라 불리우는

Page 27: 2014 - nshc.net · 게임 보안 동향 g-star 2014 국제 게임 박람회 24 모바일 백신의 새로운 강자 droid-x 3.0, av-test 글로벌 인증 획득! 26 덱스가드 개발자

27

Security Solution

'바이러스'는 전세계의 수집채널을 통해 하루에도 수천개씩 리스트에 추가되고 있고, 심지어 이제는 해커가 즉흥적으로 악성코드를 만들어 특정 목적을 가지고 배포하게 되는 경우도 많이 있다. (예, APT공격등)이런 상황 속에서 단순이 특정 악성코드를 잡아내느냐 못잡아내느냐에 대한 이슈는 이제 백신 프로그램의 평가에 있어 유일한 판단 근거라고 하기엔 어려울 듯 하다.

업무 현장에서의 실제적인 침해의 위협은 신종 악성코드에 대한 위협만이 문제가 되는 것은 아니다. 기존에도 있어왔고, 실질적으로 침해 가능성이 높은 악성코드의 위협을 효과적으로 차단해야 할 필요가 있다. 매년 신종 독감이 유행하지만 대부분의 사람들이 고생하는 것은 '신종 독감'만이 아니라 그동안 무수히 사람들을 힘들게 한 기존의 감기 인플루엔자들과 독감 관련 다른 병원균들이다.요즘은 감기를 걸렸다 하면 다 독감 같다고 말하는 이유도 아마 그것과 관계가 있을 것이다.

즉 우리에게 필요한 백신 프로그램은 특정 독감 바이러스 뿐 아니라 대부분의 병원균에 대해 우수한 대응능력을 발휘할 수 있어야 할 것이며, 백신으로 인해 기존 프로그램에 가능한 부담을 주지 말아야 하고, 신종 위해요소에 대한 빠른 대응능력이 전제가 될 필요가 있다.

여럿이 같은 일을 하면서 다름이나 탁월성을 표현하기란 참 어려운 일이다.하지만 서로 다른 성장배경을 가진 사람들이 동일한 생각을 가지고, 동일한 일을 할 수는 없을 것이다.뭐, 서로 동상이몽(?)이 될 수도 있겠지만, 한가지 면만 보며 '자신이 제일이다' 뻐길 수도 있고 '쟤는 안돼'하고 내쳐버릴 수도 있을 것이다.

하지만 시장의 논리는 언제나 그렇듯 선택은 고객의 몫이고 선택의 주체가 되는 사람은 나름대로 판단의 기준을 가질 필요가 있다.

저희가 생각한 모바일 백신 프로그램의 판단의 기준은 '신속성', '정확성', 그리고 '확장성'이다.

A. 기업용(Enterprise) 모바일 백신의 가장 기본적인 스펙은 신속성에 기반한 '가벼움'이다. 기업용 모바일 백신 특성상 고객사의 서비스(뱅킹이나 결재 등..)용 APP에 함께 포함되어 동작되는 특성이 있어 사이즈가 너무 크거나, 동작이 느리게 되면 기본적으로 서비스를 할 수 없게 된다. 그리고 해당 서비스의 안전을 담보하기위해 APP의 서비스 동작 중에라도 악성코드 스캔을 해야 하는 경우가 있는데... 이때 APP의 기본 서비스 동작에 영향을 주면 안되는 특성이 있어 CPU의 부담을 최소화 할 수 있는 방법을 강구하게 된다. B. 그리고 다음으로 중요한 백신의 기능은 악성코드 스캐닝의 '정확성'이다.스캐닝의 정확성을 위해 모든 백신 프로그램은 최신 악성코드의 업데이트에 많은 관심을 기울이게 된다. Droid-X 역시 국내외 악성코드 수집 채널을 통해 수집되는 수천, 수만의 악성코드들을 데일리로 업데이트하고 있고, 특히 기업용 서비스의 경우 서비스 주체의 업무 특성에 따라 악성코드에 대한 정의가 달라 White/Black리스트가 달라질 수 있어 그런 경우 고객의 요청에 따라 특정 APP을 예외 처리할 수 있는 특별한 기능도 갖추고 있다. (Customizes Scanning 가능)

C. 그리고 마지막으로 최근에 주목받고 있는 유사 악성코드 대응능력에 대한 '확장성'이 있다.대부분의 악성코드는 어떤 창의적인 발상에 의한 신규 제작보다는 해커들이 특정 목적으로 기존의 악성코드들을 가지고 백신의 검색기능을 우회하기 위한 목적으로 변조하여 사용하는 경우가 많다.이런 경우 백신은 서로 다른 프로그램이라 인지하고 변조된 악성코드들을 악성으로 인식 못하는 경우가 발생하는데,

백신에 대한 오래된 편견2 - Droid-X 3.0, 넌 뭐가 다른데...?

Page 28: 2014 - nshc.net · 게임 보안 동향 g-star 2014 국제 게임 박람회 24 모바일 백신의 새로운 강자 droid-x 3.0, av-test 글로벌 인증 획득! 26 덱스가드 개발자

28

Droid-X 3.0

우리가 사용하는 백신 프로그램은 사용목적에 따라 '기업용'과 '개인용'으로 나뉜다는 사실을 알고 있는 사람은 그리 많지 않다.일반적으로 스마트 기기에 기본적으로 APP형태로 설치되어 있거나, APP 마켓에서 다운받아 설치되는 백신은 개인용(B2C)백신이다. 이것과는 달리 기업이 제공하는 특정 APP에 포함되어 해당 APP을 구동할 때 별도로 설치를 요구받거나 아예 해당 APP을 설치할 때 함께 설치가 되어 구동시 함께 동작하는 형태의 백신은 기업용(B2B) 백신이다.이 두가지 백신은 사용목적이 서로 달라 구동방식의 차이를 종종 보이는데...개인용(B2C) 백신은 사용자의 필요에 의해 단말기의 악성코드 감지 여부를 검사하는 데에 목적이 있지만, 기업용(B2B) 백신은 해당서비(APP)의 안전한 동작을 담보하기 위한 루팅탐지 등 단말기의 운영 환경을 점검하고 악성코드 감염여부를 판단하는 데에 있다. 이 두 가지 목적이 서로 비슷해 보이지만 그 성능 기준은 큰 차이를 보인다.개인용(B2C) 백신의 경우 검사(Scanning)에 걸리는 시간이 조금 길어져도 무방하다는 사용자의 이해를 기반으로 하지만, 기업용(B2B) 백신의 경우는 전체적인 검사(Scanning)시간이 2-3초 이상 걸리면 사용자의 불만을 크게 만들게 됨으로 현실적으로 사용이 어렵게 된다.

백신에 대한 오래된 편견3 - '기업용 백신' vs '개인용 백신' ?

이런 경우 새로운 악성코드가 새롭게 네트워크에서 발견되어 관리 리스트에 추가되기 전에는 해당 백신이 이 프로그램을 악성으로 인지할 수 없게된다. 이런 맹점을 극복하기 위해 Droid-X 3.0에서는 유사 악성코드를 구별해내고 기존에 입력된 동일한 룰로 처리하는 기능이 탑재되어 있다.이 기능은 Droid-X가 아직 악성코드로 확인되어 등록되기 전의 악성코드와 유사한 구조를 가진 프로그램에 대해 지능적으로 반응하는 최초의 백신이라는 의미를 가지며, 새로운 악성코드의 추가대상을 최소화할 수 있는 NSHC만의 관리 노하우라고도 할 수 있다.

변조 악성코드 탐지기능 비교

Page 29: 2014 - nshc.net · 게임 보안 동향 g-star 2014 국제 게임 박람회 24 모바일 백신의 새로운 강자 droid-x 3.0, av-test 글로벌 인증 획득! 26 덱스가드 개발자

29

Security Solution

일본에 시판중인 백신의 BMT결과 (2014년2월) (AV-TEST 2014년1월 표준 Sample 2721개 사용, 사용단말 : 갤럭시 S4)

위 데이터에서 보이듯이 모든 백신 프로그램은 다양한 개발이력과 함께 AV-TEST 표준 샘플을 사용한 테스트에 있어 서로 다른 결과들을 보이고 있다.탐지율이 상대적으로 낮게 나온 백신이 성능이 떨어지는 백신이라 말할 수는 없을 것이다. 단지 신규 악성코드에 대한 수집, 대응 절차가 서로 다른 프로세스로 시차를 두고 이루어지다보니 이런 결과가 나오는 것이라 생각된다. 그리고 탐지시간의 경우 제품간의 성능 차이라기보다는 B2B용과 B2C용의 제품 디자인의 목적이 달라 생기는 카테고리의 차이라는 시선이 맞을 것이다.국내의 경우 B2B백신의 사용이 보편적이나 글로벌 시장의 경우 B2C백신의 시장이 훨씬 크기 때문에 프로그램 개발 방향이 B2C용으로 세팅이 된 이유라 볼 수 있다.

어쨋든 이런 결과를 참고할 때 기업용(Enterprise) 모바일 백신으로 사용가능한 제품은 A사와 NSHC를 포함해 글로벌 제품 중에는 그리 많지 않았으며, 이는 글로벌 리딩 기업이 제공하는 일반 개인용(B2C) 백신프로그램은 주로 Cloud Scanning 환경에서 운영되는 특징이 있어 이런 결과가 나오는 것이라 생각된다. (이런 유형의 백신들은 Scanning시 네트워크의 트래픽이 갑자기 증가하는 특징이 있다.)

개인용(B2C) 백신의 경우 개인이 소지한 단말기의 무결성을 확인하기 위해 시간을 갖고 악성코드 Scanning을 할 마음의 준비가 된 사용자들이 사용을 하게 된다는 특징이 있지만,

지난 2월 일본에서 테스트했던 글로벌 백신들과의 BMT결과는 놀라운 차이를 보여주는데,B2B 백신의 사용이 많은 국내의 기업과는 달리 해외 유명 AV기업들의 제품에서 보여주는 결과는 무척 의외였다.이는 제품의 성능 차이라기보다는 제품의 카테고리상의 차이 때문이 아닐까 하는 생각이 든다.

Page 30: 2014 - nshc.net · 게임 보안 동향 g-star 2014 국제 게임 박람회 24 모바일 백신의 새로운 강자 droid-x 3.0, av-test 글로벌 인증 획득! 26 덱스가드 개발자

30

Droid-X 3.0

기업용 백신과 일반용 백신의 특성

Editor 이윤승 부사장

단말기 구입시 사전 설치되어 공급되는 Pre_Load 형태의 백신이나, APP마켓을 통해 보급되는 다양한 B2C기반의 '개인용 백신'과 달리, 보다 까다로운 환경에서 운영돼야 하는 B2B기반의 '기업용 백신'의 경우 선택의 폭이 그리 넓은 편은 아니지만, 한국에는 일류 백신 회사가 하나(?)뿐 아니라 NSHC도 있다는 것을 자신있게 이야기할 수 있는 이유는 이제 AVtest.org 인증획득 등 탁월성으로 무장한 Droid-X 3.0이 본격적으로 한국을 넘어 세계 무대로 향하게 될 것임을 확신하기 때문이다.그동안 경쟁사 대비 유난히(?) 작은 Size의 회사임에도 불구하고 NSHC가 서비스하는 모바일 백신, Droid-X 에 신뢰를 보내주신 고객분들께 감사의 말씀을 전하며, 국내뿐 아니라 세계 무대에서 인정받는 정상의 제품으로 보답할 것을 약속드리며 글을 맺는다.

기업용(B2B) 백신의 경우에는 기업의 APP에 내장되어 해당 APP이 구동시에 단말기 상태를 점검하는 목적이라 이 시간이 너무 많이 걸리면 사용이 현실적으로 불가능한 특성이 있다.그런 이유로 B2C형 백신에서 많이 사용하는 Cloud Scanning방식(단말기에 설치된 APP정보를 Cloud 서버로 보내 악성코드 포함여부를 Scanning을 하는 방식)은 기본적으로 작동시간이 오래 결려 기업용으로 유효하다 할 수 없으며, 기업용(Enterprise) 백신과 일반용(Personal) 백신의 특성차이는 아래의 표를 참고하시면 도움이 될 것이다.

Page 31: 2014 - nshc.net · 게임 보안 동향 g-star 2014 국제 게임 박람회 24 모바일 백신의 새로운 강자 droid-x 3.0, av-test 글로벌 인증 획득! 26 덱스가드 개발자

31

Page 32: 2014 - nshc.net · 게임 보안 동향 g-star 2014 국제 게임 박람회 24 모바일 백신의 새로운 강자 droid-x 3.0, av-test 글로벌 인증 획득! 26 덱스가드 개발자

32

덱스가드 개발자 인터뷰

난독화의 본고장 벨기에에 가다!

SAIKOA - CEO & CTO

" "Safe Square 2014 새보안운동에서는 더블 난독화 솔루션 소개에 이어 깜짝 순서가 이어졌다. 그것은 바로 소스코드 난독화 솔루션 덱스가드(DexGuard)를 만든 Saikoa사의 CEO 하이디 라켈(Heidi Rakels)씨, 그리고 CTO 에릭 라폴튠(Eric Lafortune)씨와의 인터뷰! NSHC 이윤승 부사장과 윤선희 부장이 지난 봄 벨기에에 가서 직접 촬영했다고 한다. 그 인터뷰 내용을 함께 엿들어보자. (인터뷰 영상 : http://youtu.be/yoFwK_mXyH0 )

Q 프로가드와 덱스가드 탄생의 비밀을 알려주세요.

프로가드는 12년 전에 만들었습니다. 사실 취미로 시작했어요. 전 언제나 물건들을 분해하고 재조립하는 걸 좋아했거든요. Java Bytecode도 마찬가지였어요. 처음에는 재미로 했지만, 차차 다른 개발자들이 사용하기 시작하면서 나중에는 기업들도 사용하기 시작했습니다. 초기에는 리소스, 메모리, 밴드위스 등이 적은 기계에서 자바 애플릿이나 미들렛이 실행되어야 했어요. 그래서 용량을 작게 하면서도 리버스 엔지니어링으로부터 보호하게 했는데요. 그때부터 사람들이 프로가드를 사용하기 시작했습니다. (중략) 안드로이드가 탄생한 후에, 리소스가

SAIKOACEO 하이디 라켈(Heidi Rakels) - 왼쪽 / CTO 에릭 라폴튠(Eric Lafortune) - 오른쪽

Page 33: 2014 - nshc.net · 게임 보안 동향 g-star 2014 국제 게임 박람회 24 모바일 백신의 새로운 강자 droid-x 3.0, av-test 글로벌 인증 획득! 26 덱스가드 개발자

33

PeoPle

많아지니 더 많은 것을 할 수 있게 되면서 사람들의 기대도 그만큼 커졌죠. 프로가드도 마찬가지로 더더욱 성장하게 되었고, 후에는 구글이 안드로이드 SDK에 프로가드를 사용하게 되었답니다. 그것이 프로가드가 더 성장하게 된 결정적인 계기였어요. 그 시기에 프로가드를 이용하는 사용자와 개발자 수가 급증했거든요. 비록 프로가드가 제 취미 프로젝트였지만 전 정말 진지하게 이 프로젝트에 임했어요. 제 여가시간을 모두 투자했습니다. 저녁, 주말, 밤… 모두 다요. 그러다 2~3년 전, 전문 프로젝트로 덱스가드를 만들기 시작하며 작은 회사를 창업했습니다. 그게 바로 Saikoa사에요. 이제는 낮이나 밤이나 제 시간과 열정을 투자하고 있어요^^

Q 새로운 트렌드로 자리를 잡고 있는 Wrapping 난독화에 대한 견해는?

Q Saikoa사와 NSHC의 관계는?

굉장히 흥미로워요. 저희도 지켜봐야겠어요. 개발자의 관점에서 이건 엄청난 진전이거든요. 삶을 편하게 해주기 때문이죠. 개발자들이 종종 데드라인을 앞두고 코드를 작성하면서 동시에 보안이 잘 되어있는지 확인해야 하거든요. 그렇기에 개발자들에게는 빠르고 최소한의 일을 할 수 있는 솔루션이 중요하겠죠. 현재 덱스가드를 사용하면 조금 번거로운데요, 더 좋은 결과를 얻으려면 더 많은 수고가 필요하구요. (중략) 그런 의미에서 두 가지 테크닉을 융합시켜 문제 없이 작동하는 빠른 솔루션과 시간을 좀 더 들이는 솔루션을 모두 가지게 되면 굉장히 이상적이겠죠.

우선, NSHC로부터 받는 피드백, 즉 아시아 고객의 피드백이 저희에게 굉장히 유용해요. 왜냐면, 개발에 대하여 사람들이 일하는 방식의 차이를 배울 수 있게 해주거든요. 예를 들어, 한국과 다른 나라들의 정부 법규가 다르다는 것을 알게 되었는데 굉장히 흥미롭더군요. 한편, 마켓도 다를 수 있답니다. 저희는 주로 작은 게임이나 툴을 만드는 소규모의 개발자들과 함께 일하는데, 한국에서는 금융권이 굉장히 중요하죠. 좋은 결과를 얻기 위해 굉장히 엄격한 기준을 가지고 있음을 알게되었죠. 이런 피드백은 저희가 알아야하는 중요한 내용이에요. 또한, SaiKoa와 NSHC, 그리고 여러분과의 협력은 우수한 제품을 만들고자하는 의미에서 굉장히 중요하다고 생각합니다. NSHC에는 많은 전문가들이 있고, 저희 제품에서 최고의 결과를 만들어낼 수 있는 지식을 보유하고 있습니다. 그리고 고객은 자신의 어플이 어떻게 작동하고, 어떤 부분이 중요하며 어떤 부분이 보호되어야 하는지에 대한 정보를 제공할 수 있겠죠. Saikoa와 NSHC가 상호 협력관계에 있는 지금 여러분이 어플리케이션을 보호할 준비가 되어 있다면 그 때부터는 모든 것이 수월할 것입니다. NSHC는 더 나은 개발을 위한 모든 것을 가지고 있으니까요. (후략)

Editor 커뮤니케이션사업부 / 이보라

Page 34: 2014 - nshc.net · 게임 보안 동향 g-star 2014 국제 게임 박람회 24 모바일 백신의 새로운 강자 droid-x 3.0, av-test 글로벌 인증 획득! 26 덱스가드 개발자

34

RED ALERT 팀이 정리하는

2014 사이버 사고 동향

2014 Cyber Trend

월별 사이버 사고2014년도 월별 사이버 사고 중 주요 이슈를 선별하여 소개한다.

해외에서는 이미 가장 강력한 ‘Ransomware’로 알려졌던, ‘CryptoLocker’는 감염된 시스템의 모든 문서 및 이미지 등에 RSA-2048 Bit 암호를 걸어 사용자에게 데이터를 인질로 금품을 요구하는 악성코드의 일종이다. 국내에서도 개인, 금융권 등 일부 감염 사례가 발견되었고 이미 암호화된 데이터를 복구하기가 굉장히 어려워, 대책보다는 예방에 초점을 맞춰야 했던 악명 높은 악성코드였다.

Internet Explorer 취약점 CVE-2013-3897을 이용한 Internet Banking Pharming용 악성코드로서, 국내 중고차 매매 사이트를 경유지로 이용했다. 경유지로 이용된 사이트에 ‘Use After Free’ 취약점을 이용하여, Shellcode를 삽입하는 방식을 사용했다.

‘Oldboot’는 지금까지 Android에서 발견된 악성코드들과 다른 구조를 가지고 있던, 최초 Bootkit이었다. Boot partition에 있는 Booting Script를 변조하여, 부팅과 동시에 악성 행위를 위한 시스템 서비스를 시작하고, 시스템 초기화 과정 중에 악성코드를 추출하는 방식으로 동작했다. 어렵게 삭제 하더라도 Andorid의 Ramdisk 특징 상 부팅 과정 때마다 재실행되는 문제가 있었다.

‘DNS Cache’ 조작 및 ‘Hosts.ics’를 생성하여 사용자를 변조된 웹 페이지로 유도하는 방식의 악성코드로서, ‘BlackMoon’ 악성코드로 불렸다. 변조된 웹 페이지는 사용자의 이름, 계좌정보, Internet Banking 계정 정보, 보안카드 정보 등의 입력을 유도하여 탈취하는 방식을 사용했다.

Google Play로 위장하여, 설치만 되면 Background 서비스로 은닉하여 동작하기 때문에 일반 사용자로서는 동작여부를 판단하기가 어려웠다. 추가로 다운로드되는 위 · 변조 Baking 악성코드는 정상 Banking App에서 보안 모듈을 제거한 후 동작하기 때문에 자동 탐지 및 대응이 불가능하며, 감염 단말기의 연락처, 통화 내역, 메시지 등의 정보를 수집하거나 제어할 수 있기 때문에 공격자의 의도에 따라 큰 피해를 발생시킬 수도 있는 악성코드였다.

원격 관리 도구의 일종인 ‘Xtreme RAT’의 서버 프로그램을 배포하여, 감염된 시스템을 원격으로 제어하는 악성코드다. 공격자는 감염 시스템의 키보드 입력 데이터, MSN E-Mail 정보, 클립 보드 데이터 등을 탈취하여 개인 정보를 탈취했다.

국내 백신, 언론사, 포털 사이트를 경유지로 이용하여, 2차 다운로드를 유도했으며 감염 시스템에서 공격자의 계정으로 채굴을 시도하도록 제작된 악성코드였다. 일종에 ‘DDoS’ 공격시 이용되는 좀비 PC와도 유사한 방식으로 이용되었다.

가장 악명 높은 ‘Botnet’ 중 하나로 알려진 ‘GameOver Zeus’는 감염된 시스템의 모든 권한을 은밀히 제어하여, 사이버 범죄를 수행하는데 이용되었다. 가장 많이 이용된 곳은 감염된 시스템으로 금융 거래를 할 때 정보를 탈취하여, 금전을 탈취하는 방식이었다. OTP조차도 무력화할 수 있는 강력한 기능으로 많은 피해가 있었다.

1월

2월

CryptoLocker01

Internet Explorer 취약점을 이용한 Pharming 악성코드01

Android 최초 Bootkit02

다음 카페 서비스로 위장한 정보수집 악성코드02

Google Play로 위장한 원격제어 악성코드03

원격제어 악성코드03

Bitcoin 채굴 악성코드04

Zeus 변종 악성코드04

Page 35: 2014 - nshc.net · 게임 보안 동향 g-star 2014 국제 게임 박람회 24 모바일 백신의 새로운 강자 droid-x 3.0, av-test 글로벌 인증 획득! 26 덱스가드 개발자

35

Red Alert

신용카드 정보를 탈취하는 ‘JackPos’는 POS (poinf-of-sale) 악성코드의 일종으로, 사용자의 의심을 피하기 위해 ‘Java Update Scheduler’로 위장했다. 해당 악성코드는 신용카드 이용시 마그네틱에 존재하는 사용자의 계좌정보를 포함한 기타 정보들을 탈취하는 방식을 사용했다.

일명 ‘Heartbleed’라 불리던 CVE-2014-0160 취약점은 계정 정보, 인증서 정보, 세션키, 소스코드 등의 민감한 정보를 탈취할 수 있는 위험한 취약점이었다. 해당 취약점은 OpenSSL의 Heartbeat 요청에 대한 응답으로 64KB 메모리 덤프를 수신 받을 수 있었는데, 해당 데이터에는 민감한 정보가 포함되어 있었으며, Private Key 추출만으로 쉽게 복호화가 가능했다.

‘DNS Cache’ 조작 및 ‘Hosts.ics’를 생성하여 사용자를 변조된 웹 페이지로 유도하는 방식의 악성코드로서, ‘BlackMoon’ 악성코드로 불렸다. 변조된 웹 페이지는 사용자의 이름, 계좌정보, Internet Banking 계정 정보, 보안카드 정보 등의 입력을 유도하여 탈취하는 방식을 사용했다.

취약한 POS 단말기 해킹을 통해 10개 카드사의 약 320만 신용카드 정보를 탈취하여, 복제카드를 제작하고 현금인출 및 현금 서비스로 금전을 빼돌렸던 사건으로, 대량 카드 재발급 및 회원 탈퇴 등의 많은 피해를 발생시켰다.

재활의료보조공학기기 제품을 개발하는 업체의 홈페이지를 유포지로 활용한 악성코드로서, 일반ActiveX로 위장하여, 악성 파일 추가 다운로드 및 악성 행위를 수행한다. 당시 최종 공격 수행 전에는 공격자의 서버를 노출시키지 않고, 타 사이트를 활용한 방식의 공격이 성행했던 시기로서, 동시 다발적인 공격이 가능하여 많은 피해를 야기시켰다.

‘FireEye’에서 최초 발견한 Internet Explorer CVE-2014-1776 취약점은 당시 대부분의 Internet Explorer 버전에서 동작하는 취약점으로서, 미국 국방 및 금융관계자가 표적으로 한 APT 공격에 활용되었다.

일명 ‘Gh0st RAT’으로 불리던 원격제어 악성코드의 변종으로서, C & C 명령을 통해 화면 캡쳐, Key logging, 시스템 및 계정정보 탈취, DDoS 등 다양한 공격이 가능했다.

일명 ‘QQGamePass’로 불리던, 게임 사용자 정보 탈취 악성코드로서, 국내에도 서비스 중인 유명 게임을 대상으로 했으며, ‘Dll Injection’ 및 ‘Hooking’을 통해 공격을 수행했다.

2013년 12월에 확인된 ‘Outlook Spyware’의 변종 악성코드로서, ‘Outlook Spyware’와 유사하게 FTP, E-mail 정보 탈취 기능에 Internet Browser 정보 탈취 기능이 추가되었다. 해당 악성코드는 사용자를 속이기 위해 ‘급여 명세서’라는 PDF 파일로 위장하였다.

3월

4월

신용카드 정보 탈취 악성코드01

OpenSSL 취약점01

Internet Banking Pharming 악성코드02

POS 단말기 해킹02

ActiveX로 위장한 악성코드03

Internet Explorer Zeroday03

원격제어 악성코드04

게임 사용자 정보 탈취 악성코드05

급여 명세서로 위장한 Spyware06

Page 36: 2014 - nshc.net · 게임 보안 동향 g-star 2014 국제 게임 박람회 24 모바일 백신의 새로운 강자 droid-x 3.0, av-test 글로벌 인증 획득! 26 덱스가드 개발자

36

기존에 원격제어를 통해 화면 캡쳐, 파일 전송, Key Logging, 명령어 실행 등을 수행하던 악성코드에 Webcam 원격 감시 기능을 추가한 형태로 인터넷 방송 여성 BJ의 PC를 감염시켜 나체 촬영 후 금품을 요구한 사건이 발생하기도 했었다.

Hooking을 통해 Pharming을 하는 악성코드에 이어 Hooking 후 VPN에 연결하여 Pharming을 시도하는 악성코드로 발전한 형태다. VPN을 통해 암호화 통신을 하기 때문에 추적이 어려우며, 금융정보 탈취를 목적으로 한다.

이슈가 발생할 때마다 관련 제목의 문서로 위장한 악성코드의 유포 사례는 지속적으로 발생해왔으며, 이 때는 ‘북한 위성 발사’에 대한 문서로 위장하여, 주목을 받았다. 해당 악성코드는 문서로 위장된 파일에 Exploit을 삽입하는 방식이 아니라 실행 가능한 스크린 세이버 파일을 이용하여 클릭을 유도하는 형식이 사용되었다. 감염된 시스템에서는 특정 서버의 PHP 게시판에 감염 정보 등을 업로드하는 동작을 수행했다.

지속적으로 징후가 포착된 ‘3.20 사이버테러 변종 악성코드’는 국내 서비스 중인 각종 ActiveX 취약점과 Flash Player의 취약점 CVE-2014-0515를 통해 배포되었다. 다양한 안티디버깅 기법이 적용되어 있으며, 감염된 후 추가 공격을 위해 C & C 서버의 명령을 수행합니다.

서비스로 등록되어 감염된 시스템에 지속적으로 C & C 접속 요청을 수행하는 방식으로 감염 방식만 변경된 Internet Baking Pharming 악성코드로서, 일명 ‘KuGou’로 불렸다.

사용이 편리해 차세대 결제수단으로 각광받는 앱 카드 서비스는 지난 해 6개 카드사가 공동으로 개발한 서비스로서, 기존 플라스틱 카드를 스마트 폰에 등록하여 사용하는 방식이다. 공격자들은 악성코드를 통해 감염 시스템의 앱 카드 정보를 탈취하여, 금전을 빼돌린 것으로 확인되나 악성코드의 동작 외에는 명확한 상황 파악이 불가능했다.

5월

6월

7월

Webcam 원격감시 악성코드01

VPN을 이용한 Pharming 악성코드01

대북 관련 이슈로 위장한 악성코드01

3.20 사이버테러 변종 악성코드02

Internet Baking Pharming 악성코드02

S카드사 앱 카드 해킹에 사용된 악성코드03

#!/bin/bash

~root: env X=”() {

:;} ; echo shellshock” /

bin/sh -c “echo comp;eted”

> shellshock

> comleted

2014 Cyber Trend

Page 37: 2014 - nshc.net · 게임 보안 동향 g-star 2014 국제 게임 박람회 24 모바일 백신의 새로운 강자 droid-x 3.0, av-test 글로벌 인증 획득! 26 덱스가드 개발자

37

이 시기에 유난히 빈번히 발생했던 Pharming 악성코드로서, 다양한 변종과 여러 웹 사이트를 이용하여 유포되기 때문에 쉽게 유포가 가능했습니다. 해당 악성코드는 DLL 파일에 의해 동작하며, DLL 파일을 실행시키는 기능을 가진 정상 파일을 ‘MUpdate.exe’ 파일로 복사하여 악성 DLL을 실행시키는 특징을 가지고 있다.

C & C 서버로부터 공격 대상과 DDoS 공격 방식을 명령 받아 수행하는 BOT 악성코드로서, explorer.exe 파일에 코드를 Injection하여 동작하는 방식이다.

미국에서 POS 단말기를 노리는 백오프 악성코드가 유포되었으며, 취약한 POS 단말기를 감염시켜 카드 정보를 탈취하는 방식이다.

급여 명세서로 위장하여, 불특정 다수에게 E-Mail을 발신하는 형태로 사용자들의 감염을 유도했다. E-Mail에 포함된 PDF 파일은 급여 명세서로 위장한 악성코드로서, 감염 후 일정 시간이 지나면, Internet Browser 및 메모장을 통해 ‘암호화된 파일 해제’ 하기 위해서는 금품을 지급하라는 메시지를 전달한다.

‘HeartBleed’에 이어 큰 이슈가 되었던, 취약점으로서 Bash Shell이 환경변수를 처리하는 과정에서 취약점이 발생하여 공격자는 시스템의 보안을 우회하고 Shell 명령어를 수행할 수 있다. 긴급 패치가 공개되었으나, 곧 바로 우회가 가능한 사실이 포착되어 추가 패치를 수행하는 등의 대응을 했으나, 현재까지도 지속적으로 Bash 관련 취약점이 발견되고 있다.

8월

9월

10월

Web 변조를 통해 감염되는 Pharming 악성코드01

DDoS 공격을 위한 BOT 악성코드01

POS 단말기 해킹01

급여 명세서로 위장한 Ransomware02

Bash 취약점02

#!/bin/bash

~root: env X=”() {

:;} ; echo shellshock” /

bin/sh -c “echo comp;eted”

> shellshock

> comleted

급여 명세서로 위장한 Ransomware POS 단말기 해킹

DDoS 공격을 위한 BOT 악성코드

Editor Red Alet팀 / 봉용균

Red Alert

Page 38: 2014 - nshc.net · 게임 보안 동향 g-star 2014 국제 게임 박람회 24 모바일 백신의 새로운 강자 droid-x 3.0, av-test 글로벌 인증 획득! 26 덱스가드 개발자

38

HITB 2014

아시아 최대 규모 보안 컨퍼런스 HITBRED ALERT팀 본선진출

Hack In The Box 말레이시아에서 진행된 Hack In The Box 2014 컨퍼런스는 아시아 국가들을 비롯하여 아메리카, 유럽에 이르기까지 많은 국가가 참석하는 아시아 최대 규모의 보안 컨퍼런스다.

지금부터 RED ALERT 팀의 Hack In The Box 탐방기를 소개한다." "

ITB Training 본격적인 컨퍼런스에 앞서 전문 교육 과정인 트레이닝 코스가 진행된다. 우리는 여러 주제 중 가장 관심을 갖고 있던 iOS Exploitation Techniques에 등록했다.

교육 내용은 기대 이상이었고, 현재 연구 중이던 분야에 상당 부분 도움이 되었다. 생각지도 못했던 성과는 강사뿐 아니라, 강의를 받는 수강생들과 대화를 통해서도 많은 정보를 얻었다는 점이다. 여러 국가에서 iOS 연구에 매진하는 인원들이다 보니 서로 주고 받는 정보도 상당한 가치가 있었다.

iOS 기술의 선두주자인 두 강사와는 앞으로도 이 메일을 통해 정보를 주고 받으며 교류할 계획이다. 물론 한 동안은 받기만 할 것이다.

H

Nikias Bassen(pimskeks) / 문해은 부장 / Cyril Cattiaux(pod 2g) - 왼쪽부터

인터컨티넨털 호텔 주니어 볼룸 (트레이닝 장소)

인터컨티넨털 호텔 2층 행사장 전경

Page 39: 2014 - nshc.net · 게임 보안 동향 g-star 2014 국제 게임 박람회 24 모바일 백신의 새로운 강자 droid-x 3.0, av-test 글로벌 인증 획득! 26 덱스가드 개발자

39

Red Alert

HITB CTF CTF 본선이 치러지는 행사장 중앙, 각 국가의 대회 참가 팀은 이미 자리에 나와 준비를 하고 있다. 이외 다양한 업체의 특별한 제품 홍보, 이야기를 나누고 있는 세계의 보안 전문가들, 음식을 세팅하고 있는 호텔 스텝 등 아침 일찍 나와있는 사람들은 분주한 모습이다. 놀랍게도 이 많은 풍경 중 테이블 위의 음식이 가장 눈에 띄었다.

행사장 정보와 후원 업체들

싱가포르의 경치

RED ALERT 팀의 공식 대회 참가 인원은 왼쪽부터 하동주 책임연구원, 문해은 팀장, 곽성현 연구원이다. 하동주 책임연구원과 문해은 팀장은 대회 경험이 많기 때문에 RED ALERT 팀의 첫 공식 CTF에 등불 역할을 했다. 이외 외부에서는 RED ALERT 팀의 봉용균 연구원과 장경익 연구원, VXRL 팀이 함께 했다. 다른 팀에 비하면 상당히 적은 인원이지만 첫 경험의 설렘을 느끼기에는 충분했다.

최종적으로 대회가 끝나고 각기 다른 표정으로 자리를 정리한다. 즐거운 표정, 애매한 표정, 아쉬운 표정 등이 보였다.대회 우승은 베트남의 GGWP팀이며, 상당한 점수 차이로 우승을 차지했다. 우리는 아쉽기는 했지만, 다양한 국가의 뛰어난 실력을 볼 수 있는 좋은 기회였다고 생각한다.

SHC의 해외 보금자리 싱가포르의 마지막날을 우리 잔잔한 강, 멋진 호텔, 거대 금융기관이 보이는 NSHC의 해외 보금자리에서 마무리했다.우리는 젊음과 패기의 벤처기업이다. 앞으로도 R&D에 대한 아낌없는 투자로 이런 모험의 기회는 계속될 것이고, NSHC 성장에 가장 큰 역할을 할 것이다.

Editor Red Alet팀 / 문해은

H

N

Page 40: 2014 - nshc.net · 게임 보안 동향 g-star 2014 국제 게임 박람회 24 모바일 백신의 새로운 강자 droid-x 3.0, av-test 글로벌 인증 획득! 26 덱스가드 개발자

40

Personal Information Protection Act

알기쉬운

개인정보보호법 개정안 정리

개인정보 보호법 [시행2013.3.23][법률 제11690호, 2013.3.23, 타법개정]

제16조(개인정보의 수집 제한)

② 개인정보처리자는 정보주체가 필요한 최소한의 정보 외의 개인정보 수집에 동의하지 아니한다는 이유로 정보주체에게 재화 또는 서비스의 제공을 거부하여서는 아니 된다.③ 신설

제1조(목적)

이 법은 개인정보의 처리 및 보호에 관한 사항을 정함으로써 개인의 자유와 권리를 보호하고, 나아가 개인의 존엄과 가치를 구현함을 목적으로 한다.

개인정보 보호법 [시행2014.8.7] [법률 제11990호, 2013.8.6, 일부개정]

개인정보 보호법 [시행2014.8.7][법률 제11990호, 2013.8.6, 일부개정]

제16조(개인정보의 수집 제한)

② 개인정보처리자는 정보주체의 동의를 받아 개인정보를 수집하는 경우 필요한 최소한의 정보 외의 개인정보 수집에는 동의하지 아니할 수 있다는 사실을 구체적으로 알리고 개인정보를 수집하여야 한다.③ 개인정보처리자는 정보주체가 필요한 최소한의 정보 외의 개인정보 수집에 동의하지 아니한다는 이유로 정보주체에게 재화 또는 서비스의 제공을 거부하여서는 아니 된다.

제1조(목적)

이 법은 개인정보의수집·유출·오용·남용으로부터 사생활의 비밀 등을 보호함으로써 국민의 권리와 이익을 증진하고, 나아가 개인의 존엄과 가치를 구현하기 위하여 개인정보 처리에 관한 사항을 규정함을 목적으로 한다.

개인정보 보호법 [시행2014.3.24][법률 제12504호, 2014.3.24, 일부개정]

제24조의2(주민등록번호 처리의 제한)

② 개인정보처리자는 제24조제3항에도 불구하고 주민등록번호가 분실·도난·유출·변조 또는 훼손되지 아니하도록 암호화 조치를 통하여 안전하게 보관하여야 한다. 이 경우 암호화 적용 대상 및 대상별 적용 시기 등에 관하여 필요한 사항은 개인정보의 처리 규모와 유출 시 영향 등을 고려하여 대통령령으로 정한다.③ 개인정보처리자는 제1항 각 호에 따라 주민등록번호를 처리하는 경우에도 정보주체가 인터넷 홈페이지를 통하여 회원으로 가입하는 단계에서는 주민등록번호를 사용하지 아니하고도 회원으로 가입할 수 있는 방법을 제공하여야 한다.④ 안전행정부장관은 개인정보처리자가 제3항에 따른 방법을 제공할 수 있도록 관계 법령의 정비, 계획의 수립, 필요한 시설 및 시스템의 구축 등 제반 조치를 마련·지원할 수 있다.

제24조의2(주민등록번호 처리의 제한)

② 개인정보처리자는 제1항 각 호에 따라 주민등록번호를 처리하는 경우에도 정보주체가 인터넷 홈페이지를 통하여 회원으로 가입하는 단계에서는 주민등록번호를 사용하지 아니하고도 회원으로 가입할 수 있는 방법을 제공하여야 한다.③ 안전행정부장관은 개인정보처리자가 제2항에 따른 방법을 제공할 수 있도록 관계 법령의 정비, 계획의 수립, 필요한 시설 및 시스템의 구축 등 제반 조치를 마련·지원할 수 있다.④ 신설

<개인정보보호법 개정안 비교>

개정 전 개정 후

Page 41: 2014 - nshc.net · 게임 보안 동향 g-star 2014 국제 게임 박람회 24 모바일 백신의 새로운 강자 droid-x 3.0, av-test 글로벌 인증 획득! 26 덱스가드 개발자

41

Security Trend

<주민번호 수집 금지 정책 추진 경과>

<주민번호 예외적 처리 허용 사유 >

<주민번호 수집 금지에 따른 조치사항>

<판단기준>

2012.4월 : ‘주민번호 수집이용 최소화 종합대책’ 마련(안행부, 방통위, 금융위 참여)2012.8월 : 정보통신서비스제공자 등 온라인상 주민번호 수집 금지 시행(방통위)2014.8월 : 오프라인 및 공공기관 등 주민번호 수집 금지 시행 예정(안행부)

1. 법령(법률.시행령.시행규칙)에서 구체적으로 주민번호 처리를 요구.허용한 경우2. 정보주체 또는 제3자의 급박한 생명, 신체, 재산의 이익을 위해 명백히 필요한 경우3. 기타 주민번호 처리가 불가피한 경우로서 안전행정부령으로 정하는 경우

1. 법령상 구체적 근거가 있는 경우에는 현행 유지2. 법령상 근거는 없으나 주민번호 수집이 불가피한 경우 법령 근거 마련 A. 민간사업자/협회) 해당 업종 소관부처에 법령 근거 마련 지원 요청 B. (소관부처) 타당성 검토 후 불가피한 경우에 한하여 법령 근거 마련3. 위 1, 2에 해당하지 않는 경우 주민번호를 수집하지 않도록 전환

[예시] 법령 조문에서 주민번호 수집을 요구.허용하는 경우, 법정 서식에서 주민번호 기재란이 있는 경우, 법령 조문 또는 서식상 주민번호가 포함된 서류(주민등록등.초본 등)를 수집할 수 있도록 허용 하는 경우 등을 말함

기준 1. 주민번호 처리 법령 근거 유무

- 법령(법률, 시행령, 시행규칙)상 주민번호 수집을 구체적으로 허용하는 경우에는 현행 유지

(예시) 단순 본인확인을 위한 경우, 회원DB 관리를 위한 Key 값으로 활용하는 경우 등은 주민번호 수집 필요성이 낮으며 다른 수단으로 대체 가능한 경우에 해당

기준 2. 불가피성 유무(주민번호 대체 불가능성)

- 법령상 근거는 없으나 반드시 주민번호를 수집하여야 할 필요가 있는 경우 해당 업무 소관부처를 통해 법령근거 마련- 주민번호 수집 필요성이 없거나 대체 가능한 경우에는 전화번호 등 다른 수단으로 대체하고, 기 보유 주민번호는 파기- 법령(법률, 시행령, 시행규칙)상 주민번호 수집을 구체적으로 허용하는 경우에는 현행 유지

1. 주민번호 처리법령 근거 유무

1. 불가피성 유무(대체 불가능)

현행 유지 (별도조치 불필요)01

법령근거 마련02

대체수단 도입03

Yes

Yes

No

No

<주민번호 수집 금지 판단 기준>

법령[법률, 시행령, 시행규칙]상 주민번호 처리 근거가 있는 경우법정서식에서 주민번호 기재된 공부의 첨부, 제출, 확인을 요하는 경우

관계부처에 의견제시 해당 법령에 근거 마련[소관 부처]

주민번호 삭제 / 생년월일, 등록번호, 회원번호, I-Pin 등으로 대체

Page 42: 2014 - nshc.net · 게임 보안 동향 g-star 2014 국제 게임 박람회 24 모바일 백신의 새로운 강자 droid-x 3.0, av-test 글로벌 인증 획득! 26 덱스가드 개발자

42

Personal Information Protection Act

1. 중앙행정기관

1. 중앙행정기관

2. 지방자치단체, 기타 공공기관

3. 민간사업자, 협회/단체

A. 법령, 행정규칙(훈령, 예규, 고시 등), 행정서식, 민간서식 등을 통한 주민번호 처리 실태 조사, 분석 (소관분야 관련 공공 및 민간 총괄)B. 주민번호 수집 필요성 및 수집 금지 타당성 검토(지방자치단체, 민간협회/단체 등 이해관계자 의견 수렴 및 반영)C. 주민번호 수집이 불가피한 경우 관련 법령근거 정비, 불필요한 경우 대체수단 도입 등 미수집 전환 추진(하위규정 및 서식 등 개선 병행)

A. 관련 법령, 조례, 자체 지침 및 규정, 관련 서식 등을 통한 주민번호 처리 실태 조사, 분석 (소관업무 관련 공공 및 민간 총괄) B. 주민번호 수집 필요성 및 수집 금지 타당성 검토(관련 중앙행정기관, 기초자치단체, 산하기관, 민간협회/단체 등 이해관계자 의견 수렴 및 반영)C. 주민번호 수집이 불가피한 경우 관계 중앙행정기관 협의 및 의견제시, 불필요한 경우 대체수단 도입 등 미수집 전환 추진(업무절차 및 서식 등 개선 병행)

【민간사업자】 A. 소관 사업과 관련한 주민번호 처리 실태, 주민번호 수집 금지에 따른 고객서비스 및 영업상 영향도 등 조사, 분석 B. 주민번호 수집이 불가피한 경우 관련 협회/단체 등을 통해 관계 중앙행정기관에 법령근거 마련 요청, 불필요한 경우 미수집 전환 추진(내부 규정, 고객관리프로그램, 서비스 신청서식 등 개선 병행)

【협회/단체】 C. 소관 업종에 종사하는 민간사업자 의견 수렴 및 관계 중앙행정기관 의견 제시, 주민번호 수집 금지 정책 및 지원체계 적극 안내

<기관별 조치사항>

<개선 방안별 조치 사항 예시>

DB 구조와 내부에서 활용 중인 주민번호 이용 범위 분석

테스트 기간을 설정하고, 회원 DB 상에서 주민번호 일괄 삭제 및고객관리 프로그램(또는 웹사이트)에서 주민번호 입력창 제거

주민번호 삭제가 완료된 후 적용 테스트를 통해 서비스 변경 여부,DB 연동 등 각종 기능 이상 유무 등 정검

주민번호를 수집하지 않고, 기 수집한 주민번호는 파기한다는 내용으로 이용약관, 개인정보 처리방침 등을 수정한 후 이용자 안내

서비스 분석

주민번호 삭제및 입력창 제거

서비스 변경 확인 및 테스트

변경사항 안내

Page 43: 2014 - nshc.net · 게임 보안 동향 g-star 2014 국제 게임 박람회 24 모바일 백신의 새로운 강자 droid-x 3.0, av-test 글로벌 인증 획득! 26 덱스가드 개발자

43

Security Trend

2. 주민번호를 다른 정보로 대체시

DB 구조와 내부에서 활용 중인 주민번호 이용 범위 분석

현재 주민번호 이용 범위, 내부연동 시스템 구조 등을 고려하여 주민번호를 대체하여 색인키로 활용할 수 있는 정보를 선정 주민번호를 요구하는 각종 업무 절차 수정

주민번호 삭제가 완료된 후 적용 테스트를 통해 서비스 변경 여부,DB 연동 등 각종 기능 이상 유무 등 정검

주민번호를 수집하지 않고, 기 수집한 주민번호는 파기한다는 내용으로 이용약관, 개인정보 처리방침 등을 수정한 후 이용자 안내

서비스 분석

주민번호 대체수단 적용

서비스 변경 확인 및 테스트

변경사항 안내

<준비방안>

불필요한 경우에는 주민번호를 수집하지 않도록 하거나 생년월일, I-pin, 휴대폰번호, 회원번호 등으로 대체하여야 하며, 소관업무의 성격상 주민번호 수집이 불가피한 경우에는 해당 업무와 관련한 정부 부처에 법령 근거 마련을 요청하여야 합니다. 아울러, 법령 근거가 없는 경우에는 기존에 수집하여 보관 중인 주민번호를 2016년 8월 6일 이전까지 모두 파기하여야 합니다

Editor 서비스사업본부 / 우상태

Page 44: 2014 - nshc.net · 게임 보안 동향 g-star 2014 국제 게임 박람회 24 모바일 백신의 새로운 강자 droid-x 3.0, av-test 글로벌 인증 획득! 26 덱스가드 개발자

44

일본 2014JPCERT 보고 (5월~11월)

Jpcert 2014

MAY Microsoft Internet Explorer의 취약성Apache Struts2에 ClassLoader의 취약성POCO C++ Libraries의 NetSSL 라이브러리에 와일드카드 증명서를 검증하지 않는 취약성x86 Linux에서 가동하는 IBM Notes 및 Domino의 스택이 실행 가능하게 되어 있는 문제Microsoft Internet Explorer의 취약성에 관한 추가 정보Adobe Flash Player의 버퍼 오퍼플로우의 취약성BIND 9.10.0에 서비스 운용방해의 취약성Cisco의 WebEx Player에 취약성사이보우즈 카룬의 취약성intra-mart에 오픈 리다이렉트의 취약성Fortinet Fortiweb에 CSRF의 취약성Google Search Appliance의 다이나믹 내비게이션에 XSS의 취약성Apple의 OS X 및 iTunes의 취약성Juniper ScreenOS에 서비스운용방해(DoS)의 취약성Microsoft IE 8 메모리 해제 후 사용(use-after-free)의 취약성Apple Safari의 취약성Cisco제품의 취약성Hanvon Face ID에 인증결여의 문제

010203040506070809101112131415161718

JUN Dell ML6000 및 Quartum Scalar i500에 OS 커맨드 인젝션의 취약성Alfresco Enterprise에 복수의 크로스사이트 스크립팅의 취약성OpenSSL의 취약성SOY CMS에서의 크로스사이트 스크립팅의 취약성Microsoft 제품의 취약성Adobe 제품의 취약성Just System의 온라인 업데이트 프로그램에 임의의 코드가 실행되는 취약성Mozilla 제품군의 취약성ISC BIND 9.10.0에 서비스 운용방해(DoS)의 취약성Cisco의 AsynoOS에 크로스사이트스크립팅의 취약성SEIL 시리즈에 서비스 운용방해(DoS)의 취약성Microsoft Malware Protection Engine에 서비스 운용방해(DoS)의 취약성시만텍 웹 게이트웨이의 취약성안드로이드판 어플 050Plus에 정보운영 부족의 취약성Webmin에 크로스 사이트 스크립팅의 취약성Usermin에 취약성TERASOLUNA Server Framework for Java(Web)에 ClassLoader가 조작 가능한 취약성P5 ARX Data Manager에 SQL 인젝션의 취약성

010203040506070809101112131415161718

인터넷을 통해 전 세계가 네트워크로 연결되면서 한 국가에서 발생된 사이버 침해사고가 전 세계로 빠르게 전파될 수 있는 기반이 구축되었다. 또한 최신 침해사고 정보의 공유는 물론, 국가 내 주요 기반시설 또는 더 넓은 범위의 국가 보안문제에 영향을 끼칠 수 있는 사안에 관해 타 국가의 CERT와 정보를 교류해야 할 필요성이 증대되고 있다. 따라서, 광범위한 사이버 침해사고 정보를 공유하고 다양한 위협 이슈를 파악하고자 JpCert에서 발표한 2014년 3분기 주요 이슈들을 정리해 본다. 아래 내용은 국내 KrCert에서 발표한 중복 내용은 제거한 리스트이다 .

" "

Page 45: 2014 - nshc.net · 게임 보안 동향 g-star 2014 국제 게임 박람회 24 모바일 백신의 새로운 강자 droid-x 3.0, av-test 글로벌 인증 획득! 26 덱스가드 개발자

45

JUL SpamTitan에 크로스사이트 스크립팅의 취약성WordPress용 플러그인 Login rebuilder에 CSRF의 취약성Sophos Disk Encryption의 인증의 취약성Web 급여장의 취약성Microsoft 제품의 취약성 Adobe제품의 취약성Cisco제품에 OS 커맨드가 실행되는 취약성Becky! Internet Mail에 버퍼 오버플로우의 취약성CENTUM을 포함하는 YOKOGAWA제품에 버퍼 오버플로우의 취약성Liferay Portal PCE 에 크로스사이트 스크립팅의 취약성RaritanPX Power Distribution 소프트웨어에 인증회피의 취약성Mozilla제품군의 취약성Resin Pro에 Unicode문자를 적절하게 변환하지 않는 취약성TestRail에 크로스사이트 스트립팅의 취약성

0102030405060708091011121314

AUG Samba에 임의의 코드가 실행가능한 취약성ServerView Operations Manager에 크로스사이트 스크립팅 취약성Siver Peak VX에 CSRF 및 크로스사이트 스트립팅의 취약성아이오 데이터 기기의 복수의 IP카메라에 인증이 우회되는 취약성Android버전 Outlook.com에 대해 SSL서버 인증서의 검증생략 취약성acmailer에 CSRF의 취약성OpenSSL의 취약성WordPress의 취약성Cisco EnergyWise Module에 서비스 운영방해의 취약성Symantec Endpoint Protection에 버퍼 오버플로우 취약성Piwigo의 취약성PHP의 취약성Ruby1.9.2의 취약성WordPress용 테마 Cakifo에 크로스사이트 스크립팅의 취약성

0102030405060708091011121314

SEP Microsoft 제품의 취약성에 관한 추가 정보WordPress용 프러그인 MailPoet Newsletters에 CSRF의 취약성Android 버전 Kindle에 SSL 서버 인증서의 검증부족의 취약성Mozilla 제품군의 취약성Android 앱에 SSL 인증서의 검증부족의 취약성EmFTP의 취약성WisePoint에 취약성Adobe Flash Player 및 Adobe Air에 취약성Cisco Unified Computing System E 시리즈에 취약성Embarcadero Delphi와 C ++ Builder의 VCL에 버퍼 오버플로우 취약성PowerDNS Recursor 서비스 운영 방해 (DoS) 취약성Adobe Reader 및 Acrobat에 취약성Adobe 제품의 취약성FortiGate 및 FortiWiFi 어플라이언스에 취약성CENTUM 및 Exaopc에 임의의 파일의 읽기 쓰기 가능성의 취약성패스워드 리스트 공격에 의한 부정 로그인 방지를 위한 호소

01020304050607080910111213141516

Security Trend

Page 46: 2014 - nshc.net · 게임 보안 동향 g-star 2014 국제 게임 박람회 24 모바일 백신의 새로운 강자 droid-x 3.0, av-test 글로벌 인증 획득! 26 덱스가드 개발자

46

OCT GNU bash에 임의의 코드를 실행할 수 있는 취약성Mozilla Network Security Services (NSS)에 RSA 서명 검증 미비 취약성GNU bash에 임의의 코드를 실행할 수 있는 취약점에 대한 추가 정보Xen 서비스 운영 방해 (DoS) 취약성HP 시스템 관리 홈페이지 크로스 사이트 스크립팅 취약성Brocade Vyatta 5400 vRouter 취약성Joomla! 취약성Cisco 제품 취약성IBM WebSphere Application Server 여러 취약성Huawei E5332 서비스 운영 방해(DoS) 취약성NetComm Wireless NB604N 크로스 사이트 스크립팅 취약성Microsoft 제품 취약성Adobe 제품 취약성2014년 10월 Oracle Critical Patch Update 대해SSL v3.0 프로토콜에 암호화 된 데이터 해독 취약성OpenSSL의 취약성Apple 제품 취약성Mozilla 제품군 취약성PHP에 취약성Drupal에 SQL 주입 취약성GIGAPOD 서비스 운영 방해 (DoS) 취약성Microsoft OLE 처리에 임의의 코드가 실행되는 취약성NAT-PMP 프로토콜을 구현하고 있는 여러 제품에 문제

010203040506070809101112131415161718192021222324

NOV GNU Wget에 심볼릭 링크의 취급에 관한 문제Ruby의 취약성Linksys SMART WiFi 대응 펌웨어의 취약성tnftp 클라이언트 프로그램에 OS 커멘드 인젝션의 취약성Symantec Endpoint Protection Manager의 취약성Android 버전 IBM Notes Traveler 클라이언트에 HTTP 경유로 사용자 인증정보를 송신하는 문제피싱대책 세미나 2014 개최 알림Microsoft 제품의 취약성Adobe Flash Player 및 AIR의 취약성이치타로(一太郎)시리즈의 복수 제품에 임의의 코드가 실행되는 취약성복수의 사이보즈 제품에 버퍼 오버플로우의 취약성PHP의 취약성Ruby에 서비스 운용방해(Dos)의 취약성iLogScanner에 크로스사이트 스크립팅의 취약성Direct Web Remotion(DWR)의 취약성OpenAM에 서비스 운용방해(DoS)의 취약성SecurityDay 2014 개최CSMS적합성 평가제도에 관한 설명회Microsoft Windows의 Kerberos KDC에 PAC서명검증 미비의 취약성복수의 Apple제품의 취약성Drupal의 취약성WordPress의 취약성TCG일본지부(JRF) 제 6회 공개 워크샵 개최의 알림

0102030405060708091011121314151617181920212223

※ 각 취약성에 대한 자세한 정보는 아래 사이트에서 확인할 수 있습니다.

https://www.jpcert.or.jp/wr/2014.html Editor 서비스사업본부 / 우상태

Jpcert 2014

Page 47: 2014 - nshc.net · 게임 보안 동향 g-star 2014 국제 게임 박람회 24 모바일 백신의 새로운 강자 droid-x 3.0, av-test 글로벌 인증 획득! 26 덱스가드 개발자

47

Page 48: 2014 - nshc.net · 게임 보안 동향 g-star 2014 국제 게임 박람회 24 모바일 백신의 새로운 강자 droid-x 3.0, av-test 글로벌 인증 획득! 26 덱스가드 개발자

48

LEA

블록 암호 LEA 구현 경진 대회 우수상 입상

NSHC 암호 기술 다시 한 번 인정 받다.

NSHC 암호기술팀은 미래창조과학부과 후원하고 한국암호포럼, 한국 정보 보호학회가 주관하여 한국 인터넷진흥원과 국가 보안 기술연구소가 개최한 블록 암호 LEA 구현 경진 대회에 응모하여 활용 사례 분야와 최적 구현 분야 두 부문에 걸쳐 각각 우수상과 장려상 을 수상하였다. 시상식은 2014년 6월 12일 양재 엘타워에서 에 열렸다.

LEA는 2012년 국가보안기술연구소에서 개발한 높은 안전성과 우수한 효율성을 제공하는 128비트 블록 암호화 알고리즘이다. 요구되는 안전성 기준에 따라 128, 192, 256비트 비밀키를 사용할 수 있으며 라운드 함수를 32비트 단위의 ARX(Addition, Rotation, XOR) 연산만으로 구성하여, 범용 32비트 플랫폼에서 고속으로 동작할 수 있도록 설계되었다. 또한 S-box의 사용을 배제하여 경량 구현이 가능하다.

활용분야 입상 제품은 DX-Shield라는 NSHC의 통합 무선 보안 솔루션으로서 암 복호화, 무결성 외에도 난독화, 해킹 탐지 및 차단 등의 다양한 기능들을 제공하며 현재에는 특히 모바일 게임 분야에 활발히 활용되고 있다. 최적 구현 분야에 있어서는 자사 제품을 위한 범용 플랫폼들에서 최상의 성능을 낼 수 있도록 소프트웨어 모듈로 구현 되었다.

뒤 이어 11월 20일에는 양재역 엘타워에서 열린 신규 ICT 정보보호를 위한 암호 기술 워크숍에서 구현 경진대회

주요 수상 팀들이 모여 기술교류를 위한 발표를 진행하였다. 최적 구현 분야에서는 국민대, 부산대, 건국대가, 활용사례 분야에서는 NSHC와 이니텍 그리고 드림 시큐리티가 참여했는데 NSHC에서는 암호기술팀의 이준영 선임이 발표를 담당하였다. 이준영 선임은 입사 초기부터 암호 기술 교육에서 두각을 나타내어 암호 기반 모듈들을 담당하고 개발해 왔다. 참고로 NSHC는 자체적으로 전문적 소양을 갖춘 암호 개발자를 양성할 수 있는 심도 있는 암호 기술 교육과정을 운영하고 있다.

이와 같이 NSHC가 암호 기술에 있어 유수의 보안 업체들과 어깨를 나란히 하고 있는 이유는 높은 기술력을 기반으로 미래 산업의 지각 변동을 대비하고 주도해 나가려는 벤처기업 고유의 자세를 잊지 않고 있기 때문이다. 실제로 NSHC 암호기술팀은 암호 구현부터 파라미터 생성, 해독에 이르기까지 매우 다양한 분야를 연구하며 국제적인 감각을 유지하려고 노력하고 있다. 물론 이 모든 것은 현재를 열심히 뛰어주는 다른 팀의 동료들과 함께 하고 있기에 가능한 일이며 이번 경진대회 결과 역시 그들과 함께 만들어낸 작품이었다.

[암호의 역할] 워크숍

NSHC의 김기원 주임 / 이준영 과장 / 윤기순 팀장(왼쪽부터)이 상장을 받고있다.

이준영 과장의 암호 기술교류를 위한 발표

Editor 암호기술팀 / 이준영

Page 49: 2014 - nshc.net · 게임 보안 동향 g-star 2014 국제 게임 박람회 24 모바일 백신의 새로운 강자 droid-x 3.0, av-test 글로벌 인증 획득! 26 덱스가드 개발자

49

Cryptography

"특집" RSA 암호 해독

RSA 암호에 대한 NFS 공격법

49

Page 50: 2014 - nshc.net · 게임 보안 동향 g-star 2014 국제 게임 박람회 24 모바일 백신의 새로운 강자 droid-x 3.0, av-test 글로벌 인증 획득! 26 덱스가드 개발자

50

NFS 알고리즘으로 RSA 암호 공격하기

윤기순 팀장

NSHC 암호기술팀[email protected]

1 소개

우리가 금융거래를 할 때 사용하는 공인인증서라는 것이 있는데, 인증서라는 것은 사용자들이

암호 통신을 할 때 공개키를 안전하게 사용할 수 있도록 잘 포장한 어떤 형식의 파일이다. 세간

에서 인증서 운영 환경에 관한 공격에 대해서는 많이 거론되고 있는데, 그러한 공격들은 주로

메모리 사용이나 키보드 입력 등 시스템 취약점에 관련된 것들이며 암호의 본질적 성질에 관한

것은 아니다. 조금 더 전문화된 영역에서 암호프로토콜의결함이나구현시 나타나는전력특성

등을 이용한 공격법들이 연구되고 있기도 하지만, 이 글에서는 그보다 좀 더 들어가 인증서에

사용되는 암호 알고리즘의 근간을 공격하는 방법을 하나 소개해 보고자 한다.

RSA 공개키 인증서

공격대상은현재공인인증시스템에서가장널리

쓰이는 RSA암호이다. RSA가큰수의인수분해문제를기반으로만들어진암호라는것은대중들에게도잘

알려진 사실인데, RSA가 타원곡선 암호에 비해 성능이 크게 낮은 이유는 바로 인수분해 문제를 공격하는

효율적인 하지수시간 알고리즘인 NFS(Number FieldSieve)가 존재하기 때문이다. 실제로 현행 공인인증서의키길이는 NFS에의한공격을염두에두고결정되고 있다 [7]. 이 글의 목적은 현존하는 가장 효율적인인수분해 알고리즘으로 알려져 있는 NFS 알고리즘과그 의미, 그리고 국내에서의 관련 연구활동에 대해

소개하는 것이다.

이후 2절에서 RSA암호와인수분해문제의관계에대해 먼저 설명하고 3절에서 인수분해 기술의 현황에대해 소개한 다음 4절에서는 전반적인 NFS 알고리즘의 구성과 중요 개념들에 대해 살펴볼 것이다. 지면 관계상 알고리즘에 대해 더 자세히 기술하지 못하는 것은 아쉽지만 이 분야에 관심을

가지기 시작하는 사람들에게 전체적인 개요를 전달하기 위한 목적으로는 적합한 분량이라고

생각한다. 알고리즘에 관심이 없는 독자는 4절을 건너뛰어 5절의 동향과 국내 연구활동 부분을읽으면 NFS 연구가 가지는 의미와 관련 자원에 대한 정보를 얻는 데 도움이 될 것이다.

Page 51: 2014 - nshc.net · 게임 보안 동향 g-star 2014 국제 게임 박람회 24 모바일 백신의 새로운 강자 droid-x 3.0, av-test 글로벌 인증 획득! 26 덱스가드 개발자

51

2 RSA 암호

Adi Shamir, Ronald Rivest,Leonard Adleman

RSA 암호는 큰 수의 인수분해의 어려움에 기반하여 만들어진공개키암호체계로서 1977년로널드라이베스트(Ron Rivest),아디 샤미르 (Adi Shamir), 레너드 애들먼 (Leonard Adleman)에의해소개되었다. RSA암호는기초정수론을사용하고있어구현이 쉽고 역사가 오래되어 가장 널리 쓰이는 공개키 암호

이다. RSA 암호는 사용자간에 사전 공유되어야 할 도메인 파라미터가 필요하지 않은 장점이 있는 반면 키 생성시간이 오래

걸리는 단점이 있다.

먼저알고리즘에대해간략하게기술해보자. 알고리즘은키

생성, 암호화, 복호화의 3단계로 나뉠 수 있다. 개인키는 CRT형식을취하는경우더긴포맷이되며효율적인연산이가능하지만여기에서는언급하지않았다.

RSA 암호화 알고리즘키 생성 ( 입력: 요구되는 키 비트, 출력: RSA 공개키와 개인키 쌍 )

1. 두 개의 큰 소수 p, q를 선택하여 그 곱 N = pq를 구한다.

2. (p− 1)(q − 1)과 서로소인 자연수 e를 선택한다.

3. e · d ≡ 1 (mod (p− 1)(q − 1)) 인 자연수 d를 구한다.

4. (e,N)은 공개키, (d,N)은 개인키가 된다.

암호화 ( 입력 : N보다 작은 숫자로 표현되는 평문 M , 출력 : 암호문 C )

- 암호문 C를 다음과 같이 계산한다. : C = M e (mod N).

복호화 ( 입력 : 암호문 C, 출력 : 복호화 결과 M )

- 복호문 M를 다음과 같이 계산한다. : M = Cd (mod N).

참고로 복호화는 Euler의 정리에 의해 gcd(M,N) = 1일 때 M (p−1)(q−1) ≡ 1 (mod N)이 성립

하므로 이루어진다.

RSA 암호를 공격한다는 것은 근본적으로 공개키 정보 (e,N)만 가지고 암호화된 메시지

C를 해독하여 M을 알아내는 것을 의미하며 이 문제를 RSA 문제라고 부른다. 예를 들어

개인키 (d,N)을 알아낼 수 있다면 대응하는 공개키(e,N) 로 암호화된 모든 암호문을 해독할

수 있으므로 RSA 문제를 푼 것이다. 만약 N을 인수분해하여 소인수들 p와 q를 얻어낼 수

있다면 p − 1과 q − 1를 알아낼 수 있고 이미 공개된 e값으로부터 개인키의 d 역시 계산해 낼

Page 52: 2014 - nshc.net · 게임 보안 동향 g-star 2014 국제 게임 박람회 24 모바일 백신의 새로운 강자 droid-x 3.0, av-test 글로벌 인증 획득! 26 덱스가드 개발자

52

수 있으므로 RSA 문제를 푼 것이 된다. 즉 N을 인수분해하는 것은 RSA를 완전히 해독하는방법이라는 것을 알 수 있다. 하지만 실제 생활에 적용되는 p, q,N은 수천 비트 자리수를 가진

매우 큰 정수이므로 이것은 쉬운 일이 아니다.

3 N의 인수분해

그래서 우리는 이제 큰 정수 N을 인수분해하는 방법에 대해 이야기 할 것이다. 먼저 N을

인수분해 한다고 했을 때 첫 번째로 떠오르는 방법은 N보다 작은 모든 소수 (prime number)들로 차례로 나누어보는 것인데, 이것은 전수조사 공격에 해당한다. 실제로 이 방법을 적용하기

위해서는√N 이하의 소수들로만 나누어보면 충분한데 소수 정리 (prime number theorem)에

의해 x보다 작은 소수들의 개수가 x가 커짐에 따라 점근적으로 x/ logx를 따르므로 이것은2√N/ logN = exp((1/2+ o(1)) logN) 의 계산복잡도를 가지는 알고리즘이 된다. 즉, 이 알고리

즘은 N의 자리수가 증가함에 따라 그 연산량이 지수적으로 증가하는 것을 알 수 있는데 이러한

알고리즘을 지수시간 알고리즘(exponential time algorithm)이라 부른다. 이 밖에도 인수분해를위한잘알려진지수시간알고리즘들로페르마의방법(Fermat’s method),폴라드 ρ-방법(Pollardrho-method)이나 p− 1 방법 등이 있다. 이러한 지수시간 알고리즘들 중 효율적인 것들은 작은

수들을 인수분해 하는 데에는 편리하게 사용할 수 있으나 현대의 암호 통신에 쓰이는 큰 수들을

직접 인수분해 하는 데에는 사용될 수 없다.

그래서 RSA암호를 공격하기 위해서는 효율적인 하지수시간 알고리즘 (subexponential timealgorithm),즉 N의자리수증가에따라계산복잡도함수가지수함수보다작은인수분해알고리

즘을필요로한다. 잘 알려진효율적인하지수시간인수분해알고리즘으로는 CFRAC(continuedfraction method), QS(quadratic sieve), ECM(elliptic curve method), NFS(number field sieve)와 같은 것들이 있는데, 사실상 이 알고리즘들의 계산복잡도는 휴리스틱하게 추정되고 있을

뿐이며 정확한 복잡도에 대한 수학적으로 엄밀한 증명은 아직까지 존재하지 않는다. 어쨌든 이

알고리즘들의 계산복잡도에 대해 소개하기 위해 다음과 같은 기호를 도입하도록 하자.

LN [α, c] = exp((c+ o(1))(logN)α(log logN)1−α), 0 ≤ α ≤ 1

이 기호를 L-기호 (L-notation)라 부른다. 예를 들어 L-기호를 이용하여 지수시간 알고리즘은LN [1, c]로 표기할 수 있으며 다항식시간 알고리즘은 LN [0, c]로 표기할 수 있다. 상기한 하지수

시간 인수분해 알고리즘들의 계산복잡도들을 L-기호를 이용하여 표시해 보면 다음과 같다.

CFRAC LN [1/2,√2]

ECM LN [1/2,√2]

QS LN [1/2, 1]

NFS LN [1/3, (64/9)13 ]

Page 53: 2014 - nshc.net · 게임 보안 동향 g-star 2014 국제 게임 박람회 24 모바일 백신의 새로운 강자 droid-x 3.0, av-test 글로벌 인증 획득! 26 덱스가드 개발자

53

표에서볼수있는바와같이가장효율적인알고리즘은 NFS이며실제로최근의큰수들에대한인수분해 기록은 모두 NFS에 의해 갱신되었다.

RSA 알고리즘 창안자들이 설립한 보안회사인 RSA Lab은 1991년 5월 18일부터 RSA 챌린지 (RSA Challenge)라는 이름 아래 RSA 암호의 N으로 쓰일 수 있는 다양한 비트의 수들을

인수분해하는 문제들을 상금과 함께 게시하고 있다. 게시된 수들은 모두 N = pq와 같이 큰

두 개의 소수의 곱으로 인수분해 될 수 있는 수들일 것으로 여겨지고 있으며 네트웍이 단절된

컴퓨터에서 생성되었고 생성 기록은 하드와 함께 폐기되었다고 전해지고 있다. 다음은 비교적

최근에 인수분해된 N에대한 기록들이다.

N 상금 인수분해 날짜 사용 알고리즘 연구팀

RSA-576 USD 10 000 2003.12.03 NFS Jens Franke et al.RSA-640 USD 20 000 2005.11.02 NFS Jens Franke et al.RSA-704 USD 30 000 2012.07.02 NFS E. Thomé et al.RSA-768 USD 50 000 2009.12.12 NFS T. Kleinjung et al.

표에서 볼 수 있는 것 처럼 근래 RSA 챌린지의 N들은 모두 NFS 알고리즘에 의해 인수분해되었다.

4 General Number Field Sieve

이제 우리는 NFS 알고리즘에 대해 대해 좀 더 이야기 해 보려고 한다. 설명 방식으로는 NFS에관심을가진독자들이알고리즘의전체개요를파악할수있도록구성요소의개념적인사항들에

가능한 한 많이 소개하려고 했다. 특히 Z[α]에서와 O에서 아이디얼 인수분해의 차이점들이

좀 더 드러나도록 설명해 보려고 노력했는데, 그 이유는 이러한 차이점들이 알고리즘의 전

단계에 걸쳐 소소한 부분들에 개입하고 있어 이를 제대로 이해하지 못할 경우 혼동을 격을 수

있기 때문이다. 이 글은 모든 것을 소개만 할 뿐 구체적인 계산 방식까지 설명하지는 않으므로

알고리즘에 진지하게 관심이 있는 독자들은 후반부에 소개된 참고문헌들을 참고하기 바란다.

4.1 아이디어

우리는 1보다 큰 어떤 정수 N을 인수분해 하고자 한다. NFS의 아이디어는 합동식 x2 ≡ y2

(mod N) 을 만족하는 N보다 작은 서로 다른 두 정수 x와 y를 구할 수 있다면 gcd(x ± y,N)

로부터 N의 소인수를 얻어낼 수 있다는 사실로부터 출발한다. gcd(x± y,N)이 N의 자명하지

않은 소인수가 될 확률은, k가 N의 서로다른 소인수의 개수라 할 때, 1 − 21−k가 되기때문에

일단그러한정수쌍 (x, y)를몇개가지게되면높은확률로인수분해를기대할수있다. NFS는바로 큰 수 N에 대해 합동식 x2 ≡ y2 (mod N)을 효율적으로 푸는 하지수 시간 알고리즘이다.

Page 54: 2014 - nshc.net · 게임 보안 동향 g-star 2014 국제 게임 박람회 24 모바일 백신의 새로운 강자 droid-x 3.0, av-test 글로벌 인증 획득! 26 덱스가드 개발자

54

4.2 다항식과 수체

먼저어떤정수계수다항식 f(x)과어떤정수 m이존재하여 f(m) ≡ 0 (mod N)을만족한다고

하자. N이 주어지는 경우 이러한 다항식은 쉽게 찾아낼 수 있다. 예를 들어 m을 정하면 N

을 m진수 전개로 N =∑d

i=0 cimi와 같이 나타낼 수 있는데 이 때 f(x) =

∑di=0 cix

i로 잡으면

조건을만족한다는것을알수있다. 이 방법을 m-진 방법(base-m method)이라고한다. 특히m = ⌊N⌋1/d로 잡으면 f(x)의 최고차항 계수가 1이 된다는 것을 알아두자. NFS를 적용하기위해서는다항식 f(x)가기약인경우를가정한다. 만약 f(x)가기약이아니라면 f(x) = g(x)h(x)

와같이인수분해될것이고 f(m) = g(m)h(m) ≡ 0 (mod N)이될것이므로 gcd(g(m), N)이나

gcd(h(m), N)으로부터 N의 자명하지 않은 인수를 찾아내는 기회를 얻게 되거나 g(x)와 h(x)

중 하나를 다시 f(x)로 잡을 수 있다.

이렇게 선택된 d차 (d > 1) 기약 다항식 f(x)의 한 해를 α라 하면 K = Q[α]와 같은 수체

(number field)를 얻을 수 있다. 수체 K는 상환 (quotient ring) Q[x]/(f(x)), 즉 f(x)로 나눈

나머지다항식들로이루어진환과동형(isomorphic)이므로, 모든 K의원소들이 d− 1차의다항

식들로 표현될 수 있다. f(x)의 최고차항의 계수가 1인 경우 그 근 α는 대수적 정수 (algebraicinteger)가 되는데 이 때 환 Z[α]는 수체 K 의 정수환 (ring of integer) O의 부분환이 된다.O는 데데킨트 정역 (Dedekind domain)이므로 O의 모든 아이디얼들은 소아이디얼 인수분해

(prime ideal factorization)가 가능하다. O의 두 부분환 R ⊆ S에 대하여, R의 소아이디얼 p

와 S의 소아이디얼 P 사이에 p = P ∩ R인 관계가 있을 때 P는 p 위에 놓여 있다 (lie over)고하며 p는 P의 아래에 놓여 있다 (lie under)고 한다. 예를 들어 Z의 소수 p에 대하여 O에서

pO =∏

p pep와 같이 소아이디얼 인수분해 될 때, p들은 pZ 위에 놓여 있으며 pZ는 p들 아래에

놓여 있다. K의 원소 x의 노름 (norm) N(x)는 ψx : K → K;ψ(y) = xy으로 정의되는 Q-선형사상의 전이행렬의 행렬식으로서 N(x) =

∏di=1 σi(x)과 같이 계산될 수 있다. 참고로 R이 K의

부분환일 때 x ∈ R에 대하여 |N(x)| = |R/xR|이 성립한다.우리가 NFS를 사용할 때에는 O가 아닌 Z[α]에서 계산하게 된다. 대수적 정수환 (ring of

algeraic integers)에서 계산을 하고자 할 때 O를 완전히 찾아내는 것, 즉 정수기저 (integralbasis)를 찾아내는 것이 항상 쉬운 일은 아니기 때문에 근사적으로 그 부분환 Z[α]에서 계산을

시작하는 경우가 많으며 NFS 역시 그런 경우이다. Z[α]는 일반적으로 데데킨트 정역이 아닐수 있기 때문에 모든 아이디얼에 대한 소아이디얼 인수분해를 보장할 수 없다. O ̸= Z[α]이

기 때문에 생기는 문제들은 4.6절에서 조금 더 설명될 것이다. 이제 다음과 같은 준동형사상(homomorphism)을 정의하자.

ϕ : Z[α] −→ Z/NZ

h(α) �→ h(m) (mod N)

여기에서 h(x)는 임의의 정수계수 d − 1차 다항식으로서 h(α)는 Z[α]의 원소들의 일반적인

Page 55: 2014 - nshc.net · 게임 보안 동향 g-star 2014 국제 게임 박람회 24 모바일 백신의 새로운 강자 droid-x 3.0, av-test 글로벌 인증 획득! 26 덱스가드 개발자

55

형태인데, NFS에서는특히 h(x)의차수가 1인경우에해당하는, 즉 a+bα로표현되는원소들을

이용한다. 좀 더 자세히 말하자면, 여러개의 순서쌍들 (a1, b1), (a2, b2), · · · , (aM , bM )을 찾되,

대응하는 원소들a1 + b1α, a2 + b2α, · · · , aM + bMα의 곱이 Z[α]에서 제곱이 되고 동시에 ϕ

에 의한 상들 a1 + b1m, a2 + b2m, · · · , aM + bMm 의 곱이 Z에서 제곱이 되도록한다. 그렇게

β2 =∏M

j=1 (aj + bjα) ∈ Z[α], u2 =∏M

j=1 (aj + bjm) ∈ Z를 얻게 되면 ϕ는 준동형사상이므로

ϕ(β)2 ≡ ϕ(β2) = ϕ(∏M

j=1 (aj + bjα)) =∏M

j=1 (aj + bjm) = u2 (mod N) 이 성립하게 되어

gcd(ϕ(β)± u,N)로부터 N의 자명하지 않은 인수를 찾아낼 수 있는 기회를 가지게 된다.

4.3 인수기저, 매끈한 수들

그렇다면 어떤 방법으로 상기한 곱들이 제곱이 되도록 (a, b)들을 수집할 수 있을까? NFS에서는제곱을만들어내기위해인수기저(factor base)라는것을사용하는데, 모두두개의인수기저를사용하게된다. 하나는 Z의소수들로구성된유리 인수기저(rational factor base)로서이것은주어진 상한보다 절대값이 작은 Z의 양의 소수들의 집합을 말한다. 예를들어 집합 {2, 3, 5, 7}은

상한이 10인 유리 인수기저이다. 어떤 정수가 상한 B인 인수기저에 속한 소인수들만을 가질 때

가질 때 그 정수를 B-매끈(B-smooth)하다고 한다. 또 하나는 Z[α]의 소아이디얼들로 구성된

대수적 인수기저 (algebraic factor base)로서 이것은 주어진 상한보다 절대값이 작은 Z의

소수들위에놓은소아이디얼들의집합을말한다. 예를들어다항식 x2+5x+5의한근을 α라할

때상한이 10인환 Z[α]의대수적인수기저는 {Z[α]+5Z[α]}인데, 이때 (Z[α]+5Z[α])2 = 5Z[α]

이므로아이디얼 (Z[α]+5Z[α])은 5위에놓여있음을알수있다. Z[α]의어떤원소가생성하는

주아이디얼(principal ideal)이 B 이하의소아이디얼만으로나누어질때그원소를 B-매끈하다고한다. 이제 B1 = {p1, p2, · · · , pℓ1}을 상한 B1인 유리 인수기저라 하고 B2 = {p1, p2, · · · , pℓ2}을

상한 B2인 대수적 인수기저라 하자. 어떤 (a, b) ∈ Z2에 대해 a + bm가 B1 -매끈하고, 동시에a+ bα가 B2 -매끈하다면 다음과 같이 쓸 수 있다.

a+ bm = (−1)s∏p∈B1

pordp(a+bm), (a+ bα)Z[α] ⊆∏p∈B2

pordp((a+bα)Z[α]).

여기에서 ordp(I)는 I ⊆ pordp(I)가 되는 최대의 정수이다. 아이디얼 곱들 사이의 관계를 등호가

아닌 포함관계로 표시한 이유는 (a + bα)Z[α]가 소아이디얼로 인수분해 되지 않는 아이디얼

인자를 가질 수 있기 때문이다. 참고로 Z[α]에서 아이디얼은 그 근기 (radical)가 소아이디얼이되는 으뜸 아이디얼 (primary ideal)들의 곱으로 나타낼 수 있으며 으뜸 아이디얼 q의 근기가

p라 할 때 일반적으로 q ⊆ pordp(q) 인 관계가 성립하지만 등호는 p가 |O/Z[α]|를 나누지 않는

경우에만 보장된다. 사실 |O/Z[α]|를 나누지 않는 p과 그 위에 놓인 O의 소이데알 P는 일대일

대응하며 ordp((a + bα)Z[α]) = ordP((a + bα)O)이 성립한다. 정수곱에는 Z의 가역원 (unit)인 (−1)s 이 명시적으로 곱해져 있지만 아이디얼곱에는 가역원이 별도로 명시되지 않고 있는

Page 56: 2014 - nshc.net · 게임 보안 동향 g-star 2014 국제 게임 박람회 24 모바일 백신의 새로운 강자 droid-x 3.0, av-test 글로벌 인증 획득! 26 덱스가드 개발자

56

것에 주의하자. 이와 같이 a + bm와 a + bα가 동시에 매끈해지는 여러개의 순서쌍들 (a, b)

을 수집하여 그 중 적당한 순서쌍들 (a1, b1), (a2, b2), · · · , (aM , bM )을 선택하되 그에 대응하는

정수들 aj + bjm의 곱에서 나타나는 소인수의 지수들의 합과 아이디얼들 (aj + bjα)Z[α]의

곱에서나타나는소아이디얼의지수들의합이모두짝수가되도록선택한다. 이 때, 정수 곱쪽은

부호가 양이 되도록 한다. 즉, 다음과 같이 되도록 만든다.

v :=M∏j=1

(aj + bjm) = (−1)∑M

j=1 sj∏p∈B1

p∑M

j=1 ordp(aj+bjm),

γZ[α] :=M∏j=1

(aj + bjα)Z[α] ⊆∏p∈B2

p∑M

j=1 ordp((aj+bjα)Z[α]),

M∑j=1

sj ≡M∑j=1

ordp(aj + bjm) ≡M∑j=1

ordp((aj + bjα)Z[α]) ≡ 0 (mod 2).

여기에서 v는 정수이며 γZ[α]는 γ를 생성자로 하는 주아이디얼이다. 이렇게 만들기 위해서는

1 + ℓ1 + ℓ2개의 성분을 가지는 지수벡터(exponent vector)

(s, ordp1(aj + bjm), · · · , ordpℓ1(aj + bjm), ordp1((aj + bjα)Z[α]), · · · , ordpℓ2

((aj + bjα)Z[α]))

들이 F2 상에서 선형 의존성을 가지는 것이 필요하며 이것이 반드시 가능해 지는 것은 수집된

총 벡터의 수가 1 + ℓ1 + ℓ2보다 많을 때라는 것을 알 수 있다.

4.4 인수기저의 형태

먼저 대수적 인수기저의 형태에 대해 알아보자. 어떤 소수 p에 대해 f(x) ≡ 0 (mod p)를 만족

하는 한 근을 rp라 할 때 다음과 같이 주어지는 준동형사상

ϕ : Z[α] −→ Fp

h(α) �→ h(rp) (mod p)

의 핵 (kernel)으로 정의되는 Z[α]의 소아이디얼은 pZ[α] + (α − rp)Z[α]와 같은 꼴로 나타나

는데 이것을 일차 소아이디얼 (first degree prime ideal)이라 부르며 간단히 (p, rp)로 쓸

수 있다. a, b가 서로소인 두 정수일 때, p가 a + bα를 나누는 Z[α]의 소아이디얼이라 하면 p

아래에 놓여있는 Z의 소수 p에 대하여 rp = −ab−1 (mod p) 는 f(rp) ≡ 0 (mod p)를 만족하며

p = (p, rp)임을 알 수 있다. 즉, a + bα와 같은 원소를 나누는 소아이디얼은 일차소아이디얼

뿐이다. 일차 소아이디얼 p에 대해 ordp ((a+ bα)Z[α]) = ordp(N(a+ bα))가 된다[1]는 사실을이용하면 Z[α]에서 a + bα를 나누는 소아이디얼들과 그 지수들을 알 수 있다. 이 때 a + bα의

노름은 N(a+ bα) =∏d

i=1(a+ bσi(α)) = (−b)df(−ab )처럼 간편하게 계산할 수 있다.

또한 Z를 다항식 g(x) = x − m ∈ Z[x]에 의한 자명한 확장체 (trivial extension field)Q = Q[x]/(x−m)의 정수환으로 보고 상기 논의를 그대로 적용한다면 모든 Z의 소수들을 일차

Page 57: 2014 - nshc.net · 게임 보안 동향 g-star 2014 국제 게임 박람회 24 모바일 백신의 새로운 강자 droid-x 3.0, av-test 글로벌 인증 획득! 26 덱스가드 개발자

57

소아이디얼로 볼 수 있다. 따라서 인수기저들을 다음과 같이 쓸 수 있다. B1 과 B2가 충분히 큰

양의 정수라 할 때,

유리 인수기저 : B1 = {(p, r) : r −m ≡ 0 (mod p), p는 B1 이하의 소수}

대수적 인수기저 : B2 = {(p, r) : f(r) ≡ 0 (mod p), p는 B2 이하의 소수}.

유리 인수기저의 크기는 소수 정리 (prime number theorem)에 의해 B1이 증가함에 따라 점근

적으로 B1/ logB1을 따른다는 것을 알 수 있다. 대수적 인수기저의 크기는 B2 보다 작은 각

소수 p에대해합동식 f(x) ≡ 0 (mod p)가얼마나많은근을가지느냐와관련이있어보인다. 각

합동식은 기껏해야 d개의 큰을 가지며 근의 개수는 소수 p에 따라 달라질 것이지만, 다행히도

B2가 커짐에 따라 평균적으로 하나의 소수당 하나의 근을 가진다는 사실이 알려져 있다. 즉

대수적 인수기저의 크기 역시 소수 정리의 공식을 사용하여 B2/ logB2 정도로 추정할 수 있다.

이 사실은체보타레프밀도정리(Chebotarëv density theorem)의따름정리로서증명될수있다[12].

4.5 시빙과 선형대수

우리가수집하고자하는것은 a+ bm이 B1-매끈하고동시에 a+ bα가 B2-매끈한순서쌍들 (a, b)

인데, 이것은주어진 a, b의영역내에서인수기저의각원소의배수가되는수들을식별하기위해

원소의 크기 간격으로 건너 뛰며 표시를 해 나가는 시빙 (sieving)을 수행함으로서 효과적으로수행할 수 있다.

먼저 Z에서의 시빙에 대해 설명하겠다. 소수 p가 a + bm를 나눈다면 p는 모든 정수 k에

대해 (a+ pk) + bm을 나눈다는 것에 주목하자. 먼저 시빙 영역 A := {(a, b) : |a| < L1, 0 < b <

L2, gcd(a, b) = 1}을 배열로 잡아 각 좌표 (a, b)에 값 log |a + bm|를 저장하여 초기화 한다.(p, rp) ∈ B1로 시빙 하려면 b를 하나 고정시키고 a+ brp ≡ 0 (mod p)를 만족하는 −L1보다 큰

최소의 a로부터 시작하여 L1보다 작은 한도 내에서 a에 p씩 더해가며 얻어지는 좌표에 저장된

값으로부터 log p를 빼 간다. 이러한 작업을 0과 L2 사이의 모든 b에 대해 수행한다. 이와 같이

유리 인수기저의 모든 (p, rp) ∈ B1에 대해 시빙이 끝나고 나서 어떤 임계점 이하의 값을 포함한

좌표들에 대응하는 a+ bm들을 B1-매끈한 수의 후보들로 취급하게 된다. Z[α]에서의 시빙 역시각 좌표 (a, b)를 logN(a+ bα)로 초기화하는 것을 제외하고는 같은 방법으로 수행된다. 실제로

시빙 수행 시에는 효율성과 성능을 고려하여 임계값의 수준을 높이거나 시빙에 참여하는 소수의

범위를 제한하게 되는데 이렇게 얻어진 후보들은 모두 매끈하지도 않을 뿐더러 진짜 매끈한

수들이 후보에서 제외되기도 한다. 그래서 진짜 매끈한 수들만을 남기기 위해서는 후보들을

실제로 인수분해 해 보는 것이 필요하다. 이 인수분해는 a + bm들이 N보다 훨씬 작으므로 그

수준의 자리수에서 NFS보다 더 효율적인 성능을 가진 알고리즘인 ECM이나 QS등을 이용해서

Page 58: 2014 - nshc.net · 게임 보안 동향 g-star 2014 국제 게임 박람회 24 모바일 백신의 새로운 강자 droid-x 3.0, av-test 글로벌 인증 획득! 26 덱스가드 개발자

58

수행하게 된다. 결국 시빙은 이 마지막 인수분해 작업량을 최소화 하기 위한 전략이며 시빙

후에 살아남은 후보들의 개수는 전체 영역에 속하는 원소들의 개수에 비해 엄청나게 작은 것

이 보통이다. 시빙을 통해 얻어진 순서쌍 (a, b)와 그에 대응하는 매끈한 수 a + bm와 a + bα

의 소인수분해에서 나타나는 지수벡터들을 모두 묶은 정보를 관계(relation, multiplicativerelation)라고 부른다.상기한바와같이시빙하는방법을선시빙(line sieving)이라고부르는데, 사실 매끈한수는

매우 드물기 때문에 이 방법만으로는 원하는 만큼의 순서쌍들을 얻어내기 어렵다. 그래서 의도

적으로 인수기저 밖의 특별한 소인수 몇 개를 포함시켜 시빙하는 격자체(lattice sieve)[5, 9]를사용하거나 확인작업에서 탈락한 후보들의 거대 소인수(large prime factor)들을 충돌시켜제곱을 만들어내는 등 다양한 기법들을 활용하여 산출을 증가시킨다. 어쨌든 여기에서는 쉬운

설명을 위해 선 시빙을 통해 순수하게 매끈한 수들만을 수집한다고 가정한다.

수집된 관계의 지수벡터들 (mod 2) 을 행으로 하는 행렬을 M이라 하면 M은 1 + ℓ1 +

ℓ2 + ⌊3 logN⌋개보다 큰 행을 가진 거대 행렬이 되는데 그 곱의 모든 지수들이 짝수가 되도

록 관계들을 선택한다는 것은 행렬 방정식 xM = 0를 만족하는 벡터 x를 구하는 것과 같은선형대수 문제이다. 이런 방정식을 풀기 위해서는 가우스 소거법등 기초적인 방법들도 있지만

M이 거대 희소 행렬 (large sparse matrix)이라는 것을 고려하여 알고리즘을 선택해야 한다.희소행렬의 형태를 최대한 유지하며 소거를 수행할 수 있어야 한다는 점과 계산복잡도가 낮고

병렬연산이 가능해야 한다는 점이 핵심인데 현재는 블록 란초스 (block Lancoz)나 블록 비드만(block Wiedemann) 알고리즘등이 널리 사용되고 있다.

4.6 불확실성, 이차지표

상기한바와같이인수기저를이용하여곱에서나타나는소아이디얼과소수들의지수들을짝수로

만드는 조작으로 v이 어떤 정수의 제곱이 되게 할 수 있다는 것은 확실하지만 그것이 γ가 Z[α]

의 어떤 원소의 제곱이 된다는 것을 보장하지는 않는다. 상황을 설명하기 위해 다음과 같은 K∗

의 곱셉 부분군들 V1, V2, V3를 정의해 보자.

V1 = {γ ∈ K∗ : ordp γ ≡ 0 (mod 2), p는 Z[α] 의 소아이디얼},V2 = {γ ∈ K∗ : γO = a2, a는 K의 분수 아이디얼}, V3 = O∗K∗2.

일단 γ ∈ K∗2인 조건을 만족하기만 하면 Z[α]에서 γ의 제곱근을 구할 수 있게 된다. 사실 K∗

에 속하는 γ의 제곱근이 Z[α]의 원소가 아닐 수도 있지만, 모든 x ∈ O에 대해 f ′(α)x ∈ Z[α]

라는 사실을 이용하여 γ → (f ′(α))2γ, v → (f ′(m))2v 과 같이 치환함으로써 그 제곱근들이 Z[α]

와 Z에 속하도록 할 수 있기 때문이다.그런데 4.3의방법으로만들어진 γ는 V1의원소일뿐이고 V1 ⊇ V2 ⊇ V3 ⊇ K∗2인포함관계가

있으므로 γ가 K∗2의 원소가 되기 위해서는 세 개의 장벽을 통과해야 할 것이다.

Page 59: 2014 - nshc.net · 게임 보안 동향 g-star 2014 국제 게임 박람회 24 모바일 백신의 새로운 강자 droid-x 3.0, av-test 글로벌 인증 획득! 26 덱스가드 개발자

59

첫 째로, γ ∈ V2이기 위해서는 γO의 인수분해에서 나타나는 모든 소아이디얼들의 지수가

짝수여야 하는데 정확히 |O/Z[α]|를 나누는 소아이디얼들에 대해서만 이것이 보장되지 않는다.이에 관련된 불확정도를 부등식 [V1 : V2] ≤ |O/Z[α]|로부터 평가할 수 있다.둘 째로, γ ∈ V3이라는 조건은 수체의 유수 (class number) hK 가 1보다 큰 경우 보장되지

않는다. 이에 관련된 불확정도를 부등식 [V2 : V3] ≤ hK로부터 평가할 수 있다.

셋 째로 γ ∈ K∗2이라는 조건에 관련된 불확정도는 V3/K∗2 ∼= O∗/O∗2이라는 사실과 디리

클레의 가역원 정리 (Dirichlet’s unit theorem)로부터 s가 K의 복소 임베딩의 개수의 반이라

할 때 부등식 [V3 : K∗] ≤ 2d−s를 이용하여 평가할 수 있다. 이 조건은 1의 원시근들 (primitiveroots of unity)이 고려된 것이다.상기 부등식들을 결합하면 [V1 : K

∗2] ≤ |O/Z[α]| · hK · 2d−s를 얻으며, 다항식 f(x)가 m-진방법으로 선택된 2차 이상의 다항식이고 N > d2d

2이라는 가정 하에 알려진 결과들을 이용하여

부등식 dimF2 V1/K∗2 < logN/ log 2에 도달할 수 있다. 자세한 설명은 [1]의 6절과 [2]의 9장을

참조하라. 한편 k-차원의 F2-벡터 공간 V 로부터 k + r개의 원소를 임의로 뽑으면 그것들이 V

의 생성집합을 이룰 확률이 1 − 2−r 이상이라는 사실이 성립한다. 따라서 이차지표 (quadraticcharacter)들을 충분히 많이(≫ ⌊logN/ log 2⌋) 선택하면 높은 확률로 Hom(V1/K

∗2,F2)의 생성

집합이 될 것이고 선택된 이차지표 값이 모두 1이 되는 K∗의 원소는 높은 확률로 제곱원소일

것이다. 그래서 ⌊3 logN⌋개 가량의 소아이디얼들을 법으로 하는 이차지표들을 지수벡터에 추가

하게되는데그러면지수벡터는총 1+ℓ1+ℓ2+⌊3 logN⌋개정도의성분을가지게되며수집해야

할 관계의 개수도 그만큼 증가하게 된다. 이차지표는 대수적 인수기저 밖의 일차 소이데알들을

가지고 구성하며 일차 소이데알 (q, s)을 법으로 하는 원소 a + bα의 이차지표 값은 르장드르

기호 (Legendre symbol)를 이용하여 12

{1−

(a+bsq

)}∈ F2와 같이 정의할 수 있다.

4.7 제곱근 구하기

선형대수를 이용하여 얻어진 두 수들에 v → (f ′(m))2v, γ → (f ′(α))2γ 와 같은 치환을 적용하여√γ ∈ Z[α]가 되도록 한다는 사실을 기억하자. v의 제곱근은 이미 인수들이 다 알려져 있으므로

f ′(m)∏

p∈B1p

12

∑Mj=1 ord (aj+bjm) 과같이쉽게계산될수있으며우리가필요로하는것은 Z/NZ

에서의값이므로곱을구하는과정에서 N을법으로감산이가능하여지나치게큰수가될염려가

없다. 하지만 γ의 제곱근을 구하는 과정에서는 이것이 불가능하므로 대단히 큰 수들을 가지고

계산해야 하는 어려움이 있다. 기본적인 방법 [1]의 개요를 알아보자. f(x)가 Fq 상에서 기약이

되는 소수 q를 선택하면 q := qZ[α]는 Z[α]의 소아이디얼이 되고, gcd(a, b) = 1인 조건으로부터

q가 γ를나누지않는다는것을알수있는데, 이 때 γ가 Z[α]의제곱수이면유한체 Z[α]/q ∼= Fqd

에서 방정식 x2− γ 근들을 구할 수 있다. 만약 근이 존재하지 않으면 γ는 제곱이 아니므로 시빙

결과에좀더많은이차지표들을추가하여다시선형대수과정을실시하는것이권고된다. 이렇게

Page 60: 2014 - nshc.net · 게임 보안 동향 g-star 2014 국제 게임 박람회 24 모바일 백신의 새로운 강자 droid-x 3.0, av-test 글로벌 인증 획득! 26 덱스가드 개발자

60

구해진 q를법으로하는 γ의제곱근으로부터헨셀상승(Helsel lifting)을이용하여 q2, q4, q8, · · ·

를 법으로 하는 근들로 차례로 들어올릴 수 있다. 각 단계에서 q2i를 법으로 하는 제곱근들 중

α에 관한 다항식 표현 계수들이 q2i/2보다 작은 것으로 선택해 가며, 이 과정을 연속된 i에

대해 계수들이 더이상 변하지 않을 때까지 실시하면 마침내 Z[α]에서의 제곱근을 얻을 수 있다.이 방법은 계산의 마지막 단계에서 그 계수들이 엄청나게 커지게 되는데, 이를 피하는 하나의

방법으로 먼저 여러개의 서로다른 소수 qj들에 대하여 mj = qkj를 법으로 하는 제곱근 βj들을

구한 뒤 Z/NZ 에서 각각의 근들의 상 ϕ(βj)들을 중국인의 나머지 정리 (Chinese RemainderTheorem)을 이용하여 하나로 합치는 방식이 선호되고 있다 [3]. 이러한 방법들을 쓸 때에는반드시 고속 곱셈 (fast multiplication) 기법을 적용하여야 하며 그렇지 않은 경우 이 단계의계산복잡도가 시빙 단계나 선형대수 단계의 복잡도 이상이 될 수 있음에 주의해야 한다[4].

4.8 계산복잡도

이제여태까지기술한 NFS알고리즘의계산복잡도를점근적추정치를 [11]의논의에따라정리해볼 것이다. y를 두 인수기저들의 상한이라 하고 u를 a, b의 절대값들의 상한이라 하자. 수체의

다항식은 m = ⌊N⌋1/d를 이용한 m-진 방법에 의해 선택되었다고 가정한다. 알고리즘의 전체계산복잡도는 선형대수 단계에서 란초스 방법이나 비드만 방법 이하의 복잡도를 가지는 알고리

즘을사용했다는가정하에시빙단계의복잡도(u2+o(1))와와선형대수단계의복잡도(y2+o(1))의

합으로정해질수있으므로 logu ≈ log y라고가정해도무방하다. 우리는 (a+bm)·N(a+bα)이 y-매끈한경우를고려하고자하는데이수의크기를대략 uN1/d(d+1)udN1/d ≈ N2/dud+1 정도로

볼 수 있다. x이하의 y-매끈한 수의 개수가 r = logx/ log y일 때 점근적으로 xr−r를 따른다는

사실은 잘 알려져 있다 [6]. 이로부터 어떤 N2/dud+1 정도 크기를 가지는 임의의 x가 y-매끈할확률은 r−r이 되는데 이 확률 은 r = logx/ log y ≈ logx/ logu ≈ (2 logN/ logu) /d + d + 1

이 최소가 될 때, 즉 d = (2 logN/ logu)1/2일 때 최대가 된다는 것을 알 수 있다. 총 산출의기대치는 u2r−r가 되며 지수벡터들 사이의 선형 종속성을 찾기 위해서는 이것이 인수기저의

크기 y 와 비슷해야 한다는 설정으로부터 r ≈ logu/ log logu를 얻고 또 이것을 상기한 r과 d

의 관계식에 대입하여 2 logN/ logu ≈ logu/ log logu를 얻을 수 있다. 마지막 식을 변형하여logu를 N의 식으로 나타내면 ≈ logu log y ≈ (8/9)1/3(logN)1/3(log logN)2/3을 얻는데 이제

이것을 알고리즘의 전체의 계산복잡도로 가정한 식 u2+o(1) + y2+o(1)에 대입하여 잘 알려진

식 LN [1/3, (64/9)13 ] = exp

(((64/9)1/3 + o(1))(logN)1/3(log logN)2/3

)을얻을수있다. 덧붙여,

d ≈ (3 logN/ log logN)으로 쓸 수 있음도 알아두자. 이 유도 과정을 통해 우리는 이 NFS의계산복잡도가 몇가지 최적화 조건들을 가정함으로서 얻어지고 있다는 것을 알 수 있다. 즉, 인수

기저의 크기나 시빙 영역이나 다항식의 차수 등이 상기한 범위를 크게 벗어나거나 선형대수나

제곱근 구하기에서 비효율적인 알고리즘을 사용한다면 이 계산복잡도는 의미가 없다.

Page 61: 2014 - nshc.net · 게임 보안 동향 g-star 2014 국제 게임 박람회 24 모바일 백신의 새로운 강자 droid-x 3.0, av-test 글로벌 인증 획득! 26 덱스가드 개발자

61

5 국외 연구 동향 및 국내 연구 활동

NFS에 의한 암호해독 분야는 계산 정수론의 가장 핵심적인 분야들 중 하나로서 대체로 유럽 국가들을 중심으로 1990년대 초반부터 활발하게 연구되어 왔고 최근인 2012년까지 이방법을 이용한 RSA챌린지에 대한 성공사례가 있었다. 이 분야의 전문가들이 쓴 논문들은2014년 현재까지 꾸준히 발표되고 있다. 공개 진영에서의 기록을 보자면 독일과 프랑스의연구팀들이 RSA 챌린지의 768 비트 N까지 인수분해 한 상태이고, 이스라엘에서는 NFS의시빙단계를 고속화 하는 가상의 하드웨어 설계에 대한 연구결과들을 발표한 적이 있으며

(TWINKLE, TWIRL), 일본에서는 후지쯔사가 인수분해 하드웨어들을 개발하고 있다 (CAIRN- 1, 2, 3). 그런데 기술력과 자금력이 이들에 비해 뒤지지 않는 미국, 중국, 러시아 등은 아직까지 구체적인 성과를 내놓지 않고 있다. 미 국방성의 경우 비밀자금을 들여 민간 보안

제품의 기본 난수생성기 설정에까지 간섭할 정도로 노력을 기울이고 있는 것을 볼 때 관련

분야의 공개되지 않은 연구 결과의 진도가 어디까지 도달했을지 가늠할 수 없는 상황이다.

Cairn-3

급변하는 국제 정세속에서 중요한 정보들이 전산망을 통해 관

리되고 있는 시대인 만큼 우리는 이러한 사실들에 대해 충분히

관심을 가지고 대처해 나가야 할 것이다.

NFS는 인수분해 문제 외에도 유한체 상의 이산로그 문제(discret logarithm problem)를푸는하지수시간알고리즘으로변형될 수 있는데, 이산로그 문제는 미 국방 전자서명 표준 (DigitalSignature Standard)이나 디피-헬만 키 교환(Diffie-Hellman keyexchange)과 같은 공개키 알고리즘들의 기반이 되는 문제이다.아직까지 타원곡선 암호에 대해서는 효율적인 하지수시간 공격

방법이 알려져 있지 않지만, 이론적 계산복잡도만을 논하는 관점

에서 타원곡선 암호에 대해 알려져 있는 유일한 하지수시간 공격들 (MOV attack, Frey-Rückattack)이 유한체 상의 이산로그 문제로의 하강 (descent)을 이용하는 것을 생각하면 NFS는모든 주류공개키암호들에대한하지수시간공격법의근간이된다고말할수 있을것이다. 관련

기술들의 최근 동향이 [13]에 잘 정리되어 있다.상기한점들을고려해볼때 NFS를연구하고활용하는능력은한국가의공개키암호안전성

평가능력및계산정수론의수준을가늠할수있는중요한잣대가된다는것을알수있다. 또한

NFS연구는암호구현의기본이되는고속정수연산을비롯하여유한체에서방정식풀이, 선형대수, 대수적정수론, 대용량병렬계산등다양한기술분야들을기반으로하고있어서실제적인

공개키 암호 해독기술의 발전이 이루어질 수 있도록 저변을 유지 확대하는 역할을 할 수 있다.

Page 62: 2014 - nshc.net · 게임 보안 동향 g-star 2014 국제 게임 박람회 24 모바일 백신의 새로운 강자 droid-x 3.0, av-test 글로벌 인증 획득! 26 덱스가드 개발자

62

고려대학교 인수분해 연구팀

한국에서는 주로 고려대학교의 정수론과 암호학 연구

자들이 NFS 관련 연구 명맥을 유지해 왔는데, 2014년현재에도 고려대학교 정보보호연구원의 홍석희 교수가

이끄는 암호 알고리즘 연구팀을 주축으로 세명대학교의

김창한 교수, 세종 사이버대학교의 박영호 교수, 장남수

교수와 같은 공개키 암호 전문가들이 동참하여 계속

연구를 수행 중이다. 다년간 축적된 노하우와 우수한

인력기반을 바탕으로 어느때보다 빠른 속도로 연구가

진행되고 있는 것을 보며 앞으로 수 년 안에 한국에서

아시아를 대표하는 인수분해 소프트웨어가 만들어져 배포되기를 기대해 본다.

NSHC는 고려대학교정보보호연구원과 맺고 있는 기술협력 MOU의 일환으로 NFS를 이용한 공개키 암호 해독 연구에 동참하고 있다. NSHC는 회사 창립 초창기부터 미래 기술 변화에대한 차별적인 경쟁력을 확보하고, 정보보호 사회에 공헌함으로써 회사의 위상을 높이기 위해,

수준 높은 정수론적 암호기술 기술 확보에 관심을 가지고 노하우를 축적해 왔다.

⋇ 공개키 암호 구현 및 해독에 대한 협업이나 상담이 필요하신 분은 언제든지 NSHC 암호기술팀에 문의해 주시기 바랍니다.

참고 문헌

[1] J. Buhler, H. Lenstra Jr., C. Pomerance. Factoring integers with the number field sieve.Lecture Notes in Mathematics 1554, Springer (1993), 50-94.

[2] J.W.S Cassels, A. frölich Algebraic number theory. Proceedings of an instructionalconferences, Academic Press, London (1967).

[3] J. Couveignes. Computing a square root for the number field sieve. Lecture Notes inMathematics 1554, Springer (1993), 95-102.

[4] R. Crandall and C. Pomerance. Prime numbers, a computational perspective. Springer(2001).

[5] R. Golliver, A. Lenstra, K. McCurley. Lattice sieving and trial division. Lecture Notesin Computer Science 877, Springer (1994), 18-27.

[6] A. Granville. Smooth numbers: computational number theory and beyond. in Surveysin algorithmic number theory, Math. Sci. Res. Inst. Publ. 44, Cambridge University(2008), 267-324.

Page 63: 2014 - nshc.net · 게임 보안 동향 g-star 2014 국제 게임 박람회 24 모바일 백신의 새로운 강자 droid-x 3.0, av-test 글로벌 인증 획득! 26 덱스가드 개발자

63

[6] A. Granville. Smooth numbers: computational number theory and beyond. in Surveysin algorithmic number theory, Math. Sci. Res. Inst. Publ. 44, Cambridge University(2008), 267-324.

[7] A. Lenstra, E. Verheul. Selecting cryptographic key sizes. Lecture Notes in Mathemat-ics 1751, Springer (2000), 446-465.

[8] B. Murphy. Polynomial selection for the number field sieve integer factorisation algo-rithm. doctoral thesis. Australlian national university (1999).

[9] J. Pollard. The lattice sieve . Lecture Notes in Mathematics 1554, Springer (1993),43-49.

[10] C. Pomerance. Smooth numbers and the quadratic sieve. in Surveys in algorithmicnumber theory, Math. Sci. Res. Inst. Publ. 44, Cambridge University (2008), 69-82.

[11] P. Stevenhagen. The number field sieve. in Surveys in algorithmic number theory,Math. Sci. Res. Inst. Publ. 44, Cambridge University (2008), 83-100.

[12] P. Stevenhagen, H. Lenstra Jr. Chebotarëv and his density theorem. Math. Intelli-gencer, 18, Cambridge University (1996), no. 2, 26–37.

[13] E. Thomé. Théorie algorithmique des nombres et applications à la cryptanalyse deprimitives cryptographiques. Habilitation à diriger des recherches. l’Université de Lor-raine (2012).

Page 64: 2014 - nshc.net · 게임 보안 동향 g-star 2014 국제 게임 박람회 24 모바일 백신의 새로운 강자 droid-x 3.0, av-test 글로벌 인증 획득! 26 덱스가드 개발자

(주)NSHC www.nshc.net / 437-060 경기도 의왕시 광진말길 55 N스퀘어 / T 031.458.6456 / F 031.458.64582014년 통권 제3호 / 발행일 2014년 12월 / 발행처 (주)NSHC / 발행인 허영일 / 기획 커뮤니케이션사업부 / 디자인 김은선